/* 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 P384 32 '2^384 - 2^128 - 2^96 + 2^32 - 1' mul square add sub opp from_montgomery to_montgomery nonzero selectznz to_bytes from_bytes one msat divstep divstep_precomp */
/* curve description: P384 */
/* 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 = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff (from "2^384 - 2^128 - 2^96 + 2^32 - 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) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) */
/*   bytes_eval z = z[0] + (z[1] << 8) + (z[2] << 16) + (z[3] << 24) + (z[4] << 32) + (z[5] << 40) + (z[6] << 48) + (z[7] << 56) + (z[8] << 64) + (z[9] << 72) + (z[10] << 80) + (z[11] << 88) + (z[12] << 96) + (z[13] << 104) + (z[14] << 112) + (z[15] << 120) + (z[16] << 128) + (z[17] << 136) + (z[18] << 144) + (z[19] << 152) + (z[20] << 160) + (z[21] << 168) + (z[22] << 176) + (z[23] << 184) + (z[24] << 192) + (z[25] << 200) + (z[26] << 208) + (z[27] << 216) + (z[28] << 224) + (z[29] << 232) + (z[30] << 240) + (z[31] << 248) + (z[32] << 256) + (z[33] << 0x108) + (z[34] << 0x110) + (z[35] << 0x118) + (z[36] << 0x120) + (z[37] << 0x128) + (z[38] << 0x130) + (z[39] << 0x138) + (z[40] << 0x140) + (z[41] << 0x148) + (z[42] << 0x150) + (z[43] << 0x158) + (z[44] << 0x160) + (z[45] << 0x168) + (z[46] << 0x170) + (z[47] << 0x178) */
/*   twos_complement_eval z = let x1 := z[0] + (z[1] << 32) + (z[2] << 64) + (z[3] << 96) + (z[4] << 128) + (z[5] << 160) + (z[6] << 192) + (z[7] << 224) + (z[8] << 256) + (z[9] << 0x120) + (z[10] << 0x140) + (z[11] << 0x160) in */
/*                            if x1 & (2^384-1) < 2^383 then x1 & (2^384-1) else (x1 & (2^384-1)) - 2^384 */

package fiat_crypto;

public final class FiatP384 {

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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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], [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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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[8]);
  int x9 = (arg1[9]);
  int x10 = (arg1[10]);
  int x11 = (arg1[11]);
  int x12 = (arg1[0]);
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x13, x14, x12, (arg2[11]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x15, x16, x12, (arg2[10]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x17, x18, x12, (arg2[9]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x19, x20, x12, (arg2[8]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x21, x22, x12, (arg2[7]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x23, x24, x12, (arg2[6]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x25, x26, x12, (arg2[5]));
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x27, x28, x12, (arg2[4]));
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x29, x30, x12, (arg2[3]));
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x31, x32, x12, (arg2[2]));
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x33, x34, x12, (arg2[1]));
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x35, x36, x12, (arg2[0]));
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x37, x38, 0x0, (x36).get(), (x33).get());
  Box<Integer> x39 = new Box<Integer>((int)0);
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x39, x40, (x38).get(), (x34).get(), (x31).get());
  Box<Integer> x41 = new Box<Integer>((int)0);
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x41, x42, (x40).get(), (x32).get(), (x29).get());
  Box<Integer> x43 = new Box<Integer>((int)0);
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x43, x44, (x42).get(), (x30).get(), (x27).get());
  Box<Integer> x45 = new Box<Integer>((int)0);
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x45, x46, (x44).get(), (x28).get(), (x25).get());
  Box<Integer> x47 = new Box<Integer>((int)0);
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x47, x48, (x46).get(), (x26).get(), (x23).get());
  Box<Integer> x49 = new Box<Integer>((int)0);
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x49, x50, (x48).get(), (x24).get(), (x21).get());
  Box<Integer> x51 = new Box<Integer>((int)0);
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x51, x52, (x50).get(), (x22).get(), (x19).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x53, x54, (x52).get(), (x20).get(), (x17).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x55, x56, (x54).get(), (x18).get(), (x15).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x57, x58, (x56).get(), (x16).get(), (x13).get());
  int x59 = ((x58).get() + (x14).get());
  Box<Integer> x60 = new Box<Integer>((int)0);
  Box<Integer> x61 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x60, x61, (x35).get(), 0xffffffff);
  Box<Integer> x62 = new Box<Integer>((int)0);
  Box<Integer> x63 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x62, x63, (x35).get(), 0xffffffff);
  Box<Integer> x64 = new Box<Integer>((int)0);
  Box<Integer> x65 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x64, x65, (x35).get(), 0xffffffff);
  Box<Integer> x66 = new Box<Integer>((int)0);
  Box<Integer> x67 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x66, x67, (x35).get(), 0xffffffff);
  Box<Integer> x68 = new Box<Integer>((int)0);
  Box<Integer> x69 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x68, x69, (x35).get(), 0xffffffff);
  Box<Integer> x70 = new Box<Integer>((int)0);
  Box<Integer> x71 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x70, x71, (x35).get(), 0xffffffff);
  Box<Integer> x72 = new Box<Integer>((int)0);
  Box<Integer> x73 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x72, x73, (x35).get(), 0xffffffff);
  Box<Integer> x74 = new Box<Integer>((int)0);
  Box<Integer> x75 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x74, x75, (x35).get(), 0xfffffffe);
  Box<Integer> x76 = new Box<Integer>((int)0);
  Box<Integer> x77 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x76, x77, (x35).get(), 0xffffffff);
  Box<Integer> x78 = new Box<Integer>((int)0);
  Box<Integer> x79 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x78, x79, (x35).get(), 0xffffffff);
  Box<Integer> x80 = new Box<Integer>((int)0);
  Box<Integer> x81 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x80, x81, 0x0, (x77).get(), (x74).get());
  Box<Integer> x82 = new Box<Integer>((int)0);
  Box<Integer> x83 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x82, x83, (x81).get(), (x75).get(), (x72).get());
  Box<Integer> x84 = new Box<Integer>((int)0);
  Box<Integer> x85 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x84, x85, (x83).get(), (x73).get(), (x70).get());
  Box<Integer> x86 = new Box<Integer>((int)0);
  Box<Integer> x87 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x86, x87, (x85).get(), (x71).get(), (x68).get());
  Box<Integer> x88 = new Box<Integer>((int)0);
  Box<Integer> x89 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x88, x89, (x87).get(), (x69).get(), (x66).get());
  Box<Integer> x90 = new Box<Integer>((int)0);
  Box<Integer> x91 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x90, x91, (x89).get(), (x67).get(), (x64).get());
  Box<Integer> x92 = new Box<Integer>((int)0);
  Box<Integer> x93 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x92, x93, (x91).get(), (x65).get(), (x62).get());
  Box<Integer> x94 = new Box<Integer>((int)0);
  Box<Integer> x95 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x94, x95, (x93).get(), (x63).get(), (x60).get());
  int x96 = ((x95).get() + (x61).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x97, x98, 0x0, (x35).get(), (x78).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x99, x100, (x98).get(), (x37).get(), (x79).get());
  Box<Integer> x101 = new Box<Integer>((int)0);
  Box<Integer> x102 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x101, x102, (x100).get(), (x39).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x103 = new Box<Integer>((int)0);
  Box<Integer> x104 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x103, x104, (x102).get(), (x41).get(), (x76).get());
  Box<Integer> x105 = new Box<Integer>((int)0);
  Box<Integer> x106 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x105, x106, (x104).get(), (x43).get(), (x80).get());
  Box<Integer> x107 = new Box<Integer>((int)0);
  Box<Integer> x108 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x107, x108, (x106).get(), (x45).get(), (x82).get());
  Box<Integer> x109 = new Box<Integer>((int)0);
  Box<Integer> x110 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x109, x110, (x108).get(), (x47).get(), (x84).get());
  Box<Integer> x111 = new Box<Integer>((int)0);
  Box<Integer> x112 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x111, x112, (x110).get(), (x49).get(), (x86).get());
  Box<Integer> x113 = new Box<Integer>((int)0);
  Box<Integer> x114 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x113, x114, (x112).get(), (x51).get(), (x88).get());
  Box<Integer> x115 = new Box<Integer>((int)0);
  Box<Integer> x116 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x115, x116, (x114).get(), (x53).get(), (x90).get());
  Box<Integer> x117 = new Box<Integer>((int)0);
  Box<Integer> x118 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x117, x118, (x116).get(), (x55).get(), (x92).get());
  Box<Integer> x119 = new Box<Integer>((int)0);
  Box<Integer> x120 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x119, x120, (x118).get(), (x57).get(), (x94).get());
  Box<Integer> x121 = new Box<Integer>((int)0);
  Box<Integer> x122 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x121, x122, (x120).get(), x59, x96);
  Box<Integer> x123 = new Box<Integer>((int)0);
  Box<Integer> x124 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x123, x124, x1, (arg2[11]));
  Box<Integer> x125 = new Box<Integer>((int)0);
  Box<Integer> x126 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x125, x126, x1, (arg2[10]));
  Box<Integer> x127 = new Box<Integer>((int)0);
  Box<Integer> x128 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x127, x128, x1, (arg2[9]));
  Box<Integer> x129 = new Box<Integer>((int)0);
  Box<Integer> x130 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x129, x130, x1, (arg2[8]));
  Box<Integer> x131 = new Box<Integer>((int)0);
  Box<Integer> x132 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x131, x132, x1, (arg2[7]));
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x133, x134, x1, (arg2[6]));
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x135, x136, x1, (arg2[5]));
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x137, x138, x1, (arg2[4]));
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x139, x140, x1, (arg2[3]));
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x141, x142, x1, (arg2[2]));
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x143, x144, x1, (arg2[1]));
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x145, x146, x1, (arg2[0]));
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x147, x148, 0x0, (x146).get(), (x143).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x149, x150, (x148).get(), (x144).get(), (x141).get());
  Box<Integer> x151 = new Box<Integer>((int)0);
  Box<Integer> x152 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x151, x152, (x150).get(), (x142).get(), (x139).get());
  Box<Integer> x153 = new Box<Integer>((int)0);
  Box<Integer> x154 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x153, x154, (x152).get(), (x140).get(), (x137).get());
  Box<Integer> x155 = new Box<Integer>((int)0);
  Box<Integer> x156 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x155, x156, (x154).get(), (x138).get(), (x135).get());
  Box<Integer> x157 = new Box<Integer>((int)0);
  Box<Integer> x158 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x157, x158, (x156).get(), (x136).get(), (x133).get());
  Box<Integer> x159 = new Box<Integer>((int)0);
  Box<Integer> x160 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x159, x160, (x158).get(), (x134).get(), (x131).get());
  Box<Integer> x161 = new Box<Integer>((int)0);
  Box<Integer> x162 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x161, x162, (x160).get(), (x132).get(), (x129).get());
  Box<Integer> x163 = new Box<Integer>((int)0);
  Box<Integer> x164 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x163, x164, (x162).get(), (x130).get(), (x127).get());
  Box<Integer> x165 = new Box<Integer>((int)0);
  Box<Integer> x166 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x165, x166, (x164).get(), (x128).get(), (x125).get());
  Box<Integer> x167 = new Box<Integer>((int)0);
  Box<Integer> x168 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x167, x168, (x166).get(), (x126).get(), (x123).get());
  int x169 = ((x168).get() + (x124).get());
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x170, x171, 0x0, (x99).get(), (x145).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x172, x173, (x171).get(), (x101).get(), (x147).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x174, x175, (x173).get(), (x103).get(), (x149).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x176, x177, (x175).get(), (x105).get(), (x151).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x178, x179, (x177).get(), (x107).get(), (x153).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x180, x181, (x179).get(), (x109).get(), (x155).get());
  Box<Integer> x182 = new Box<Integer>((int)0);
  Box<Integer> x183 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x182, x183, (x181).get(), (x111).get(), (x157).get());
  Box<Integer> x184 = new Box<Integer>((int)0);
  Box<Integer> x185 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x184, x185, (x183).get(), (x113).get(), (x159).get());
  Box<Integer> x186 = new Box<Integer>((int)0);
  Box<Integer> x187 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x186, x187, (x185).get(), (x115).get(), (x161).get());
  Box<Integer> x188 = new Box<Integer>((int)0);
  Box<Integer> x189 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x188, x189, (x187).get(), (x117).get(), (x163).get());
  Box<Integer> x190 = new Box<Integer>((int)0);
  Box<Integer> x191 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x190, x191, (x189).get(), (x119).get(), (x165).get());
  Box<Integer> x192 = new Box<Integer>((int)0);
  Box<Integer> x193 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x192, x193, (x191).get(), (x121).get(), (x167).get());
  Box<Integer> x194 = new Box<Integer>((int)0);
  Box<Integer> x195 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x194, x195, (x193).get(), (x122).get(), x169);
  Box<Integer> x196 = new Box<Integer>((int)0);
  Box<Integer> x197 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x196, x197, (x170).get(), 0xffffffff);
  Box<Integer> x198 = new Box<Integer>((int)0);
  Box<Integer> x199 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x198, x199, (x170).get(), 0xffffffff);
  Box<Integer> x200 = new Box<Integer>((int)0);
  Box<Integer> x201 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x200, x201, (x170).get(), 0xffffffff);
  Box<Integer> x202 = new Box<Integer>((int)0);
  Box<Integer> x203 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x202, x203, (x170).get(), 0xffffffff);
  Box<Integer> x204 = new Box<Integer>((int)0);
  Box<Integer> x205 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x204, x205, (x170).get(), 0xffffffff);
  Box<Integer> x206 = new Box<Integer>((int)0);
  Box<Integer> x207 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x206, x207, (x170).get(), 0xffffffff);
  Box<Integer> x208 = new Box<Integer>((int)0);
  Box<Integer> x209 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x208, x209, (x170).get(), 0xffffffff);
  Box<Integer> x210 = new Box<Integer>((int)0);
  Box<Integer> x211 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x210, x211, (x170).get(), 0xfffffffe);
  Box<Integer> x212 = new Box<Integer>((int)0);
  Box<Integer> x213 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x212, x213, (x170).get(), 0xffffffff);
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x214, x215, (x170).get(), 0xffffffff);
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x216, x217, 0x0, (x213).get(), (x210).get());
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x218, x219, (x217).get(), (x211).get(), (x208).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x220, x221, (x219).get(), (x209).get(), (x206).get());
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x222, x223, (x221).get(), (x207).get(), (x204).get());
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x224, x225, (x223).get(), (x205).get(), (x202).get());
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x226, x227, (x225).get(), (x203).get(), (x200).get());
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x228, x229, (x227).get(), (x201).get(), (x198).get());
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x230, x231, (x229).get(), (x199).get(), (x196).get());
  int x232 = ((x231).get() + (x197).get());
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x233, x234, 0x0, (x170).get(), (x214).get());
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x235, x236, (x234).get(), (x172).get(), (x215).get());
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x237, x238, (x236).get(), (x174).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x239, x240, (x238).get(), (x176).get(), (x212).get());
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x241, x242, (x240).get(), (x178).get(), (x216).get());
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x243, x244, (x242).get(), (x180).get(), (x218).get());
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x245, x246, (x244).get(), (x182).get(), (x220).get());
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x247, x248, (x246).get(), (x184).get(), (x222).get());
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x249, x250, (x248).get(), (x186).get(), (x224).get());
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x251, x252, (x250).get(), (x188).get(), (x226).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x253, x254, (x252).get(), (x190).get(), (x228).get());
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x255, x256, (x254).get(), (x192).get(), (x230).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x257, x258, (x256).get(), (x194).get(), x232);
  int x259 = ((x258).get() + (x195).get());
  Box<Integer> x260 = new Box<Integer>((int)0);
  Box<Integer> x261 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x260, x261, x2, (arg2[11]));
  Box<Integer> x262 = new Box<Integer>((int)0);
  Box<Integer> x263 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x262, x263, x2, (arg2[10]));
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x264, x265, x2, (arg2[9]));
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x266, x267, x2, (arg2[8]));
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x268, x269, x2, (arg2[7]));
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x270, x271, x2, (arg2[6]));
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x272, x273, x2, (arg2[5]));
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x274, x275, x2, (arg2[4]));
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x276, x277, x2, (arg2[3]));
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x278, x279, x2, (arg2[2]));
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x280, x281, x2, (arg2[1]));
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x282, x283, x2, (arg2[0]));
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x284, x285, 0x0, (x283).get(), (x280).get());
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x286, x287, (x285).get(), (x281).get(), (x278).get());
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x288, x289, (x287).get(), (x279).get(), (x276).get());
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x290, x291, (x289).get(), (x277).get(), (x274).get());
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x292, x293, (x291).get(), (x275).get(), (x272).get());
  Box<Integer> x294 = new Box<Integer>((int)0);
  Box<Integer> x295 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x294, x295, (x293).get(), (x273).get(), (x270).get());
  Box<Integer> x296 = new Box<Integer>((int)0);
  Box<Integer> x297 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x296, x297, (x295).get(), (x271).get(), (x268).get());
  Box<Integer> x298 = new Box<Integer>((int)0);
  Box<Integer> x299 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x298, x299, (x297).get(), (x269).get(), (x266).get());
  Box<Integer> x300 = new Box<Integer>((int)0);
  Box<Integer> x301 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x300, x301, (x299).get(), (x267).get(), (x264).get());
  Box<Integer> x302 = new Box<Integer>((int)0);
  Box<Integer> x303 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x302, x303, (x301).get(), (x265).get(), (x262).get());
  Box<Integer> x304 = new Box<Integer>((int)0);
  Box<Integer> x305 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x304, x305, (x303).get(), (x263).get(), (x260).get());
  int x306 = ((x305).get() + (x261).get());
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x307, x308, 0x0, (x235).get(), (x282).get());
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x309, x310, (x308).get(), (x237).get(), (x284).get());
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x311, x312, (x310).get(), (x239).get(), (x286).get());
  Box<Integer> x313 = new Box<Integer>((int)0);
  Box<Integer> x314 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x313, x314, (x312).get(), (x241).get(), (x288).get());
  Box<Integer> x315 = new Box<Integer>((int)0);
  Box<Integer> x316 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x315, x316, (x314).get(), (x243).get(), (x290).get());
  Box<Integer> x317 = new Box<Integer>((int)0);
  Box<Integer> x318 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x317, x318, (x316).get(), (x245).get(), (x292).get());
  Box<Integer> x319 = new Box<Integer>((int)0);
  Box<Integer> x320 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x319, x320, (x318).get(), (x247).get(), (x294).get());
  Box<Integer> x321 = new Box<Integer>((int)0);
  Box<Integer> x322 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x321, x322, (x320).get(), (x249).get(), (x296).get());
  Box<Integer> x323 = new Box<Integer>((int)0);
  Box<Integer> x324 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x323, x324, (x322).get(), (x251).get(), (x298).get());
  Box<Integer> x325 = new Box<Integer>((int)0);
  Box<Integer> x326 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x325, x326, (x324).get(), (x253).get(), (x300).get());
  Box<Integer> x327 = new Box<Integer>((int)0);
  Box<Integer> x328 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x327, x328, (x326).get(), (x255).get(), (x302).get());
  Box<Integer> x329 = new Box<Integer>((int)0);
  Box<Integer> x330 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x329, x330, (x328).get(), (x257).get(), (x304).get());
  Box<Integer> x331 = new Box<Integer>((int)0);
  Box<Integer> x332 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x331, x332, (x330).get(), x259, x306);
  Box<Integer> x333 = new Box<Integer>((int)0);
  Box<Integer> x334 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x333, x334, (x307).get(), 0xffffffff);
  Box<Integer> x335 = new Box<Integer>((int)0);
  Box<Integer> x336 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x335, x336, (x307).get(), 0xffffffff);
  Box<Integer> x337 = new Box<Integer>((int)0);
  Box<Integer> x338 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x337, x338, (x307).get(), 0xffffffff);
  Box<Integer> x339 = new Box<Integer>((int)0);
  Box<Integer> x340 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x339, x340, (x307).get(), 0xffffffff);
  Box<Integer> x341 = new Box<Integer>((int)0);
  Box<Integer> x342 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x341, x342, (x307).get(), 0xffffffff);
  Box<Integer> x343 = new Box<Integer>((int)0);
  Box<Integer> x344 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x343, x344, (x307).get(), 0xffffffff);
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x345, x346, (x307).get(), 0xffffffff);
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x347, x348, (x307).get(), 0xfffffffe);
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x349, x350, (x307).get(), 0xffffffff);
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x351, x352, (x307).get(), 0xffffffff);
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x353, x354, 0x0, (x350).get(), (x347).get());
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x355, x356, (x354).get(), (x348).get(), (x345).get());
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x357, x358, (x356).get(), (x346).get(), (x343).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x359, x360, (x358).get(), (x344).get(), (x341).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x361, x362, (x360).get(), (x342).get(), (x339).get());
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x363, x364, (x362).get(), (x340).get(), (x337).get());
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x365, x366, (x364).get(), (x338).get(), (x335).get());
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x367, x368, (x366).get(), (x336).get(), (x333).get());
  int x369 = ((x368).get() + (x334).get());
  Box<Integer> x370 = new Box<Integer>((int)0);
  Box<Integer> x371 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x370, x371, 0x0, (x307).get(), (x351).get());
  Box<Integer> x372 = new Box<Integer>((int)0);
  Box<Integer> x373 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x372, x373, (x371).get(), (x309).get(), (x352).get());
  Box<Integer> x374 = new Box<Integer>((int)0);
  Box<Integer> x375 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x374, x375, (x373).get(), (x311).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x376 = new Box<Integer>((int)0);
  Box<Integer> x377 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x376, x377, (x375).get(), (x313).get(), (x349).get());
  Box<Integer> x378 = new Box<Integer>((int)0);
  Box<Integer> x379 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x378, x379, (x377).get(), (x315).get(), (x353).get());
  Box<Integer> x380 = new Box<Integer>((int)0);
  Box<Integer> x381 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x380, x381, (x379).get(), (x317).get(), (x355).get());
  Box<Integer> x382 = new Box<Integer>((int)0);
  Box<Integer> x383 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x382, x383, (x381).get(), (x319).get(), (x357).get());
  Box<Integer> x384 = new Box<Integer>((int)0);
  Box<Integer> x385 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x384, x385, (x383).get(), (x321).get(), (x359).get());
  Box<Integer> x386 = new Box<Integer>((int)0);
  Box<Integer> x387 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x386, x387, (x385).get(), (x323).get(), (x361).get());
  Box<Integer> x388 = new Box<Integer>((int)0);
  Box<Integer> x389 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x388, x389, (x387).get(), (x325).get(), (x363).get());
  Box<Integer> x390 = new Box<Integer>((int)0);
  Box<Integer> x391 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x390, x391, (x389).get(), (x327).get(), (x365).get());
  Box<Integer> x392 = new Box<Integer>((int)0);
  Box<Integer> x393 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x392, x393, (x391).get(), (x329).get(), (x367).get());
  Box<Integer> x394 = new Box<Integer>((int)0);
  Box<Integer> x395 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x394, x395, (x393).get(), (x331).get(), x369);
  int x396 = ((x395).get() + (x332).get());
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x397, x398, x3, (arg2[11]));
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x399, x400, x3, (arg2[10]));
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x401, x402, x3, (arg2[9]));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x403, x404, x3, (arg2[8]));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x405, x406, x3, (arg2[7]));
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x407, x408, x3, (arg2[6]));
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x409, x410, x3, (arg2[5]));
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x411, x412, x3, (arg2[4]));
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x413, x414, x3, (arg2[3]));
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x415, x416, x3, (arg2[2]));
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x417, x418, x3, (arg2[1]));
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x419, x420, x3, (arg2[0]));
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x421, x422, 0x0, (x420).get(), (x417).get());
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x423, x424, (x422).get(), (x418).get(), (x415).get());
  Box<Integer> x425 = new Box<Integer>((int)0);
  Box<Integer> x426 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x425, x426, (x424).get(), (x416).get(), (x413).get());
  Box<Integer> x427 = new Box<Integer>((int)0);
  Box<Integer> x428 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x427, x428, (x426).get(), (x414).get(), (x411).get());
  Box<Integer> x429 = new Box<Integer>((int)0);
  Box<Integer> x430 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x429, x430, (x428).get(), (x412).get(), (x409).get());
  Box<Integer> x431 = new Box<Integer>((int)0);
  Box<Integer> x432 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x431, x432, (x430).get(), (x410).get(), (x407).get());
  Box<Integer> x433 = new Box<Integer>((int)0);
  Box<Integer> x434 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x433, x434, (x432).get(), (x408).get(), (x405).get());
  Box<Integer> x435 = new Box<Integer>((int)0);
  Box<Integer> x436 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x435, x436, (x434).get(), (x406).get(), (x403).get());
  Box<Integer> x437 = new Box<Integer>((int)0);
  Box<Integer> x438 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x437, x438, (x436).get(), (x404).get(), (x401).get());
  Box<Integer> x439 = new Box<Integer>((int)0);
  Box<Integer> x440 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x439, x440, (x438).get(), (x402).get(), (x399).get());
  Box<Integer> x441 = new Box<Integer>((int)0);
  Box<Integer> x442 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x441, x442, (x440).get(), (x400).get(), (x397).get());
  int x443 = ((x442).get() + (x398).get());
  Box<Integer> x444 = new Box<Integer>((int)0);
  Box<Integer> x445 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x444, x445, 0x0, (x372).get(), (x419).get());
  Box<Integer> x446 = new Box<Integer>((int)0);
  Box<Integer> x447 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x446, x447, (x445).get(), (x374).get(), (x421).get());
  Box<Integer> x448 = new Box<Integer>((int)0);
  Box<Integer> x449 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x448, x449, (x447).get(), (x376).get(), (x423).get());
  Box<Integer> x450 = new Box<Integer>((int)0);
  Box<Integer> x451 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x450, x451, (x449).get(), (x378).get(), (x425).get());
  Box<Integer> x452 = new Box<Integer>((int)0);
  Box<Integer> x453 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x452, x453, (x451).get(), (x380).get(), (x427).get());
  Box<Integer> x454 = new Box<Integer>((int)0);
  Box<Integer> x455 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x454, x455, (x453).get(), (x382).get(), (x429).get());
  Box<Integer> x456 = new Box<Integer>((int)0);
  Box<Integer> x457 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x456, x457, (x455).get(), (x384).get(), (x431).get());
  Box<Integer> x458 = new Box<Integer>((int)0);
  Box<Integer> x459 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x458, x459, (x457).get(), (x386).get(), (x433).get());
  Box<Integer> x460 = new Box<Integer>((int)0);
  Box<Integer> x461 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x460, x461, (x459).get(), (x388).get(), (x435).get());
  Box<Integer> x462 = new Box<Integer>((int)0);
  Box<Integer> x463 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x462, x463, (x461).get(), (x390).get(), (x437).get());
  Box<Integer> x464 = new Box<Integer>((int)0);
  Box<Integer> x465 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x464, x465, (x463).get(), (x392).get(), (x439).get());
  Box<Integer> x466 = new Box<Integer>((int)0);
  Box<Integer> x467 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x466, x467, (x465).get(), (x394).get(), (x441).get());
  Box<Integer> x468 = new Box<Integer>((int)0);
  Box<Integer> x469 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x468, x469, (x467).get(), x396, x443);
  Box<Integer> x470 = new Box<Integer>((int)0);
  Box<Integer> x471 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x470, x471, (x444).get(), 0xffffffff);
  Box<Integer> x472 = new Box<Integer>((int)0);
  Box<Integer> x473 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x472, x473, (x444).get(), 0xffffffff);
  Box<Integer> x474 = new Box<Integer>((int)0);
  Box<Integer> x475 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x474, x475, (x444).get(), 0xffffffff);
  Box<Integer> x476 = new Box<Integer>((int)0);
  Box<Integer> x477 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x476, x477, (x444).get(), 0xffffffff);
  Box<Integer> x478 = new Box<Integer>((int)0);
  Box<Integer> x479 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x478, x479, (x444).get(), 0xffffffff);
  Box<Integer> x480 = new Box<Integer>((int)0);
  Box<Integer> x481 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x480, x481, (x444).get(), 0xffffffff);
  Box<Integer> x482 = new Box<Integer>((int)0);
  Box<Integer> x483 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x482, x483, (x444).get(), 0xffffffff);
  Box<Integer> x484 = new Box<Integer>((int)0);
  Box<Integer> x485 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x484, x485, (x444).get(), 0xfffffffe);
  Box<Integer> x486 = new Box<Integer>((int)0);
  Box<Integer> x487 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x486, x487, (x444).get(), 0xffffffff);
  Box<Integer> x488 = new Box<Integer>((int)0);
  Box<Integer> x489 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x488, x489, (x444).get(), 0xffffffff);
  Box<Integer> x490 = new Box<Integer>((int)0);
  Box<Integer> x491 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x490, x491, 0x0, (x487).get(), (x484).get());
  Box<Integer> x492 = new Box<Integer>((int)0);
  Box<Integer> x493 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x492, x493, (x491).get(), (x485).get(), (x482).get());
  Box<Integer> x494 = new Box<Integer>((int)0);
  Box<Integer> x495 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x494, x495, (x493).get(), (x483).get(), (x480).get());
  Box<Integer> x496 = new Box<Integer>((int)0);
  Box<Integer> x497 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x496, x497, (x495).get(), (x481).get(), (x478).get());
  Box<Integer> x498 = new Box<Integer>((int)0);
  Box<Integer> x499 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x498, x499, (x497).get(), (x479).get(), (x476).get());
  Box<Integer> x500 = new Box<Integer>((int)0);
  Box<Integer> x501 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x500, x501, (x499).get(), (x477).get(), (x474).get());
  Box<Integer> x502 = new Box<Integer>((int)0);
  Box<Integer> x503 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x502, x503, (x501).get(), (x475).get(), (x472).get());
  Box<Integer> x504 = new Box<Integer>((int)0);
  Box<Integer> x505 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x504, x505, (x503).get(), (x473).get(), (x470).get());
  int x506 = ((x505).get() + (x471).get());
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x507, x508, 0x0, (x444).get(), (x488).get());
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x509, x510, (x508).get(), (x446).get(), (x489).get());
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x511, x512, (x510).get(), (x448).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x513, x514, (x512).get(), (x450).get(), (x486).get());
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x515, x516, (x514).get(), (x452).get(), (x490).get());
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x517, x518, (x516).get(), (x454).get(), (x492).get());
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x519, x520, (x518).get(), (x456).get(), (x494).get());
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x521, x522, (x520).get(), (x458).get(), (x496).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x523, x524, (x522).get(), (x460).get(), (x498).get());
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x525, x526, (x524).get(), (x462).get(), (x500).get());
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x527, x528, (x526).get(), (x464).get(), (x502).get());
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x529, x530, (x528).get(), (x466).get(), (x504).get());
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x531, x532, (x530).get(), (x468).get(), x506);
  int x533 = ((x532).get() + (x469).get());
  Box<Integer> x534 = new Box<Integer>((int)0);
  Box<Integer> x535 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x534, x535, x4, (arg2[11]));
  Box<Integer> x536 = new Box<Integer>((int)0);
  Box<Integer> x537 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x536, x537, x4, (arg2[10]));
  Box<Integer> x538 = new Box<Integer>((int)0);
  Box<Integer> x539 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x538, x539, x4, (arg2[9]));
  Box<Integer> x540 = new Box<Integer>((int)0);
  Box<Integer> x541 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x540, x541, x4, (arg2[8]));
  Box<Integer> x542 = new Box<Integer>((int)0);
  Box<Integer> x543 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x542, x543, x4, (arg2[7]));
  Box<Integer> x544 = new Box<Integer>((int)0);
  Box<Integer> x545 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x544, x545, x4, (arg2[6]));
  Box<Integer> x546 = new Box<Integer>((int)0);
  Box<Integer> x547 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x546, x547, x4, (arg2[5]));
  Box<Integer> x548 = new Box<Integer>((int)0);
  Box<Integer> x549 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x548, x549, x4, (arg2[4]));
  Box<Integer> x550 = new Box<Integer>((int)0);
  Box<Integer> x551 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x550, x551, x4, (arg2[3]));
  Box<Integer> x552 = new Box<Integer>((int)0);
  Box<Integer> x553 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x552, x553, x4, (arg2[2]));
  Box<Integer> x554 = new Box<Integer>((int)0);
  Box<Integer> x555 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x554, x555, x4, (arg2[1]));
  Box<Integer> x556 = new Box<Integer>((int)0);
  Box<Integer> x557 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x556, x557, x4, (arg2[0]));
  Box<Integer> x558 = new Box<Integer>((int)0);
  Box<Integer> x559 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x558, x559, 0x0, (x557).get(), (x554).get());
  Box<Integer> x560 = new Box<Integer>((int)0);
  Box<Integer> x561 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x560, x561, (x559).get(), (x555).get(), (x552).get());
  Box<Integer> x562 = new Box<Integer>((int)0);
  Box<Integer> x563 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x562, x563, (x561).get(), (x553).get(), (x550).get());
  Box<Integer> x564 = new Box<Integer>((int)0);
  Box<Integer> x565 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x564, x565, (x563).get(), (x551).get(), (x548).get());
  Box<Integer> x566 = new Box<Integer>((int)0);
  Box<Integer> x567 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x566, x567, (x565).get(), (x549).get(), (x546).get());
  Box<Integer> x568 = new Box<Integer>((int)0);
  Box<Integer> x569 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x568, x569, (x567).get(), (x547).get(), (x544).get());
  Box<Integer> x570 = new Box<Integer>((int)0);
  Box<Integer> x571 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x570, x571, (x569).get(), (x545).get(), (x542).get());
  Box<Integer> x572 = new Box<Integer>((int)0);
  Box<Integer> x573 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x572, x573, (x571).get(), (x543).get(), (x540).get());
  Box<Integer> x574 = new Box<Integer>((int)0);
  Box<Integer> x575 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x574, x575, (x573).get(), (x541).get(), (x538).get());
  Box<Integer> x576 = new Box<Integer>((int)0);
  Box<Integer> x577 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x576, x577, (x575).get(), (x539).get(), (x536).get());
  Box<Integer> x578 = new Box<Integer>((int)0);
  Box<Integer> x579 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x578, x579, (x577).get(), (x537).get(), (x534).get());
  int x580 = ((x579).get() + (x535).get());
  Box<Integer> x581 = new Box<Integer>((int)0);
  Box<Integer> x582 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x581, x582, 0x0, (x509).get(), (x556).get());
  Box<Integer> x583 = new Box<Integer>((int)0);
  Box<Integer> x584 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x583, x584, (x582).get(), (x511).get(), (x558).get());
  Box<Integer> x585 = new Box<Integer>((int)0);
  Box<Integer> x586 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x585, x586, (x584).get(), (x513).get(), (x560).get());
  Box<Integer> x587 = new Box<Integer>((int)0);
  Box<Integer> x588 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x587, x588, (x586).get(), (x515).get(), (x562).get());
  Box<Integer> x589 = new Box<Integer>((int)0);
  Box<Integer> x590 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x589, x590, (x588).get(), (x517).get(), (x564).get());
  Box<Integer> x591 = new Box<Integer>((int)0);
  Box<Integer> x592 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x591, x592, (x590).get(), (x519).get(), (x566).get());
  Box<Integer> x593 = new Box<Integer>((int)0);
  Box<Integer> x594 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x593, x594, (x592).get(), (x521).get(), (x568).get());
  Box<Integer> x595 = new Box<Integer>((int)0);
  Box<Integer> x596 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x595, x596, (x594).get(), (x523).get(), (x570).get());
  Box<Integer> x597 = new Box<Integer>((int)0);
  Box<Integer> x598 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x597, x598, (x596).get(), (x525).get(), (x572).get());
  Box<Integer> x599 = new Box<Integer>((int)0);
  Box<Integer> x600 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x599, x600, (x598).get(), (x527).get(), (x574).get());
  Box<Integer> x601 = new Box<Integer>((int)0);
  Box<Integer> x602 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x601, x602, (x600).get(), (x529).get(), (x576).get());
  Box<Integer> x603 = new Box<Integer>((int)0);
  Box<Integer> x604 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x603, x604, (x602).get(), (x531).get(), (x578).get());
  Box<Integer> x605 = new Box<Integer>((int)0);
  Box<Integer> x606 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x605, x606, (x604).get(), x533, x580);
  Box<Integer> x607 = new Box<Integer>((int)0);
  Box<Integer> x608 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x607, x608, (x581).get(), 0xffffffff);
  Box<Integer> x609 = new Box<Integer>((int)0);
  Box<Integer> x610 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x609, x610, (x581).get(), 0xffffffff);
  Box<Integer> x611 = new Box<Integer>((int)0);
  Box<Integer> x612 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x611, x612, (x581).get(), 0xffffffff);
  Box<Integer> x613 = new Box<Integer>((int)0);
  Box<Integer> x614 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x613, x614, (x581).get(), 0xffffffff);
  Box<Integer> x615 = new Box<Integer>((int)0);
  Box<Integer> x616 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x615, x616, (x581).get(), 0xffffffff);
  Box<Integer> x617 = new Box<Integer>((int)0);
  Box<Integer> x618 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x617, x618, (x581).get(), 0xffffffff);
  Box<Integer> x619 = new Box<Integer>((int)0);
  Box<Integer> x620 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x619, x620, (x581).get(), 0xffffffff);
  Box<Integer> x621 = new Box<Integer>((int)0);
  Box<Integer> x622 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x621, x622, (x581).get(), 0xfffffffe);
  Box<Integer> x623 = new Box<Integer>((int)0);
  Box<Integer> x624 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x623, x624, (x581).get(), 0xffffffff);
  Box<Integer> x625 = new Box<Integer>((int)0);
  Box<Integer> x626 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x625, x626, (x581).get(), 0xffffffff);
  Box<Integer> x627 = new Box<Integer>((int)0);
  Box<Integer> x628 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x627, x628, 0x0, (x624).get(), (x621).get());
  Box<Integer> x629 = new Box<Integer>((int)0);
  Box<Integer> x630 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x629, x630, (x628).get(), (x622).get(), (x619).get());
  Box<Integer> x631 = new Box<Integer>((int)0);
  Box<Integer> x632 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x631, x632, (x630).get(), (x620).get(), (x617).get());
  Box<Integer> x633 = new Box<Integer>((int)0);
  Box<Integer> x634 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x633, x634, (x632).get(), (x618).get(), (x615).get());
  Box<Integer> x635 = new Box<Integer>((int)0);
  Box<Integer> x636 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x635, x636, (x634).get(), (x616).get(), (x613).get());
  Box<Integer> x637 = new Box<Integer>((int)0);
  Box<Integer> x638 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x637, x638, (x636).get(), (x614).get(), (x611).get());
  Box<Integer> x639 = new Box<Integer>((int)0);
  Box<Integer> x640 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x639, x640, (x638).get(), (x612).get(), (x609).get());
  Box<Integer> x641 = new Box<Integer>((int)0);
  Box<Integer> x642 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x641, x642, (x640).get(), (x610).get(), (x607).get());
  int x643 = ((x642).get() + (x608).get());
  Box<Integer> x644 = new Box<Integer>((int)0);
  Box<Integer> x645 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x644, x645, 0x0, (x581).get(), (x625).get());
  Box<Integer> x646 = new Box<Integer>((int)0);
  Box<Integer> x647 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x646, x647, (x645).get(), (x583).get(), (x626).get());
  Box<Integer> x648 = new Box<Integer>((int)0);
  Box<Integer> x649 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x648, x649, (x647).get(), (x585).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x650 = new Box<Integer>((int)0);
  Box<Integer> x651 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x650, x651, (x649).get(), (x587).get(), (x623).get());
  Box<Integer> x652 = new Box<Integer>((int)0);
  Box<Integer> x653 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x652, x653, (x651).get(), (x589).get(), (x627).get());
  Box<Integer> x654 = new Box<Integer>((int)0);
  Box<Integer> x655 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x654, x655, (x653).get(), (x591).get(), (x629).get());
  Box<Integer> x656 = new Box<Integer>((int)0);
  Box<Integer> x657 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x656, x657, (x655).get(), (x593).get(), (x631).get());
  Box<Integer> x658 = new Box<Integer>((int)0);
  Box<Integer> x659 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x658, x659, (x657).get(), (x595).get(), (x633).get());
  Box<Integer> x660 = new Box<Integer>((int)0);
  Box<Integer> x661 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x660, x661, (x659).get(), (x597).get(), (x635).get());
  Box<Integer> x662 = new Box<Integer>((int)0);
  Box<Integer> x663 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x662, x663, (x661).get(), (x599).get(), (x637).get());
  Box<Integer> x664 = new Box<Integer>((int)0);
  Box<Integer> x665 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x664, x665, (x663).get(), (x601).get(), (x639).get());
  Box<Integer> x666 = new Box<Integer>((int)0);
  Box<Integer> x667 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x666, x667, (x665).get(), (x603).get(), (x641).get());
  Box<Integer> x668 = new Box<Integer>((int)0);
  Box<Integer> x669 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x668, x669, (x667).get(), (x605).get(), x643);
  int x670 = ((x669).get() + (x606).get());
  Box<Integer> x671 = new Box<Integer>((int)0);
  Box<Integer> x672 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x671, x672, x5, (arg2[11]));
  Box<Integer> x673 = new Box<Integer>((int)0);
  Box<Integer> x674 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x673, x674, x5, (arg2[10]));
  Box<Integer> x675 = new Box<Integer>((int)0);
  Box<Integer> x676 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x675, x676, x5, (arg2[9]));
  Box<Integer> x677 = new Box<Integer>((int)0);
  Box<Integer> x678 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x677, x678, x5, (arg2[8]));
  Box<Integer> x679 = new Box<Integer>((int)0);
  Box<Integer> x680 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x679, x680, x5, (arg2[7]));
  Box<Integer> x681 = new Box<Integer>((int)0);
  Box<Integer> x682 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x681, x682, x5, (arg2[6]));
  Box<Integer> x683 = new Box<Integer>((int)0);
  Box<Integer> x684 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x683, x684, x5, (arg2[5]));
  Box<Integer> x685 = new Box<Integer>((int)0);
  Box<Integer> x686 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x685, x686, x5, (arg2[4]));
  Box<Integer> x687 = new Box<Integer>((int)0);
  Box<Integer> x688 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x687, x688, x5, (arg2[3]));
  Box<Integer> x689 = new Box<Integer>((int)0);
  Box<Integer> x690 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x689, x690, x5, (arg2[2]));
  Box<Integer> x691 = new Box<Integer>((int)0);
  Box<Integer> x692 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x691, x692, x5, (arg2[1]));
  Box<Integer> x693 = new Box<Integer>((int)0);
  Box<Integer> x694 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x693, x694, x5, (arg2[0]));
  Box<Integer> x695 = new Box<Integer>((int)0);
  Box<Integer> x696 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x695, x696, 0x0, (x694).get(), (x691).get());
  Box<Integer> x697 = new Box<Integer>((int)0);
  Box<Integer> x698 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x697, x698, (x696).get(), (x692).get(), (x689).get());
  Box<Integer> x699 = new Box<Integer>((int)0);
  Box<Integer> x700 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x699, x700, (x698).get(), (x690).get(), (x687).get());
  Box<Integer> x701 = new Box<Integer>((int)0);
  Box<Integer> x702 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x701, x702, (x700).get(), (x688).get(), (x685).get());
  Box<Integer> x703 = new Box<Integer>((int)0);
  Box<Integer> x704 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x703, x704, (x702).get(), (x686).get(), (x683).get());
  Box<Integer> x705 = new Box<Integer>((int)0);
  Box<Integer> x706 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x705, x706, (x704).get(), (x684).get(), (x681).get());
  Box<Integer> x707 = new Box<Integer>((int)0);
  Box<Integer> x708 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x707, x708, (x706).get(), (x682).get(), (x679).get());
  Box<Integer> x709 = new Box<Integer>((int)0);
  Box<Integer> x710 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x709, x710, (x708).get(), (x680).get(), (x677).get());
  Box<Integer> x711 = new Box<Integer>((int)0);
  Box<Integer> x712 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x711, x712, (x710).get(), (x678).get(), (x675).get());
  Box<Integer> x713 = new Box<Integer>((int)0);
  Box<Integer> x714 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x713, x714, (x712).get(), (x676).get(), (x673).get());
  Box<Integer> x715 = new Box<Integer>((int)0);
  Box<Integer> x716 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x715, x716, (x714).get(), (x674).get(), (x671).get());
  int x717 = ((x716).get() + (x672).get());
  Box<Integer> x718 = new Box<Integer>((int)0);
  Box<Integer> x719 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x718, x719, 0x0, (x646).get(), (x693).get());
  Box<Integer> x720 = new Box<Integer>((int)0);
  Box<Integer> x721 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x720, x721, (x719).get(), (x648).get(), (x695).get());
  Box<Integer> x722 = new Box<Integer>((int)0);
  Box<Integer> x723 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x722, x723, (x721).get(), (x650).get(), (x697).get());
  Box<Integer> x724 = new Box<Integer>((int)0);
  Box<Integer> x725 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x724, x725, (x723).get(), (x652).get(), (x699).get());
  Box<Integer> x726 = new Box<Integer>((int)0);
  Box<Integer> x727 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x726, x727, (x725).get(), (x654).get(), (x701).get());
  Box<Integer> x728 = new Box<Integer>((int)0);
  Box<Integer> x729 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x728, x729, (x727).get(), (x656).get(), (x703).get());
  Box<Integer> x730 = new Box<Integer>((int)0);
  Box<Integer> x731 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x730, x731, (x729).get(), (x658).get(), (x705).get());
  Box<Integer> x732 = new Box<Integer>((int)0);
  Box<Integer> x733 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x732, x733, (x731).get(), (x660).get(), (x707).get());
  Box<Integer> x734 = new Box<Integer>((int)0);
  Box<Integer> x735 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x734, x735, (x733).get(), (x662).get(), (x709).get());
  Box<Integer> x736 = new Box<Integer>((int)0);
  Box<Integer> x737 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x736, x737, (x735).get(), (x664).get(), (x711).get());
  Box<Integer> x738 = new Box<Integer>((int)0);
  Box<Integer> x739 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x738, x739, (x737).get(), (x666).get(), (x713).get());
  Box<Integer> x740 = new Box<Integer>((int)0);
  Box<Integer> x741 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x740, x741, (x739).get(), (x668).get(), (x715).get());
  Box<Integer> x742 = new Box<Integer>((int)0);
  Box<Integer> x743 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x742, x743, (x741).get(), x670, x717);
  Box<Integer> x744 = new Box<Integer>((int)0);
  Box<Integer> x745 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x744, x745, (x718).get(), 0xffffffff);
  Box<Integer> x746 = new Box<Integer>((int)0);
  Box<Integer> x747 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x746, x747, (x718).get(), 0xffffffff);
  Box<Integer> x748 = new Box<Integer>((int)0);
  Box<Integer> x749 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x748, x749, (x718).get(), 0xffffffff);
  Box<Integer> x750 = new Box<Integer>((int)0);
  Box<Integer> x751 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x750, x751, (x718).get(), 0xffffffff);
  Box<Integer> x752 = new Box<Integer>((int)0);
  Box<Integer> x753 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x752, x753, (x718).get(), 0xffffffff);
  Box<Integer> x754 = new Box<Integer>((int)0);
  Box<Integer> x755 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x754, x755, (x718).get(), 0xffffffff);
  Box<Integer> x756 = new Box<Integer>((int)0);
  Box<Integer> x757 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x756, x757, (x718).get(), 0xffffffff);
  Box<Integer> x758 = new Box<Integer>((int)0);
  Box<Integer> x759 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x758, x759, (x718).get(), 0xfffffffe);
  Box<Integer> x760 = new Box<Integer>((int)0);
  Box<Integer> x761 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x760, x761, (x718).get(), 0xffffffff);
  Box<Integer> x762 = new Box<Integer>((int)0);
  Box<Integer> x763 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x762, x763, (x718).get(), 0xffffffff);
  Box<Integer> x764 = new Box<Integer>((int)0);
  Box<Integer> x765 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x764, x765, 0x0, (x761).get(), (x758).get());
  Box<Integer> x766 = new Box<Integer>((int)0);
  Box<Integer> x767 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x766, x767, (x765).get(), (x759).get(), (x756).get());
  Box<Integer> x768 = new Box<Integer>((int)0);
  Box<Integer> x769 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x768, x769, (x767).get(), (x757).get(), (x754).get());
  Box<Integer> x770 = new Box<Integer>((int)0);
  Box<Integer> x771 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x770, x771, (x769).get(), (x755).get(), (x752).get());
  Box<Integer> x772 = new Box<Integer>((int)0);
  Box<Integer> x773 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x772, x773, (x771).get(), (x753).get(), (x750).get());
  Box<Integer> x774 = new Box<Integer>((int)0);
  Box<Integer> x775 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x774, x775, (x773).get(), (x751).get(), (x748).get());
  Box<Integer> x776 = new Box<Integer>((int)0);
  Box<Integer> x777 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x776, x777, (x775).get(), (x749).get(), (x746).get());
  Box<Integer> x778 = new Box<Integer>((int)0);
  Box<Integer> x779 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x778, x779, (x777).get(), (x747).get(), (x744).get());
  int x780 = ((x779).get() + (x745).get());
  Box<Integer> x781 = new Box<Integer>((int)0);
  Box<Integer> x782 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x781, x782, 0x0, (x718).get(), (x762).get());
  Box<Integer> x783 = new Box<Integer>((int)0);
  Box<Integer> x784 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x783, x784, (x782).get(), (x720).get(), (x763).get());
  Box<Integer> x785 = new Box<Integer>((int)0);
  Box<Integer> x786 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x785, x786, (x784).get(), (x722).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x787 = new Box<Integer>((int)0);
  Box<Integer> x788 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x787, x788, (x786).get(), (x724).get(), (x760).get());
  Box<Integer> x789 = new Box<Integer>((int)0);
  Box<Integer> x790 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x789, x790, (x788).get(), (x726).get(), (x764).get());
  Box<Integer> x791 = new Box<Integer>((int)0);
  Box<Integer> x792 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x791, x792, (x790).get(), (x728).get(), (x766).get());
  Box<Integer> x793 = new Box<Integer>((int)0);
  Box<Integer> x794 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x793, x794, (x792).get(), (x730).get(), (x768).get());
  Box<Integer> x795 = new Box<Integer>((int)0);
  Box<Integer> x796 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x795, x796, (x794).get(), (x732).get(), (x770).get());
  Box<Integer> x797 = new Box<Integer>((int)0);
  Box<Integer> x798 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x797, x798, (x796).get(), (x734).get(), (x772).get());
  Box<Integer> x799 = new Box<Integer>((int)0);
  Box<Integer> x800 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x799, x800, (x798).get(), (x736).get(), (x774).get());
  Box<Integer> x801 = new Box<Integer>((int)0);
  Box<Integer> x802 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x801, x802, (x800).get(), (x738).get(), (x776).get());
  Box<Integer> x803 = new Box<Integer>((int)0);
  Box<Integer> x804 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x803, x804, (x802).get(), (x740).get(), (x778).get());
  Box<Integer> x805 = new Box<Integer>((int)0);
  Box<Integer> x806 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x805, x806, (x804).get(), (x742).get(), x780);
  int x807 = ((x806).get() + (x743).get());
  Box<Integer> x808 = new Box<Integer>((int)0);
  Box<Integer> x809 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x808, x809, x6, (arg2[11]));
  Box<Integer> x810 = new Box<Integer>((int)0);
  Box<Integer> x811 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x810, x811, x6, (arg2[10]));
  Box<Integer> x812 = new Box<Integer>((int)0);
  Box<Integer> x813 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x812, x813, x6, (arg2[9]));
  Box<Integer> x814 = new Box<Integer>((int)0);
  Box<Integer> x815 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x814, x815, x6, (arg2[8]));
  Box<Integer> x816 = new Box<Integer>((int)0);
  Box<Integer> x817 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x816, x817, x6, (arg2[7]));
  Box<Integer> x818 = new Box<Integer>((int)0);
  Box<Integer> x819 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x818, x819, x6, (arg2[6]));
  Box<Integer> x820 = new Box<Integer>((int)0);
  Box<Integer> x821 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x820, x821, x6, (arg2[5]));
  Box<Integer> x822 = new Box<Integer>((int)0);
  Box<Integer> x823 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x822, x823, x6, (arg2[4]));
  Box<Integer> x824 = new Box<Integer>((int)0);
  Box<Integer> x825 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x824, x825, x6, (arg2[3]));
  Box<Integer> x826 = new Box<Integer>((int)0);
  Box<Integer> x827 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x826, x827, x6, (arg2[2]));
  Box<Integer> x828 = new Box<Integer>((int)0);
  Box<Integer> x829 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x828, x829, x6, (arg2[1]));
  Box<Integer> x830 = new Box<Integer>((int)0);
  Box<Integer> x831 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x830, x831, x6, (arg2[0]));
  Box<Integer> x832 = new Box<Integer>((int)0);
  Box<Integer> x833 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x832, x833, 0x0, (x831).get(), (x828).get());
  Box<Integer> x834 = new Box<Integer>((int)0);
  Box<Integer> x835 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x834, x835, (x833).get(), (x829).get(), (x826).get());
  Box<Integer> x836 = new Box<Integer>((int)0);
  Box<Integer> x837 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x836, x837, (x835).get(), (x827).get(), (x824).get());
  Box<Integer> x838 = new Box<Integer>((int)0);
  Box<Integer> x839 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x838, x839, (x837).get(), (x825).get(), (x822).get());
  Box<Integer> x840 = new Box<Integer>((int)0);
  Box<Integer> x841 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x840, x841, (x839).get(), (x823).get(), (x820).get());
  Box<Integer> x842 = new Box<Integer>((int)0);
  Box<Integer> x843 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x842, x843, (x841).get(), (x821).get(), (x818).get());
  Box<Integer> x844 = new Box<Integer>((int)0);
  Box<Integer> x845 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x844, x845, (x843).get(), (x819).get(), (x816).get());
  Box<Integer> x846 = new Box<Integer>((int)0);
  Box<Integer> x847 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x846, x847, (x845).get(), (x817).get(), (x814).get());
  Box<Integer> x848 = new Box<Integer>((int)0);
  Box<Integer> x849 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x848, x849, (x847).get(), (x815).get(), (x812).get());
  Box<Integer> x850 = new Box<Integer>((int)0);
  Box<Integer> x851 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x850, x851, (x849).get(), (x813).get(), (x810).get());
  Box<Integer> x852 = new Box<Integer>((int)0);
  Box<Integer> x853 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x852, x853, (x851).get(), (x811).get(), (x808).get());
  int x854 = ((x853).get() + (x809).get());
  Box<Integer> x855 = new Box<Integer>((int)0);
  Box<Integer> x856 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x855, x856, 0x0, (x783).get(), (x830).get());
  Box<Integer> x857 = new Box<Integer>((int)0);
  Box<Integer> x858 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x857, x858, (x856).get(), (x785).get(), (x832).get());
  Box<Integer> x859 = new Box<Integer>((int)0);
  Box<Integer> x860 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x859, x860, (x858).get(), (x787).get(), (x834).get());
  Box<Integer> x861 = new Box<Integer>((int)0);
  Box<Integer> x862 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x861, x862, (x860).get(), (x789).get(), (x836).get());
  Box<Integer> x863 = new Box<Integer>((int)0);
  Box<Integer> x864 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x863, x864, (x862).get(), (x791).get(), (x838).get());
  Box<Integer> x865 = new Box<Integer>((int)0);
  Box<Integer> x866 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x865, x866, (x864).get(), (x793).get(), (x840).get());
  Box<Integer> x867 = new Box<Integer>((int)0);
  Box<Integer> x868 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x867, x868, (x866).get(), (x795).get(), (x842).get());
  Box<Integer> x869 = new Box<Integer>((int)0);
  Box<Integer> x870 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x869, x870, (x868).get(), (x797).get(), (x844).get());
  Box<Integer> x871 = new Box<Integer>((int)0);
  Box<Integer> x872 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x871, x872, (x870).get(), (x799).get(), (x846).get());
  Box<Integer> x873 = new Box<Integer>((int)0);
  Box<Integer> x874 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x873, x874, (x872).get(), (x801).get(), (x848).get());
  Box<Integer> x875 = new Box<Integer>((int)0);
  Box<Integer> x876 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x875, x876, (x874).get(), (x803).get(), (x850).get());
  Box<Integer> x877 = new Box<Integer>((int)0);
  Box<Integer> x878 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x877, x878, (x876).get(), (x805).get(), (x852).get());
  Box<Integer> x879 = new Box<Integer>((int)0);
  Box<Integer> x880 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x879, x880, (x878).get(), x807, x854);
  Box<Integer> x881 = new Box<Integer>((int)0);
  Box<Integer> x882 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x881, x882, (x855).get(), 0xffffffff);
  Box<Integer> x883 = new Box<Integer>((int)0);
  Box<Integer> x884 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x883, x884, (x855).get(), 0xffffffff);
  Box<Integer> x885 = new Box<Integer>((int)0);
  Box<Integer> x886 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x885, x886, (x855).get(), 0xffffffff);
  Box<Integer> x887 = new Box<Integer>((int)0);
  Box<Integer> x888 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x887, x888, (x855).get(), 0xffffffff);
  Box<Integer> x889 = new Box<Integer>((int)0);
  Box<Integer> x890 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x889, x890, (x855).get(), 0xffffffff);
  Box<Integer> x891 = new Box<Integer>((int)0);
  Box<Integer> x892 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x891, x892, (x855).get(), 0xffffffff);
  Box<Integer> x893 = new Box<Integer>((int)0);
  Box<Integer> x894 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x893, x894, (x855).get(), 0xffffffff);
  Box<Integer> x895 = new Box<Integer>((int)0);
  Box<Integer> x896 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x895, x896, (x855).get(), 0xfffffffe);
  Box<Integer> x897 = new Box<Integer>((int)0);
  Box<Integer> x898 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x897, x898, (x855).get(), 0xffffffff);
  Box<Integer> x899 = new Box<Integer>((int)0);
  Box<Integer> x900 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x899, x900, (x855).get(), 0xffffffff);
  Box<Integer> x901 = new Box<Integer>((int)0);
  Box<Integer> x902 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x901, x902, 0x0, (x898).get(), (x895).get());
  Box<Integer> x903 = new Box<Integer>((int)0);
  Box<Integer> x904 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x903, x904, (x902).get(), (x896).get(), (x893).get());
  Box<Integer> x905 = new Box<Integer>((int)0);
  Box<Integer> x906 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x905, x906, (x904).get(), (x894).get(), (x891).get());
  Box<Integer> x907 = new Box<Integer>((int)0);
  Box<Integer> x908 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x907, x908, (x906).get(), (x892).get(), (x889).get());
  Box<Integer> x909 = new Box<Integer>((int)0);
  Box<Integer> x910 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x909, x910, (x908).get(), (x890).get(), (x887).get());
  Box<Integer> x911 = new Box<Integer>((int)0);
  Box<Integer> x912 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x911, x912, (x910).get(), (x888).get(), (x885).get());
  Box<Integer> x913 = new Box<Integer>((int)0);
  Box<Integer> x914 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x913, x914, (x912).get(), (x886).get(), (x883).get());
  Box<Integer> x915 = new Box<Integer>((int)0);
  Box<Integer> x916 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x915, x916, (x914).get(), (x884).get(), (x881).get());
  int x917 = ((x916).get() + (x882).get());
  Box<Integer> x918 = new Box<Integer>((int)0);
  Box<Integer> x919 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x918, x919, 0x0, (x855).get(), (x899).get());
  Box<Integer> x920 = new Box<Integer>((int)0);
  Box<Integer> x921 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x920, x921, (x919).get(), (x857).get(), (x900).get());
  Box<Integer> x922 = new Box<Integer>((int)0);
  Box<Integer> x923 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x922, x923, (x921).get(), (x859).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x924 = new Box<Integer>((int)0);
  Box<Integer> x925 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x924, x925, (x923).get(), (x861).get(), (x897).get());
  Box<Integer> x926 = new Box<Integer>((int)0);
  Box<Integer> x927 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x926, x927, (x925).get(), (x863).get(), (x901).get());
  Box<Integer> x928 = new Box<Integer>((int)0);
  Box<Integer> x929 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x928, x929, (x927).get(), (x865).get(), (x903).get());
  Box<Integer> x930 = new Box<Integer>((int)0);
  Box<Integer> x931 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x930, x931, (x929).get(), (x867).get(), (x905).get());
  Box<Integer> x932 = new Box<Integer>((int)0);
  Box<Integer> x933 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x932, x933, (x931).get(), (x869).get(), (x907).get());
  Box<Integer> x934 = new Box<Integer>((int)0);
  Box<Integer> x935 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x934, x935, (x933).get(), (x871).get(), (x909).get());
  Box<Integer> x936 = new Box<Integer>((int)0);
  Box<Integer> x937 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x936, x937, (x935).get(), (x873).get(), (x911).get());
  Box<Integer> x938 = new Box<Integer>((int)0);
  Box<Integer> x939 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x938, x939, (x937).get(), (x875).get(), (x913).get());
  Box<Integer> x940 = new Box<Integer>((int)0);
  Box<Integer> x941 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x940, x941, (x939).get(), (x877).get(), (x915).get());
  Box<Integer> x942 = new Box<Integer>((int)0);
  Box<Integer> x943 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x942, x943, (x941).get(), (x879).get(), x917);
  int x944 = ((x943).get() + (x880).get());
  Box<Integer> x945 = new Box<Integer>((int)0);
  Box<Integer> x946 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x945, x946, x7, (arg2[11]));
  Box<Integer> x947 = new Box<Integer>((int)0);
  Box<Integer> x948 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x947, x948, x7, (arg2[10]));
  Box<Integer> x949 = new Box<Integer>((int)0);
  Box<Integer> x950 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x949, x950, x7, (arg2[9]));
  Box<Integer> x951 = new Box<Integer>((int)0);
  Box<Integer> x952 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x951, x952, x7, (arg2[8]));
  Box<Integer> x953 = new Box<Integer>((int)0);
  Box<Integer> x954 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x953, x954, x7, (arg2[7]));
  Box<Integer> x955 = new Box<Integer>((int)0);
  Box<Integer> x956 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x955, x956, x7, (arg2[6]));
  Box<Integer> x957 = new Box<Integer>((int)0);
  Box<Integer> x958 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x957, x958, x7, (arg2[5]));
  Box<Integer> x959 = new Box<Integer>((int)0);
  Box<Integer> x960 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x959, x960, x7, (arg2[4]));
  Box<Integer> x961 = new Box<Integer>((int)0);
  Box<Integer> x962 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x961, x962, x7, (arg2[3]));
  Box<Integer> x963 = new Box<Integer>((int)0);
  Box<Integer> x964 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x963, x964, x7, (arg2[2]));
  Box<Integer> x965 = new Box<Integer>((int)0);
  Box<Integer> x966 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x965, x966, x7, (arg2[1]));
  Box<Integer> x967 = new Box<Integer>((int)0);
  Box<Integer> x968 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x967, x968, x7, (arg2[0]));
  Box<Integer> x969 = new Box<Integer>((int)0);
  Box<Integer> x970 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x969, x970, 0x0, (x968).get(), (x965).get());
  Box<Integer> x971 = new Box<Integer>((int)0);
  Box<Integer> x972 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x971, x972, (x970).get(), (x966).get(), (x963).get());
  Box<Integer> x973 = new Box<Integer>((int)0);
  Box<Integer> x974 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x973, x974, (x972).get(), (x964).get(), (x961).get());
  Box<Integer> x975 = new Box<Integer>((int)0);
  Box<Integer> x976 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x975, x976, (x974).get(), (x962).get(), (x959).get());
  Box<Integer> x977 = new Box<Integer>((int)0);
  Box<Integer> x978 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x977, x978, (x976).get(), (x960).get(), (x957).get());
  Box<Integer> x979 = new Box<Integer>((int)0);
  Box<Integer> x980 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x979, x980, (x978).get(), (x958).get(), (x955).get());
  Box<Integer> x981 = new Box<Integer>((int)0);
  Box<Integer> x982 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x981, x982, (x980).get(), (x956).get(), (x953).get());
  Box<Integer> x983 = new Box<Integer>((int)0);
  Box<Integer> x984 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x983, x984, (x982).get(), (x954).get(), (x951).get());
  Box<Integer> x985 = new Box<Integer>((int)0);
  Box<Integer> x986 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x985, x986, (x984).get(), (x952).get(), (x949).get());
  Box<Integer> x987 = new Box<Integer>((int)0);
  Box<Integer> x988 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x987, x988, (x986).get(), (x950).get(), (x947).get());
  Box<Integer> x989 = new Box<Integer>((int)0);
  Box<Integer> x990 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x989, x990, (x988).get(), (x948).get(), (x945).get());
  int x991 = ((x990).get() + (x946).get());
  Box<Integer> x992 = new Box<Integer>((int)0);
  Box<Integer> x993 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x992, x993, 0x0, (x920).get(), (x967).get());
  Box<Integer> x994 = new Box<Integer>((int)0);
  Box<Integer> x995 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x994, x995, (x993).get(), (x922).get(), (x969).get());
  Box<Integer> x996 = new Box<Integer>((int)0);
  Box<Integer> x997 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x996, x997, (x995).get(), (x924).get(), (x971).get());
  Box<Integer> x998 = new Box<Integer>((int)0);
  Box<Integer> x999 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x998, x999, (x997).get(), (x926).get(), (x973).get());
  Box<Integer> x1000 = new Box<Integer>((int)0);
  Box<Integer> x1001 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1000, x1001, (x999).get(), (x928).get(), (x975).get());
  Box<Integer> x1002 = new Box<Integer>((int)0);
  Box<Integer> x1003 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1002, x1003, (x1001).get(), (x930).get(), (x977).get());
  Box<Integer> x1004 = new Box<Integer>((int)0);
  Box<Integer> x1005 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1004, x1005, (x1003).get(), (x932).get(), (x979).get());
  Box<Integer> x1006 = new Box<Integer>((int)0);
  Box<Integer> x1007 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1006, x1007, (x1005).get(), (x934).get(), (x981).get());
  Box<Integer> x1008 = new Box<Integer>((int)0);
  Box<Integer> x1009 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1008, x1009, (x1007).get(), (x936).get(), (x983).get());
  Box<Integer> x1010 = new Box<Integer>((int)0);
  Box<Integer> x1011 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1010, x1011, (x1009).get(), (x938).get(), (x985).get());
  Box<Integer> x1012 = new Box<Integer>((int)0);
  Box<Integer> x1013 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1012, x1013, (x1011).get(), (x940).get(), (x987).get());
  Box<Integer> x1014 = new Box<Integer>((int)0);
  Box<Integer> x1015 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1014, x1015, (x1013).get(), (x942).get(), (x989).get());
  Box<Integer> x1016 = new Box<Integer>((int)0);
  Box<Integer> x1017 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1016, x1017, (x1015).get(), x944, x991);
  Box<Integer> x1018 = new Box<Integer>((int)0);
  Box<Integer> x1019 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1018, x1019, (x992).get(), 0xffffffff);
  Box<Integer> x1020 = new Box<Integer>((int)0);
  Box<Integer> x1021 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1020, x1021, (x992).get(), 0xffffffff);
  Box<Integer> x1022 = new Box<Integer>((int)0);
  Box<Integer> x1023 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1022, x1023, (x992).get(), 0xffffffff);
  Box<Integer> x1024 = new Box<Integer>((int)0);
  Box<Integer> x1025 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1024, x1025, (x992).get(), 0xffffffff);
  Box<Integer> x1026 = new Box<Integer>((int)0);
  Box<Integer> x1027 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1026, x1027, (x992).get(), 0xffffffff);
  Box<Integer> x1028 = new Box<Integer>((int)0);
  Box<Integer> x1029 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1028, x1029, (x992).get(), 0xffffffff);
  Box<Integer> x1030 = new Box<Integer>((int)0);
  Box<Integer> x1031 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1030, x1031, (x992).get(), 0xffffffff);
  Box<Integer> x1032 = new Box<Integer>((int)0);
  Box<Integer> x1033 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1032, x1033, (x992).get(), 0xfffffffe);
  Box<Integer> x1034 = new Box<Integer>((int)0);
  Box<Integer> x1035 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1034, x1035, (x992).get(), 0xffffffff);
  Box<Integer> x1036 = new Box<Integer>((int)0);
  Box<Integer> x1037 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1036, x1037, (x992).get(), 0xffffffff);
  Box<Integer> x1038 = new Box<Integer>((int)0);
  Box<Integer> x1039 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1038, x1039, 0x0, (x1035).get(), (x1032).get());
  Box<Integer> x1040 = new Box<Integer>((int)0);
  Box<Integer> x1041 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1040, x1041, (x1039).get(), (x1033).get(), (x1030).get());
  Box<Integer> x1042 = new Box<Integer>((int)0);
  Box<Integer> x1043 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1042, x1043, (x1041).get(), (x1031).get(), (x1028).get());
  Box<Integer> x1044 = new Box<Integer>((int)0);
  Box<Integer> x1045 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1044, x1045, (x1043).get(), (x1029).get(), (x1026).get());
  Box<Integer> x1046 = new Box<Integer>((int)0);
  Box<Integer> x1047 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1046, x1047, (x1045).get(), (x1027).get(), (x1024).get());
  Box<Integer> x1048 = new Box<Integer>((int)0);
  Box<Integer> x1049 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1048, x1049, (x1047).get(), (x1025).get(), (x1022).get());
  Box<Integer> x1050 = new Box<Integer>((int)0);
  Box<Integer> x1051 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1050, x1051, (x1049).get(), (x1023).get(), (x1020).get());
  Box<Integer> x1052 = new Box<Integer>((int)0);
  Box<Integer> x1053 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1052, x1053, (x1051).get(), (x1021).get(), (x1018).get());
  int x1054 = ((x1053).get() + (x1019).get());
  Box<Integer> x1055 = new Box<Integer>((int)0);
  Box<Integer> x1056 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1055, x1056, 0x0, (x992).get(), (x1036).get());
  Box<Integer> x1057 = new Box<Integer>((int)0);
  Box<Integer> x1058 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1057, x1058, (x1056).get(), (x994).get(), (x1037).get());
  Box<Integer> x1059 = new Box<Integer>((int)0);
  Box<Integer> x1060 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1059, x1060, (x1058).get(), (x996).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1061 = new Box<Integer>((int)0);
  Box<Integer> x1062 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1061, x1062, (x1060).get(), (x998).get(), (x1034).get());
  Box<Integer> x1063 = new Box<Integer>((int)0);
  Box<Integer> x1064 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1063, x1064, (x1062).get(), (x1000).get(), (x1038).get());
  Box<Integer> x1065 = new Box<Integer>((int)0);
  Box<Integer> x1066 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1065, x1066, (x1064).get(), (x1002).get(), (x1040).get());
  Box<Integer> x1067 = new Box<Integer>((int)0);
  Box<Integer> x1068 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1067, x1068, (x1066).get(), (x1004).get(), (x1042).get());
  Box<Integer> x1069 = new Box<Integer>((int)0);
  Box<Integer> x1070 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1069, x1070, (x1068).get(), (x1006).get(), (x1044).get());
  Box<Integer> x1071 = new Box<Integer>((int)0);
  Box<Integer> x1072 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1071, x1072, (x1070).get(), (x1008).get(), (x1046).get());
  Box<Integer> x1073 = new Box<Integer>((int)0);
  Box<Integer> x1074 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1073, x1074, (x1072).get(), (x1010).get(), (x1048).get());
  Box<Integer> x1075 = new Box<Integer>((int)0);
  Box<Integer> x1076 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1075, x1076, (x1074).get(), (x1012).get(), (x1050).get());
  Box<Integer> x1077 = new Box<Integer>((int)0);
  Box<Integer> x1078 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1077, x1078, (x1076).get(), (x1014).get(), (x1052).get());
  Box<Integer> x1079 = new Box<Integer>((int)0);
  Box<Integer> x1080 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1079, x1080, (x1078).get(), (x1016).get(), x1054);
  int x1081 = ((x1080).get() + (x1017).get());
  Box<Integer> x1082 = new Box<Integer>((int)0);
  Box<Integer> x1083 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1082, x1083, x8, (arg2[11]));
  Box<Integer> x1084 = new Box<Integer>((int)0);
  Box<Integer> x1085 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1084, x1085, x8, (arg2[10]));
  Box<Integer> x1086 = new Box<Integer>((int)0);
  Box<Integer> x1087 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1086, x1087, x8, (arg2[9]));
  Box<Integer> x1088 = new Box<Integer>((int)0);
  Box<Integer> x1089 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1088, x1089, x8, (arg2[8]));
  Box<Integer> x1090 = new Box<Integer>((int)0);
  Box<Integer> x1091 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1090, x1091, x8, (arg2[7]));
  Box<Integer> x1092 = new Box<Integer>((int)0);
  Box<Integer> x1093 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1092, x1093, x8, (arg2[6]));
  Box<Integer> x1094 = new Box<Integer>((int)0);
  Box<Integer> x1095 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1094, x1095, x8, (arg2[5]));
  Box<Integer> x1096 = new Box<Integer>((int)0);
  Box<Integer> x1097 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1096, x1097, x8, (arg2[4]));
  Box<Integer> x1098 = new Box<Integer>((int)0);
  Box<Integer> x1099 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1098, x1099, x8, (arg2[3]));
  Box<Integer> x1100 = new Box<Integer>((int)0);
  Box<Integer> x1101 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1100, x1101, x8, (arg2[2]));
  Box<Integer> x1102 = new Box<Integer>((int)0);
  Box<Integer> x1103 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1102, x1103, x8, (arg2[1]));
  Box<Integer> x1104 = new Box<Integer>((int)0);
  Box<Integer> x1105 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1104, x1105, x8, (arg2[0]));
  Box<Integer> x1106 = new Box<Integer>((int)0);
  Box<Integer> x1107 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1106, x1107, 0x0, (x1105).get(), (x1102).get());
  Box<Integer> x1108 = new Box<Integer>((int)0);
  Box<Integer> x1109 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1108, x1109, (x1107).get(), (x1103).get(), (x1100).get());
  Box<Integer> x1110 = new Box<Integer>((int)0);
  Box<Integer> x1111 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1110, x1111, (x1109).get(), (x1101).get(), (x1098).get());
  Box<Integer> x1112 = new Box<Integer>((int)0);
  Box<Integer> x1113 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1112, x1113, (x1111).get(), (x1099).get(), (x1096).get());
  Box<Integer> x1114 = new Box<Integer>((int)0);
  Box<Integer> x1115 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1114, x1115, (x1113).get(), (x1097).get(), (x1094).get());
  Box<Integer> x1116 = new Box<Integer>((int)0);
  Box<Integer> x1117 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1116, x1117, (x1115).get(), (x1095).get(), (x1092).get());
  Box<Integer> x1118 = new Box<Integer>((int)0);
  Box<Integer> x1119 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1118, x1119, (x1117).get(), (x1093).get(), (x1090).get());
  Box<Integer> x1120 = new Box<Integer>((int)0);
  Box<Integer> x1121 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1120, x1121, (x1119).get(), (x1091).get(), (x1088).get());
  Box<Integer> x1122 = new Box<Integer>((int)0);
  Box<Integer> x1123 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1122, x1123, (x1121).get(), (x1089).get(), (x1086).get());
  Box<Integer> x1124 = new Box<Integer>((int)0);
  Box<Integer> x1125 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1124, x1125, (x1123).get(), (x1087).get(), (x1084).get());
  Box<Integer> x1126 = new Box<Integer>((int)0);
  Box<Integer> x1127 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1126, x1127, (x1125).get(), (x1085).get(), (x1082).get());
  int x1128 = ((x1127).get() + (x1083).get());
  Box<Integer> x1129 = new Box<Integer>((int)0);
  Box<Integer> x1130 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1129, x1130, 0x0, (x1057).get(), (x1104).get());
  Box<Integer> x1131 = new Box<Integer>((int)0);
  Box<Integer> x1132 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1131, x1132, (x1130).get(), (x1059).get(), (x1106).get());
  Box<Integer> x1133 = new Box<Integer>((int)0);
  Box<Integer> x1134 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1133, x1134, (x1132).get(), (x1061).get(), (x1108).get());
  Box<Integer> x1135 = new Box<Integer>((int)0);
  Box<Integer> x1136 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1135, x1136, (x1134).get(), (x1063).get(), (x1110).get());
  Box<Integer> x1137 = new Box<Integer>((int)0);
  Box<Integer> x1138 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1137, x1138, (x1136).get(), (x1065).get(), (x1112).get());
  Box<Integer> x1139 = new Box<Integer>((int)0);
  Box<Integer> x1140 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1139, x1140, (x1138).get(), (x1067).get(), (x1114).get());
  Box<Integer> x1141 = new Box<Integer>((int)0);
  Box<Integer> x1142 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1141, x1142, (x1140).get(), (x1069).get(), (x1116).get());
  Box<Integer> x1143 = new Box<Integer>((int)0);
  Box<Integer> x1144 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1143, x1144, (x1142).get(), (x1071).get(), (x1118).get());
  Box<Integer> x1145 = new Box<Integer>((int)0);
  Box<Integer> x1146 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1145, x1146, (x1144).get(), (x1073).get(), (x1120).get());
  Box<Integer> x1147 = new Box<Integer>((int)0);
  Box<Integer> x1148 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1147, x1148, (x1146).get(), (x1075).get(), (x1122).get());
  Box<Integer> x1149 = new Box<Integer>((int)0);
  Box<Integer> x1150 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1149, x1150, (x1148).get(), (x1077).get(), (x1124).get());
  Box<Integer> x1151 = new Box<Integer>((int)0);
  Box<Integer> x1152 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1151, x1152, (x1150).get(), (x1079).get(), (x1126).get());
  Box<Integer> x1153 = new Box<Integer>((int)0);
  Box<Integer> x1154 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1153, x1154, (x1152).get(), x1081, x1128);
  Box<Integer> x1155 = new Box<Integer>((int)0);
  Box<Integer> x1156 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1155, x1156, (x1129).get(), 0xffffffff);
  Box<Integer> x1157 = new Box<Integer>((int)0);
  Box<Integer> x1158 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1157, x1158, (x1129).get(), 0xffffffff);
  Box<Integer> x1159 = new Box<Integer>((int)0);
  Box<Integer> x1160 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1159, x1160, (x1129).get(), 0xffffffff);
  Box<Integer> x1161 = new Box<Integer>((int)0);
  Box<Integer> x1162 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1161, x1162, (x1129).get(), 0xffffffff);
  Box<Integer> x1163 = new Box<Integer>((int)0);
  Box<Integer> x1164 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1163, x1164, (x1129).get(), 0xffffffff);
  Box<Integer> x1165 = new Box<Integer>((int)0);
  Box<Integer> x1166 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1165, x1166, (x1129).get(), 0xffffffff);
  Box<Integer> x1167 = new Box<Integer>((int)0);
  Box<Integer> x1168 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1167, x1168, (x1129).get(), 0xffffffff);
  Box<Integer> x1169 = new Box<Integer>((int)0);
  Box<Integer> x1170 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1169, x1170, (x1129).get(), 0xfffffffe);
  Box<Integer> x1171 = new Box<Integer>((int)0);
  Box<Integer> x1172 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1171, x1172, (x1129).get(), 0xffffffff);
  Box<Integer> x1173 = new Box<Integer>((int)0);
  Box<Integer> x1174 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1173, x1174, (x1129).get(), 0xffffffff);
  Box<Integer> x1175 = new Box<Integer>((int)0);
  Box<Integer> x1176 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1175, x1176, 0x0, (x1172).get(), (x1169).get());
  Box<Integer> x1177 = new Box<Integer>((int)0);
  Box<Integer> x1178 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1177, x1178, (x1176).get(), (x1170).get(), (x1167).get());
  Box<Integer> x1179 = new Box<Integer>((int)0);
  Box<Integer> x1180 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1179, x1180, (x1178).get(), (x1168).get(), (x1165).get());
  Box<Integer> x1181 = new Box<Integer>((int)0);
  Box<Integer> x1182 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1181, x1182, (x1180).get(), (x1166).get(), (x1163).get());
  Box<Integer> x1183 = new Box<Integer>((int)0);
  Box<Integer> x1184 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1183, x1184, (x1182).get(), (x1164).get(), (x1161).get());
  Box<Integer> x1185 = new Box<Integer>((int)0);
  Box<Integer> x1186 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1185, x1186, (x1184).get(), (x1162).get(), (x1159).get());
  Box<Integer> x1187 = new Box<Integer>((int)0);
  Box<Integer> x1188 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1187, x1188, (x1186).get(), (x1160).get(), (x1157).get());
  Box<Integer> x1189 = new Box<Integer>((int)0);
  Box<Integer> x1190 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1189, x1190, (x1188).get(), (x1158).get(), (x1155).get());
  int x1191 = ((x1190).get() + (x1156).get());
  Box<Integer> x1192 = new Box<Integer>((int)0);
  Box<Integer> x1193 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1192, x1193, 0x0, (x1129).get(), (x1173).get());
  Box<Integer> x1194 = new Box<Integer>((int)0);
  Box<Integer> x1195 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1194, x1195, (x1193).get(), (x1131).get(), (x1174).get());
  Box<Integer> x1196 = new Box<Integer>((int)0);
  Box<Integer> x1197 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1196, x1197, (x1195).get(), (x1133).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1198 = new Box<Integer>((int)0);
  Box<Integer> x1199 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1198, x1199, (x1197).get(), (x1135).get(), (x1171).get());
  Box<Integer> x1200 = new Box<Integer>((int)0);
  Box<Integer> x1201 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1200, x1201, (x1199).get(), (x1137).get(), (x1175).get());
  Box<Integer> x1202 = new Box<Integer>((int)0);
  Box<Integer> x1203 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1202, x1203, (x1201).get(), (x1139).get(), (x1177).get());
  Box<Integer> x1204 = new Box<Integer>((int)0);
  Box<Integer> x1205 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1204, x1205, (x1203).get(), (x1141).get(), (x1179).get());
  Box<Integer> x1206 = new Box<Integer>((int)0);
  Box<Integer> x1207 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1206, x1207, (x1205).get(), (x1143).get(), (x1181).get());
  Box<Integer> x1208 = new Box<Integer>((int)0);
  Box<Integer> x1209 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1208, x1209, (x1207).get(), (x1145).get(), (x1183).get());
  Box<Integer> x1210 = new Box<Integer>((int)0);
  Box<Integer> x1211 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1210, x1211, (x1209).get(), (x1147).get(), (x1185).get());
  Box<Integer> x1212 = new Box<Integer>((int)0);
  Box<Integer> x1213 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1212, x1213, (x1211).get(), (x1149).get(), (x1187).get());
  Box<Integer> x1214 = new Box<Integer>((int)0);
  Box<Integer> x1215 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1214, x1215, (x1213).get(), (x1151).get(), (x1189).get());
  Box<Integer> x1216 = new Box<Integer>((int)0);
  Box<Integer> x1217 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1216, x1217, (x1215).get(), (x1153).get(), x1191);
  int x1218 = ((x1217).get() + (x1154).get());
  Box<Integer> x1219 = new Box<Integer>((int)0);
  Box<Integer> x1220 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1219, x1220, x9, (arg2[11]));
  Box<Integer> x1221 = new Box<Integer>((int)0);
  Box<Integer> x1222 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1221, x1222, x9, (arg2[10]));
  Box<Integer> x1223 = new Box<Integer>((int)0);
  Box<Integer> x1224 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1223, x1224, x9, (arg2[9]));
  Box<Integer> x1225 = new Box<Integer>((int)0);
  Box<Integer> x1226 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1225, x1226, x9, (arg2[8]));
  Box<Integer> x1227 = new Box<Integer>((int)0);
  Box<Integer> x1228 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1227, x1228, x9, (arg2[7]));
  Box<Integer> x1229 = new Box<Integer>((int)0);
  Box<Integer> x1230 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1229, x1230, x9, (arg2[6]));
  Box<Integer> x1231 = new Box<Integer>((int)0);
  Box<Integer> x1232 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1231, x1232, x9, (arg2[5]));
  Box<Integer> x1233 = new Box<Integer>((int)0);
  Box<Integer> x1234 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1233, x1234, x9, (arg2[4]));
  Box<Integer> x1235 = new Box<Integer>((int)0);
  Box<Integer> x1236 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1235, x1236, x9, (arg2[3]));
  Box<Integer> x1237 = new Box<Integer>((int)0);
  Box<Integer> x1238 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1237, x1238, x9, (arg2[2]));
  Box<Integer> x1239 = new Box<Integer>((int)0);
  Box<Integer> x1240 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1239, x1240, x9, (arg2[1]));
  Box<Integer> x1241 = new Box<Integer>((int)0);
  Box<Integer> x1242 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1241, x1242, x9, (arg2[0]));
  Box<Integer> x1243 = new Box<Integer>((int)0);
  Box<Integer> x1244 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1243, x1244, 0x0, (x1242).get(), (x1239).get());
  Box<Integer> x1245 = new Box<Integer>((int)0);
  Box<Integer> x1246 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1245, x1246, (x1244).get(), (x1240).get(), (x1237).get());
  Box<Integer> x1247 = new Box<Integer>((int)0);
  Box<Integer> x1248 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1247, x1248, (x1246).get(), (x1238).get(), (x1235).get());
  Box<Integer> x1249 = new Box<Integer>((int)0);
  Box<Integer> x1250 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1249, x1250, (x1248).get(), (x1236).get(), (x1233).get());
  Box<Integer> x1251 = new Box<Integer>((int)0);
  Box<Integer> x1252 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1251, x1252, (x1250).get(), (x1234).get(), (x1231).get());
  Box<Integer> x1253 = new Box<Integer>((int)0);
  Box<Integer> x1254 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1253, x1254, (x1252).get(), (x1232).get(), (x1229).get());
  Box<Integer> x1255 = new Box<Integer>((int)0);
  Box<Integer> x1256 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1255, x1256, (x1254).get(), (x1230).get(), (x1227).get());
  Box<Integer> x1257 = new Box<Integer>((int)0);
  Box<Integer> x1258 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1257, x1258, (x1256).get(), (x1228).get(), (x1225).get());
  Box<Integer> x1259 = new Box<Integer>((int)0);
  Box<Integer> x1260 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1259, x1260, (x1258).get(), (x1226).get(), (x1223).get());
  Box<Integer> x1261 = new Box<Integer>((int)0);
  Box<Integer> x1262 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1261, x1262, (x1260).get(), (x1224).get(), (x1221).get());
  Box<Integer> x1263 = new Box<Integer>((int)0);
  Box<Integer> x1264 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1263, x1264, (x1262).get(), (x1222).get(), (x1219).get());
  int x1265 = ((x1264).get() + (x1220).get());
  Box<Integer> x1266 = new Box<Integer>((int)0);
  Box<Integer> x1267 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1266, x1267, 0x0, (x1194).get(), (x1241).get());
  Box<Integer> x1268 = new Box<Integer>((int)0);
  Box<Integer> x1269 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1268, x1269, (x1267).get(), (x1196).get(), (x1243).get());
  Box<Integer> x1270 = new Box<Integer>((int)0);
  Box<Integer> x1271 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1270, x1271, (x1269).get(), (x1198).get(), (x1245).get());
  Box<Integer> x1272 = new Box<Integer>((int)0);
  Box<Integer> x1273 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1272, x1273, (x1271).get(), (x1200).get(), (x1247).get());
  Box<Integer> x1274 = new Box<Integer>((int)0);
  Box<Integer> x1275 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1274, x1275, (x1273).get(), (x1202).get(), (x1249).get());
  Box<Integer> x1276 = new Box<Integer>((int)0);
  Box<Integer> x1277 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1276, x1277, (x1275).get(), (x1204).get(), (x1251).get());
  Box<Integer> x1278 = new Box<Integer>((int)0);
  Box<Integer> x1279 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1278, x1279, (x1277).get(), (x1206).get(), (x1253).get());
  Box<Integer> x1280 = new Box<Integer>((int)0);
  Box<Integer> x1281 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1280, x1281, (x1279).get(), (x1208).get(), (x1255).get());
  Box<Integer> x1282 = new Box<Integer>((int)0);
  Box<Integer> x1283 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1282, x1283, (x1281).get(), (x1210).get(), (x1257).get());
  Box<Integer> x1284 = new Box<Integer>((int)0);
  Box<Integer> x1285 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1284, x1285, (x1283).get(), (x1212).get(), (x1259).get());
  Box<Integer> x1286 = new Box<Integer>((int)0);
  Box<Integer> x1287 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1286, x1287, (x1285).get(), (x1214).get(), (x1261).get());
  Box<Integer> x1288 = new Box<Integer>((int)0);
  Box<Integer> x1289 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1288, x1289, (x1287).get(), (x1216).get(), (x1263).get());
  Box<Integer> x1290 = new Box<Integer>((int)0);
  Box<Integer> x1291 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1290, x1291, (x1289).get(), x1218, x1265);
  Box<Integer> x1292 = new Box<Integer>((int)0);
  Box<Integer> x1293 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1292, x1293, (x1266).get(), 0xffffffff);
  Box<Integer> x1294 = new Box<Integer>((int)0);
  Box<Integer> x1295 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1294, x1295, (x1266).get(), 0xffffffff);
  Box<Integer> x1296 = new Box<Integer>((int)0);
  Box<Integer> x1297 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1296, x1297, (x1266).get(), 0xffffffff);
  Box<Integer> x1298 = new Box<Integer>((int)0);
  Box<Integer> x1299 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1298, x1299, (x1266).get(), 0xffffffff);
  Box<Integer> x1300 = new Box<Integer>((int)0);
  Box<Integer> x1301 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1300, x1301, (x1266).get(), 0xffffffff);
  Box<Integer> x1302 = new Box<Integer>((int)0);
  Box<Integer> x1303 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1302, x1303, (x1266).get(), 0xffffffff);
  Box<Integer> x1304 = new Box<Integer>((int)0);
  Box<Integer> x1305 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1304, x1305, (x1266).get(), 0xffffffff);
  Box<Integer> x1306 = new Box<Integer>((int)0);
  Box<Integer> x1307 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1306, x1307, (x1266).get(), 0xfffffffe);
  Box<Integer> x1308 = new Box<Integer>((int)0);
  Box<Integer> x1309 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1308, x1309, (x1266).get(), 0xffffffff);
  Box<Integer> x1310 = new Box<Integer>((int)0);
  Box<Integer> x1311 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1310, x1311, (x1266).get(), 0xffffffff);
  Box<Integer> x1312 = new Box<Integer>((int)0);
  Box<Integer> x1313 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1312, x1313, 0x0, (x1309).get(), (x1306).get());
  Box<Integer> x1314 = new Box<Integer>((int)0);
  Box<Integer> x1315 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1314, x1315, (x1313).get(), (x1307).get(), (x1304).get());
  Box<Integer> x1316 = new Box<Integer>((int)0);
  Box<Integer> x1317 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1316, x1317, (x1315).get(), (x1305).get(), (x1302).get());
  Box<Integer> x1318 = new Box<Integer>((int)0);
  Box<Integer> x1319 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1318, x1319, (x1317).get(), (x1303).get(), (x1300).get());
  Box<Integer> x1320 = new Box<Integer>((int)0);
  Box<Integer> x1321 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1320, x1321, (x1319).get(), (x1301).get(), (x1298).get());
  Box<Integer> x1322 = new Box<Integer>((int)0);
  Box<Integer> x1323 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1322, x1323, (x1321).get(), (x1299).get(), (x1296).get());
  Box<Integer> x1324 = new Box<Integer>((int)0);
  Box<Integer> x1325 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1324, x1325, (x1323).get(), (x1297).get(), (x1294).get());
  Box<Integer> x1326 = new Box<Integer>((int)0);
  Box<Integer> x1327 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1326, x1327, (x1325).get(), (x1295).get(), (x1292).get());
  int x1328 = ((x1327).get() + (x1293).get());
  Box<Integer> x1329 = new Box<Integer>((int)0);
  Box<Integer> x1330 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1329, x1330, 0x0, (x1266).get(), (x1310).get());
  Box<Integer> x1331 = new Box<Integer>((int)0);
  Box<Integer> x1332 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1331, x1332, (x1330).get(), (x1268).get(), (x1311).get());
  Box<Integer> x1333 = new Box<Integer>((int)0);
  Box<Integer> x1334 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1333, x1334, (x1332).get(), (x1270).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1335 = new Box<Integer>((int)0);
  Box<Integer> x1336 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1335, x1336, (x1334).get(), (x1272).get(), (x1308).get());
  Box<Integer> x1337 = new Box<Integer>((int)0);
  Box<Integer> x1338 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1337, x1338, (x1336).get(), (x1274).get(), (x1312).get());
  Box<Integer> x1339 = new Box<Integer>((int)0);
  Box<Integer> x1340 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1339, x1340, (x1338).get(), (x1276).get(), (x1314).get());
  Box<Integer> x1341 = new Box<Integer>((int)0);
  Box<Integer> x1342 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1341, x1342, (x1340).get(), (x1278).get(), (x1316).get());
  Box<Integer> x1343 = new Box<Integer>((int)0);
  Box<Integer> x1344 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1343, x1344, (x1342).get(), (x1280).get(), (x1318).get());
  Box<Integer> x1345 = new Box<Integer>((int)0);
  Box<Integer> x1346 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1345, x1346, (x1344).get(), (x1282).get(), (x1320).get());
  Box<Integer> x1347 = new Box<Integer>((int)0);
  Box<Integer> x1348 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1347, x1348, (x1346).get(), (x1284).get(), (x1322).get());
  Box<Integer> x1349 = new Box<Integer>((int)0);
  Box<Integer> x1350 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1349, x1350, (x1348).get(), (x1286).get(), (x1324).get());
  Box<Integer> x1351 = new Box<Integer>((int)0);
  Box<Integer> x1352 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1351, x1352, (x1350).get(), (x1288).get(), (x1326).get());
  Box<Integer> x1353 = new Box<Integer>((int)0);
  Box<Integer> x1354 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1353, x1354, (x1352).get(), (x1290).get(), x1328);
  int x1355 = ((x1354).get() + (x1291).get());
  Box<Integer> x1356 = new Box<Integer>((int)0);
  Box<Integer> x1357 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1356, x1357, x10, (arg2[11]));
  Box<Integer> x1358 = new Box<Integer>((int)0);
  Box<Integer> x1359 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1358, x1359, x10, (arg2[10]));
  Box<Integer> x1360 = new Box<Integer>((int)0);
  Box<Integer> x1361 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1360, x1361, x10, (arg2[9]));
  Box<Integer> x1362 = new Box<Integer>((int)0);
  Box<Integer> x1363 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1362, x1363, x10, (arg2[8]));
  Box<Integer> x1364 = new Box<Integer>((int)0);
  Box<Integer> x1365 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1364, x1365, x10, (arg2[7]));
  Box<Integer> x1366 = new Box<Integer>((int)0);
  Box<Integer> x1367 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1366, x1367, x10, (arg2[6]));
  Box<Integer> x1368 = new Box<Integer>((int)0);
  Box<Integer> x1369 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1368, x1369, x10, (arg2[5]));
  Box<Integer> x1370 = new Box<Integer>((int)0);
  Box<Integer> x1371 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1370, x1371, x10, (arg2[4]));
  Box<Integer> x1372 = new Box<Integer>((int)0);
  Box<Integer> x1373 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1372, x1373, x10, (arg2[3]));
  Box<Integer> x1374 = new Box<Integer>((int)0);
  Box<Integer> x1375 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1374, x1375, x10, (arg2[2]));
  Box<Integer> x1376 = new Box<Integer>((int)0);
  Box<Integer> x1377 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1376, x1377, x10, (arg2[1]));
  Box<Integer> x1378 = new Box<Integer>((int)0);
  Box<Integer> x1379 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1378, x1379, x10, (arg2[0]));
  Box<Integer> x1380 = new Box<Integer>((int)0);
  Box<Integer> x1381 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1380, x1381, 0x0, (x1379).get(), (x1376).get());
  Box<Integer> x1382 = new Box<Integer>((int)0);
  Box<Integer> x1383 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1382, x1383, (x1381).get(), (x1377).get(), (x1374).get());
  Box<Integer> x1384 = new Box<Integer>((int)0);
  Box<Integer> x1385 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1384, x1385, (x1383).get(), (x1375).get(), (x1372).get());
  Box<Integer> x1386 = new Box<Integer>((int)0);
  Box<Integer> x1387 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1386, x1387, (x1385).get(), (x1373).get(), (x1370).get());
  Box<Integer> x1388 = new Box<Integer>((int)0);
  Box<Integer> x1389 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1388, x1389, (x1387).get(), (x1371).get(), (x1368).get());
  Box<Integer> x1390 = new Box<Integer>((int)0);
  Box<Integer> x1391 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1390, x1391, (x1389).get(), (x1369).get(), (x1366).get());
  Box<Integer> x1392 = new Box<Integer>((int)0);
  Box<Integer> x1393 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1392, x1393, (x1391).get(), (x1367).get(), (x1364).get());
  Box<Integer> x1394 = new Box<Integer>((int)0);
  Box<Integer> x1395 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1394, x1395, (x1393).get(), (x1365).get(), (x1362).get());
  Box<Integer> x1396 = new Box<Integer>((int)0);
  Box<Integer> x1397 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1396, x1397, (x1395).get(), (x1363).get(), (x1360).get());
  Box<Integer> x1398 = new Box<Integer>((int)0);
  Box<Integer> x1399 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1398, x1399, (x1397).get(), (x1361).get(), (x1358).get());
  Box<Integer> x1400 = new Box<Integer>((int)0);
  Box<Integer> x1401 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1400, x1401, (x1399).get(), (x1359).get(), (x1356).get());
  int x1402 = ((x1401).get() + (x1357).get());
  Box<Integer> x1403 = new Box<Integer>((int)0);
  Box<Integer> x1404 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1403, x1404, 0x0, (x1331).get(), (x1378).get());
  Box<Integer> x1405 = new Box<Integer>((int)0);
  Box<Integer> x1406 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1405, x1406, (x1404).get(), (x1333).get(), (x1380).get());
  Box<Integer> x1407 = new Box<Integer>((int)0);
  Box<Integer> x1408 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1407, x1408, (x1406).get(), (x1335).get(), (x1382).get());
  Box<Integer> x1409 = new Box<Integer>((int)0);
  Box<Integer> x1410 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1409, x1410, (x1408).get(), (x1337).get(), (x1384).get());
  Box<Integer> x1411 = new Box<Integer>((int)0);
  Box<Integer> x1412 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1411, x1412, (x1410).get(), (x1339).get(), (x1386).get());
  Box<Integer> x1413 = new Box<Integer>((int)0);
  Box<Integer> x1414 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1413, x1414, (x1412).get(), (x1341).get(), (x1388).get());
  Box<Integer> x1415 = new Box<Integer>((int)0);
  Box<Integer> x1416 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1415, x1416, (x1414).get(), (x1343).get(), (x1390).get());
  Box<Integer> x1417 = new Box<Integer>((int)0);
  Box<Integer> x1418 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1417, x1418, (x1416).get(), (x1345).get(), (x1392).get());
  Box<Integer> x1419 = new Box<Integer>((int)0);
  Box<Integer> x1420 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1419, x1420, (x1418).get(), (x1347).get(), (x1394).get());
  Box<Integer> x1421 = new Box<Integer>((int)0);
  Box<Integer> x1422 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1421, x1422, (x1420).get(), (x1349).get(), (x1396).get());
  Box<Integer> x1423 = new Box<Integer>((int)0);
  Box<Integer> x1424 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1423, x1424, (x1422).get(), (x1351).get(), (x1398).get());
  Box<Integer> x1425 = new Box<Integer>((int)0);
  Box<Integer> x1426 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1425, x1426, (x1424).get(), (x1353).get(), (x1400).get());
  Box<Integer> x1427 = new Box<Integer>((int)0);
  Box<Integer> x1428 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1427, x1428, (x1426).get(), x1355, x1402);
  Box<Integer> x1429 = new Box<Integer>((int)0);
  Box<Integer> x1430 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1429, x1430, (x1403).get(), 0xffffffff);
  Box<Integer> x1431 = new Box<Integer>((int)0);
  Box<Integer> x1432 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1431, x1432, (x1403).get(), 0xffffffff);
  Box<Integer> x1433 = new Box<Integer>((int)0);
  Box<Integer> x1434 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1433, x1434, (x1403).get(), 0xffffffff);
  Box<Integer> x1435 = new Box<Integer>((int)0);
  Box<Integer> x1436 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1435, x1436, (x1403).get(), 0xffffffff);
  Box<Integer> x1437 = new Box<Integer>((int)0);
  Box<Integer> x1438 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1437, x1438, (x1403).get(), 0xffffffff);
  Box<Integer> x1439 = new Box<Integer>((int)0);
  Box<Integer> x1440 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1439, x1440, (x1403).get(), 0xffffffff);
  Box<Integer> x1441 = new Box<Integer>((int)0);
  Box<Integer> x1442 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1441, x1442, (x1403).get(), 0xffffffff);
  Box<Integer> x1443 = new Box<Integer>((int)0);
  Box<Integer> x1444 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1443, x1444, (x1403).get(), 0xfffffffe);
  Box<Integer> x1445 = new Box<Integer>((int)0);
  Box<Integer> x1446 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1445, x1446, (x1403).get(), 0xffffffff);
  Box<Integer> x1447 = new Box<Integer>((int)0);
  Box<Integer> x1448 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1447, x1448, (x1403).get(), 0xffffffff);
  Box<Integer> x1449 = new Box<Integer>((int)0);
  Box<Integer> x1450 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1449, x1450, 0x0, (x1446).get(), (x1443).get());
  Box<Integer> x1451 = new Box<Integer>((int)0);
  Box<Integer> x1452 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1451, x1452, (x1450).get(), (x1444).get(), (x1441).get());
  Box<Integer> x1453 = new Box<Integer>((int)0);
  Box<Integer> x1454 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1453, x1454, (x1452).get(), (x1442).get(), (x1439).get());
  Box<Integer> x1455 = new Box<Integer>((int)0);
  Box<Integer> x1456 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1455, x1456, (x1454).get(), (x1440).get(), (x1437).get());
  Box<Integer> x1457 = new Box<Integer>((int)0);
  Box<Integer> x1458 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1457, x1458, (x1456).get(), (x1438).get(), (x1435).get());
  Box<Integer> x1459 = new Box<Integer>((int)0);
  Box<Integer> x1460 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1459, x1460, (x1458).get(), (x1436).get(), (x1433).get());
  Box<Integer> x1461 = new Box<Integer>((int)0);
  Box<Integer> x1462 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1461, x1462, (x1460).get(), (x1434).get(), (x1431).get());
  Box<Integer> x1463 = new Box<Integer>((int)0);
  Box<Integer> x1464 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1463, x1464, (x1462).get(), (x1432).get(), (x1429).get());
  int x1465 = ((x1464).get() + (x1430).get());
  Box<Integer> x1466 = new Box<Integer>((int)0);
  Box<Integer> x1467 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1466, x1467, 0x0, (x1403).get(), (x1447).get());
  Box<Integer> x1468 = new Box<Integer>((int)0);
  Box<Integer> x1469 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1468, x1469, (x1467).get(), (x1405).get(), (x1448).get());
  Box<Integer> x1470 = new Box<Integer>((int)0);
  Box<Integer> x1471 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1470, x1471, (x1469).get(), (x1407).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1472 = new Box<Integer>((int)0);
  Box<Integer> x1473 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1472, x1473, (x1471).get(), (x1409).get(), (x1445).get());
  Box<Integer> x1474 = new Box<Integer>((int)0);
  Box<Integer> x1475 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1474, x1475, (x1473).get(), (x1411).get(), (x1449).get());
  Box<Integer> x1476 = new Box<Integer>((int)0);
  Box<Integer> x1477 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1476, x1477, (x1475).get(), (x1413).get(), (x1451).get());
  Box<Integer> x1478 = new Box<Integer>((int)0);
  Box<Integer> x1479 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1478, x1479, (x1477).get(), (x1415).get(), (x1453).get());
  Box<Integer> x1480 = new Box<Integer>((int)0);
  Box<Integer> x1481 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1480, x1481, (x1479).get(), (x1417).get(), (x1455).get());
  Box<Integer> x1482 = new Box<Integer>((int)0);
  Box<Integer> x1483 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1482, x1483, (x1481).get(), (x1419).get(), (x1457).get());
  Box<Integer> x1484 = new Box<Integer>((int)0);
  Box<Integer> x1485 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1484, x1485, (x1483).get(), (x1421).get(), (x1459).get());
  Box<Integer> x1486 = new Box<Integer>((int)0);
  Box<Integer> x1487 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1486, x1487, (x1485).get(), (x1423).get(), (x1461).get());
  Box<Integer> x1488 = new Box<Integer>((int)0);
  Box<Integer> x1489 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1488, x1489, (x1487).get(), (x1425).get(), (x1463).get());
  Box<Integer> x1490 = new Box<Integer>((int)0);
  Box<Integer> x1491 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1490, x1491, (x1489).get(), (x1427).get(), x1465);
  int x1492 = ((x1491).get() + (x1428).get());
  Box<Integer> x1493 = new Box<Integer>((int)0);
  Box<Integer> x1494 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1493, x1494, x11, (arg2[11]));
  Box<Integer> x1495 = new Box<Integer>((int)0);
  Box<Integer> x1496 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1495, x1496, x11, (arg2[10]));
  Box<Integer> x1497 = new Box<Integer>((int)0);
  Box<Integer> x1498 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1497, x1498, x11, (arg2[9]));
  Box<Integer> x1499 = new Box<Integer>((int)0);
  Box<Integer> x1500 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1499, x1500, x11, (arg2[8]));
  Box<Integer> x1501 = new Box<Integer>((int)0);
  Box<Integer> x1502 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1501, x1502, x11, (arg2[7]));
  Box<Integer> x1503 = new Box<Integer>((int)0);
  Box<Integer> x1504 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1503, x1504, x11, (arg2[6]));
  Box<Integer> x1505 = new Box<Integer>((int)0);
  Box<Integer> x1506 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1505, x1506, x11, (arg2[5]));
  Box<Integer> x1507 = new Box<Integer>((int)0);
  Box<Integer> x1508 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1507, x1508, x11, (arg2[4]));
  Box<Integer> x1509 = new Box<Integer>((int)0);
  Box<Integer> x1510 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1509, x1510, x11, (arg2[3]));
  Box<Integer> x1511 = new Box<Integer>((int)0);
  Box<Integer> x1512 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1511, x1512, x11, (arg2[2]));
  Box<Integer> x1513 = new Box<Integer>((int)0);
  Box<Integer> x1514 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1513, x1514, x11, (arg2[1]));
  Box<Integer> x1515 = new Box<Integer>((int)0);
  Box<Integer> x1516 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1515, x1516, x11, (arg2[0]));
  Box<Integer> x1517 = new Box<Integer>((int)0);
  Box<Integer> x1518 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1517, x1518, 0x0, (x1516).get(), (x1513).get());
  Box<Integer> x1519 = new Box<Integer>((int)0);
  Box<Integer> x1520 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1519, x1520, (x1518).get(), (x1514).get(), (x1511).get());
  Box<Integer> x1521 = new Box<Integer>((int)0);
  Box<Integer> x1522 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1521, x1522, (x1520).get(), (x1512).get(), (x1509).get());
  Box<Integer> x1523 = new Box<Integer>((int)0);
  Box<Integer> x1524 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1523, x1524, (x1522).get(), (x1510).get(), (x1507).get());
  Box<Integer> x1525 = new Box<Integer>((int)0);
  Box<Integer> x1526 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1525, x1526, (x1524).get(), (x1508).get(), (x1505).get());
  Box<Integer> x1527 = new Box<Integer>((int)0);
  Box<Integer> x1528 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1527, x1528, (x1526).get(), (x1506).get(), (x1503).get());
  Box<Integer> x1529 = new Box<Integer>((int)0);
  Box<Integer> x1530 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1529, x1530, (x1528).get(), (x1504).get(), (x1501).get());
  Box<Integer> x1531 = new Box<Integer>((int)0);
  Box<Integer> x1532 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1531, x1532, (x1530).get(), (x1502).get(), (x1499).get());
  Box<Integer> x1533 = new Box<Integer>((int)0);
  Box<Integer> x1534 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1533, x1534, (x1532).get(), (x1500).get(), (x1497).get());
  Box<Integer> x1535 = new Box<Integer>((int)0);
  Box<Integer> x1536 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1535, x1536, (x1534).get(), (x1498).get(), (x1495).get());
  Box<Integer> x1537 = new Box<Integer>((int)0);
  Box<Integer> x1538 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1537, x1538, (x1536).get(), (x1496).get(), (x1493).get());
  int x1539 = ((x1538).get() + (x1494).get());
  Box<Integer> x1540 = new Box<Integer>((int)0);
  Box<Integer> x1541 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1540, x1541, 0x0, (x1468).get(), (x1515).get());
  Box<Integer> x1542 = new Box<Integer>((int)0);
  Box<Integer> x1543 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1542, x1543, (x1541).get(), (x1470).get(), (x1517).get());
  Box<Integer> x1544 = new Box<Integer>((int)0);
  Box<Integer> x1545 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1544, x1545, (x1543).get(), (x1472).get(), (x1519).get());
  Box<Integer> x1546 = new Box<Integer>((int)0);
  Box<Integer> x1547 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1546, x1547, (x1545).get(), (x1474).get(), (x1521).get());
  Box<Integer> x1548 = new Box<Integer>((int)0);
  Box<Integer> x1549 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1548, x1549, (x1547).get(), (x1476).get(), (x1523).get());
  Box<Integer> x1550 = new Box<Integer>((int)0);
  Box<Integer> x1551 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1550, x1551, (x1549).get(), (x1478).get(), (x1525).get());
  Box<Integer> x1552 = new Box<Integer>((int)0);
  Box<Integer> x1553 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1552, x1553, (x1551).get(), (x1480).get(), (x1527).get());
  Box<Integer> x1554 = new Box<Integer>((int)0);
  Box<Integer> x1555 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1554, x1555, (x1553).get(), (x1482).get(), (x1529).get());
  Box<Integer> x1556 = new Box<Integer>((int)0);
  Box<Integer> x1557 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1556, x1557, (x1555).get(), (x1484).get(), (x1531).get());
  Box<Integer> x1558 = new Box<Integer>((int)0);
  Box<Integer> x1559 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1558, x1559, (x1557).get(), (x1486).get(), (x1533).get());
  Box<Integer> x1560 = new Box<Integer>((int)0);
  Box<Integer> x1561 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1560, x1561, (x1559).get(), (x1488).get(), (x1535).get());
  Box<Integer> x1562 = new Box<Integer>((int)0);
  Box<Integer> x1563 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1562, x1563, (x1561).get(), (x1490).get(), (x1537).get());
  Box<Integer> x1564 = new Box<Integer>((int)0);
  Box<Integer> x1565 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1564, x1565, (x1563).get(), x1492, x1539);
  Box<Integer> x1566 = new Box<Integer>((int)0);
  Box<Integer> x1567 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1566, x1567, (x1540).get(), 0xffffffff);
  Box<Integer> x1568 = new Box<Integer>((int)0);
  Box<Integer> x1569 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1568, x1569, (x1540).get(), 0xffffffff);
  Box<Integer> x1570 = new Box<Integer>((int)0);
  Box<Integer> x1571 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1570, x1571, (x1540).get(), 0xffffffff);
  Box<Integer> x1572 = new Box<Integer>((int)0);
  Box<Integer> x1573 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1572, x1573, (x1540).get(), 0xffffffff);
  Box<Integer> x1574 = new Box<Integer>((int)0);
  Box<Integer> x1575 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1574, x1575, (x1540).get(), 0xffffffff);
  Box<Integer> x1576 = new Box<Integer>((int)0);
  Box<Integer> x1577 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1576, x1577, (x1540).get(), 0xffffffff);
  Box<Integer> x1578 = new Box<Integer>((int)0);
  Box<Integer> x1579 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1578, x1579, (x1540).get(), 0xffffffff);
  Box<Integer> x1580 = new Box<Integer>((int)0);
  Box<Integer> x1581 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1580, x1581, (x1540).get(), 0xfffffffe);
  Box<Integer> x1582 = new Box<Integer>((int)0);
  Box<Integer> x1583 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1582, x1583, (x1540).get(), 0xffffffff);
  Box<Integer> x1584 = new Box<Integer>((int)0);
  Box<Integer> x1585 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1584, x1585, (x1540).get(), 0xffffffff);
  Box<Integer> x1586 = new Box<Integer>((int)0);
  Box<Integer> x1587 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1586, x1587, 0x0, (x1583).get(), (x1580).get());
  Box<Integer> x1588 = new Box<Integer>((int)0);
  Box<Integer> x1589 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1588, x1589, (x1587).get(), (x1581).get(), (x1578).get());
  Box<Integer> x1590 = new Box<Integer>((int)0);
  Box<Integer> x1591 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1590, x1591, (x1589).get(), (x1579).get(), (x1576).get());
  Box<Integer> x1592 = new Box<Integer>((int)0);
  Box<Integer> x1593 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1592, x1593, (x1591).get(), (x1577).get(), (x1574).get());
  Box<Integer> x1594 = new Box<Integer>((int)0);
  Box<Integer> x1595 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1594, x1595, (x1593).get(), (x1575).get(), (x1572).get());
  Box<Integer> x1596 = new Box<Integer>((int)0);
  Box<Integer> x1597 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1596, x1597, (x1595).get(), (x1573).get(), (x1570).get());
  Box<Integer> x1598 = new Box<Integer>((int)0);
  Box<Integer> x1599 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1598, x1599, (x1597).get(), (x1571).get(), (x1568).get());
  Box<Integer> x1600 = new Box<Integer>((int)0);
  Box<Integer> x1601 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1600, x1601, (x1599).get(), (x1569).get(), (x1566).get());
  int x1602 = ((x1601).get() + (x1567).get());
  Box<Integer> x1603 = new Box<Integer>((int)0);
  Box<Integer> x1604 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1603, x1604, 0x0, (x1540).get(), (x1584).get());
  Box<Integer> x1605 = new Box<Integer>((int)0);
  Box<Integer> x1606 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1605, x1606, (x1604).get(), (x1542).get(), (x1585).get());
  Box<Integer> x1607 = new Box<Integer>((int)0);
  Box<Integer> x1608 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1607, x1608, (x1606).get(), (x1544).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1609 = new Box<Integer>((int)0);
  Box<Integer> x1610 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1609, x1610, (x1608).get(), (x1546).get(), (x1582).get());
  Box<Integer> x1611 = new Box<Integer>((int)0);
  Box<Integer> x1612 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1611, x1612, (x1610).get(), (x1548).get(), (x1586).get());
  Box<Integer> x1613 = new Box<Integer>((int)0);
  Box<Integer> x1614 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1613, x1614, (x1612).get(), (x1550).get(), (x1588).get());
  Box<Integer> x1615 = new Box<Integer>((int)0);
  Box<Integer> x1616 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1615, x1616, (x1614).get(), (x1552).get(), (x1590).get());
  Box<Integer> x1617 = new Box<Integer>((int)0);
  Box<Integer> x1618 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1617, x1618, (x1616).get(), (x1554).get(), (x1592).get());
  Box<Integer> x1619 = new Box<Integer>((int)0);
  Box<Integer> x1620 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1619, x1620, (x1618).get(), (x1556).get(), (x1594).get());
  Box<Integer> x1621 = new Box<Integer>((int)0);
  Box<Integer> x1622 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1621, x1622, (x1620).get(), (x1558).get(), (x1596).get());
  Box<Integer> x1623 = new Box<Integer>((int)0);
  Box<Integer> x1624 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1623, x1624, (x1622).get(), (x1560).get(), (x1598).get());
  Box<Integer> x1625 = new Box<Integer>((int)0);
  Box<Integer> x1626 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1625, x1626, (x1624).get(), (x1562).get(), (x1600).get());
  Box<Integer> x1627 = new Box<Integer>((int)0);
  Box<Integer> x1628 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1627, x1628, (x1626).get(), (x1564).get(), x1602);
  int x1629 = ((x1628).get() + (x1565).get());
  Box<Integer> x1630 = new Box<Integer>((int)0);
  Box<Integer> x1631 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1630, x1631, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x1605).get(), 0xffffffff);
  Box<Integer> x1632 = new Box<Integer>((int)0);
  Box<Integer> x1633 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1632, x1633, (x1631).get(), (x1607).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1634 = new Box<Integer>((int)0);
  Box<Integer> x1635 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1634, x1635, (x1633).get(), (x1609).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1636 = new Box<Integer>((int)0);
  Box<Integer> x1637 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1636, x1637, (x1635).get(), (x1611).get(), 0xffffffff);
  Box<Integer> x1638 = new Box<Integer>((int)0);
  Box<Integer> x1639 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1638, x1639, (x1637).get(), (x1613).get(), 0xfffffffe);
  Box<Integer> x1640 = new Box<Integer>((int)0);
  Box<Integer> x1641 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1640, x1641, (x1639).get(), (x1615).get(), 0xffffffff);
  Box<Integer> x1642 = new Box<Integer>((int)0);
  Box<Integer> x1643 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1642, x1643, (x1641).get(), (x1617).get(), 0xffffffff);
  Box<Integer> x1644 = new Box<Integer>((int)0);
  Box<Integer> x1645 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1644, x1645, (x1643).get(), (x1619).get(), 0xffffffff);
  Box<Integer> x1646 = new Box<Integer>((int)0);
  Box<Integer> x1647 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1646, x1647, (x1645).get(), (x1621).get(), 0xffffffff);
  Box<Integer> x1648 = new Box<Integer>((int)0);
  Box<Integer> x1649 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1648, x1649, (x1647).get(), (x1623).get(), 0xffffffff);
  Box<Integer> x1650 = new Box<Integer>((int)0);
  Box<Integer> x1651 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1650, x1651, (x1649).get(), (x1625).get(), 0xffffffff);
  Box<Integer> x1652 = new Box<Integer>((int)0);
  Box<Integer> x1653 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1652, x1653, (x1651).get(), (x1627).get(), 0xffffffff);
  Box<Integer> x1654 = new Box<Integer>((int)0);
  Box<Integer> x1655 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1654, x1655, (x1653).get(), x1629, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1656 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1656, (x1655).get(), (x1630).get(), (x1605).get());
  Box<Integer> x1657 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1657, (x1655).get(), (x1632).get(), (x1607).get());
  Box<Integer> x1658 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1658, (x1655).get(), (x1634).get(), (x1609).get());
  Box<Integer> x1659 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1659, (x1655).get(), (x1636).get(), (x1611).get());
  Box<Integer> x1660 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1660, (x1655).get(), (x1638).get(), (x1613).get());
  Box<Integer> x1661 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1661, (x1655).get(), (x1640).get(), (x1615).get());
  Box<Integer> x1662 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1662, (x1655).get(), (x1642).get(), (x1617).get());
  Box<Integer> x1663 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1663, (x1655).get(), (x1644).get(), (x1619).get());
  Box<Integer> x1664 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1664, (x1655).get(), (x1646).get(), (x1621).get());
  Box<Integer> x1665 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1665, (x1655).get(), (x1648).get(), (x1623).get());
  Box<Integer> x1666 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1666, (x1655).get(), (x1650).get(), (x1625).get());
  Box<Integer> x1667 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1667, (x1655).get(), (x1652).get(), (x1627).get());
  out1[0] = (x1656).get();
  out1[1] = (x1657).get();
  out1[2] = (x1658).get();
  out1[3] = (x1659).get();
  out1[4] = (x1660).get();
  out1[5] = (x1661).get();
  out1[6] = (x1662).get();
  out1[7] = (x1663).get();
  out1[8] = (x1664).get();
  out1[9] = (x1665).get();
  out1[10] = (x1666).get();
  out1[11] = (x1667).get();
}

/**
 * The function fiat_P384_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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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[8]);
  int x9 = (arg1[9]);
  int x10 = (arg1[10]);
  int x11 = (arg1[11]);
  int x12 = (arg1[0]);
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x13, x14, x12, (arg1[11]));
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x15, x16, x12, (arg1[10]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x17, x18, x12, (arg1[9]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x19, x20, x12, (arg1[8]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x21, x22, x12, (arg1[7]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x23, x24, x12, (arg1[6]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x25, x26, x12, (arg1[5]));
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x27, x28, x12, (arg1[4]));
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x29, x30, x12, (arg1[3]));
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x31, x32, x12, (arg1[2]));
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x33, x34, x12, (arg1[1]));
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x35, x36, x12, (arg1[0]));
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x37, x38, 0x0, (x36).get(), (x33).get());
  Box<Integer> x39 = new Box<Integer>((int)0);
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x39, x40, (x38).get(), (x34).get(), (x31).get());
  Box<Integer> x41 = new Box<Integer>((int)0);
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x41, x42, (x40).get(), (x32).get(), (x29).get());
  Box<Integer> x43 = new Box<Integer>((int)0);
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x43, x44, (x42).get(), (x30).get(), (x27).get());
  Box<Integer> x45 = new Box<Integer>((int)0);
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x45, x46, (x44).get(), (x28).get(), (x25).get());
  Box<Integer> x47 = new Box<Integer>((int)0);
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x47, x48, (x46).get(), (x26).get(), (x23).get());
  Box<Integer> x49 = new Box<Integer>((int)0);
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x49, x50, (x48).get(), (x24).get(), (x21).get());
  Box<Integer> x51 = new Box<Integer>((int)0);
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x51, x52, (x50).get(), (x22).get(), (x19).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x53, x54, (x52).get(), (x20).get(), (x17).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x55, x56, (x54).get(), (x18).get(), (x15).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x57, x58, (x56).get(), (x16).get(), (x13).get());
  int x59 = ((x58).get() + (x14).get());
  Box<Integer> x60 = new Box<Integer>((int)0);
  Box<Integer> x61 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x60, x61, (x35).get(), 0xffffffff);
  Box<Integer> x62 = new Box<Integer>((int)0);
  Box<Integer> x63 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x62, x63, (x35).get(), 0xffffffff);
  Box<Integer> x64 = new Box<Integer>((int)0);
  Box<Integer> x65 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x64, x65, (x35).get(), 0xffffffff);
  Box<Integer> x66 = new Box<Integer>((int)0);
  Box<Integer> x67 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x66, x67, (x35).get(), 0xffffffff);
  Box<Integer> x68 = new Box<Integer>((int)0);
  Box<Integer> x69 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x68, x69, (x35).get(), 0xffffffff);
  Box<Integer> x70 = new Box<Integer>((int)0);
  Box<Integer> x71 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x70, x71, (x35).get(), 0xffffffff);
  Box<Integer> x72 = new Box<Integer>((int)0);
  Box<Integer> x73 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x72, x73, (x35).get(), 0xffffffff);
  Box<Integer> x74 = new Box<Integer>((int)0);
  Box<Integer> x75 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x74, x75, (x35).get(), 0xfffffffe);
  Box<Integer> x76 = new Box<Integer>((int)0);
  Box<Integer> x77 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x76, x77, (x35).get(), 0xffffffff);
  Box<Integer> x78 = new Box<Integer>((int)0);
  Box<Integer> x79 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x78, x79, (x35).get(), 0xffffffff);
  Box<Integer> x80 = new Box<Integer>((int)0);
  Box<Integer> x81 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x80, x81, 0x0, (x77).get(), (x74).get());
  Box<Integer> x82 = new Box<Integer>((int)0);
  Box<Integer> x83 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x82, x83, (x81).get(), (x75).get(), (x72).get());
  Box<Integer> x84 = new Box<Integer>((int)0);
  Box<Integer> x85 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x84, x85, (x83).get(), (x73).get(), (x70).get());
  Box<Integer> x86 = new Box<Integer>((int)0);
  Box<Integer> x87 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x86, x87, (x85).get(), (x71).get(), (x68).get());
  Box<Integer> x88 = new Box<Integer>((int)0);
  Box<Integer> x89 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x88, x89, (x87).get(), (x69).get(), (x66).get());
  Box<Integer> x90 = new Box<Integer>((int)0);
  Box<Integer> x91 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x90, x91, (x89).get(), (x67).get(), (x64).get());
  Box<Integer> x92 = new Box<Integer>((int)0);
  Box<Integer> x93 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x92, x93, (x91).get(), (x65).get(), (x62).get());
  Box<Integer> x94 = new Box<Integer>((int)0);
  Box<Integer> x95 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x94, x95, (x93).get(), (x63).get(), (x60).get());
  int x96 = ((x95).get() + (x61).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x97, x98, 0x0, (x35).get(), (x78).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x99, x100, (x98).get(), (x37).get(), (x79).get());
  Box<Integer> x101 = new Box<Integer>((int)0);
  Box<Integer> x102 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x101, x102, (x100).get(), (x39).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x103 = new Box<Integer>((int)0);
  Box<Integer> x104 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x103, x104, (x102).get(), (x41).get(), (x76).get());
  Box<Integer> x105 = new Box<Integer>((int)0);
  Box<Integer> x106 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x105, x106, (x104).get(), (x43).get(), (x80).get());
  Box<Integer> x107 = new Box<Integer>((int)0);
  Box<Integer> x108 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x107, x108, (x106).get(), (x45).get(), (x82).get());
  Box<Integer> x109 = new Box<Integer>((int)0);
  Box<Integer> x110 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x109, x110, (x108).get(), (x47).get(), (x84).get());
  Box<Integer> x111 = new Box<Integer>((int)0);
  Box<Integer> x112 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x111, x112, (x110).get(), (x49).get(), (x86).get());
  Box<Integer> x113 = new Box<Integer>((int)0);
  Box<Integer> x114 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x113, x114, (x112).get(), (x51).get(), (x88).get());
  Box<Integer> x115 = new Box<Integer>((int)0);
  Box<Integer> x116 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x115, x116, (x114).get(), (x53).get(), (x90).get());
  Box<Integer> x117 = new Box<Integer>((int)0);
  Box<Integer> x118 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x117, x118, (x116).get(), (x55).get(), (x92).get());
  Box<Integer> x119 = new Box<Integer>((int)0);
  Box<Integer> x120 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x119, x120, (x118).get(), (x57).get(), (x94).get());
  Box<Integer> x121 = new Box<Integer>((int)0);
  Box<Integer> x122 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x121, x122, (x120).get(), x59, x96);
  Box<Integer> x123 = new Box<Integer>((int)0);
  Box<Integer> x124 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x123, x124, x1, (arg1[11]));
  Box<Integer> x125 = new Box<Integer>((int)0);
  Box<Integer> x126 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x125, x126, x1, (arg1[10]));
  Box<Integer> x127 = new Box<Integer>((int)0);
  Box<Integer> x128 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x127, x128, x1, (arg1[9]));
  Box<Integer> x129 = new Box<Integer>((int)0);
  Box<Integer> x130 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x129, x130, x1, (arg1[8]));
  Box<Integer> x131 = new Box<Integer>((int)0);
  Box<Integer> x132 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x131, x132, x1, (arg1[7]));
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x133, x134, x1, (arg1[6]));
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x135, x136, x1, (arg1[5]));
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x137, x138, x1, (arg1[4]));
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x139, x140, x1, (arg1[3]));
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x141, x142, x1, (arg1[2]));
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x143, x144, x1, (arg1[1]));
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x145, x146, x1, (arg1[0]));
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x147, x148, 0x0, (x146).get(), (x143).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x149, x150, (x148).get(), (x144).get(), (x141).get());
  Box<Integer> x151 = new Box<Integer>((int)0);
  Box<Integer> x152 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x151, x152, (x150).get(), (x142).get(), (x139).get());
  Box<Integer> x153 = new Box<Integer>((int)0);
  Box<Integer> x154 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x153, x154, (x152).get(), (x140).get(), (x137).get());
  Box<Integer> x155 = new Box<Integer>((int)0);
  Box<Integer> x156 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x155, x156, (x154).get(), (x138).get(), (x135).get());
  Box<Integer> x157 = new Box<Integer>((int)0);
  Box<Integer> x158 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x157, x158, (x156).get(), (x136).get(), (x133).get());
  Box<Integer> x159 = new Box<Integer>((int)0);
  Box<Integer> x160 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x159, x160, (x158).get(), (x134).get(), (x131).get());
  Box<Integer> x161 = new Box<Integer>((int)0);
  Box<Integer> x162 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x161, x162, (x160).get(), (x132).get(), (x129).get());
  Box<Integer> x163 = new Box<Integer>((int)0);
  Box<Integer> x164 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x163, x164, (x162).get(), (x130).get(), (x127).get());
  Box<Integer> x165 = new Box<Integer>((int)0);
  Box<Integer> x166 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x165, x166, (x164).get(), (x128).get(), (x125).get());
  Box<Integer> x167 = new Box<Integer>((int)0);
  Box<Integer> x168 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x167, x168, (x166).get(), (x126).get(), (x123).get());
  int x169 = ((x168).get() + (x124).get());
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x170, x171, 0x0, (x99).get(), (x145).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x172, x173, (x171).get(), (x101).get(), (x147).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x174, x175, (x173).get(), (x103).get(), (x149).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x176, x177, (x175).get(), (x105).get(), (x151).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x178, x179, (x177).get(), (x107).get(), (x153).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x180, x181, (x179).get(), (x109).get(), (x155).get());
  Box<Integer> x182 = new Box<Integer>((int)0);
  Box<Integer> x183 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x182, x183, (x181).get(), (x111).get(), (x157).get());
  Box<Integer> x184 = new Box<Integer>((int)0);
  Box<Integer> x185 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x184, x185, (x183).get(), (x113).get(), (x159).get());
  Box<Integer> x186 = new Box<Integer>((int)0);
  Box<Integer> x187 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x186, x187, (x185).get(), (x115).get(), (x161).get());
  Box<Integer> x188 = new Box<Integer>((int)0);
  Box<Integer> x189 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x188, x189, (x187).get(), (x117).get(), (x163).get());
  Box<Integer> x190 = new Box<Integer>((int)0);
  Box<Integer> x191 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x190, x191, (x189).get(), (x119).get(), (x165).get());
  Box<Integer> x192 = new Box<Integer>((int)0);
  Box<Integer> x193 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x192, x193, (x191).get(), (x121).get(), (x167).get());
  Box<Integer> x194 = new Box<Integer>((int)0);
  Box<Integer> x195 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x194, x195, (x193).get(), (x122).get(), x169);
  Box<Integer> x196 = new Box<Integer>((int)0);
  Box<Integer> x197 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x196, x197, (x170).get(), 0xffffffff);
  Box<Integer> x198 = new Box<Integer>((int)0);
  Box<Integer> x199 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x198, x199, (x170).get(), 0xffffffff);
  Box<Integer> x200 = new Box<Integer>((int)0);
  Box<Integer> x201 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x200, x201, (x170).get(), 0xffffffff);
  Box<Integer> x202 = new Box<Integer>((int)0);
  Box<Integer> x203 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x202, x203, (x170).get(), 0xffffffff);
  Box<Integer> x204 = new Box<Integer>((int)0);
  Box<Integer> x205 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x204, x205, (x170).get(), 0xffffffff);
  Box<Integer> x206 = new Box<Integer>((int)0);
  Box<Integer> x207 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x206, x207, (x170).get(), 0xffffffff);
  Box<Integer> x208 = new Box<Integer>((int)0);
  Box<Integer> x209 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x208, x209, (x170).get(), 0xffffffff);
  Box<Integer> x210 = new Box<Integer>((int)0);
  Box<Integer> x211 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x210, x211, (x170).get(), 0xfffffffe);
  Box<Integer> x212 = new Box<Integer>((int)0);
  Box<Integer> x213 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x212, x213, (x170).get(), 0xffffffff);
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x214, x215, (x170).get(), 0xffffffff);
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x216, x217, 0x0, (x213).get(), (x210).get());
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x218, x219, (x217).get(), (x211).get(), (x208).get());
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x220, x221, (x219).get(), (x209).get(), (x206).get());
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x222, x223, (x221).get(), (x207).get(), (x204).get());
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x224, x225, (x223).get(), (x205).get(), (x202).get());
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x226, x227, (x225).get(), (x203).get(), (x200).get());
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x228, x229, (x227).get(), (x201).get(), (x198).get());
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x230, x231, (x229).get(), (x199).get(), (x196).get());
  int x232 = ((x231).get() + (x197).get());
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x233, x234, 0x0, (x170).get(), (x214).get());
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x235, x236, (x234).get(), (x172).get(), (x215).get());
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x237, x238, (x236).get(), (x174).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x239, x240, (x238).get(), (x176).get(), (x212).get());
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x241, x242, (x240).get(), (x178).get(), (x216).get());
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x243, x244, (x242).get(), (x180).get(), (x218).get());
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x245, x246, (x244).get(), (x182).get(), (x220).get());
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x247, x248, (x246).get(), (x184).get(), (x222).get());
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x249, x250, (x248).get(), (x186).get(), (x224).get());
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x251, x252, (x250).get(), (x188).get(), (x226).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x253, x254, (x252).get(), (x190).get(), (x228).get());
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x255, x256, (x254).get(), (x192).get(), (x230).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x257, x258, (x256).get(), (x194).get(), x232);
  int x259 = ((x258).get() + (x195).get());
  Box<Integer> x260 = new Box<Integer>((int)0);
  Box<Integer> x261 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x260, x261, x2, (arg1[11]));
  Box<Integer> x262 = new Box<Integer>((int)0);
  Box<Integer> x263 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x262, x263, x2, (arg1[10]));
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x264, x265, x2, (arg1[9]));
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x266, x267, x2, (arg1[8]));
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x268, x269, x2, (arg1[7]));
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x270, x271, x2, (arg1[6]));
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x272, x273, x2, (arg1[5]));
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x274, x275, x2, (arg1[4]));
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x276, x277, x2, (arg1[3]));
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x278, x279, x2, (arg1[2]));
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x280, x281, x2, (arg1[1]));
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x282, x283, x2, (arg1[0]));
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x284, x285, 0x0, (x283).get(), (x280).get());
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x286, x287, (x285).get(), (x281).get(), (x278).get());
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x288, x289, (x287).get(), (x279).get(), (x276).get());
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x290, x291, (x289).get(), (x277).get(), (x274).get());
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x292, x293, (x291).get(), (x275).get(), (x272).get());
  Box<Integer> x294 = new Box<Integer>((int)0);
  Box<Integer> x295 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x294, x295, (x293).get(), (x273).get(), (x270).get());
  Box<Integer> x296 = new Box<Integer>((int)0);
  Box<Integer> x297 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x296, x297, (x295).get(), (x271).get(), (x268).get());
  Box<Integer> x298 = new Box<Integer>((int)0);
  Box<Integer> x299 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x298, x299, (x297).get(), (x269).get(), (x266).get());
  Box<Integer> x300 = new Box<Integer>((int)0);
  Box<Integer> x301 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x300, x301, (x299).get(), (x267).get(), (x264).get());
  Box<Integer> x302 = new Box<Integer>((int)0);
  Box<Integer> x303 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x302, x303, (x301).get(), (x265).get(), (x262).get());
  Box<Integer> x304 = new Box<Integer>((int)0);
  Box<Integer> x305 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x304, x305, (x303).get(), (x263).get(), (x260).get());
  int x306 = ((x305).get() + (x261).get());
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x307, x308, 0x0, (x235).get(), (x282).get());
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x309, x310, (x308).get(), (x237).get(), (x284).get());
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x311, x312, (x310).get(), (x239).get(), (x286).get());
  Box<Integer> x313 = new Box<Integer>((int)0);
  Box<Integer> x314 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x313, x314, (x312).get(), (x241).get(), (x288).get());
  Box<Integer> x315 = new Box<Integer>((int)0);
  Box<Integer> x316 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x315, x316, (x314).get(), (x243).get(), (x290).get());
  Box<Integer> x317 = new Box<Integer>((int)0);
  Box<Integer> x318 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x317, x318, (x316).get(), (x245).get(), (x292).get());
  Box<Integer> x319 = new Box<Integer>((int)0);
  Box<Integer> x320 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x319, x320, (x318).get(), (x247).get(), (x294).get());
  Box<Integer> x321 = new Box<Integer>((int)0);
  Box<Integer> x322 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x321, x322, (x320).get(), (x249).get(), (x296).get());
  Box<Integer> x323 = new Box<Integer>((int)0);
  Box<Integer> x324 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x323, x324, (x322).get(), (x251).get(), (x298).get());
  Box<Integer> x325 = new Box<Integer>((int)0);
  Box<Integer> x326 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x325, x326, (x324).get(), (x253).get(), (x300).get());
  Box<Integer> x327 = new Box<Integer>((int)0);
  Box<Integer> x328 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x327, x328, (x326).get(), (x255).get(), (x302).get());
  Box<Integer> x329 = new Box<Integer>((int)0);
  Box<Integer> x330 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x329, x330, (x328).get(), (x257).get(), (x304).get());
  Box<Integer> x331 = new Box<Integer>((int)0);
  Box<Integer> x332 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x331, x332, (x330).get(), x259, x306);
  Box<Integer> x333 = new Box<Integer>((int)0);
  Box<Integer> x334 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x333, x334, (x307).get(), 0xffffffff);
  Box<Integer> x335 = new Box<Integer>((int)0);
  Box<Integer> x336 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x335, x336, (x307).get(), 0xffffffff);
  Box<Integer> x337 = new Box<Integer>((int)0);
  Box<Integer> x338 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x337, x338, (x307).get(), 0xffffffff);
  Box<Integer> x339 = new Box<Integer>((int)0);
  Box<Integer> x340 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x339, x340, (x307).get(), 0xffffffff);
  Box<Integer> x341 = new Box<Integer>((int)0);
  Box<Integer> x342 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x341, x342, (x307).get(), 0xffffffff);
  Box<Integer> x343 = new Box<Integer>((int)0);
  Box<Integer> x344 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x343, x344, (x307).get(), 0xffffffff);
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x345, x346, (x307).get(), 0xffffffff);
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x347, x348, (x307).get(), 0xfffffffe);
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x349, x350, (x307).get(), 0xffffffff);
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x351, x352, (x307).get(), 0xffffffff);
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x353, x354, 0x0, (x350).get(), (x347).get());
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x355, x356, (x354).get(), (x348).get(), (x345).get());
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x357, x358, (x356).get(), (x346).get(), (x343).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x359, x360, (x358).get(), (x344).get(), (x341).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x361, x362, (x360).get(), (x342).get(), (x339).get());
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x363, x364, (x362).get(), (x340).get(), (x337).get());
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x365, x366, (x364).get(), (x338).get(), (x335).get());
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x367, x368, (x366).get(), (x336).get(), (x333).get());
  int x369 = ((x368).get() + (x334).get());
  Box<Integer> x370 = new Box<Integer>((int)0);
  Box<Integer> x371 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x370, x371, 0x0, (x307).get(), (x351).get());
  Box<Integer> x372 = new Box<Integer>((int)0);
  Box<Integer> x373 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x372, x373, (x371).get(), (x309).get(), (x352).get());
  Box<Integer> x374 = new Box<Integer>((int)0);
  Box<Integer> x375 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x374, x375, (x373).get(), (x311).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x376 = new Box<Integer>((int)0);
  Box<Integer> x377 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x376, x377, (x375).get(), (x313).get(), (x349).get());
  Box<Integer> x378 = new Box<Integer>((int)0);
  Box<Integer> x379 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x378, x379, (x377).get(), (x315).get(), (x353).get());
  Box<Integer> x380 = new Box<Integer>((int)0);
  Box<Integer> x381 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x380, x381, (x379).get(), (x317).get(), (x355).get());
  Box<Integer> x382 = new Box<Integer>((int)0);
  Box<Integer> x383 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x382, x383, (x381).get(), (x319).get(), (x357).get());
  Box<Integer> x384 = new Box<Integer>((int)0);
  Box<Integer> x385 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x384, x385, (x383).get(), (x321).get(), (x359).get());
  Box<Integer> x386 = new Box<Integer>((int)0);
  Box<Integer> x387 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x386, x387, (x385).get(), (x323).get(), (x361).get());
  Box<Integer> x388 = new Box<Integer>((int)0);
  Box<Integer> x389 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x388, x389, (x387).get(), (x325).get(), (x363).get());
  Box<Integer> x390 = new Box<Integer>((int)0);
  Box<Integer> x391 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x390, x391, (x389).get(), (x327).get(), (x365).get());
  Box<Integer> x392 = new Box<Integer>((int)0);
  Box<Integer> x393 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x392, x393, (x391).get(), (x329).get(), (x367).get());
  Box<Integer> x394 = new Box<Integer>((int)0);
  Box<Integer> x395 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x394, x395, (x393).get(), (x331).get(), x369);
  int x396 = ((x395).get() + (x332).get());
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x397, x398, x3, (arg1[11]));
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x399, x400, x3, (arg1[10]));
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x401, x402, x3, (arg1[9]));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x403, x404, x3, (arg1[8]));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x405, x406, x3, (arg1[7]));
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x407, x408, x3, (arg1[6]));
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x409, x410, x3, (arg1[5]));
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x411, x412, x3, (arg1[4]));
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x413, x414, x3, (arg1[3]));
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x415, x416, x3, (arg1[2]));
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x417, x418, x3, (arg1[1]));
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x419, x420, x3, (arg1[0]));
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x421, x422, 0x0, (x420).get(), (x417).get());
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x423, x424, (x422).get(), (x418).get(), (x415).get());
  Box<Integer> x425 = new Box<Integer>((int)0);
  Box<Integer> x426 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x425, x426, (x424).get(), (x416).get(), (x413).get());
  Box<Integer> x427 = new Box<Integer>((int)0);
  Box<Integer> x428 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x427, x428, (x426).get(), (x414).get(), (x411).get());
  Box<Integer> x429 = new Box<Integer>((int)0);
  Box<Integer> x430 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x429, x430, (x428).get(), (x412).get(), (x409).get());
  Box<Integer> x431 = new Box<Integer>((int)0);
  Box<Integer> x432 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x431, x432, (x430).get(), (x410).get(), (x407).get());
  Box<Integer> x433 = new Box<Integer>((int)0);
  Box<Integer> x434 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x433, x434, (x432).get(), (x408).get(), (x405).get());
  Box<Integer> x435 = new Box<Integer>((int)0);
  Box<Integer> x436 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x435, x436, (x434).get(), (x406).get(), (x403).get());
  Box<Integer> x437 = new Box<Integer>((int)0);
  Box<Integer> x438 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x437, x438, (x436).get(), (x404).get(), (x401).get());
  Box<Integer> x439 = new Box<Integer>((int)0);
  Box<Integer> x440 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x439, x440, (x438).get(), (x402).get(), (x399).get());
  Box<Integer> x441 = new Box<Integer>((int)0);
  Box<Integer> x442 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x441, x442, (x440).get(), (x400).get(), (x397).get());
  int x443 = ((x442).get() + (x398).get());
  Box<Integer> x444 = new Box<Integer>((int)0);
  Box<Integer> x445 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x444, x445, 0x0, (x372).get(), (x419).get());
  Box<Integer> x446 = new Box<Integer>((int)0);
  Box<Integer> x447 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x446, x447, (x445).get(), (x374).get(), (x421).get());
  Box<Integer> x448 = new Box<Integer>((int)0);
  Box<Integer> x449 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x448, x449, (x447).get(), (x376).get(), (x423).get());
  Box<Integer> x450 = new Box<Integer>((int)0);
  Box<Integer> x451 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x450, x451, (x449).get(), (x378).get(), (x425).get());
  Box<Integer> x452 = new Box<Integer>((int)0);
  Box<Integer> x453 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x452, x453, (x451).get(), (x380).get(), (x427).get());
  Box<Integer> x454 = new Box<Integer>((int)0);
  Box<Integer> x455 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x454, x455, (x453).get(), (x382).get(), (x429).get());
  Box<Integer> x456 = new Box<Integer>((int)0);
  Box<Integer> x457 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x456, x457, (x455).get(), (x384).get(), (x431).get());
  Box<Integer> x458 = new Box<Integer>((int)0);
  Box<Integer> x459 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x458, x459, (x457).get(), (x386).get(), (x433).get());
  Box<Integer> x460 = new Box<Integer>((int)0);
  Box<Integer> x461 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x460, x461, (x459).get(), (x388).get(), (x435).get());
  Box<Integer> x462 = new Box<Integer>((int)0);
  Box<Integer> x463 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x462, x463, (x461).get(), (x390).get(), (x437).get());
  Box<Integer> x464 = new Box<Integer>((int)0);
  Box<Integer> x465 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x464, x465, (x463).get(), (x392).get(), (x439).get());
  Box<Integer> x466 = new Box<Integer>((int)0);
  Box<Integer> x467 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x466, x467, (x465).get(), (x394).get(), (x441).get());
  Box<Integer> x468 = new Box<Integer>((int)0);
  Box<Integer> x469 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x468, x469, (x467).get(), x396, x443);
  Box<Integer> x470 = new Box<Integer>((int)0);
  Box<Integer> x471 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x470, x471, (x444).get(), 0xffffffff);
  Box<Integer> x472 = new Box<Integer>((int)0);
  Box<Integer> x473 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x472, x473, (x444).get(), 0xffffffff);
  Box<Integer> x474 = new Box<Integer>((int)0);
  Box<Integer> x475 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x474, x475, (x444).get(), 0xffffffff);
  Box<Integer> x476 = new Box<Integer>((int)0);
  Box<Integer> x477 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x476, x477, (x444).get(), 0xffffffff);
  Box<Integer> x478 = new Box<Integer>((int)0);
  Box<Integer> x479 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x478, x479, (x444).get(), 0xffffffff);
  Box<Integer> x480 = new Box<Integer>((int)0);
  Box<Integer> x481 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x480, x481, (x444).get(), 0xffffffff);
  Box<Integer> x482 = new Box<Integer>((int)0);
  Box<Integer> x483 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x482, x483, (x444).get(), 0xffffffff);
  Box<Integer> x484 = new Box<Integer>((int)0);
  Box<Integer> x485 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x484, x485, (x444).get(), 0xfffffffe);
  Box<Integer> x486 = new Box<Integer>((int)0);
  Box<Integer> x487 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x486, x487, (x444).get(), 0xffffffff);
  Box<Integer> x488 = new Box<Integer>((int)0);
  Box<Integer> x489 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x488, x489, (x444).get(), 0xffffffff);
  Box<Integer> x490 = new Box<Integer>((int)0);
  Box<Integer> x491 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x490, x491, 0x0, (x487).get(), (x484).get());
  Box<Integer> x492 = new Box<Integer>((int)0);
  Box<Integer> x493 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x492, x493, (x491).get(), (x485).get(), (x482).get());
  Box<Integer> x494 = new Box<Integer>((int)0);
  Box<Integer> x495 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x494, x495, (x493).get(), (x483).get(), (x480).get());
  Box<Integer> x496 = new Box<Integer>((int)0);
  Box<Integer> x497 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x496, x497, (x495).get(), (x481).get(), (x478).get());
  Box<Integer> x498 = new Box<Integer>((int)0);
  Box<Integer> x499 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x498, x499, (x497).get(), (x479).get(), (x476).get());
  Box<Integer> x500 = new Box<Integer>((int)0);
  Box<Integer> x501 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x500, x501, (x499).get(), (x477).get(), (x474).get());
  Box<Integer> x502 = new Box<Integer>((int)0);
  Box<Integer> x503 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x502, x503, (x501).get(), (x475).get(), (x472).get());
  Box<Integer> x504 = new Box<Integer>((int)0);
  Box<Integer> x505 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x504, x505, (x503).get(), (x473).get(), (x470).get());
  int x506 = ((x505).get() + (x471).get());
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x507, x508, 0x0, (x444).get(), (x488).get());
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x509, x510, (x508).get(), (x446).get(), (x489).get());
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x511, x512, (x510).get(), (x448).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x513, x514, (x512).get(), (x450).get(), (x486).get());
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x515, x516, (x514).get(), (x452).get(), (x490).get());
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x517, x518, (x516).get(), (x454).get(), (x492).get());
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x519, x520, (x518).get(), (x456).get(), (x494).get());
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x521, x522, (x520).get(), (x458).get(), (x496).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x523, x524, (x522).get(), (x460).get(), (x498).get());
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x525, x526, (x524).get(), (x462).get(), (x500).get());
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x527, x528, (x526).get(), (x464).get(), (x502).get());
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x529, x530, (x528).get(), (x466).get(), (x504).get());
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x531, x532, (x530).get(), (x468).get(), x506);
  int x533 = ((x532).get() + (x469).get());
  Box<Integer> x534 = new Box<Integer>((int)0);
  Box<Integer> x535 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x534, x535, x4, (arg1[11]));
  Box<Integer> x536 = new Box<Integer>((int)0);
  Box<Integer> x537 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x536, x537, x4, (arg1[10]));
  Box<Integer> x538 = new Box<Integer>((int)0);
  Box<Integer> x539 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x538, x539, x4, (arg1[9]));
  Box<Integer> x540 = new Box<Integer>((int)0);
  Box<Integer> x541 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x540, x541, x4, (arg1[8]));
  Box<Integer> x542 = new Box<Integer>((int)0);
  Box<Integer> x543 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x542, x543, x4, (arg1[7]));
  Box<Integer> x544 = new Box<Integer>((int)0);
  Box<Integer> x545 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x544, x545, x4, (arg1[6]));
  Box<Integer> x546 = new Box<Integer>((int)0);
  Box<Integer> x547 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x546, x547, x4, (arg1[5]));
  Box<Integer> x548 = new Box<Integer>((int)0);
  Box<Integer> x549 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x548, x549, x4, (arg1[4]));
  Box<Integer> x550 = new Box<Integer>((int)0);
  Box<Integer> x551 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x550, x551, x4, (arg1[3]));
  Box<Integer> x552 = new Box<Integer>((int)0);
  Box<Integer> x553 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x552, x553, x4, (arg1[2]));
  Box<Integer> x554 = new Box<Integer>((int)0);
  Box<Integer> x555 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x554, x555, x4, (arg1[1]));
  Box<Integer> x556 = new Box<Integer>((int)0);
  Box<Integer> x557 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x556, x557, x4, (arg1[0]));
  Box<Integer> x558 = new Box<Integer>((int)0);
  Box<Integer> x559 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x558, x559, 0x0, (x557).get(), (x554).get());
  Box<Integer> x560 = new Box<Integer>((int)0);
  Box<Integer> x561 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x560, x561, (x559).get(), (x555).get(), (x552).get());
  Box<Integer> x562 = new Box<Integer>((int)0);
  Box<Integer> x563 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x562, x563, (x561).get(), (x553).get(), (x550).get());
  Box<Integer> x564 = new Box<Integer>((int)0);
  Box<Integer> x565 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x564, x565, (x563).get(), (x551).get(), (x548).get());
  Box<Integer> x566 = new Box<Integer>((int)0);
  Box<Integer> x567 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x566, x567, (x565).get(), (x549).get(), (x546).get());
  Box<Integer> x568 = new Box<Integer>((int)0);
  Box<Integer> x569 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x568, x569, (x567).get(), (x547).get(), (x544).get());
  Box<Integer> x570 = new Box<Integer>((int)0);
  Box<Integer> x571 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x570, x571, (x569).get(), (x545).get(), (x542).get());
  Box<Integer> x572 = new Box<Integer>((int)0);
  Box<Integer> x573 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x572, x573, (x571).get(), (x543).get(), (x540).get());
  Box<Integer> x574 = new Box<Integer>((int)0);
  Box<Integer> x575 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x574, x575, (x573).get(), (x541).get(), (x538).get());
  Box<Integer> x576 = new Box<Integer>((int)0);
  Box<Integer> x577 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x576, x577, (x575).get(), (x539).get(), (x536).get());
  Box<Integer> x578 = new Box<Integer>((int)0);
  Box<Integer> x579 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x578, x579, (x577).get(), (x537).get(), (x534).get());
  int x580 = ((x579).get() + (x535).get());
  Box<Integer> x581 = new Box<Integer>((int)0);
  Box<Integer> x582 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x581, x582, 0x0, (x509).get(), (x556).get());
  Box<Integer> x583 = new Box<Integer>((int)0);
  Box<Integer> x584 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x583, x584, (x582).get(), (x511).get(), (x558).get());
  Box<Integer> x585 = new Box<Integer>((int)0);
  Box<Integer> x586 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x585, x586, (x584).get(), (x513).get(), (x560).get());
  Box<Integer> x587 = new Box<Integer>((int)0);
  Box<Integer> x588 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x587, x588, (x586).get(), (x515).get(), (x562).get());
  Box<Integer> x589 = new Box<Integer>((int)0);
  Box<Integer> x590 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x589, x590, (x588).get(), (x517).get(), (x564).get());
  Box<Integer> x591 = new Box<Integer>((int)0);
  Box<Integer> x592 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x591, x592, (x590).get(), (x519).get(), (x566).get());
  Box<Integer> x593 = new Box<Integer>((int)0);
  Box<Integer> x594 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x593, x594, (x592).get(), (x521).get(), (x568).get());
  Box<Integer> x595 = new Box<Integer>((int)0);
  Box<Integer> x596 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x595, x596, (x594).get(), (x523).get(), (x570).get());
  Box<Integer> x597 = new Box<Integer>((int)0);
  Box<Integer> x598 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x597, x598, (x596).get(), (x525).get(), (x572).get());
  Box<Integer> x599 = new Box<Integer>((int)0);
  Box<Integer> x600 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x599, x600, (x598).get(), (x527).get(), (x574).get());
  Box<Integer> x601 = new Box<Integer>((int)0);
  Box<Integer> x602 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x601, x602, (x600).get(), (x529).get(), (x576).get());
  Box<Integer> x603 = new Box<Integer>((int)0);
  Box<Integer> x604 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x603, x604, (x602).get(), (x531).get(), (x578).get());
  Box<Integer> x605 = new Box<Integer>((int)0);
  Box<Integer> x606 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x605, x606, (x604).get(), x533, x580);
  Box<Integer> x607 = new Box<Integer>((int)0);
  Box<Integer> x608 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x607, x608, (x581).get(), 0xffffffff);
  Box<Integer> x609 = new Box<Integer>((int)0);
  Box<Integer> x610 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x609, x610, (x581).get(), 0xffffffff);
  Box<Integer> x611 = new Box<Integer>((int)0);
  Box<Integer> x612 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x611, x612, (x581).get(), 0xffffffff);
  Box<Integer> x613 = new Box<Integer>((int)0);
  Box<Integer> x614 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x613, x614, (x581).get(), 0xffffffff);
  Box<Integer> x615 = new Box<Integer>((int)0);
  Box<Integer> x616 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x615, x616, (x581).get(), 0xffffffff);
  Box<Integer> x617 = new Box<Integer>((int)0);
  Box<Integer> x618 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x617, x618, (x581).get(), 0xffffffff);
  Box<Integer> x619 = new Box<Integer>((int)0);
  Box<Integer> x620 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x619, x620, (x581).get(), 0xffffffff);
  Box<Integer> x621 = new Box<Integer>((int)0);
  Box<Integer> x622 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x621, x622, (x581).get(), 0xfffffffe);
  Box<Integer> x623 = new Box<Integer>((int)0);
  Box<Integer> x624 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x623, x624, (x581).get(), 0xffffffff);
  Box<Integer> x625 = new Box<Integer>((int)0);
  Box<Integer> x626 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x625, x626, (x581).get(), 0xffffffff);
  Box<Integer> x627 = new Box<Integer>((int)0);
  Box<Integer> x628 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x627, x628, 0x0, (x624).get(), (x621).get());
  Box<Integer> x629 = new Box<Integer>((int)0);
  Box<Integer> x630 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x629, x630, (x628).get(), (x622).get(), (x619).get());
  Box<Integer> x631 = new Box<Integer>((int)0);
  Box<Integer> x632 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x631, x632, (x630).get(), (x620).get(), (x617).get());
  Box<Integer> x633 = new Box<Integer>((int)0);
  Box<Integer> x634 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x633, x634, (x632).get(), (x618).get(), (x615).get());
  Box<Integer> x635 = new Box<Integer>((int)0);
  Box<Integer> x636 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x635, x636, (x634).get(), (x616).get(), (x613).get());
  Box<Integer> x637 = new Box<Integer>((int)0);
  Box<Integer> x638 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x637, x638, (x636).get(), (x614).get(), (x611).get());
  Box<Integer> x639 = new Box<Integer>((int)0);
  Box<Integer> x640 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x639, x640, (x638).get(), (x612).get(), (x609).get());
  Box<Integer> x641 = new Box<Integer>((int)0);
  Box<Integer> x642 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x641, x642, (x640).get(), (x610).get(), (x607).get());
  int x643 = ((x642).get() + (x608).get());
  Box<Integer> x644 = new Box<Integer>((int)0);
  Box<Integer> x645 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x644, x645, 0x0, (x581).get(), (x625).get());
  Box<Integer> x646 = new Box<Integer>((int)0);
  Box<Integer> x647 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x646, x647, (x645).get(), (x583).get(), (x626).get());
  Box<Integer> x648 = new Box<Integer>((int)0);
  Box<Integer> x649 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x648, x649, (x647).get(), (x585).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x650 = new Box<Integer>((int)0);
  Box<Integer> x651 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x650, x651, (x649).get(), (x587).get(), (x623).get());
  Box<Integer> x652 = new Box<Integer>((int)0);
  Box<Integer> x653 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x652, x653, (x651).get(), (x589).get(), (x627).get());
  Box<Integer> x654 = new Box<Integer>((int)0);
  Box<Integer> x655 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x654, x655, (x653).get(), (x591).get(), (x629).get());
  Box<Integer> x656 = new Box<Integer>((int)0);
  Box<Integer> x657 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x656, x657, (x655).get(), (x593).get(), (x631).get());
  Box<Integer> x658 = new Box<Integer>((int)0);
  Box<Integer> x659 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x658, x659, (x657).get(), (x595).get(), (x633).get());
  Box<Integer> x660 = new Box<Integer>((int)0);
  Box<Integer> x661 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x660, x661, (x659).get(), (x597).get(), (x635).get());
  Box<Integer> x662 = new Box<Integer>((int)0);
  Box<Integer> x663 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x662, x663, (x661).get(), (x599).get(), (x637).get());
  Box<Integer> x664 = new Box<Integer>((int)0);
  Box<Integer> x665 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x664, x665, (x663).get(), (x601).get(), (x639).get());
  Box<Integer> x666 = new Box<Integer>((int)0);
  Box<Integer> x667 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x666, x667, (x665).get(), (x603).get(), (x641).get());
  Box<Integer> x668 = new Box<Integer>((int)0);
  Box<Integer> x669 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x668, x669, (x667).get(), (x605).get(), x643);
  int x670 = ((x669).get() + (x606).get());
  Box<Integer> x671 = new Box<Integer>((int)0);
  Box<Integer> x672 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x671, x672, x5, (arg1[11]));
  Box<Integer> x673 = new Box<Integer>((int)0);
  Box<Integer> x674 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x673, x674, x5, (arg1[10]));
  Box<Integer> x675 = new Box<Integer>((int)0);
  Box<Integer> x676 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x675, x676, x5, (arg1[9]));
  Box<Integer> x677 = new Box<Integer>((int)0);
  Box<Integer> x678 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x677, x678, x5, (arg1[8]));
  Box<Integer> x679 = new Box<Integer>((int)0);
  Box<Integer> x680 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x679, x680, x5, (arg1[7]));
  Box<Integer> x681 = new Box<Integer>((int)0);
  Box<Integer> x682 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x681, x682, x5, (arg1[6]));
  Box<Integer> x683 = new Box<Integer>((int)0);
  Box<Integer> x684 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x683, x684, x5, (arg1[5]));
  Box<Integer> x685 = new Box<Integer>((int)0);
  Box<Integer> x686 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x685, x686, x5, (arg1[4]));
  Box<Integer> x687 = new Box<Integer>((int)0);
  Box<Integer> x688 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x687, x688, x5, (arg1[3]));
  Box<Integer> x689 = new Box<Integer>((int)0);
  Box<Integer> x690 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x689, x690, x5, (arg1[2]));
  Box<Integer> x691 = new Box<Integer>((int)0);
  Box<Integer> x692 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x691, x692, x5, (arg1[1]));
  Box<Integer> x693 = new Box<Integer>((int)0);
  Box<Integer> x694 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x693, x694, x5, (arg1[0]));
  Box<Integer> x695 = new Box<Integer>((int)0);
  Box<Integer> x696 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x695, x696, 0x0, (x694).get(), (x691).get());
  Box<Integer> x697 = new Box<Integer>((int)0);
  Box<Integer> x698 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x697, x698, (x696).get(), (x692).get(), (x689).get());
  Box<Integer> x699 = new Box<Integer>((int)0);
  Box<Integer> x700 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x699, x700, (x698).get(), (x690).get(), (x687).get());
  Box<Integer> x701 = new Box<Integer>((int)0);
  Box<Integer> x702 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x701, x702, (x700).get(), (x688).get(), (x685).get());
  Box<Integer> x703 = new Box<Integer>((int)0);
  Box<Integer> x704 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x703, x704, (x702).get(), (x686).get(), (x683).get());
  Box<Integer> x705 = new Box<Integer>((int)0);
  Box<Integer> x706 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x705, x706, (x704).get(), (x684).get(), (x681).get());
  Box<Integer> x707 = new Box<Integer>((int)0);
  Box<Integer> x708 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x707, x708, (x706).get(), (x682).get(), (x679).get());
  Box<Integer> x709 = new Box<Integer>((int)0);
  Box<Integer> x710 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x709, x710, (x708).get(), (x680).get(), (x677).get());
  Box<Integer> x711 = new Box<Integer>((int)0);
  Box<Integer> x712 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x711, x712, (x710).get(), (x678).get(), (x675).get());
  Box<Integer> x713 = new Box<Integer>((int)0);
  Box<Integer> x714 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x713, x714, (x712).get(), (x676).get(), (x673).get());
  Box<Integer> x715 = new Box<Integer>((int)0);
  Box<Integer> x716 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x715, x716, (x714).get(), (x674).get(), (x671).get());
  int x717 = ((x716).get() + (x672).get());
  Box<Integer> x718 = new Box<Integer>((int)0);
  Box<Integer> x719 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x718, x719, 0x0, (x646).get(), (x693).get());
  Box<Integer> x720 = new Box<Integer>((int)0);
  Box<Integer> x721 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x720, x721, (x719).get(), (x648).get(), (x695).get());
  Box<Integer> x722 = new Box<Integer>((int)0);
  Box<Integer> x723 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x722, x723, (x721).get(), (x650).get(), (x697).get());
  Box<Integer> x724 = new Box<Integer>((int)0);
  Box<Integer> x725 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x724, x725, (x723).get(), (x652).get(), (x699).get());
  Box<Integer> x726 = new Box<Integer>((int)0);
  Box<Integer> x727 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x726, x727, (x725).get(), (x654).get(), (x701).get());
  Box<Integer> x728 = new Box<Integer>((int)0);
  Box<Integer> x729 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x728, x729, (x727).get(), (x656).get(), (x703).get());
  Box<Integer> x730 = new Box<Integer>((int)0);
  Box<Integer> x731 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x730, x731, (x729).get(), (x658).get(), (x705).get());
  Box<Integer> x732 = new Box<Integer>((int)0);
  Box<Integer> x733 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x732, x733, (x731).get(), (x660).get(), (x707).get());
  Box<Integer> x734 = new Box<Integer>((int)0);
  Box<Integer> x735 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x734, x735, (x733).get(), (x662).get(), (x709).get());
  Box<Integer> x736 = new Box<Integer>((int)0);
  Box<Integer> x737 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x736, x737, (x735).get(), (x664).get(), (x711).get());
  Box<Integer> x738 = new Box<Integer>((int)0);
  Box<Integer> x739 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x738, x739, (x737).get(), (x666).get(), (x713).get());
  Box<Integer> x740 = new Box<Integer>((int)0);
  Box<Integer> x741 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x740, x741, (x739).get(), (x668).get(), (x715).get());
  Box<Integer> x742 = new Box<Integer>((int)0);
  Box<Integer> x743 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x742, x743, (x741).get(), x670, x717);
  Box<Integer> x744 = new Box<Integer>((int)0);
  Box<Integer> x745 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x744, x745, (x718).get(), 0xffffffff);
  Box<Integer> x746 = new Box<Integer>((int)0);
  Box<Integer> x747 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x746, x747, (x718).get(), 0xffffffff);
  Box<Integer> x748 = new Box<Integer>((int)0);
  Box<Integer> x749 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x748, x749, (x718).get(), 0xffffffff);
  Box<Integer> x750 = new Box<Integer>((int)0);
  Box<Integer> x751 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x750, x751, (x718).get(), 0xffffffff);
  Box<Integer> x752 = new Box<Integer>((int)0);
  Box<Integer> x753 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x752, x753, (x718).get(), 0xffffffff);
  Box<Integer> x754 = new Box<Integer>((int)0);
  Box<Integer> x755 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x754, x755, (x718).get(), 0xffffffff);
  Box<Integer> x756 = new Box<Integer>((int)0);
  Box<Integer> x757 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x756, x757, (x718).get(), 0xffffffff);
  Box<Integer> x758 = new Box<Integer>((int)0);
  Box<Integer> x759 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x758, x759, (x718).get(), 0xfffffffe);
  Box<Integer> x760 = new Box<Integer>((int)0);
  Box<Integer> x761 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x760, x761, (x718).get(), 0xffffffff);
  Box<Integer> x762 = new Box<Integer>((int)0);
  Box<Integer> x763 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x762, x763, (x718).get(), 0xffffffff);
  Box<Integer> x764 = new Box<Integer>((int)0);
  Box<Integer> x765 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x764, x765, 0x0, (x761).get(), (x758).get());
  Box<Integer> x766 = new Box<Integer>((int)0);
  Box<Integer> x767 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x766, x767, (x765).get(), (x759).get(), (x756).get());
  Box<Integer> x768 = new Box<Integer>((int)0);
  Box<Integer> x769 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x768, x769, (x767).get(), (x757).get(), (x754).get());
  Box<Integer> x770 = new Box<Integer>((int)0);
  Box<Integer> x771 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x770, x771, (x769).get(), (x755).get(), (x752).get());
  Box<Integer> x772 = new Box<Integer>((int)0);
  Box<Integer> x773 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x772, x773, (x771).get(), (x753).get(), (x750).get());
  Box<Integer> x774 = new Box<Integer>((int)0);
  Box<Integer> x775 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x774, x775, (x773).get(), (x751).get(), (x748).get());
  Box<Integer> x776 = new Box<Integer>((int)0);
  Box<Integer> x777 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x776, x777, (x775).get(), (x749).get(), (x746).get());
  Box<Integer> x778 = new Box<Integer>((int)0);
  Box<Integer> x779 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x778, x779, (x777).get(), (x747).get(), (x744).get());
  int x780 = ((x779).get() + (x745).get());
  Box<Integer> x781 = new Box<Integer>((int)0);
  Box<Integer> x782 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x781, x782, 0x0, (x718).get(), (x762).get());
  Box<Integer> x783 = new Box<Integer>((int)0);
  Box<Integer> x784 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x783, x784, (x782).get(), (x720).get(), (x763).get());
  Box<Integer> x785 = new Box<Integer>((int)0);
  Box<Integer> x786 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x785, x786, (x784).get(), (x722).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x787 = new Box<Integer>((int)0);
  Box<Integer> x788 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x787, x788, (x786).get(), (x724).get(), (x760).get());
  Box<Integer> x789 = new Box<Integer>((int)0);
  Box<Integer> x790 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x789, x790, (x788).get(), (x726).get(), (x764).get());
  Box<Integer> x791 = new Box<Integer>((int)0);
  Box<Integer> x792 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x791, x792, (x790).get(), (x728).get(), (x766).get());
  Box<Integer> x793 = new Box<Integer>((int)0);
  Box<Integer> x794 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x793, x794, (x792).get(), (x730).get(), (x768).get());
  Box<Integer> x795 = new Box<Integer>((int)0);
  Box<Integer> x796 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x795, x796, (x794).get(), (x732).get(), (x770).get());
  Box<Integer> x797 = new Box<Integer>((int)0);
  Box<Integer> x798 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x797, x798, (x796).get(), (x734).get(), (x772).get());
  Box<Integer> x799 = new Box<Integer>((int)0);
  Box<Integer> x800 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x799, x800, (x798).get(), (x736).get(), (x774).get());
  Box<Integer> x801 = new Box<Integer>((int)0);
  Box<Integer> x802 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x801, x802, (x800).get(), (x738).get(), (x776).get());
  Box<Integer> x803 = new Box<Integer>((int)0);
  Box<Integer> x804 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x803, x804, (x802).get(), (x740).get(), (x778).get());
  Box<Integer> x805 = new Box<Integer>((int)0);
  Box<Integer> x806 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x805, x806, (x804).get(), (x742).get(), x780);
  int x807 = ((x806).get() + (x743).get());
  Box<Integer> x808 = new Box<Integer>((int)0);
  Box<Integer> x809 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x808, x809, x6, (arg1[11]));
  Box<Integer> x810 = new Box<Integer>((int)0);
  Box<Integer> x811 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x810, x811, x6, (arg1[10]));
  Box<Integer> x812 = new Box<Integer>((int)0);
  Box<Integer> x813 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x812, x813, x6, (arg1[9]));
  Box<Integer> x814 = new Box<Integer>((int)0);
  Box<Integer> x815 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x814, x815, x6, (arg1[8]));
  Box<Integer> x816 = new Box<Integer>((int)0);
  Box<Integer> x817 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x816, x817, x6, (arg1[7]));
  Box<Integer> x818 = new Box<Integer>((int)0);
  Box<Integer> x819 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x818, x819, x6, (arg1[6]));
  Box<Integer> x820 = new Box<Integer>((int)0);
  Box<Integer> x821 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x820, x821, x6, (arg1[5]));
  Box<Integer> x822 = new Box<Integer>((int)0);
  Box<Integer> x823 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x822, x823, x6, (arg1[4]));
  Box<Integer> x824 = new Box<Integer>((int)0);
  Box<Integer> x825 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x824, x825, x6, (arg1[3]));
  Box<Integer> x826 = new Box<Integer>((int)0);
  Box<Integer> x827 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x826, x827, x6, (arg1[2]));
  Box<Integer> x828 = new Box<Integer>((int)0);
  Box<Integer> x829 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x828, x829, x6, (arg1[1]));
  Box<Integer> x830 = new Box<Integer>((int)0);
  Box<Integer> x831 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x830, x831, x6, (arg1[0]));
  Box<Integer> x832 = new Box<Integer>((int)0);
  Box<Integer> x833 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x832, x833, 0x0, (x831).get(), (x828).get());
  Box<Integer> x834 = new Box<Integer>((int)0);
  Box<Integer> x835 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x834, x835, (x833).get(), (x829).get(), (x826).get());
  Box<Integer> x836 = new Box<Integer>((int)0);
  Box<Integer> x837 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x836, x837, (x835).get(), (x827).get(), (x824).get());
  Box<Integer> x838 = new Box<Integer>((int)0);
  Box<Integer> x839 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x838, x839, (x837).get(), (x825).get(), (x822).get());
  Box<Integer> x840 = new Box<Integer>((int)0);
  Box<Integer> x841 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x840, x841, (x839).get(), (x823).get(), (x820).get());
  Box<Integer> x842 = new Box<Integer>((int)0);
  Box<Integer> x843 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x842, x843, (x841).get(), (x821).get(), (x818).get());
  Box<Integer> x844 = new Box<Integer>((int)0);
  Box<Integer> x845 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x844, x845, (x843).get(), (x819).get(), (x816).get());
  Box<Integer> x846 = new Box<Integer>((int)0);
  Box<Integer> x847 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x846, x847, (x845).get(), (x817).get(), (x814).get());
  Box<Integer> x848 = new Box<Integer>((int)0);
  Box<Integer> x849 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x848, x849, (x847).get(), (x815).get(), (x812).get());
  Box<Integer> x850 = new Box<Integer>((int)0);
  Box<Integer> x851 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x850, x851, (x849).get(), (x813).get(), (x810).get());
  Box<Integer> x852 = new Box<Integer>((int)0);
  Box<Integer> x853 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x852, x853, (x851).get(), (x811).get(), (x808).get());
  int x854 = ((x853).get() + (x809).get());
  Box<Integer> x855 = new Box<Integer>((int)0);
  Box<Integer> x856 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x855, x856, 0x0, (x783).get(), (x830).get());
  Box<Integer> x857 = new Box<Integer>((int)0);
  Box<Integer> x858 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x857, x858, (x856).get(), (x785).get(), (x832).get());
  Box<Integer> x859 = new Box<Integer>((int)0);
  Box<Integer> x860 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x859, x860, (x858).get(), (x787).get(), (x834).get());
  Box<Integer> x861 = new Box<Integer>((int)0);
  Box<Integer> x862 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x861, x862, (x860).get(), (x789).get(), (x836).get());
  Box<Integer> x863 = new Box<Integer>((int)0);
  Box<Integer> x864 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x863, x864, (x862).get(), (x791).get(), (x838).get());
  Box<Integer> x865 = new Box<Integer>((int)0);
  Box<Integer> x866 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x865, x866, (x864).get(), (x793).get(), (x840).get());
  Box<Integer> x867 = new Box<Integer>((int)0);
  Box<Integer> x868 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x867, x868, (x866).get(), (x795).get(), (x842).get());
  Box<Integer> x869 = new Box<Integer>((int)0);
  Box<Integer> x870 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x869, x870, (x868).get(), (x797).get(), (x844).get());
  Box<Integer> x871 = new Box<Integer>((int)0);
  Box<Integer> x872 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x871, x872, (x870).get(), (x799).get(), (x846).get());
  Box<Integer> x873 = new Box<Integer>((int)0);
  Box<Integer> x874 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x873, x874, (x872).get(), (x801).get(), (x848).get());
  Box<Integer> x875 = new Box<Integer>((int)0);
  Box<Integer> x876 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x875, x876, (x874).get(), (x803).get(), (x850).get());
  Box<Integer> x877 = new Box<Integer>((int)0);
  Box<Integer> x878 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x877, x878, (x876).get(), (x805).get(), (x852).get());
  Box<Integer> x879 = new Box<Integer>((int)0);
  Box<Integer> x880 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x879, x880, (x878).get(), x807, x854);
  Box<Integer> x881 = new Box<Integer>((int)0);
  Box<Integer> x882 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x881, x882, (x855).get(), 0xffffffff);
  Box<Integer> x883 = new Box<Integer>((int)0);
  Box<Integer> x884 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x883, x884, (x855).get(), 0xffffffff);
  Box<Integer> x885 = new Box<Integer>((int)0);
  Box<Integer> x886 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x885, x886, (x855).get(), 0xffffffff);
  Box<Integer> x887 = new Box<Integer>((int)0);
  Box<Integer> x888 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x887, x888, (x855).get(), 0xffffffff);
  Box<Integer> x889 = new Box<Integer>((int)0);
  Box<Integer> x890 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x889, x890, (x855).get(), 0xffffffff);
  Box<Integer> x891 = new Box<Integer>((int)0);
  Box<Integer> x892 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x891, x892, (x855).get(), 0xffffffff);
  Box<Integer> x893 = new Box<Integer>((int)0);
  Box<Integer> x894 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x893, x894, (x855).get(), 0xffffffff);
  Box<Integer> x895 = new Box<Integer>((int)0);
  Box<Integer> x896 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x895, x896, (x855).get(), 0xfffffffe);
  Box<Integer> x897 = new Box<Integer>((int)0);
  Box<Integer> x898 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x897, x898, (x855).get(), 0xffffffff);
  Box<Integer> x899 = new Box<Integer>((int)0);
  Box<Integer> x900 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x899, x900, (x855).get(), 0xffffffff);
  Box<Integer> x901 = new Box<Integer>((int)0);
  Box<Integer> x902 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x901, x902, 0x0, (x898).get(), (x895).get());
  Box<Integer> x903 = new Box<Integer>((int)0);
  Box<Integer> x904 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x903, x904, (x902).get(), (x896).get(), (x893).get());
  Box<Integer> x905 = new Box<Integer>((int)0);
  Box<Integer> x906 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x905, x906, (x904).get(), (x894).get(), (x891).get());
  Box<Integer> x907 = new Box<Integer>((int)0);
  Box<Integer> x908 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x907, x908, (x906).get(), (x892).get(), (x889).get());
  Box<Integer> x909 = new Box<Integer>((int)0);
  Box<Integer> x910 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x909, x910, (x908).get(), (x890).get(), (x887).get());
  Box<Integer> x911 = new Box<Integer>((int)0);
  Box<Integer> x912 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x911, x912, (x910).get(), (x888).get(), (x885).get());
  Box<Integer> x913 = new Box<Integer>((int)0);
  Box<Integer> x914 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x913, x914, (x912).get(), (x886).get(), (x883).get());
  Box<Integer> x915 = new Box<Integer>((int)0);
  Box<Integer> x916 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x915, x916, (x914).get(), (x884).get(), (x881).get());
  int x917 = ((x916).get() + (x882).get());
  Box<Integer> x918 = new Box<Integer>((int)0);
  Box<Integer> x919 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x918, x919, 0x0, (x855).get(), (x899).get());
  Box<Integer> x920 = new Box<Integer>((int)0);
  Box<Integer> x921 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x920, x921, (x919).get(), (x857).get(), (x900).get());
  Box<Integer> x922 = new Box<Integer>((int)0);
  Box<Integer> x923 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x922, x923, (x921).get(), (x859).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x924 = new Box<Integer>((int)0);
  Box<Integer> x925 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x924, x925, (x923).get(), (x861).get(), (x897).get());
  Box<Integer> x926 = new Box<Integer>((int)0);
  Box<Integer> x927 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x926, x927, (x925).get(), (x863).get(), (x901).get());
  Box<Integer> x928 = new Box<Integer>((int)0);
  Box<Integer> x929 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x928, x929, (x927).get(), (x865).get(), (x903).get());
  Box<Integer> x930 = new Box<Integer>((int)0);
  Box<Integer> x931 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x930, x931, (x929).get(), (x867).get(), (x905).get());
  Box<Integer> x932 = new Box<Integer>((int)0);
  Box<Integer> x933 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x932, x933, (x931).get(), (x869).get(), (x907).get());
  Box<Integer> x934 = new Box<Integer>((int)0);
  Box<Integer> x935 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x934, x935, (x933).get(), (x871).get(), (x909).get());
  Box<Integer> x936 = new Box<Integer>((int)0);
  Box<Integer> x937 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x936, x937, (x935).get(), (x873).get(), (x911).get());
  Box<Integer> x938 = new Box<Integer>((int)0);
  Box<Integer> x939 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x938, x939, (x937).get(), (x875).get(), (x913).get());
  Box<Integer> x940 = new Box<Integer>((int)0);
  Box<Integer> x941 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x940, x941, (x939).get(), (x877).get(), (x915).get());
  Box<Integer> x942 = new Box<Integer>((int)0);
  Box<Integer> x943 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x942, x943, (x941).get(), (x879).get(), x917);
  int x944 = ((x943).get() + (x880).get());
  Box<Integer> x945 = new Box<Integer>((int)0);
  Box<Integer> x946 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x945, x946, x7, (arg1[11]));
  Box<Integer> x947 = new Box<Integer>((int)0);
  Box<Integer> x948 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x947, x948, x7, (arg1[10]));
  Box<Integer> x949 = new Box<Integer>((int)0);
  Box<Integer> x950 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x949, x950, x7, (arg1[9]));
  Box<Integer> x951 = new Box<Integer>((int)0);
  Box<Integer> x952 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x951, x952, x7, (arg1[8]));
  Box<Integer> x953 = new Box<Integer>((int)0);
  Box<Integer> x954 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x953, x954, x7, (arg1[7]));
  Box<Integer> x955 = new Box<Integer>((int)0);
  Box<Integer> x956 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x955, x956, x7, (arg1[6]));
  Box<Integer> x957 = new Box<Integer>((int)0);
  Box<Integer> x958 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x957, x958, x7, (arg1[5]));
  Box<Integer> x959 = new Box<Integer>((int)0);
  Box<Integer> x960 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x959, x960, x7, (arg1[4]));
  Box<Integer> x961 = new Box<Integer>((int)0);
  Box<Integer> x962 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x961, x962, x7, (arg1[3]));
  Box<Integer> x963 = new Box<Integer>((int)0);
  Box<Integer> x964 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x963, x964, x7, (arg1[2]));
  Box<Integer> x965 = new Box<Integer>((int)0);
  Box<Integer> x966 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x965, x966, x7, (arg1[1]));
  Box<Integer> x967 = new Box<Integer>((int)0);
  Box<Integer> x968 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x967, x968, x7, (arg1[0]));
  Box<Integer> x969 = new Box<Integer>((int)0);
  Box<Integer> x970 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x969, x970, 0x0, (x968).get(), (x965).get());
  Box<Integer> x971 = new Box<Integer>((int)0);
  Box<Integer> x972 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x971, x972, (x970).get(), (x966).get(), (x963).get());
  Box<Integer> x973 = new Box<Integer>((int)0);
  Box<Integer> x974 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x973, x974, (x972).get(), (x964).get(), (x961).get());
  Box<Integer> x975 = new Box<Integer>((int)0);
  Box<Integer> x976 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x975, x976, (x974).get(), (x962).get(), (x959).get());
  Box<Integer> x977 = new Box<Integer>((int)0);
  Box<Integer> x978 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x977, x978, (x976).get(), (x960).get(), (x957).get());
  Box<Integer> x979 = new Box<Integer>((int)0);
  Box<Integer> x980 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x979, x980, (x978).get(), (x958).get(), (x955).get());
  Box<Integer> x981 = new Box<Integer>((int)0);
  Box<Integer> x982 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x981, x982, (x980).get(), (x956).get(), (x953).get());
  Box<Integer> x983 = new Box<Integer>((int)0);
  Box<Integer> x984 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x983, x984, (x982).get(), (x954).get(), (x951).get());
  Box<Integer> x985 = new Box<Integer>((int)0);
  Box<Integer> x986 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x985, x986, (x984).get(), (x952).get(), (x949).get());
  Box<Integer> x987 = new Box<Integer>((int)0);
  Box<Integer> x988 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x987, x988, (x986).get(), (x950).get(), (x947).get());
  Box<Integer> x989 = new Box<Integer>((int)0);
  Box<Integer> x990 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x989, x990, (x988).get(), (x948).get(), (x945).get());
  int x991 = ((x990).get() + (x946).get());
  Box<Integer> x992 = new Box<Integer>((int)0);
  Box<Integer> x993 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x992, x993, 0x0, (x920).get(), (x967).get());
  Box<Integer> x994 = new Box<Integer>((int)0);
  Box<Integer> x995 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x994, x995, (x993).get(), (x922).get(), (x969).get());
  Box<Integer> x996 = new Box<Integer>((int)0);
  Box<Integer> x997 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x996, x997, (x995).get(), (x924).get(), (x971).get());
  Box<Integer> x998 = new Box<Integer>((int)0);
  Box<Integer> x999 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x998, x999, (x997).get(), (x926).get(), (x973).get());
  Box<Integer> x1000 = new Box<Integer>((int)0);
  Box<Integer> x1001 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1000, x1001, (x999).get(), (x928).get(), (x975).get());
  Box<Integer> x1002 = new Box<Integer>((int)0);
  Box<Integer> x1003 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1002, x1003, (x1001).get(), (x930).get(), (x977).get());
  Box<Integer> x1004 = new Box<Integer>((int)0);
  Box<Integer> x1005 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1004, x1005, (x1003).get(), (x932).get(), (x979).get());
  Box<Integer> x1006 = new Box<Integer>((int)0);
  Box<Integer> x1007 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1006, x1007, (x1005).get(), (x934).get(), (x981).get());
  Box<Integer> x1008 = new Box<Integer>((int)0);
  Box<Integer> x1009 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1008, x1009, (x1007).get(), (x936).get(), (x983).get());
  Box<Integer> x1010 = new Box<Integer>((int)0);
  Box<Integer> x1011 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1010, x1011, (x1009).get(), (x938).get(), (x985).get());
  Box<Integer> x1012 = new Box<Integer>((int)0);
  Box<Integer> x1013 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1012, x1013, (x1011).get(), (x940).get(), (x987).get());
  Box<Integer> x1014 = new Box<Integer>((int)0);
  Box<Integer> x1015 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1014, x1015, (x1013).get(), (x942).get(), (x989).get());
  Box<Integer> x1016 = new Box<Integer>((int)0);
  Box<Integer> x1017 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1016, x1017, (x1015).get(), x944, x991);
  Box<Integer> x1018 = new Box<Integer>((int)0);
  Box<Integer> x1019 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1018, x1019, (x992).get(), 0xffffffff);
  Box<Integer> x1020 = new Box<Integer>((int)0);
  Box<Integer> x1021 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1020, x1021, (x992).get(), 0xffffffff);
  Box<Integer> x1022 = new Box<Integer>((int)0);
  Box<Integer> x1023 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1022, x1023, (x992).get(), 0xffffffff);
  Box<Integer> x1024 = new Box<Integer>((int)0);
  Box<Integer> x1025 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1024, x1025, (x992).get(), 0xffffffff);
  Box<Integer> x1026 = new Box<Integer>((int)0);
  Box<Integer> x1027 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1026, x1027, (x992).get(), 0xffffffff);
  Box<Integer> x1028 = new Box<Integer>((int)0);
  Box<Integer> x1029 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1028, x1029, (x992).get(), 0xffffffff);
  Box<Integer> x1030 = new Box<Integer>((int)0);
  Box<Integer> x1031 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1030, x1031, (x992).get(), 0xffffffff);
  Box<Integer> x1032 = new Box<Integer>((int)0);
  Box<Integer> x1033 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1032, x1033, (x992).get(), 0xfffffffe);
  Box<Integer> x1034 = new Box<Integer>((int)0);
  Box<Integer> x1035 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1034, x1035, (x992).get(), 0xffffffff);
  Box<Integer> x1036 = new Box<Integer>((int)0);
  Box<Integer> x1037 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1036, x1037, (x992).get(), 0xffffffff);
  Box<Integer> x1038 = new Box<Integer>((int)0);
  Box<Integer> x1039 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1038, x1039, 0x0, (x1035).get(), (x1032).get());
  Box<Integer> x1040 = new Box<Integer>((int)0);
  Box<Integer> x1041 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1040, x1041, (x1039).get(), (x1033).get(), (x1030).get());
  Box<Integer> x1042 = new Box<Integer>((int)0);
  Box<Integer> x1043 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1042, x1043, (x1041).get(), (x1031).get(), (x1028).get());
  Box<Integer> x1044 = new Box<Integer>((int)0);
  Box<Integer> x1045 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1044, x1045, (x1043).get(), (x1029).get(), (x1026).get());
  Box<Integer> x1046 = new Box<Integer>((int)0);
  Box<Integer> x1047 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1046, x1047, (x1045).get(), (x1027).get(), (x1024).get());
  Box<Integer> x1048 = new Box<Integer>((int)0);
  Box<Integer> x1049 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1048, x1049, (x1047).get(), (x1025).get(), (x1022).get());
  Box<Integer> x1050 = new Box<Integer>((int)0);
  Box<Integer> x1051 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1050, x1051, (x1049).get(), (x1023).get(), (x1020).get());
  Box<Integer> x1052 = new Box<Integer>((int)0);
  Box<Integer> x1053 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1052, x1053, (x1051).get(), (x1021).get(), (x1018).get());
  int x1054 = ((x1053).get() + (x1019).get());
  Box<Integer> x1055 = new Box<Integer>((int)0);
  Box<Integer> x1056 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1055, x1056, 0x0, (x992).get(), (x1036).get());
  Box<Integer> x1057 = new Box<Integer>((int)0);
  Box<Integer> x1058 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1057, x1058, (x1056).get(), (x994).get(), (x1037).get());
  Box<Integer> x1059 = new Box<Integer>((int)0);
  Box<Integer> x1060 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1059, x1060, (x1058).get(), (x996).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1061 = new Box<Integer>((int)0);
  Box<Integer> x1062 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1061, x1062, (x1060).get(), (x998).get(), (x1034).get());
  Box<Integer> x1063 = new Box<Integer>((int)0);
  Box<Integer> x1064 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1063, x1064, (x1062).get(), (x1000).get(), (x1038).get());
  Box<Integer> x1065 = new Box<Integer>((int)0);
  Box<Integer> x1066 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1065, x1066, (x1064).get(), (x1002).get(), (x1040).get());
  Box<Integer> x1067 = new Box<Integer>((int)0);
  Box<Integer> x1068 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1067, x1068, (x1066).get(), (x1004).get(), (x1042).get());
  Box<Integer> x1069 = new Box<Integer>((int)0);
  Box<Integer> x1070 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1069, x1070, (x1068).get(), (x1006).get(), (x1044).get());
  Box<Integer> x1071 = new Box<Integer>((int)0);
  Box<Integer> x1072 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1071, x1072, (x1070).get(), (x1008).get(), (x1046).get());
  Box<Integer> x1073 = new Box<Integer>((int)0);
  Box<Integer> x1074 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1073, x1074, (x1072).get(), (x1010).get(), (x1048).get());
  Box<Integer> x1075 = new Box<Integer>((int)0);
  Box<Integer> x1076 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1075, x1076, (x1074).get(), (x1012).get(), (x1050).get());
  Box<Integer> x1077 = new Box<Integer>((int)0);
  Box<Integer> x1078 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1077, x1078, (x1076).get(), (x1014).get(), (x1052).get());
  Box<Integer> x1079 = new Box<Integer>((int)0);
  Box<Integer> x1080 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1079, x1080, (x1078).get(), (x1016).get(), x1054);
  int x1081 = ((x1080).get() + (x1017).get());
  Box<Integer> x1082 = new Box<Integer>((int)0);
  Box<Integer> x1083 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1082, x1083, x8, (arg1[11]));
  Box<Integer> x1084 = new Box<Integer>((int)0);
  Box<Integer> x1085 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1084, x1085, x8, (arg1[10]));
  Box<Integer> x1086 = new Box<Integer>((int)0);
  Box<Integer> x1087 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1086, x1087, x8, (arg1[9]));
  Box<Integer> x1088 = new Box<Integer>((int)0);
  Box<Integer> x1089 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1088, x1089, x8, (arg1[8]));
  Box<Integer> x1090 = new Box<Integer>((int)0);
  Box<Integer> x1091 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1090, x1091, x8, (arg1[7]));
  Box<Integer> x1092 = new Box<Integer>((int)0);
  Box<Integer> x1093 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1092, x1093, x8, (arg1[6]));
  Box<Integer> x1094 = new Box<Integer>((int)0);
  Box<Integer> x1095 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1094, x1095, x8, (arg1[5]));
  Box<Integer> x1096 = new Box<Integer>((int)0);
  Box<Integer> x1097 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1096, x1097, x8, (arg1[4]));
  Box<Integer> x1098 = new Box<Integer>((int)0);
  Box<Integer> x1099 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1098, x1099, x8, (arg1[3]));
  Box<Integer> x1100 = new Box<Integer>((int)0);
  Box<Integer> x1101 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1100, x1101, x8, (arg1[2]));
  Box<Integer> x1102 = new Box<Integer>((int)0);
  Box<Integer> x1103 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1102, x1103, x8, (arg1[1]));
  Box<Integer> x1104 = new Box<Integer>((int)0);
  Box<Integer> x1105 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1104, x1105, x8, (arg1[0]));
  Box<Integer> x1106 = new Box<Integer>((int)0);
  Box<Integer> x1107 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1106, x1107, 0x0, (x1105).get(), (x1102).get());
  Box<Integer> x1108 = new Box<Integer>((int)0);
  Box<Integer> x1109 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1108, x1109, (x1107).get(), (x1103).get(), (x1100).get());
  Box<Integer> x1110 = new Box<Integer>((int)0);
  Box<Integer> x1111 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1110, x1111, (x1109).get(), (x1101).get(), (x1098).get());
  Box<Integer> x1112 = new Box<Integer>((int)0);
  Box<Integer> x1113 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1112, x1113, (x1111).get(), (x1099).get(), (x1096).get());
  Box<Integer> x1114 = new Box<Integer>((int)0);
  Box<Integer> x1115 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1114, x1115, (x1113).get(), (x1097).get(), (x1094).get());
  Box<Integer> x1116 = new Box<Integer>((int)0);
  Box<Integer> x1117 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1116, x1117, (x1115).get(), (x1095).get(), (x1092).get());
  Box<Integer> x1118 = new Box<Integer>((int)0);
  Box<Integer> x1119 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1118, x1119, (x1117).get(), (x1093).get(), (x1090).get());
  Box<Integer> x1120 = new Box<Integer>((int)0);
  Box<Integer> x1121 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1120, x1121, (x1119).get(), (x1091).get(), (x1088).get());
  Box<Integer> x1122 = new Box<Integer>((int)0);
  Box<Integer> x1123 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1122, x1123, (x1121).get(), (x1089).get(), (x1086).get());
  Box<Integer> x1124 = new Box<Integer>((int)0);
  Box<Integer> x1125 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1124, x1125, (x1123).get(), (x1087).get(), (x1084).get());
  Box<Integer> x1126 = new Box<Integer>((int)0);
  Box<Integer> x1127 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1126, x1127, (x1125).get(), (x1085).get(), (x1082).get());
  int x1128 = ((x1127).get() + (x1083).get());
  Box<Integer> x1129 = new Box<Integer>((int)0);
  Box<Integer> x1130 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1129, x1130, 0x0, (x1057).get(), (x1104).get());
  Box<Integer> x1131 = new Box<Integer>((int)0);
  Box<Integer> x1132 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1131, x1132, (x1130).get(), (x1059).get(), (x1106).get());
  Box<Integer> x1133 = new Box<Integer>((int)0);
  Box<Integer> x1134 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1133, x1134, (x1132).get(), (x1061).get(), (x1108).get());
  Box<Integer> x1135 = new Box<Integer>((int)0);
  Box<Integer> x1136 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1135, x1136, (x1134).get(), (x1063).get(), (x1110).get());
  Box<Integer> x1137 = new Box<Integer>((int)0);
  Box<Integer> x1138 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1137, x1138, (x1136).get(), (x1065).get(), (x1112).get());
  Box<Integer> x1139 = new Box<Integer>((int)0);
  Box<Integer> x1140 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1139, x1140, (x1138).get(), (x1067).get(), (x1114).get());
  Box<Integer> x1141 = new Box<Integer>((int)0);
  Box<Integer> x1142 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1141, x1142, (x1140).get(), (x1069).get(), (x1116).get());
  Box<Integer> x1143 = new Box<Integer>((int)0);
  Box<Integer> x1144 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1143, x1144, (x1142).get(), (x1071).get(), (x1118).get());
  Box<Integer> x1145 = new Box<Integer>((int)0);
  Box<Integer> x1146 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1145, x1146, (x1144).get(), (x1073).get(), (x1120).get());
  Box<Integer> x1147 = new Box<Integer>((int)0);
  Box<Integer> x1148 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1147, x1148, (x1146).get(), (x1075).get(), (x1122).get());
  Box<Integer> x1149 = new Box<Integer>((int)0);
  Box<Integer> x1150 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1149, x1150, (x1148).get(), (x1077).get(), (x1124).get());
  Box<Integer> x1151 = new Box<Integer>((int)0);
  Box<Integer> x1152 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1151, x1152, (x1150).get(), (x1079).get(), (x1126).get());
  Box<Integer> x1153 = new Box<Integer>((int)0);
  Box<Integer> x1154 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1153, x1154, (x1152).get(), x1081, x1128);
  Box<Integer> x1155 = new Box<Integer>((int)0);
  Box<Integer> x1156 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1155, x1156, (x1129).get(), 0xffffffff);
  Box<Integer> x1157 = new Box<Integer>((int)0);
  Box<Integer> x1158 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1157, x1158, (x1129).get(), 0xffffffff);
  Box<Integer> x1159 = new Box<Integer>((int)0);
  Box<Integer> x1160 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1159, x1160, (x1129).get(), 0xffffffff);
  Box<Integer> x1161 = new Box<Integer>((int)0);
  Box<Integer> x1162 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1161, x1162, (x1129).get(), 0xffffffff);
  Box<Integer> x1163 = new Box<Integer>((int)0);
  Box<Integer> x1164 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1163, x1164, (x1129).get(), 0xffffffff);
  Box<Integer> x1165 = new Box<Integer>((int)0);
  Box<Integer> x1166 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1165, x1166, (x1129).get(), 0xffffffff);
  Box<Integer> x1167 = new Box<Integer>((int)0);
  Box<Integer> x1168 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1167, x1168, (x1129).get(), 0xffffffff);
  Box<Integer> x1169 = new Box<Integer>((int)0);
  Box<Integer> x1170 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1169, x1170, (x1129).get(), 0xfffffffe);
  Box<Integer> x1171 = new Box<Integer>((int)0);
  Box<Integer> x1172 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1171, x1172, (x1129).get(), 0xffffffff);
  Box<Integer> x1173 = new Box<Integer>((int)0);
  Box<Integer> x1174 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1173, x1174, (x1129).get(), 0xffffffff);
  Box<Integer> x1175 = new Box<Integer>((int)0);
  Box<Integer> x1176 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1175, x1176, 0x0, (x1172).get(), (x1169).get());
  Box<Integer> x1177 = new Box<Integer>((int)0);
  Box<Integer> x1178 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1177, x1178, (x1176).get(), (x1170).get(), (x1167).get());
  Box<Integer> x1179 = new Box<Integer>((int)0);
  Box<Integer> x1180 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1179, x1180, (x1178).get(), (x1168).get(), (x1165).get());
  Box<Integer> x1181 = new Box<Integer>((int)0);
  Box<Integer> x1182 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1181, x1182, (x1180).get(), (x1166).get(), (x1163).get());
  Box<Integer> x1183 = new Box<Integer>((int)0);
  Box<Integer> x1184 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1183, x1184, (x1182).get(), (x1164).get(), (x1161).get());
  Box<Integer> x1185 = new Box<Integer>((int)0);
  Box<Integer> x1186 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1185, x1186, (x1184).get(), (x1162).get(), (x1159).get());
  Box<Integer> x1187 = new Box<Integer>((int)0);
  Box<Integer> x1188 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1187, x1188, (x1186).get(), (x1160).get(), (x1157).get());
  Box<Integer> x1189 = new Box<Integer>((int)0);
  Box<Integer> x1190 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1189, x1190, (x1188).get(), (x1158).get(), (x1155).get());
  int x1191 = ((x1190).get() + (x1156).get());
  Box<Integer> x1192 = new Box<Integer>((int)0);
  Box<Integer> x1193 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1192, x1193, 0x0, (x1129).get(), (x1173).get());
  Box<Integer> x1194 = new Box<Integer>((int)0);
  Box<Integer> x1195 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1194, x1195, (x1193).get(), (x1131).get(), (x1174).get());
  Box<Integer> x1196 = new Box<Integer>((int)0);
  Box<Integer> x1197 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1196, x1197, (x1195).get(), (x1133).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1198 = new Box<Integer>((int)0);
  Box<Integer> x1199 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1198, x1199, (x1197).get(), (x1135).get(), (x1171).get());
  Box<Integer> x1200 = new Box<Integer>((int)0);
  Box<Integer> x1201 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1200, x1201, (x1199).get(), (x1137).get(), (x1175).get());
  Box<Integer> x1202 = new Box<Integer>((int)0);
  Box<Integer> x1203 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1202, x1203, (x1201).get(), (x1139).get(), (x1177).get());
  Box<Integer> x1204 = new Box<Integer>((int)0);
  Box<Integer> x1205 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1204, x1205, (x1203).get(), (x1141).get(), (x1179).get());
  Box<Integer> x1206 = new Box<Integer>((int)0);
  Box<Integer> x1207 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1206, x1207, (x1205).get(), (x1143).get(), (x1181).get());
  Box<Integer> x1208 = new Box<Integer>((int)0);
  Box<Integer> x1209 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1208, x1209, (x1207).get(), (x1145).get(), (x1183).get());
  Box<Integer> x1210 = new Box<Integer>((int)0);
  Box<Integer> x1211 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1210, x1211, (x1209).get(), (x1147).get(), (x1185).get());
  Box<Integer> x1212 = new Box<Integer>((int)0);
  Box<Integer> x1213 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1212, x1213, (x1211).get(), (x1149).get(), (x1187).get());
  Box<Integer> x1214 = new Box<Integer>((int)0);
  Box<Integer> x1215 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1214, x1215, (x1213).get(), (x1151).get(), (x1189).get());
  Box<Integer> x1216 = new Box<Integer>((int)0);
  Box<Integer> x1217 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1216, x1217, (x1215).get(), (x1153).get(), x1191);
  int x1218 = ((x1217).get() + (x1154).get());
  Box<Integer> x1219 = new Box<Integer>((int)0);
  Box<Integer> x1220 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1219, x1220, x9, (arg1[11]));
  Box<Integer> x1221 = new Box<Integer>((int)0);
  Box<Integer> x1222 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1221, x1222, x9, (arg1[10]));
  Box<Integer> x1223 = new Box<Integer>((int)0);
  Box<Integer> x1224 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1223, x1224, x9, (arg1[9]));
  Box<Integer> x1225 = new Box<Integer>((int)0);
  Box<Integer> x1226 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1225, x1226, x9, (arg1[8]));
  Box<Integer> x1227 = new Box<Integer>((int)0);
  Box<Integer> x1228 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1227, x1228, x9, (arg1[7]));
  Box<Integer> x1229 = new Box<Integer>((int)0);
  Box<Integer> x1230 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1229, x1230, x9, (arg1[6]));
  Box<Integer> x1231 = new Box<Integer>((int)0);
  Box<Integer> x1232 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1231, x1232, x9, (arg1[5]));
  Box<Integer> x1233 = new Box<Integer>((int)0);
  Box<Integer> x1234 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1233, x1234, x9, (arg1[4]));
  Box<Integer> x1235 = new Box<Integer>((int)0);
  Box<Integer> x1236 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1235, x1236, x9, (arg1[3]));
  Box<Integer> x1237 = new Box<Integer>((int)0);
  Box<Integer> x1238 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1237, x1238, x9, (arg1[2]));
  Box<Integer> x1239 = new Box<Integer>((int)0);
  Box<Integer> x1240 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1239, x1240, x9, (arg1[1]));
  Box<Integer> x1241 = new Box<Integer>((int)0);
  Box<Integer> x1242 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1241, x1242, x9, (arg1[0]));
  Box<Integer> x1243 = new Box<Integer>((int)0);
  Box<Integer> x1244 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1243, x1244, 0x0, (x1242).get(), (x1239).get());
  Box<Integer> x1245 = new Box<Integer>((int)0);
  Box<Integer> x1246 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1245, x1246, (x1244).get(), (x1240).get(), (x1237).get());
  Box<Integer> x1247 = new Box<Integer>((int)0);
  Box<Integer> x1248 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1247, x1248, (x1246).get(), (x1238).get(), (x1235).get());
  Box<Integer> x1249 = new Box<Integer>((int)0);
  Box<Integer> x1250 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1249, x1250, (x1248).get(), (x1236).get(), (x1233).get());
  Box<Integer> x1251 = new Box<Integer>((int)0);
  Box<Integer> x1252 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1251, x1252, (x1250).get(), (x1234).get(), (x1231).get());
  Box<Integer> x1253 = new Box<Integer>((int)0);
  Box<Integer> x1254 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1253, x1254, (x1252).get(), (x1232).get(), (x1229).get());
  Box<Integer> x1255 = new Box<Integer>((int)0);
  Box<Integer> x1256 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1255, x1256, (x1254).get(), (x1230).get(), (x1227).get());
  Box<Integer> x1257 = new Box<Integer>((int)0);
  Box<Integer> x1258 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1257, x1258, (x1256).get(), (x1228).get(), (x1225).get());
  Box<Integer> x1259 = new Box<Integer>((int)0);
  Box<Integer> x1260 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1259, x1260, (x1258).get(), (x1226).get(), (x1223).get());
  Box<Integer> x1261 = new Box<Integer>((int)0);
  Box<Integer> x1262 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1261, x1262, (x1260).get(), (x1224).get(), (x1221).get());
  Box<Integer> x1263 = new Box<Integer>((int)0);
  Box<Integer> x1264 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1263, x1264, (x1262).get(), (x1222).get(), (x1219).get());
  int x1265 = ((x1264).get() + (x1220).get());
  Box<Integer> x1266 = new Box<Integer>((int)0);
  Box<Integer> x1267 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1266, x1267, 0x0, (x1194).get(), (x1241).get());
  Box<Integer> x1268 = new Box<Integer>((int)0);
  Box<Integer> x1269 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1268, x1269, (x1267).get(), (x1196).get(), (x1243).get());
  Box<Integer> x1270 = new Box<Integer>((int)0);
  Box<Integer> x1271 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1270, x1271, (x1269).get(), (x1198).get(), (x1245).get());
  Box<Integer> x1272 = new Box<Integer>((int)0);
  Box<Integer> x1273 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1272, x1273, (x1271).get(), (x1200).get(), (x1247).get());
  Box<Integer> x1274 = new Box<Integer>((int)0);
  Box<Integer> x1275 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1274, x1275, (x1273).get(), (x1202).get(), (x1249).get());
  Box<Integer> x1276 = new Box<Integer>((int)0);
  Box<Integer> x1277 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1276, x1277, (x1275).get(), (x1204).get(), (x1251).get());
  Box<Integer> x1278 = new Box<Integer>((int)0);
  Box<Integer> x1279 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1278, x1279, (x1277).get(), (x1206).get(), (x1253).get());
  Box<Integer> x1280 = new Box<Integer>((int)0);
  Box<Integer> x1281 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1280, x1281, (x1279).get(), (x1208).get(), (x1255).get());
  Box<Integer> x1282 = new Box<Integer>((int)0);
  Box<Integer> x1283 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1282, x1283, (x1281).get(), (x1210).get(), (x1257).get());
  Box<Integer> x1284 = new Box<Integer>((int)0);
  Box<Integer> x1285 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1284, x1285, (x1283).get(), (x1212).get(), (x1259).get());
  Box<Integer> x1286 = new Box<Integer>((int)0);
  Box<Integer> x1287 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1286, x1287, (x1285).get(), (x1214).get(), (x1261).get());
  Box<Integer> x1288 = new Box<Integer>((int)0);
  Box<Integer> x1289 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1288, x1289, (x1287).get(), (x1216).get(), (x1263).get());
  Box<Integer> x1290 = new Box<Integer>((int)0);
  Box<Integer> x1291 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1290, x1291, (x1289).get(), x1218, x1265);
  Box<Integer> x1292 = new Box<Integer>((int)0);
  Box<Integer> x1293 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1292, x1293, (x1266).get(), 0xffffffff);
  Box<Integer> x1294 = new Box<Integer>((int)0);
  Box<Integer> x1295 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1294, x1295, (x1266).get(), 0xffffffff);
  Box<Integer> x1296 = new Box<Integer>((int)0);
  Box<Integer> x1297 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1296, x1297, (x1266).get(), 0xffffffff);
  Box<Integer> x1298 = new Box<Integer>((int)0);
  Box<Integer> x1299 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1298, x1299, (x1266).get(), 0xffffffff);
  Box<Integer> x1300 = new Box<Integer>((int)0);
  Box<Integer> x1301 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1300, x1301, (x1266).get(), 0xffffffff);
  Box<Integer> x1302 = new Box<Integer>((int)0);
  Box<Integer> x1303 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1302, x1303, (x1266).get(), 0xffffffff);
  Box<Integer> x1304 = new Box<Integer>((int)0);
  Box<Integer> x1305 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1304, x1305, (x1266).get(), 0xffffffff);
  Box<Integer> x1306 = new Box<Integer>((int)0);
  Box<Integer> x1307 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1306, x1307, (x1266).get(), 0xfffffffe);
  Box<Integer> x1308 = new Box<Integer>((int)0);
  Box<Integer> x1309 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1308, x1309, (x1266).get(), 0xffffffff);
  Box<Integer> x1310 = new Box<Integer>((int)0);
  Box<Integer> x1311 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1310, x1311, (x1266).get(), 0xffffffff);
  Box<Integer> x1312 = new Box<Integer>((int)0);
  Box<Integer> x1313 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1312, x1313, 0x0, (x1309).get(), (x1306).get());
  Box<Integer> x1314 = new Box<Integer>((int)0);
  Box<Integer> x1315 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1314, x1315, (x1313).get(), (x1307).get(), (x1304).get());
  Box<Integer> x1316 = new Box<Integer>((int)0);
  Box<Integer> x1317 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1316, x1317, (x1315).get(), (x1305).get(), (x1302).get());
  Box<Integer> x1318 = new Box<Integer>((int)0);
  Box<Integer> x1319 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1318, x1319, (x1317).get(), (x1303).get(), (x1300).get());
  Box<Integer> x1320 = new Box<Integer>((int)0);
  Box<Integer> x1321 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1320, x1321, (x1319).get(), (x1301).get(), (x1298).get());
  Box<Integer> x1322 = new Box<Integer>((int)0);
  Box<Integer> x1323 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1322, x1323, (x1321).get(), (x1299).get(), (x1296).get());
  Box<Integer> x1324 = new Box<Integer>((int)0);
  Box<Integer> x1325 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1324, x1325, (x1323).get(), (x1297).get(), (x1294).get());
  Box<Integer> x1326 = new Box<Integer>((int)0);
  Box<Integer> x1327 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1326, x1327, (x1325).get(), (x1295).get(), (x1292).get());
  int x1328 = ((x1327).get() + (x1293).get());
  Box<Integer> x1329 = new Box<Integer>((int)0);
  Box<Integer> x1330 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1329, x1330, 0x0, (x1266).get(), (x1310).get());
  Box<Integer> x1331 = new Box<Integer>((int)0);
  Box<Integer> x1332 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1331, x1332, (x1330).get(), (x1268).get(), (x1311).get());
  Box<Integer> x1333 = new Box<Integer>((int)0);
  Box<Integer> x1334 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1333, x1334, (x1332).get(), (x1270).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1335 = new Box<Integer>((int)0);
  Box<Integer> x1336 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1335, x1336, (x1334).get(), (x1272).get(), (x1308).get());
  Box<Integer> x1337 = new Box<Integer>((int)0);
  Box<Integer> x1338 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1337, x1338, (x1336).get(), (x1274).get(), (x1312).get());
  Box<Integer> x1339 = new Box<Integer>((int)0);
  Box<Integer> x1340 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1339, x1340, (x1338).get(), (x1276).get(), (x1314).get());
  Box<Integer> x1341 = new Box<Integer>((int)0);
  Box<Integer> x1342 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1341, x1342, (x1340).get(), (x1278).get(), (x1316).get());
  Box<Integer> x1343 = new Box<Integer>((int)0);
  Box<Integer> x1344 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1343, x1344, (x1342).get(), (x1280).get(), (x1318).get());
  Box<Integer> x1345 = new Box<Integer>((int)0);
  Box<Integer> x1346 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1345, x1346, (x1344).get(), (x1282).get(), (x1320).get());
  Box<Integer> x1347 = new Box<Integer>((int)0);
  Box<Integer> x1348 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1347, x1348, (x1346).get(), (x1284).get(), (x1322).get());
  Box<Integer> x1349 = new Box<Integer>((int)0);
  Box<Integer> x1350 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1349, x1350, (x1348).get(), (x1286).get(), (x1324).get());
  Box<Integer> x1351 = new Box<Integer>((int)0);
  Box<Integer> x1352 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1351, x1352, (x1350).get(), (x1288).get(), (x1326).get());
  Box<Integer> x1353 = new Box<Integer>((int)0);
  Box<Integer> x1354 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1353, x1354, (x1352).get(), (x1290).get(), x1328);
  int x1355 = ((x1354).get() + (x1291).get());
  Box<Integer> x1356 = new Box<Integer>((int)0);
  Box<Integer> x1357 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1356, x1357, x10, (arg1[11]));
  Box<Integer> x1358 = new Box<Integer>((int)0);
  Box<Integer> x1359 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1358, x1359, x10, (arg1[10]));
  Box<Integer> x1360 = new Box<Integer>((int)0);
  Box<Integer> x1361 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1360, x1361, x10, (arg1[9]));
  Box<Integer> x1362 = new Box<Integer>((int)0);
  Box<Integer> x1363 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1362, x1363, x10, (arg1[8]));
  Box<Integer> x1364 = new Box<Integer>((int)0);
  Box<Integer> x1365 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1364, x1365, x10, (arg1[7]));
  Box<Integer> x1366 = new Box<Integer>((int)0);
  Box<Integer> x1367 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1366, x1367, x10, (arg1[6]));
  Box<Integer> x1368 = new Box<Integer>((int)0);
  Box<Integer> x1369 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1368, x1369, x10, (arg1[5]));
  Box<Integer> x1370 = new Box<Integer>((int)0);
  Box<Integer> x1371 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1370, x1371, x10, (arg1[4]));
  Box<Integer> x1372 = new Box<Integer>((int)0);
  Box<Integer> x1373 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1372, x1373, x10, (arg1[3]));
  Box<Integer> x1374 = new Box<Integer>((int)0);
  Box<Integer> x1375 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1374, x1375, x10, (arg1[2]));
  Box<Integer> x1376 = new Box<Integer>((int)0);
  Box<Integer> x1377 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1376, x1377, x10, (arg1[1]));
  Box<Integer> x1378 = new Box<Integer>((int)0);
  Box<Integer> x1379 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1378, x1379, x10, (arg1[0]));
  Box<Integer> x1380 = new Box<Integer>((int)0);
  Box<Integer> x1381 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1380, x1381, 0x0, (x1379).get(), (x1376).get());
  Box<Integer> x1382 = new Box<Integer>((int)0);
  Box<Integer> x1383 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1382, x1383, (x1381).get(), (x1377).get(), (x1374).get());
  Box<Integer> x1384 = new Box<Integer>((int)0);
  Box<Integer> x1385 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1384, x1385, (x1383).get(), (x1375).get(), (x1372).get());
  Box<Integer> x1386 = new Box<Integer>((int)0);
  Box<Integer> x1387 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1386, x1387, (x1385).get(), (x1373).get(), (x1370).get());
  Box<Integer> x1388 = new Box<Integer>((int)0);
  Box<Integer> x1389 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1388, x1389, (x1387).get(), (x1371).get(), (x1368).get());
  Box<Integer> x1390 = new Box<Integer>((int)0);
  Box<Integer> x1391 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1390, x1391, (x1389).get(), (x1369).get(), (x1366).get());
  Box<Integer> x1392 = new Box<Integer>((int)0);
  Box<Integer> x1393 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1392, x1393, (x1391).get(), (x1367).get(), (x1364).get());
  Box<Integer> x1394 = new Box<Integer>((int)0);
  Box<Integer> x1395 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1394, x1395, (x1393).get(), (x1365).get(), (x1362).get());
  Box<Integer> x1396 = new Box<Integer>((int)0);
  Box<Integer> x1397 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1396, x1397, (x1395).get(), (x1363).get(), (x1360).get());
  Box<Integer> x1398 = new Box<Integer>((int)0);
  Box<Integer> x1399 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1398, x1399, (x1397).get(), (x1361).get(), (x1358).get());
  Box<Integer> x1400 = new Box<Integer>((int)0);
  Box<Integer> x1401 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1400, x1401, (x1399).get(), (x1359).get(), (x1356).get());
  int x1402 = ((x1401).get() + (x1357).get());
  Box<Integer> x1403 = new Box<Integer>((int)0);
  Box<Integer> x1404 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1403, x1404, 0x0, (x1331).get(), (x1378).get());
  Box<Integer> x1405 = new Box<Integer>((int)0);
  Box<Integer> x1406 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1405, x1406, (x1404).get(), (x1333).get(), (x1380).get());
  Box<Integer> x1407 = new Box<Integer>((int)0);
  Box<Integer> x1408 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1407, x1408, (x1406).get(), (x1335).get(), (x1382).get());
  Box<Integer> x1409 = new Box<Integer>((int)0);
  Box<Integer> x1410 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1409, x1410, (x1408).get(), (x1337).get(), (x1384).get());
  Box<Integer> x1411 = new Box<Integer>((int)0);
  Box<Integer> x1412 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1411, x1412, (x1410).get(), (x1339).get(), (x1386).get());
  Box<Integer> x1413 = new Box<Integer>((int)0);
  Box<Integer> x1414 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1413, x1414, (x1412).get(), (x1341).get(), (x1388).get());
  Box<Integer> x1415 = new Box<Integer>((int)0);
  Box<Integer> x1416 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1415, x1416, (x1414).get(), (x1343).get(), (x1390).get());
  Box<Integer> x1417 = new Box<Integer>((int)0);
  Box<Integer> x1418 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1417, x1418, (x1416).get(), (x1345).get(), (x1392).get());
  Box<Integer> x1419 = new Box<Integer>((int)0);
  Box<Integer> x1420 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1419, x1420, (x1418).get(), (x1347).get(), (x1394).get());
  Box<Integer> x1421 = new Box<Integer>((int)0);
  Box<Integer> x1422 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1421, x1422, (x1420).get(), (x1349).get(), (x1396).get());
  Box<Integer> x1423 = new Box<Integer>((int)0);
  Box<Integer> x1424 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1423, x1424, (x1422).get(), (x1351).get(), (x1398).get());
  Box<Integer> x1425 = new Box<Integer>((int)0);
  Box<Integer> x1426 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1425, x1426, (x1424).get(), (x1353).get(), (x1400).get());
  Box<Integer> x1427 = new Box<Integer>((int)0);
  Box<Integer> x1428 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1427, x1428, (x1426).get(), x1355, x1402);
  Box<Integer> x1429 = new Box<Integer>((int)0);
  Box<Integer> x1430 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1429, x1430, (x1403).get(), 0xffffffff);
  Box<Integer> x1431 = new Box<Integer>((int)0);
  Box<Integer> x1432 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1431, x1432, (x1403).get(), 0xffffffff);
  Box<Integer> x1433 = new Box<Integer>((int)0);
  Box<Integer> x1434 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1433, x1434, (x1403).get(), 0xffffffff);
  Box<Integer> x1435 = new Box<Integer>((int)0);
  Box<Integer> x1436 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1435, x1436, (x1403).get(), 0xffffffff);
  Box<Integer> x1437 = new Box<Integer>((int)0);
  Box<Integer> x1438 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1437, x1438, (x1403).get(), 0xffffffff);
  Box<Integer> x1439 = new Box<Integer>((int)0);
  Box<Integer> x1440 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1439, x1440, (x1403).get(), 0xffffffff);
  Box<Integer> x1441 = new Box<Integer>((int)0);
  Box<Integer> x1442 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1441, x1442, (x1403).get(), 0xffffffff);
  Box<Integer> x1443 = new Box<Integer>((int)0);
  Box<Integer> x1444 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1443, x1444, (x1403).get(), 0xfffffffe);
  Box<Integer> x1445 = new Box<Integer>((int)0);
  Box<Integer> x1446 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1445, x1446, (x1403).get(), 0xffffffff);
  Box<Integer> x1447 = new Box<Integer>((int)0);
  Box<Integer> x1448 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1447, x1448, (x1403).get(), 0xffffffff);
  Box<Integer> x1449 = new Box<Integer>((int)0);
  Box<Integer> x1450 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1449, x1450, 0x0, (x1446).get(), (x1443).get());
  Box<Integer> x1451 = new Box<Integer>((int)0);
  Box<Integer> x1452 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1451, x1452, (x1450).get(), (x1444).get(), (x1441).get());
  Box<Integer> x1453 = new Box<Integer>((int)0);
  Box<Integer> x1454 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1453, x1454, (x1452).get(), (x1442).get(), (x1439).get());
  Box<Integer> x1455 = new Box<Integer>((int)0);
  Box<Integer> x1456 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1455, x1456, (x1454).get(), (x1440).get(), (x1437).get());
  Box<Integer> x1457 = new Box<Integer>((int)0);
  Box<Integer> x1458 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1457, x1458, (x1456).get(), (x1438).get(), (x1435).get());
  Box<Integer> x1459 = new Box<Integer>((int)0);
  Box<Integer> x1460 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1459, x1460, (x1458).get(), (x1436).get(), (x1433).get());
  Box<Integer> x1461 = new Box<Integer>((int)0);
  Box<Integer> x1462 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1461, x1462, (x1460).get(), (x1434).get(), (x1431).get());
  Box<Integer> x1463 = new Box<Integer>((int)0);
  Box<Integer> x1464 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1463, x1464, (x1462).get(), (x1432).get(), (x1429).get());
  int x1465 = ((x1464).get() + (x1430).get());
  Box<Integer> x1466 = new Box<Integer>((int)0);
  Box<Integer> x1467 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1466, x1467, 0x0, (x1403).get(), (x1447).get());
  Box<Integer> x1468 = new Box<Integer>((int)0);
  Box<Integer> x1469 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1468, x1469, (x1467).get(), (x1405).get(), (x1448).get());
  Box<Integer> x1470 = new Box<Integer>((int)0);
  Box<Integer> x1471 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1470, x1471, (x1469).get(), (x1407).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1472 = new Box<Integer>((int)0);
  Box<Integer> x1473 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1472, x1473, (x1471).get(), (x1409).get(), (x1445).get());
  Box<Integer> x1474 = new Box<Integer>((int)0);
  Box<Integer> x1475 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1474, x1475, (x1473).get(), (x1411).get(), (x1449).get());
  Box<Integer> x1476 = new Box<Integer>((int)0);
  Box<Integer> x1477 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1476, x1477, (x1475).get(), (x1413).get(), (x1451).get());
  Box<Integer> x1478 = new Box<Integer>((int)0);
  Box<Integer> x1479 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1478, x1479, (x1477).get(), (x1415).get(), (x1453).get());
  Box<Integer> x1480 = new Box<Integer>((int)0);
  Box<Integer> x1481 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1480, x1481, (x1479).get(), (x1417).get(), (x1455).get());
  Box<Integer> x1482 = new Box<Integer>((int)0);
  Box<Integer> x1483 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1482, x1483, (x1481).get(), (x1419).get(), (x1457).get());
  Box<Integer> x1484 = new Box<Integer>((int)0);
  Box<Integer> x1485 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1484, x1485, (x1483).get(), (x1421).get(), (x1459).get());
  Box<Integer> x1486 = new Box<Integer>((int)0);
  Box<Integer> x1487 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1486, x1487, (x1485).get(), (x1423).get(), (x1461).get());
  Box<Integer> x1488 = new Box<Integer>((int)0);
  Box<Integer> x1489 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1488, x1489, (x1487).get(), (x1425).get(), (x1463).get());
  Box<Integer> x1490 = new Box<Integer>((int)0);
  Box<Integer> x1491 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1490, x1491, (x1489).get(), (x1427).get(), x1465);
  int x1492 = ((x1491).get() + (x1428).get());
  Box<Integer> x1493 = new Box<Integer>((int)0);
  Box<Integer> x1494 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1493, x1494, x11, (arg1[11]));
  Box<Integer> x1495 = new Box<Integer>((int)0);
  Box<Integer> x1496 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1495, x1496, x11, (arg1[10]));
  Box<Integer> x1497 = new Box<Integer>((int)0);
  Box<Integer> x1498 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1497, x1498, x11, (arg1[9]));
  Box<Integer> x1499 = new Box<Integer>((int)0);
  Box<Integer> x1500 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1499, x1500, x11, (arg1[8]));
  Box<Integer> x1501 = new Box<Integer>((int)0);
  Box<Integer> x1502 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1501, x1502, x11, (arg1[7]));
  Box<Integer> x1503 = new Box<Integer>((int)0);
  Box<Integer> x1504 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1503, x1504, x11, (arg1[6]));
  Box<Integer> x1505 = new Box<Integer>((int)0);
  Box<Integer> x1506 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1505, x1506, x11, (arg1[5]));
  Box<Integer> x1507 = new Box<Integer>((int)0);
  Box<Integer> x1508 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1507, x1508, x11, (arg1[4]));
  Box<Integer> x1509 = new Box<Integer>((int)0);
  Box<Integer> x1510 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1509, x1510, x11, (arg1[3]));
  Box<Integer> x1511 = new Box<Integer>((int)0);
  Box<Integer> x1512 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1511, x1512, x11, (arg1[2]));
  Box<Integer> x1513 = new Box<Integer>((int)0);
  Box<Integer> x1514 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1513, x1514, x11, (arg1[1]));
  Box<Integer> x1515 = new Box<Integer>((int)0);
  Box<Integer> x1516 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1515, x1516, x11, (arg1[0]));
  Box<Integer> x1517 = new Box<Integer>((int)0);
  Box<Integer> x1518 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1517, x1518, 0x0, (x1516).get(), (x1513).get());
  Box<Integer> x1519 = new Box<Integer>((int)0);
  Box<Integer> x1520 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1519, x1520, (x1518).get(), (x1514).get(), (x1511).get());
  Box<Integer> x1521 = new Box<Integer>((int)0);
  Box<Integer> x1522 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1521, x1522, (x1520).get(), (x1512).get(), (x1509).get());
  Box<Integer> x1523 = new Box<Integer>((int)0);
  Box<Integer> x1524 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1523, x1524, (x1522).get(), (x1510).get(), (x1507).get());
  Box<Integer> x1525 = new Box<Integer>((int)0);
  Box<Integer> x1526 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1525, x1526, (x1524).get(), (x1508).get(), (x1505).get());
  Box<Integer> x1527 = new Box<Integer>((int)0);
  Box<Integer> x1528 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1527, x1528, (x1526).get(), (x1506).get(), (x1503).get());
  Box<Integer> x1529 = new Box<Integer>((int)0);
  Box<Integer> x1530 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1529, x1530, (x1528).get(), (x1504).get(), (x1501).get());
  Box<Integer> x1531 = new Box<Integer>((int)0);
  Box<Integer> x1532 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1531, x1532, (x1530).get(), (x1502).get(), (x1499).get());
  Box<Integer> x1533 = new Box<Integer>((int)0);
  Box<Integer> x1534 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1533, x1534, (x1532).get(), (x1500).get(), (x1497).get());
  Box<Integer> x1535 = new Box<Integer>((int)0);
  Box<Integer> x1536 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1535, x1536, (x1534).get(), (x1498).get(), (x1495).get());
  Box<Integer> x1537 = new Box<Integer>((int)0);
  Box<Integer> x1538 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1537, x1538, (x1536).get(), (x1496).get(), (x1493).get());
  int x1539 = ((x1538).get() + (x1494).get());
  Box<Integer> x1540 = new Box<Integer>((int)0);
  Box<Integer> x1541 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1540, x1541, 0x0, (x1468).get(), (x1515).get());
  Box<Integer> x1542 = new Box<Integer>((int)0);
  Box<Integer> x1543 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1542, x1543, (x1541).get(), (x1470).get(), (x1517).get());
  Box<Integer> x1544 = new Box<Integer>((int)0);
  Box<Integer> x1545 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1544, x1545, (x1543).get(), (x1472).get(), (x1519).get());
  Box<Integer> x1546 = new Box<Integer>((int)0);
  Box<Integer> x1547 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1546, x1547, (x1545).get(), (x1474).get(), (x1521).get());
  Box<Integer> x1548 = new Box<Integer>((int)0);
  Box<Integer> x1549 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1548, x1549, (x1547).get(), (x1476).get(), (x1523).get());
  Box<Integer> x1550 = new Box<Integer>((int)0);
  Box<Integer> x1551 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1550, x1551, (x1549).get(), (x1478).get(), (x1525).get());
  Box<Integer> x1552 = new Box<Integer>((int)0);
  Box<Integer> x1553 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1552, x1553, (x1551).get(), (x1480).get(), (x1527).get());
  Box<Integer> x1554 = new Box<Integer>((int)0);
  Box<Integer> x1555 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1554, x1555, (x1553).get(), (x1482).get(), (x1529).get());
  Box<Integer> x1556 = new Box<Integer>((int)0);
  Box<Integer> x1557 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1556, x1557, (x1555).get(), (x1484).get(), (x1531).get());
  Box<Integer> x1558 = new Box<Integer>((int)0);
  Box<Integer> x1559 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1558, x1559, (x1557).get(), (x1486).get(), (x1533).get());
  Box<Integer> x1560 = new Box<Integer>((int)0);
  Box<Integer> x1561 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1560, x1561, (x1559).get(), (x1488).get(), (x1535).get());
  Box<Integer> x1562 = new Box<Integer>((int)0);
  Box<Integer> x1563 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1562, x1563, (x1561).get(), (x1490).get(), (x1537).get());
  Box<Integer> x1564 = new Box<Integer>((int)0);
  Box<Integer> x1565 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1564, x1565, (x1563).get(), x1492, x1539);
  Box<Integer> x1566 = new Box<Integer>((int)0);
  Box<Integer> x1567 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1566, x1567, (x1540).get(), 0xffffffff);
  Box<Integer> x1568 = new Box<Integer>((int)0);
  Box<Integer> x1569 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1568, x1569, (x1540).get(), 0xffffffff);
  Box<Integer> x1570 = new Box<Integer>((int)0);
  Box<Integer> x1571 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1570, x1571, (x1540).get(), 0xffffffff);
  Box<Integer> x1572 = new Box<Integer>((int)0);
  Box<Integer> x1573 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1572, x1573, (x1540).get(), 0xffffffff);
  Box<Integer> x1574 = new Box<Integer>((int)0);
  Box<Integer> x1575 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1574, x1575, (x1540).get(), 0xffffffff);
  Box<Integer> x1576 = new Box<Integer>((int)0);
  Box<Integer> x1577 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1576, x1577, (x1540).get(), 0xffffffff);
  Box<Integer> x1578 = new Box<Integer>((int)0);
  Box<Integer> x1579 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1578, x1579, (x1540).get(), 0xffffffff);
  Box<Integer> x1580 = new Box<Integer>((int)0);
  Box<Integer> x1581 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1580, x1581, (x1540).get(), 0xfffffffe);
  Box<Integer> x1582 = new Box<Integer>((int)0);
  Box<Integer> x1583 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1582, x1583, (x1540).get(), 0xffffffff);
  Box<Integer> x1584 = new Box<Integer>((int)0);
  Box<Integer> x1585 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1584, x1585, (x1540).get(), 0xffffffff);
  Box<Integer> x1586 = new Box<Integer>((int)0);
  Box<Integer> x1587 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1586, x1587, 0x0, (x1583).get(), (x1580).get());
  Box<Integer> x1588 = new Box<Integer>((int)0);
  Box<Integer> x1589 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1588, x1589, (x1587).get(), (x1581).get(), (x1578).get());
  Box<Integer> x1590 = new Box<Integer>((int)0);
  Box<Integer> x1591 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1590, x1591, (x1589).get(), (x1579).get(), (x1576).get());
  Box<Integer> x1592 = new Box<Integer>((int)0);
  Box<Integer> x1593 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1592, x1593, (x1591).get(), (x1577).get(), (x1574).get());
  Box<Integer> x1594 = new Box<Integer>((int)0);
  Box<Integer> x1595 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1594, x1595, (x1593).get(), (x1575).get(), (x1572).get());
  Box<Integer> x1596 = new Box<Integer>((int)0);
  Box<Integer> x1597 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1596, x1597, (x1595).get(), (x1573).get(), (x1570).get());
  Box<Integer> x1598 = new Box<Integer>((int)0);
  Box<Integer> x1599 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1598, x1599, (x1597).get(), (x1571).get(), (x1568).get());
  Box<Integer> x1600 = new Box<Integer>((int)0);
  Box<Integer> x1601 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1600, x1601, (x1599).get(), (x1569).get(), (x1566).get());
  int x1602 = ((x1601).get() + (x1567).get());
  Box<Integer> x1603 = new Box<Integer>((int)0);
  Box<Integer> x1604 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1603, x1604, 0x0, (x1540).get(), (x1584).get());
  Box<Integer> x1605 = new Box<Integer>((int)0);
  Box<Integer> x1606 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1605, x1606, (x1604).get(), (x1542).get(), (x1585).get());
  Box<Integer> x1607 = new Box<Integer>((int)0);
  Box<Integer> x1608 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1607, x1608, (x1606).get(), (x1544).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1609 = new Box<Integer>((int)0);
  Box<Integer> x1610 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1609, x1610, (x1608).get(), (x1546).get(), (x1582).get());
  Box<Integer> x1611 = new Box<Integer>((int)0);
  Box<Integer> x1612 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1611, x1612, (x1610).get(), (x1548).get(), (x1586).get());
  Box<Integer> x1613 = new Box<Integer>((int)0);
  Box<Integer> x1614 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1613, x1614, (x1612).get(), (x1550).get(), (x1588).get());
  Box<Integer> x1615 = new Box<Integer>((int)0);
  Box<Integer> x1616 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1615, x1616, (x1614).get(), (x1552).get(), (x1590).get());
  Box<Integer> x1617 = new Box<Integer>((int)0);
  Box<Integer> x1618 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1617, x1618, (x1616).get(), (x1554).get(), (x1592).get());
  Box<Integer> x1619 = new Box<Integer>((int)0);
  Box<Integer> x1620 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1619, x1620, (x1618).get(), (x1556).get(), (x1594).get());
  Box<Integer> x1621 = new Box<Integer>((int)0);
  Box<Integer> x1622 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1621, x1622, (x1620).get(), (x1558).get(), (x1596).get());
  Box<Integer> x1623 = new Box<Integer>((int)0);
  Box<Integer> x1624 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1623, x1624, (x1622).get(), (x1560).get(), (x1598).get());
  Box<Integer> x1625 = new Box<Integer>((int)0);
  Box<Integer> x1626 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1625, x1626, (x1624).get(), (x1562).get(), (x1600).get());
  Box<Integer> x1627 = new Box<Integer>((int)0);
  Box<Integer> x1628 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1627, x1628, (x1626).get(), (x1564).get(), x1602);
  int x1629 = ((x1628).get() + (x1565).get());
  Box<Integer> x1630 = new Box<Integer>((int)0);
  Box<Integer> x1631 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1630, x1631, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x1605).get(), 0xffffffff);
  Box<Integer> x1632 = new Box<Integer>((int)0);
  Box<Integer> x1633 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1632, x1633, (x1631).get(), (x1607).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1634 = new Box<Integer>((int)0);
  Box<Integer> x1635 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1634, x1635, (x1633).get(), (x1609).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1636 = new Box<Integer>((int)0);
  Box<Integer> x1637 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1636, x1637, (x1635).get(), (x1611).get(), 0xffffffff);
  Box<Integer> x1638 = new Box<Integer>((int)0);
  Box<Integer> x1639 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1638, x1639, (x1637).get(), (x1613).get(), 0xfffffffe);
  Box<Integer> x1640 = new Box<Integer>((int)0);
  Box<Integer> x1641 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1640, x1641, (x1639).get(), (x1615).get(), 0xffffffff);
  Box<Integer> x1642 = new Box<Integer>((int)0);
  Box<Integer> x1643 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1642, x1643, (x1641).get(), (x1617).get(), 0xffffffff);
  Box<Integer> x1644 = new Box<Integer>((int)0);
  Box<Integer> x1645 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1644, x1645, (x1643).get(), (x1619).get(), 0xffffffff);
  Box<Integer> x1646 = new Box<Integer>((int)0);
  Box<Integer> x1647 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1646, x1647, (x1645).get(), (x1621).get(), 0xffffffff);
  Box<Integer> x1648 = new Box<Integer>((int)0);
  Box<Integer> x1649 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1648, x1649, (x1647).get(), (x1623).get(), 0xffffffff);
  Box<Integer> x1650 = new Box<Integer>((int)0);
  Box<Integer> x1651 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1650, x1651, (x1649).get(), (x1625).get(), 0xffffffff);
  Box<Integer> x1652 = new Box<Integer>((int)0);
  Box<Integer> x1653 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1652, x1653, (x1651).get(), (x1627).get(), 0xffffffff);
  Box<Integer> x1654 = new Box<Integer>((int)0);
  Box<Integer> x1655 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1654, x1655, (x1653).get(), x1629, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1656 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1656, (x1655).get(), (x1630).get(), (x1605).get());
  Box<Integer> x1657 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1657, (x1655).get(), (x1632).get(), (x1607).get());
  Box<Integer> x1658 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1658, (x1655).get(), (x1634).get(), (x1609).get());
  Box<Integer> x1659 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1659, (x1655).get(), (x1636).get(), (x1611).get());
  Box<Integer> x1660 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1660, (x1655).get(), (x1638).get(), (x1613).get());
  Box<Integer> x1661 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1661, (x1655).get(), (x1640).get(), (x1615).get());
  Box<Integer> x1662 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1662, (x1655).get(), (x1642).get(), (x1617).get());
  Box<Integer> x1663 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1663, (x1655).get(), (x1644).get(), (x1619).get());
  Box<Integer> x1664 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1664, (x1655).get(), (x1646).get(), (x1621).get());
  Box<Integer> x1665 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1665, (x1655).get(), (x1648).get(), (x1623).get());
  Box<Integer> x1666 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1666, (x1655).get(), (x1650).get(), (x1625).get());
  Box<Integer> x1667 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1667, (x1655).get(), (x1652).get(), (x1627).get());
  out1[0] = (x1656).get();
  out1[1] = (x1657).get();
  out1[2] = (x1658).get();
  out1[3] = (x1659).get();
  out1[4] = (x1660).get();
  out1[5] = (x1661).get();
  out1[6] = (x1662).get();
  out1[7] = (x1663).get();
  out1[8] = (x1664).get();
  out1[9] = (x1665).get();
  out1[10] = (x1666).get();
  out1[11] = (x1667).get();
}

/**
 * The function fiat_P384_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], [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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_addcarryx_u32(x17, x18, (x16).get(), (arg1[8]), (arg2[8]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x19, x20, (x18).get(), (arg1[9]), (arg2[9]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x21, x22, (x20).get(), (arg1[10]), (arg2[10]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x23, x24, (x22).get(), (arg1[11]), (arg2[11]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x25, x26, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x1).get(), 0xffffffff);
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x27, x28, (x26).get(), (x3).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x29, x30, (x28).get(), (x5).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x31, x32, (x30).get(), (x7).get(), 0xffffffff);
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x33, x34, (x32).get(), (x9).get(), 0xfffffffe);
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x35, x36, (x34).get(), (x11).get(), 0xffffffff);
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x37, x38, (x36).get(), (x13).get(), 0xffffffff);
  Box<Integer> x39 = new Box<Integer>((int)0);
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x39, x40, (x38).get(), (x15).get(), 0xffffffff);
  Box<Integer> x41 = new Box<Integer>((int)0);
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x41, x42, (x40).get(), (x17).get(), 0xffffffff);
  Box<Integer> x43 = new Box<Integer>((int)0);
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x43, x44, (x42).get(), (x19).get(), 0xffffffff);
  Box<Integer> x45 = new Box<Integer>((int)0);
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x45, x46, (x44).get(), (x21).get(), 0xffffffff);
  Box<Integer> x47 = new Box<Integer>((int)0);
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x47, x48, (x46).get(), (x23).get(), 0xffffffff);
  Box<Integer> x49 = new Box<Integer>((int)0);
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x49, x50, (x48).get(), (x24).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x51 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x51, (x50).get(), (x25).get(), (x1).get());
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x52, (x50).get(), (x27).get(), (x3).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x53, (x50).get(), (x29).get(), (x5).get());
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x54, (x50).get(), (x31).get(), (x7).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x55, (x50).get(), (x33).get(), (x9).get());
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x56, (x50).get(), (x35).get(), (x11).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x57, (x50).get(), (x37).get(), (x13).get());
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x58, (x50).get(), (x39).get(), (x15).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x59, (x50).get(), (x41).get(), (x17).get());
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x60, (x50).get(), (x43).get(), (x19).get());
  Box<Integer> x61 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x61, (x50).get(), (x45).get(), (x21).get());
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x62, (x50).get(), (x47).get(), (x23).get());
  out1[0] = (x51).get();
  out1[1] = (x52).get();
  out1[2] = (x53).get();
  out1[3] = (x54).get();
  out1[4] = (x55).get();
  out1[5] = (x56).get();
  out1[6] = (x57).get();
  out1[7] = (x58).get();
  out1[8] = (x59).get();
  out1[9] = (x60).get();
  out1[10] = (x61).get();
  out1[11] = (x62).get();
}

/**
 * The function fiat_P384_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], [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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_subborrowx_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_P384_subborrowx_u32(x17, x18, (x16).get(), (arg1[8]), (arg2[8]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x19, x20, (x18).get(), (arg1[9]), (arg2[9]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x21, x22, (x20).get(), (arg1[10]), (arg2[10]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x23, x24, (x22).get(), (arg1[11]), (arg2[11]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x25, (x24).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), 0xffffffff);
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x26, x27, 0x0, (x1).get(), (x25).get());
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x28, x29, (x27).get(), (x3).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x30, x31, (x29).get(), (x5).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x32, x33, (x31).get(), (x7).get(), (x25).get());
  Box<Integer> x34 = new Box<Integer>((int)0);
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x34, x35, (x33).get(), (x9).get(), ((x25).get() & 0xfffffffe));
  Box<Integer> x36 = new Box<Integer>((int)0);
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x36, x37, (x35).get(), (x11).get(), (x25).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x38, x39, (x37).get(), (x13).get(), (x25).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x40, x41, (x39).get(), (x15).get(), (x25).get());
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x42, x43, (x41).get(), (x17).get(), (x25).get());
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x44, x45, (x43).get(), (x19).get(), (x25).get());
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x46, x47, (x45).get(), (x21).get(), (x25).get());
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x48, x49, (x47).get(), (x23).get(), (x25).get());
  out1[0] = (x26).get();
  out1[1] = (x28).get();
  out1[2] = (x30).get();
  out1[3] = (x32).get();
  out1[4] = (x34).get();
  out1[5] = (x36).get();
  out1[6] = (x38).get();
  out1[7] = (x40).get();
  out1[8] = (x42).get();
  out1[9] = (x44).get();
  out1[10] = (x46).get();
  out1[11] = (x48).get();
}

/**
 * The function fiat_P384_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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_opp(int[] out1, final int[] arg1) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_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_P384_subborrowx_u32(x15, x16, (x14).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[7]));
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x17, x18, (x16).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[8]));
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x19, x20, (x18).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[9]));
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x21, x22, (x20).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[10]));
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x23, x24, (x22).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (arg1[11]));
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x25, (x24).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), 0xffffffff);
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x26, x27, 0x0, (x1).get(), (x25).get());
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x28, x29, (x27).get(), (x3).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x30, x31, (x29).get(), (x5).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x32, x33, (x31).get(), (x7).get(), (x25).get());
  Box<Integer> x34 = new Box<Integer>((int)0);
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x34, x35, (x33).get(), (x9).get(), ((x25).get() & 0xfffffffe));
  Box<Integer> x36 = new Box<Integer>((int)0);
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x36, x37, (x35).get(), (x11).get(), (x25).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x38, x39, (x37).get(), (x13).get(), (x25).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x40, x41, (x39).get(), (x15).get(), (x25).get());
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x42, x43, (x41).get(), (x17).get(), (x25).get());
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x44, x45, (x43).get(), (x19).get(), (x25).get());
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x46, x47, (x45).get(), (x21).get(), (x25).get());
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x48, x49, (x47).get(), (x23).get(), (x25).get());
  out1[0] = (x26).get();
  out1[1] = (x28).get();
  out1[2] = (x30).get();
  out1[3] = (x32).get();
  out1[4] = (x34).get();
  out1[5] = (x36).get();
  out1[6] = (x38).get();
  out1[7] = (x40).get();
  out1[8] = (x42).get();
  out1[9] = (x44).get();
  out1[10] = (x46).get();
  out1[11] = (x48).get();
}

/**
 * The function fiat_P384_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)^12) 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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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_P384_mulx_u32(x2, x3, x1, 0xffffffff);
  Box<Integer> x4 = new Box<Integer>((int)0);
  Box<Integer> x5 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x4, x5, x1, 0xffffffff);
  Box<Integer> x6 = new Box<Integer>((int)0);
  Box<Integer> x7 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x6, x7, x1, 0xffffffff);
  Box<Integer> x8 = new Box<Integer>((int)0);
  Box<Integer> x9 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x8, x9, x1, 0xffffffff);
  Box<Integer> x10 = new Box<Integer>((int)0);
  Box<Integer> x11 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x10, x11, x1, 0xffffffff);
  Box<Integer> x12 = new Box<Integer>((int)0);
  Box<Integer> x13 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x12, x13, x1, 0xffffffff);
  Box<Integer> x14 = new Box<Integer>((int)0);
  Box<Integer> x15 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x14, x15, x1, 0xffffffff);
  Box<Integer> x16 = new Box<Integer>((int)0);
  Box<Integer> x17 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x16, x17, x1, 0xfffffffe);
  Box<Integer> x18 = new Box<Integer>((int)0);
  Box<Integer> x19 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x18, x19, x1, 0xffffffff);
  Box<Integer> x20 = new Box<Integer>((int)0);
  Box<Integer> x21 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x20, x21, x1, 0xffffffff);
  Box<Integer> x22 = new Box<Integer>((int)0);
  Box<Integer> x23 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x22, x23, 0x0, (x19).get(), (x16).get());
  Box<Integer> x24 = new Box<Integer>((int)0);
  Box<Integer> x25 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x24, x25, (x23).get(), (x17).get(), (x14).get());
  Box<Integer> x26 = new Box<Integer>((int)0);
  Box<Integer> x27 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x26, x27, (x25).get(), (x15).get(), (x12).get());
  Box<Integer> x28 = new Box<Integer>((int)0);
  Box<Integer> x29 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x28, x29, (x27).get(), (x13).get(), (x10).get());
  Box<Integer> x30 = new Box<Integer>((int)0);
  Box<Integer> x31 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x30, x31, (x29).get(), (x11).get(), (x8).get());
  Box<Integer> x32 = new Box<Integer>((int)0);
  Box<Integer> x33 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x32, x33, (x31).get(), (x9).get(), (x6).get());
  Box<Integer> x34 = new Box<Integer>((int)0);
  Box<Integer> x35 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x34, x35, (x33).get(), (x7).get(), (x4).get());
  Box<Integer> x36 = new Box<Integer>((int)0);
  Box<Integer> x37 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x36, x37, (x35).get(), (x5).get(), (x2).get());
  Box<Integer> x38 = new Box<Integer>((int)0);
  Box<Integer> x39 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x38, x39, 0x0, x1, (x20).get());
  Box<Integer> x40 = new Box<Integer>((int)0);
  Box<Integer> x41 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x40, x41, 0x0, ((x39).get() + (x21).get()), (arg1[1]));
  Box<Integer> x42 = new Box<Integer>((int)0);
  Box<Integer> x43 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x42, x43, (x40).get(), 0xffffffff);
  Box<Integer> x44 = new Box<Integer>((int)0);
  Box<Integer> x45 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x44, x45, (x40).get(), 0xffffffff);
  Box<Integer> x46 = new Box<Integer>((int)0);
  Box<Integer> x47 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x46, x47, (x40).get(), 0xffffffff);
  Box<Integer> x48 = new Box<Integer>((int)0);
  Box<Integer> x49 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x48, x49, (x40).get(), 0xffffffff);
  Box<Integer> x50 = new Box<Integer>((int)0);
  Box<Integer> x51 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x50, x51, (x40).get(), 0xffffffff);
  Box<Integer> x52 = new Box<Integer>((int)0);
  Box<Integer> x53 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x52, x53, (x40).get(), 0xffffffff);
  Box<Integer> x54 = new Box<Integer>((int)0);
  Box<Integer> x55 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x54, x55, (x40).get(), 0xffffffff);
  Box<Integer> x56 = new Box<Integer>((int)0);
  Box<Integer> x57 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x56, x57, (x40).get(), 0xfffffffe);
  Box<Integer> x58 = new Box<Integer>((int)0);
  Box<Integer> x59 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x58, x59, (x40).get(), 0xffffffff);
  Box<Integer> x60 = new Box<Integer>((int)0);
  Box<Integer> x61 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x60, x61, (x40).get(), 0xffffffff);
  Box<Integer> x62 = new Box<Integer>((int)0);
  Box<Integer> x63 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x62, x63, 0x0, (x59).get(), (x56).get());
  Box<Integer> x64 = new Box<Integer>((int)0);
  Box<Integer> x65 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x64, x65, (x63).get(), (x57).get(), (x54).get());
  Box<Integer> x66 = new Box<Integer>((int)0);
  Box<Integer> x67 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x66, x67, (x65).get(), (x55).get(), (x52).get());
  Box<Integer> x68 = new Box<Integer>((int)0);
  Box<Integer> x69 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x68, x69, (x67).get(), (x53).get(), (x50).get());
  Box<Integer> x70 = new Box<Integer>((int)0);
  Box<Integer> x71 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x70, x71, (x69).get(), (x51).get(), (x48).get());
  Box<Integer> x72 = new Box<Integer>((int)0);
  Box<Integer> x73 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x72, x73, (x71).get(), (x49).get(), (x46).get());
  Box<Integer> x74 = new Box<Integer>((int)0);
  Box<Integer> x75 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x74, x75, (x73).get(), (x47).get(), (x44).get());
  Box<Integer> x76 = new Box<Integer>((int)0);
  Box<Integer> x77 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x76, x77, (x75).get(), (x45).get(), (x42).get());
  Box<Integer> x78 = new Box<Integer>((int)0);
  Box<Integer> x79 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x78, x79, 0x0, (x40).get(), (x60).get());
  Box<Integer> x80 = new Box<Integer>((int)0);
  Box<Integer> x81 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x80, x81, (x79).get(), (x41).get(), (x61).get());
  Box<Integer> x82 = new Box<Integer>((int)0);
  Box<Integer> x83 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x82, x83, (x81).get(), (x18).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x84 = new Box<Integer>((int)0);
  Box<Integer> x85 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x84, x85, (x83).get(), (x22).get(), (x58).get());
  Box<Integer> x86 = new Box<Integer>((int)0);
  Box<Integer> x87 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x86, x87, (x85).get(), (x24).get(), (x62).get());
  Box<Integer> x88 = new Box<Integer>((int)0);
  Box<Integer> x89 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x88, x89, (x87).get(), (x26).get(), (x64).get());
  Box<Integer> x90 = new Box<Integer>((int)0);
  Box<Integer> x91 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x90, x91, (x89).get(), (x28).get(), (x66).get());
  Box<Integer> x92 = new Box<Integer>((int)0);
  Box<Integer> x93 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x92, x93, (x91).get(), (x30).get(), (x68).get());
  Box<Integer> x94 = new Box<Integer>((int)0);
  Box<Integer> x95 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x94, x95, (x93).get(), (x32).get(), (x70).get());
  Box<Integer> x96 = new Box<Integer>((int)0);
  Box<Integer> x97 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x96, x97, (x95).get(), (x34).get(), (x72).get());
  Box<Integer> x98 = new Box<Integer>((int)0);
  Box<Integer> x99 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x98, x99, (x97).get(), (x36).get(), (x74).get());
  Box<Integer> x100 = new Box<Integer>((int)0);
  Box<Integer> x101 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x100, x101, (x99).get(), ((x37).get() + (x3).get()), (x76).get());
  Box<Integer> x102 = new Box<Integer>((int)0);
  Box<Integer> x103 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x102, x103, (x101).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), ((x77).get() + (x43).get()));
  Box<Integer> x104 = new Box<Integer>((int)0);
  Box<Integer> x105 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x104, x105, 0x0, (x80).get(), (arg1[2]));
  Box<Integer> x106 = new Box<Integer>((int)0);
  Box<Integer> x107 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x106, x107, (x105).get(), (x82).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x108 = new Box<Integer>((int)0);
  Box<Integer> x109 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x108, x109, (x107).get(), (x84).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x110 = new Box<Integer>((int)0);
  Box<Integer> x111 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x110, x111, (x109).get(), (x86).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x112 = new Box<Integer>((int)0);
  Box<Integer> x113 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x112, x113, (x111).get(), (x88).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x114 = new Box<Integer>((int)0);
  Box<Integer> x115 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x114, x115, (x113).get(), (x90).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x116 = new Box<Integer>((int)0);
  Box<Integer> x117 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x116, x117, (x115).get(), (x92).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x118 = new Box<Integer>((int)0);
  Box<Integer> x119 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x118, x119, (x117).get(), (x94).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x120 = new Box<Integer>((int)0);
  Box<Integer> x121 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x120, x121, (x119).get(), (x96).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x122 = new Box<Integer>((int)0);
  Box<Integer> x123 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x122, x123, (x121).get(), (x98).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x124 = new Box<Integer>((int)0);
  Box<Integer> x125 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x124, x125, (x123).get(), (x100).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x126 = new Box<Integer>((int)0);
  Box<Integer> x127 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x126, x127, (x125).get(), (x102).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x128 = new Box<Integer>((int)0);
  Box<Integer> x129 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x128, x129, (x104).get(), 0xffffffff);
  Box<Integer> x130 = new Box<Integer>((int)0);
  Box<Integer> x131 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x130, x131, (x104).get(), 0xffffffff);
  Box<Integer> x132 = new Box<Integer>((int)0);
  Box<Integer> x133 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x132, x133, (x104).get(), 0xffffffff);
  Box<Integer> x134 = new Box<Integer>((int)0);
  Box<Integer> x135 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x134, x135, (x104).get(), 0xffffffff);
  Box<Integer> x136 = new Box<Integer>((int)0);
  Box<Integer> x137 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x136, x137, (x104).get(), 0xffffffff);
  Box<Integer> x138 = new Box<Integer>((int)0);
  Box<Integer> x139 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x138, x139, (x104).get(), 0xffffffff);
  Box<Integer> x140 = new Box<Integer>((int)0);
  Box<Integer> x141 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x140, x141, (x104).get(), 0xffffffff);
  Box<Integer> x142 = new Box<Integer>((int)0);
  Box<Integer> x143 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x142, x143, (x104).get(), 0xfffffffe);
  Box<Integer> x144 = new Box<Integer>((int)0);
  Box<Integer> x145 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x144, x145, (x104).get(), 0xffffffff);
  Box<Integer> x146 = new Box<Integer>((int)0);
  Box<Integer> x147 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x146, x147, (x104).get(), 0xffffffff);
  Box<Integer> x148 = new Box<Integer>((int)0);
  Box<Integer> x149 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x148, x149, 0x0, (x145).get(), (x142).get());
  Box<Integer> x150 = new Box<Integer>((int)0);
  Box<Integer> x151 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x150, x151, (x149).get(), (x143).get(), (x140).get());
  Box<Integer> x152 = new Box<Integer>((int)0);
  Box<Integer> x153 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x152, x153, (x151).get(), (x141).get(), (x138).get());
  Box<Integer> x154 = new Box<Integer>((int)0);
  Box<Integer> x155 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x154, x155, (x153).get(), (x139).get(), (x136).get());
  Box<Integer> x156 = new Box<Integer>((int)0);
  Box<Integer> x157 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x156, x157, (x155).get(), (x137).get(), (x134).get());
  Box<Integer> x158 = new Box<Integer>((int)0);
  Box<Integer> x159 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x158, x159, (x157).get(), (x135).get(), (x132).get());
  Box<Integer> x160 = new Box<Integer>((int)0);
  Box<Integer> x161 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x160, x161, (x159).get(), (x133).get(), (x130).get());
  Box<Integer> x162 = new Box<Integer>((int)0);
  Box<Integer> x163 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x162, x163, (x161).get(), (x131).get(), (x128).get());
  Box<Integer> x164 = new Box<Integer>((int)0);
  Box<Integer> x165 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x164, x165, 0x0, (x104).get(), (x146).get());
  Box<Integer> x166 = new Box<Integer>((int)0);
  Box<Integer> x167 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x166, x167, (x165).get(), (x106).get(), (x147).get());
  Box<Integer> x168 = new Box<Integer>((int)0);
  Box<Integer> x169 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x168, x169, (x167).get(), (x108).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x170 = new Box<Integer>((int)0);
  Box<Integer> x171 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x170, x171, (x169).get(), (x110).get(), (x144).get());
  Box<Integer> x172 = new Box<Integer>((int)0);
  Box<Integer> x173 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x172, x173, (x171).get(), (x112).get(), (x148).get());
  Box<Integer> x174 = new Box<Integer>((int)0);
  Box<Integer> x175 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x174, x175, (x173).get(), (x114).get(), (x150).get());
  Box<Integer> x176 = new Box<Integer>((int)0);
  Box<Integer> x177 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x176, x177, (x175).get(), (x116).get(), (x152).get());
  Box<Integer> x178 = new Box<Integer>((int)0);
  Box<Integer> x179 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x178, x179, (x177).get(), (x118).get(), (x154).get());
  Box<Integer> x180 = new Box<Integer>((int)0);
  Box<Integer> x181 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x180, x181, (x179).get(), (x120).get(), (x156).get());
  Box<Integer> x182 = new Box<Integer>((int)0);
  Box<Integer> x183 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x182, x183, (x181).get(), (x122).get(), (x158).get());
  Box<Integer> x184 = new Box<Integer>((int)0);
  Box<Integer> x185 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x184, x185, (x183).get(), (x124).get(), (x160).get());
  Box<Integer> x186 = new Box<Integer>((int)0);
  Box<Integer> x187 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x186, x187, (x185).get(), (x126).get(), (x162).get());
  Box<Integer> x188 = new Box<Integer>((int)0);
  Box<Integer> x189 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x188, x189, (x187).get(), ((x127).get() + (x103).get()), ((x163).get() + (x129).get()));
  Box<Integer> x190 = new Box<Integer>((int)0);
  Box<Integer> x191 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x190, x191, 0x0, (x166).get(), (arg1[3]));
  Box<Integer> x192 = new Box<Integer>((int)0);
  Box<Integer> x193 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x192, x193, (x191).get(), (x168).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x194 = new Box<Integer>((int)0);
  Box<Integer> x195 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x194, x195, (x193).get(), (x170).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x196 = new Box<Integer>((int)0);
  Box<Integer> x197 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x196, x197, (x195).get(), (x172).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x198 = new Box<Integer>((int)0);
  Box<Integer> x199 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x198, x199, (x197).get(), (x174).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x200 = new Box<Integer>((int)0);
  Box<Integer> x201 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x200, x201, (x199).get(), (x176).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x202 = new Box<Integer>((int)0);
  Box<Integer> x203 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x202, x203, (x201).get(), (x178).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x204 = new Box<Integer>((int)0);
  Box<Integer> x205 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x204, x205, (x203).get(), (x180).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x206 = new Box<Integer>((int)0);
  Box<Integer> x207 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x206, x207, (x205).get(), (x182).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x208 = new Box<Integer>((int)0);
  Box<Integer> x209 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x208, x209, (x207).get(), (x184).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x210 = new Box<Integer>((int)0);
  Box<Integer> x211 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x210, x211, (x209).get(), (x186).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x212 = new Box<Integer>((int)0);
  Box<Integer> x213 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x212, x213, (x211).get(), (x188).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x214 = new Box<Integer>((int)0);
  Box<Integer> x215 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x214, x215, (x190).get(), 0xffffffff);
  Box<Integer> x216 = new Box<Integer>((int)0);
  Box<Integer> x217 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x216, x217, (x190).get(), 0xffffffff);
  Box<Integer> x218 = new Box<Integer>((int)0);
  Box<Integer> x219 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x218, x219, (x190).get(), 0xffffffff);
  Box<Integer> x220 = new Box<Integer>((int)0);
  Box<Integer> x221 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x220, x221, (x190).get(), 0xffffffff);
  Box<Integer> x222 = new Box<Integer>((int)0);
  Box<Integer> x223 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x222, x223, (x190).get(), 0xffffffff);
  Box<Integer> x224 = new Box<Integer>((int)0);
  Box<Integer> x225 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x224, x225, (x190).get(), 0xffffffff);
  Box<Integer> x226 = new Box<Integer>((int)0);
  Box<Integer> x227 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x226, x227, (x190).get(), 0xffffffff);
  Box<Integer> x228 = new Box<Integer>((int)0);
  Box<Integer> x229 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x228, x229, (x190).get(), 0xfffffffe);
  Box<Integer> x230 = new Box<Integer>((int)0);
  Box<Integer> x231 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x230, x231, (x190).get(), 0xffffffff);
  Box<Integer> x232 = new Box<Integer>((int)0);
  Box<Integer> x233 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x232, x233, (x190).get(), 0xffffffff);
  Box<Integer> x234 = new Box<Integer>((int)0);
  Box<Integer> x235 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x234, x235, 0x0, (x231).get(), (x228).get());
  Box<Integer> x236 = new Box<Integer>((int)0);
  Box<Integer> x237 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x236, x237, (x235).get(), (x229).get(), (x226).get());
  Box<Integer> x238 = new Box<Integer>((int)0);
  Box<Integer> x239 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x238, x239, (x237).get(), (x227).get(), (x224).get());
  Box<Integer> x240 = new Box<Integer>((int)0);
  Box<Integer> x241 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x240, x241, (x239).get(), (x225).get(), (x222).get());
  Box<Integer> x242 = new Box<Integer>((int)0);
  Box<Integer> x243 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x242, x243, (x241).get(), (x223).get(), (x220).get());
  Box<Integer> x244 = new Box<Integer>((int)0);
  Box<Integer> x245 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x244, x245, (x243).get(), (x221).get(), (x218).get());
  Box<Integer> x246 = new Box<Integer>((int)0);
  Box<Integer> x247 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x246, x247, (x245).get(), (x219).get(), (x216).get());
  Box<Integer> x248 = new Box<Integer>((int)0);
  Box<Integer> x249 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x248, x249, (x247).get(), (x217).get(), (x214).get());
  Box<Integer> x250 = new Box<Integer>((int)0);
  Box<Integer> x251 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x250, x251, 0x0, (x190).get(), (x232).get());
  Box<Integer> x252 = new Box<Integer>((int)0);
  Box<Integer> x253 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x252, x253, (x251).get(), (x192).get(), (x233).get());
  Box<Integer> x254 = new Box<Integer>((int)0);
  Box<Integer> x255 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x254, x255, (x253).get(), (x194).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x256 = new Box<Integer>((int)0);
  Box<Integer> x257 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x256, x257, (x255).get(), (x196).get(), (x230).get());
  Box<Integer> x258 = new Box<Integer>((int)0);
  Box<Integer> x259 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x258, x259, (x257).get(), (x198).get(), (x234).get());
  Box<Integer> x260 = new Box<Integer>((int)0);
  Box<Integer> x261 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x260, x261, (x259).get(), (x200).get(), (x236).get());
  Box<Integer> x262 = new Box<Integer>((int)0);
  Box<Integer> x263 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x262, x263, (x261).get(), (x202).get(), (x238).get());
  Box<Integer> x264 = new Box<Integer>((int)0);
  Box<Integer> x265 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x264, x265, (x263).get(), (x204).get(), (x240).get());
  Box<Integer> x266 = new Box<Integer>((int)0);
  Box<Integer> x267 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x266, x267, (x265).get(), (x206).get(), (x242).get());
  Box<Integer> x268 = new Box<Integer>((int)0);
  Box<Integer> x269 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x268, x269, (x267).get(), (x208).get(), (x244).get());
  Box<Integer> x270 = new Box<Integer>((int)0);
  Box<Integer> x271 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x270, x271, (x269).get(), (x210).get(), (x246).get());
  Box<Integer> x272 = new Box<Integer>((int)0);
  Box<Integer> x273 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x272, x273, (x271).get(), (x212).get(), (x248).get());
  Box<Integer> x274 = new Box<Integer>((int)0);
  Box<Integer> x275 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x274, x275, (x273).get(), ((x213).get() + (x189).get()), ((x249).get() + (x215).get()));
  Box<Integer> x276 = new Box<Integer>((int)0);
  Box<Integer> x277 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x276, x277, 0x0, (x252).get(), (arg1[4]));
  Box<Integer> x278 = new Box<Integer>((int)0);
  Box<Integer> x279 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x278, x279, (x277).get(), (x254).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x280 = new Box<Integer>((int)0);
  Box<Integer> x281 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x280, x281, (x279).get(), (x256).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x282 = new Box<Integer>((int)0);
  Box<Integer> x283 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x282, x283, (x281).get(), (x258).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x284 = new Box<Integer>((int)0);
  Box<Integer> x285 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x284, x285, (x283).get(), (x260).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x286 = new Box<Integer>((int)0);
  Box<Integer> x287 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x286, x287, (x285).get(), (x262).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x288 = new Box<Integer>((int)0);
  Box<Integer> x289 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x288, x289, (x287).get(), (x264).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x290 = new Box<Integer>((int)0);
  Box<Integer> x291 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x290, x291, (x289).get(), (x266).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x292 = new Box<Integer>((int)0);
  Box<Integer> x293 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x292, x293, (x291).get(), (x268).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x294 = new Box<Integer>((int)0);
  Box<Integer> x295 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x294, x295, (x293).get(), (x270).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x296 = new Box<Integer>((int)0);
  Box<Integer> x297 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x296, x297, (x295).get(), (x272).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x298 = new Box<Integer>((int)0);
  Box<Integer> x299 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x298, x299, (x297).get(), (x274).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x300 = new Box<Integer>((int)0);
  Box<Integer> x301 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x300, x301, (x276).get(), 0xffffffff);
  Box<Integer> x302 = new Box<Integer>((int)0);
  Box<Integer> x303 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x302, x303, (x276).get(), 0xffffffff);
  Box<Integer> x304 = new Box<Integer>((int)0);
  Box<Integer> x305 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x304, x305, (x276).get(), 0xffffffff);
  Box<Integer> x306 = new Box<Integer>((int)0);
  Box<Integer> x307 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x306, x307, (x276).get(), 0xffffffff);
  Box<Integer> x308 = new Box<Integer>((int)0);
  Box<Integer> x309 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x308, x309, (x276).get(), 0xffffffff);
  Box<Integer> x310 = new Box<Integer>((int)0);
  Box<Integer> x311 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x310, x311, (x276).get(), 0xffffffff);
  Box<Integer> x312 = new Box<Integer>((int)0);
  Box<Integer> x313 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x312, x313, (x276).get(), 0xffffffff);
  Box<Integer> x314 = new Box<Integer>((int)0);
  Box<Integer> x315 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x314, x315, (x276).get(), 0xfffffffe);
  Box<Integer> x316 = new Box<Integer>((int)0);
  Box<Integer> x317 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x316, x317, (x276).get(), 0xffffffff);
  Box<Integer> x318 = new Box<Integer>((int)0);
  Box<Integer> x319 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x318, x319, (x276).get(), 0xffffffff);
  Box<Integer> x320 = new Box<Integer>((int)0);
  Box<Integer> x321 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x320, x321, 0x0, (x317).get(), (x314).get());
  Box<Integer> x322 = new Box<Integer>((int)0);
  Box<Integer> x323 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x322, x323, (x321).get(), (x315).get(), (x312).get());
  Box<Integer> x324 = new Box<Integer>((int)0);
  Box<Integer> x325 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x324, x325, (x323).get(), (x313).get(), (x310).get());
  Box<Integer> x326 = new Box<Integer>((int)0);
  Box<Integer> x327 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x326, x327, (x325).get(), (x311).get(), (x308).get());
  Box<Integer> x328 = new Box<Integer>((int)0);
  Box<Integer> x329 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x328, x329, (x327).get(), (x309).get(), (x306).get());
  Box<Integer> x330 = new Box<Integer>((int)0);
  Box<Integer> x331 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x330, x331, (x329).get(), (x307).get(), (x304).get());
  Box<Integer> x332 = new Box<Integer>((int)0);
  Box<Integer> x333 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x332, x333, (x331).get(), (x305).get(), (x302).get());
  Box<Integer> x334 = new Box<Integer>((int)0);
  Box<Integer> x335 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x334, x335, (x333).get(), (x303).get(), (x300).get());
  Box<Integer> x336 = new Box<Integer>((int)0);
  Box<Integer> x337 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x336, x337, 0x0, (x276).get(), (x318).get());
  Box<Integer> x338 = new Box<Integer>((int)0);
  Box<Integer> x339 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x338, x339, (x337).get(), (x278).get(), (x319).get());
  Box<Integer> x340 = new Box<Integer>((int)0);
  Box<Integer> x341 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x340, x341, (x339).get(), (x280).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x342 = new Box<Integer>((int)0);
  Box<Integer> x343 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x342, x343, (x341).get(), (x282).get(), (x316).get());
  Box<Integer> x344 = new Box<Integer>((int)0);
  Box<Integer> x345 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x344, x345, (x343).get(), (x284).get(), (x320).get());
  Box<Integer> x346 = new Box<Integer>((int)0);
  Box<Integer> x347 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x346, x347, (x345).get(), (x286).get(), (x322).get());
  Box<Integer> x348 = new Box<Integer>((int)0);
  Box<Integer> x349 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x348, x349, (x347).get(), (x288).get(), (x324).get());
  Box<Integer> x350 = new Box<Integer>((int)0);
  Box<Integer> x351 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x350, x351, (x349).get(), (x290).get(), (x326).get());
  Box<Integer> x352 = new Box<Integer>((int)0);
  Box<Integer> x353 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x352, x353, (x351).get(), (x292).get(), (x328).get());
  Box<Integer> x354 = new Box<Integer>((int)0);
  Box<Integer> x355 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x354, x355, (x353).get(), (x294).get(), (x330).get());
  Box<Integer> x356 = new Box<Integer>((int)0);
  Box<Integer> x357 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x356, x357, (x355).get(), (x296).get(), (x332).get());
  Box<Integer> x358 = new Box<Integer>((int)0);
  Box<Integer> x359 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x358, x359, (x357).get(), (x298).get(), (x334).get());
  Box<Integer> x360 = new Box<Integer>((int)0);
  Box<Integer> x361 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x360, x361, (x359).get(), ((x299).get() + (x275).get()), ((x335).get() + (x301).get()));
  Box<Integer> x362 = new Box<Integer>((int)0);
  Box<Integer> x363 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x362, x363, 0x0, (x338).get(), (arg1[5]));
  Box<Integer> x364 = new Box<Integer>((int)0);
  Box<Integer> x365 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x364, x365, (x363).get(), (x340).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x366 = new Box<Integer>((int)0);
  Box<Integer> x367 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x366, x367, (x365).get(), (x342).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x368 = new Box<Integer>((int)0);
  Box<Integer> x369 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x368, x369, (x367).get(), (x344).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x370 = new Box<Integer>((int)0);
  Box<Integer> x371 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x370, x371, (x369).get(), (x346).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x372 = new Box<Integer>((int)0);
  Box<Integer> x373 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x372, x373, (x371).get(), (x348).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x374 = new Box<Integer>((int)0);
  Box<Integer> x375 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x374, x375, (x373).get(), (x350).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x376 = new Box<Integer>((int)0);
  Box<Integer> x377 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x376, x377, (x375).get(), (x352).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x378 = new Box<Integer>((int)0);
  Box<Integer> x379 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x378, x379, (x377).get(), (x354).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x380 = new Box<Integer>((int)0);
  Box<Integer> x381 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x380, x381, (x379).get(), (x356).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x382 = new Box<Integer>((int)0);
  Box<Integer> x383 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x382, x383, (x381).get(), (x358).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x384 = new Box<Integer>((int)0);
  Box<Integer> x385 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x384, x385, (x383).get(), (x360).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x386 = new Box<Integer>((int)0);
  Box<Integer> x387 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x386, x387, (x362).get(), 0xffffffff);
  Box<Integer> x388 = new Box<Integer>((int)0);
  Box<Integer> x389 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x388, x389, (x362).get(), 0xffffffff);
  Box<Integer> x390 = new Box<Integer>((int)0);
  Box<Integer> x391 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x390, x391, (x362).get(), 0xffffffff);
  Box<Integer> x392 = new Box<Integer>((int)0);
  Box<Integer> x393 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x392, x393, (x362).get(), 0xffffffff);
  Box<Integer> x394 = new Box<Integer>((int)0);
  Box<Integer> x395 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x394, x395, (x362).get(), 0xffffffff);
  Box<Integer> x396 = new Box<Integer>((int)0);
  Box<Integer> x397 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x396, x397, (x362).get(), 0xffffffff);
  Box<Integer> x398 = new Box<Integer>((int)0);
  Box<Integer> x399 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x398, x399, (x362).get(), 0xffffffff);
  Box<Integer> x400 = new Box<Integer>((int)0);
  Box<Integer> x401 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x400, x401, (x362).get(), 0xfffffffe);
  Box<Integer> x402 = new Box<Integer>((int)0);
  Box<Integer> x403 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x402, x403, (x362).get(), 0xffffffff);
  Box<Integer> x404 = new Box<Integer>((int)0);
  Box<Integer> x405 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x404, x405, (x362).get(), 0xffffffff);
  Box<Integer> x406 = new Box<Integer>((int)0);
  Box<Integer> x407 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x406, x407, 0x0, (x403).get(), (x400).get());
  Box<Integer> x408 = new Box<Integer>((int)0);
  Box<Integer> x409 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x408, x409, (x407).get(), (x401).get(), (x398).get());
  Box<Integer> x410 = new Box<Integer>((int)0);
  Box<Integer> x411 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x410, x411, (x409).get(), (x399).get(), (x396).get());
  Box<Integer> x412 = new Box<Integer>((int)0);
  Box<Integer> x413 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x412, x413, (x411).get(), (x397).get(), (x394).get());
  Box<Integer> x414 = new Box<Integer>((int)0);
  Box<Integer> x415 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x414, x415, (x413).get(), (x395).get(), (x392).get());
  Box<Integer> x416 = new Box<Integer>((int)0);
  Box<Integer> x417 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x416, x417, (x415).get(), (x393).get(), (x390).get());
  Box<Integer> x418 = new Box<Integer>((int)0);
  Box<Integer> x419 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x418, x419, (x417).get(), (x391).get(), (x388).get());
  Box<Integer> x420 = new Box<Integer>((int)0);
  Box<Integer> x421 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x420, x421, (x419).get(), (x389).get(), (x386).get());
  Box<Integer> x422 = new Box<Integer>((int)0);
  Box<Integer> x423 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x422, x423, 0x0, (x362).get(), (x404).get());
  Box<Integer> x424 = new Box<Integer>((int)0);
  Box<Integer> x425 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x424, x425, (x423).get(), (x364).get(), (x405).get());
  Box<Integer> x426 = new Box<Integer>((int)0);
  Box<Integer> x427 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x426, x427, (x425).get(), (x366).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x428 = new Box<Integer>((int)0);
  Box<Integer> x429 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x428, x429, (x427).get(), (x368).get(), (x402).get());
  Box<Integer> x430 = new Box<Integer>((int)0);
  Box<Integer> x431 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x430, x431, (x429).get(), (x370).get(), (x406).get());
  Box<Integer> x432 = new Box<Integer>((int)0);
  Box<Integer> x433 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x432, x433, (x431).get(), (x372).get(), (x408).get());
  Box<Integer> x434 = new Box<Integer>((int)0);
  Box<Integer> x435 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x434, x435, (x433).get(), (x374).get(), (x410).get());
  Box<Integer> x436 = new Box<Integer>((int)0);
  Box<Integer> x437 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x436, x437, (x435).get(), (x376).get(), (x412).get());
  Box<Integer> x438 = new Box<Integer>((int)0);
  Box<Integer> x439 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x438, x439, (x437).get(), (x378).get(), (x414).get());
  Box<Integer> x440 = new Box<Integer>((int)0);
  Box<Integer> x441 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x440, x441, (x439).get(), (x380).get(), (x416).get());
  Box<Integer> x442 = new Box<Integer>((int)0);
  Box<Integer> x443 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x442, x443, (x441).get(), (x382).get(), (x418).get());
  Box<Integer> x444 = new Box<Integer>((int)0);
  Box<Integer> x445 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x444, x445, (x443).get(), (x384).get(), (x420).get());
  Box<Integer> x446 = new Box<Integer>((int)0);
  Box<Integer> x447 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x446, x447, (x445).get(), ((x385).get() + (x361).get()), ((x421).get() + (x387).get()));
  Box<Integer> x448 = new Box<Integer>((int)0);
  Box<Integer> x449 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x448, x449, 0x0, (x424).get(), (arg1[6]));
  Box<Integer> x450 = new Box<Integer>((int)0);
  Box<Integer> x451 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x450, x451, (x449).get(), (x426).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x452 = new Box<Integer>((int)0);
  Box<Integer> x453 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x452, x453, (x451).get(), (x428).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x454 = new Box<Integer>((int)0);
  Box<Integer> x455 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x454, x455, (x453).get(), (x430).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x456 = new Box<Integer>((int)0);
  Box<Integer> x457 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x456, x457, (x455).get(), (x432).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x458 = new Box<Integer>((int)0);
  Box<Integer> x459 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x458, x459, (x457).get(), (x434).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x460 = new Box<Integer>((int)0);
  Box<Integer> x461 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x460, x461, (x459).get(), (x436).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x462 = new Box<Integer>((int)0);
  Box<Integer> x463 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x462, x463, (x461).get(), (x438).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x464 = new Box<Integer>((int)0);
  Box<Integer> x465 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x464, x465, (x463).get(), (x440).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x466 = new Box<Integer>((int)0);
  Box<Integer> x467 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x466, x467, (x465).get(), (x442).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x468 = new Box<Integer>((int)0);
  Box<Integer> x469 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x468, x469, (x467).get(), (x444).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x470 = new Box<Integer>((int)0);
  Box<Integer> x471 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x470, x471, (x469).get(), (x446).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x472 = new Box<Integer>((int)0);
  Box<Integer> x473 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x472, x473, (x448).get(), 0xffffffff);
  Box<Integer> x474 = new Box<Integer>((int)0);
  Box<Integer> x475 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x474, x475, (x448).get(), 0xffffffff);
  Box<Integer> x476 = new Box<Integer>((int)0);
  Box<Integer> x477 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x476, x477, (x448).get(), 0xffffffff);
  Box<Integer> x478 = new Box<Integer>((int)0);
  Box<Integer> x479 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x478, x479, (x448).get(), 0xffffffff);
  Box<Integer> x480 = new Box<Integer>((int)0);
  Box<Integer> x481 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x480, x481, (x448).get(), 0xffffffff);
  Box<Integer> x482 = new Box<Integer>((int)0);
  Box<Integer> x483 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x482, x483, (x448).get(), 0xffffffff);
  Box<Integer> x484 = new Box<Integer>((int)0);
  Box<Integer> x485 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x484, x485, (x448).get(), 0xffffffff);
  Box<Integer> x486 = new Box<Integer>((int)0);
  Box<Integer> x487 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x486, x487, (x448).get(), 0xfffffffe);
  Box<Integer> x488 = new Box<Integer>((int)0);
  Box<Integer> x489 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x488, x489, (x448).get(), 0xffffffff);
  Box<Integer> x490 = new Box<Integer>((int)0);
  Box<Integer> x491 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x490, x491, (x448).get(), 0xffffffff);
  Box<Integer> x492 = new Box<Integer>((int)0);
  Box<Integer> x493 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x492, x493, 0x0, (x489).get(), (x486).get());
  Box<Integer> x494 = new Box<Integer>((int)0);
  Box<Integer> x495 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x494, x495, (x493).get(), (x487).get(), (x484).get());
  Box<Integer> x496 = new Box<Integer>((int)0);
  Box<Integer> x497 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x496, x497, (x495).get(), (x485).get(), (x482).get());
  Box<Integer> x498 = new Box<Integer>((int)0);
  Box<Integer> x499 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x498, x499, (x497).get(), (x483).get(), (x480).get());
  Box<Integer> x500 = new Box<Integer>((int)0);
  Box<Integer> x501 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x500, x501, (x499).get(), (x481).get(), (x478).get());
  Box<Integer> x502 = new Box<Integer>((int)0);
  Box<Integer> x503 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x502, x503, (x501).get(), (x479).get(), (x476).get());
  Box<Integer> x504 = new Box<Integer>((int)0);
  Box<Integer> x505 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x504, x505, (x503).get(), (x477).get(), (x474).get());
  Box<Integer> x506 = new Box<Integer>((int)0);
  Box<Integer> x507 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x506, x507, (x505).get(), (x475).get(), (x472).get());
  Box<Integer> x508 = new Box<Integer>((int)0);
  Box<Integer> x509 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x508, x509, 0x0, (x448).get(), (x490).get());
  Box<Integer> x510 = new Box<Integer>((int)0);
  Box<Integer> x511 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x510, x511, (x509).get(), (x450).get(), (x491).get());
  Box<Integer> x512 = new Box<Integer>((int)0);
  Box<Integer> x513 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x512, x513, (x511).get(), (x452).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x514 = new Box<Integer>((int)0);
  Box<Integer> x515 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x514, x515, (x513).get(), (x454).get(), (x488).get());
  Box<Integer> x516 = new Box<Integer>((int)0);
  Box<Integer> x517 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x516, x517, (x515).get(), (x456).get(), (x492).get());
  Box<Integer> x518 = new Box<Integer>((int)0);
  Box<Integer> x519 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x518, x519, (x517).get(), (x458).get(), (x494).get());
  Box<Integer> x520 = new Box<Integer>((int)0);
  Box<Integer> x521 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x520, x521, (x519).get(), (x460).get(), (x496).get());
  Box<Integer> x522 = new Box<Integer>((int)0);
  Box<Integer> x523 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x522, x523, (x521).get(), (x462).get(), (x498).get());
  Box<Integer> x524 = new Box<Integer>((int)0);
  Box<Integer> x525 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x524, x525, (x523).get(), (x464).get(), (x500).get());
  Box<Integer> x526 = new Box<Integer>((int)0);
  Box<Integer> x527 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x526, x527, (x525).get(), (x466).get(), (x502).get());
  Box<Integer> x528 = new Box<Integer>((int)0);
  Box<Integer> x529 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x528, x529, (x527).get(), (x468).get(), (x504).get());
  Box<Integer> x530 = new Box<Integer>((int)0);
  Box<Integer> x531 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x530, x531, (x529).get(), (x470).get(), (x506).get());
  Box<Integer> x532 = new Box<Integer>((int)0);
  Box<Integer> x533 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x532, x533, (x531).get(), ((x471).get() + (x447).get()), ((x507).get() + (x473).get()));
  Box<Integer> x534 = new Box<Integer>((int)0);
  Box<Integer> x535 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x534, x535, 0x0, (x510).get(), (arg1[7]));
  Box<Integer> x536 = new Box<Integer>((int)0);
  Box<Integer> x537 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x536, x537, (x535).get(), (x512).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x538 = new Box<Integer>((int)0);
  Box<Integer> x539 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x538, x539, (x537).get(), (x514).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x540 = new Box<Integer>((int)0);
  Box<Integer> x541 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x540, x541, (x539).get(), (x516).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x542 = new Box<Integer>((int)0);
  Box<Integer> x543 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x542, x543, (x541).get(), (x518).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x544 = new Box<Integer>((int)0);
  Box<Integer> x545 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x544, x545, (x543).get(), (x520).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x546 = new Box<Integer>((int)0);
  Box<Integer> x547 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x546, x547, (x545).get(), (x522).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x548 = new Box<Integer>((int)0);
  Box<Integer> x549 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x548, x549, (x547).get(), (x524).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x550 = new Box<Integer>((int)0);
  Box<Integer> x551 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x550, x551, (x549).get(), (x526).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x552 = new Box<Integer>((int)0);
  Box<Integer> x553 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x552, x553, (x551).get(), (x528).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x554 = new Box<Integer>((int)0);
  Box<Integer> x555 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x554, x555, (x553).get(), (x530).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x556 = new Box<Integer>((int)0);
  Box<Integer> x557 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x556, x557, (x555).get(), (x532).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x558 = new Box<Integer>((int)0);
  Box<Integer> x559 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x558, x559, (x534).get(), 0xffffffff);
  Box<Integer> x560 = new Box<Integer>((int)0);
  Box<Integer> x561 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x560, x561, (x534).get(), 0xffffffff);
  Box<Integer> x562 = new Box<Integer>((int)0);
  Box<Integer> x563 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x562, x563, (x534).get(), 0xffffffff);
  Box<Integer> x564 = new Box<Integer>((int)0);
  Box<Integer> x565 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x564, x565, (x534).get(), 0xffffffff);
  Box<Integer> x566 = new Box<Integer>((int)0);
  Box<Integer> x567 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x566, x567, (x534).get(), 0xffffffff);
  Box<Integer> x568 = new Box<Integer>((int)0);
  Box<Integer> x569 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x568, x569, (x534).get(), 0xffffffff);
  Box<Integer> x570 = new Box<Integer>((int)0);
  Box<Integer> x571 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x570, x571, (x534).get(), 0xffffffff);
  Box<Integer> x572 = new Box<Integer>((int)0);
  Box<Integer> x573 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x572, x573, (x534).get(), 0xfffffffe);
  Box<Integer> x574 = new Box<Integer>((int)0);
  Box<Integer> x575 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x574, x575, (x534).get(), 0xffffffff);
  Box<Integer> x576 = new Box<Integer>((int)0);
  Box<Integer> x577 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x576, x577, (x534).get(), 0xffffffff);
  Box<Integer> x578 = new Box<Integer>((int)0);
  Box<Integer> x579 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x578, x579, 0x0, (x575).get(), (x572).get());
  Box<Integer> x580 = new Box<Integer>((int)0);
  Box<Integer> x581 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x580, x581, (x579).get(), (x573).get(), (x570).get());
  Box<Integer> x582 = new Box<Integer>((int)0);
  Box<Integer> x583 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x582, x583, (x581).get(), (x571).get(), (x568).get());
  Box<Integer> x584 = new Box<Integer>((int)0);
  Box<Integer> x585 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x584, x585, (x583).get(), (x569).get(), (x566).get());
  Box<Integer> x586 = new Box<Integer>((int)0);
  Box<Integer> x587 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x586, x587, (x585).get(), (x567).get(), (x564).get());
  Box<Integer> x588 = new Box<Integer>((int)0);
  Box<Integer> x589 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x588, x589, (x587).get(), (x565).get(), (x562).get());
  Box<Integer> x590 = new Box<Integer>((int)0);
  Box<Integer> x591 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x590, x591, (x589).get(), (x563).get(), (x560).get());
  Box<Integer> x592 = new Box<Integer>((int)0);
  Box<Integer> x593 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x592, x593, (x591).get(), (x561).get(), (x558).get());
  Box<Integer> x594 = new Box<Integer>((int)0);
  Box<Integer> x595 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x594, x595, 0x0, (x534).get(), (x576).get());
  Box<Integer> x596 = new Box<Integer>((int)0);
  Box<Integer> x597 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x596, x597, (x595).get(), (x536).get(), (x577).get());
  Box<Integer> x598 = new Box<Integer>((int)0);
  Box<Integer> x599 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x598, x599, (x597).get(), (x538).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x600 = new Box<Integer>((int)0);
  Box<Integer> x601 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x600, x601, (x599).get(), (x540).get(), (x574).get());
  Box<Integer> x602 = new Box<Integer>((int)0);
  Box<Integer> x603 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x602, x603, (x601).get(), (x542).get(), (x578).get());
  Box<Integer> x604 = new Box<Integer>((int)0);
  Box<Integer> x605 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x604, x605, (x603).get(), (x544).get(), (x580).get());
  Box<Integer> x606 = new Box<Integer>((int)0);
  Box<Integer> x607 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x606, x607, (x605).get(), (x546).get(), (x582).get());
  Box<Integer> x608 = new Box<Integer>((int)0);
  Box<Integer> x609 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x608, x609, (x607).get(), (x548).get(), (x584).get());
  Box<Integer> x610 = new Box<Integer>((int)0);
  Box<Integer> x611 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x610, x611, (x609).get(), (x550).get(), (x586).get());
  Box<Integer> x612 = new Box<Integer>((int)0);
  Box<Integer> x613 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x612, x613, (x611).get(), (x552).get(), (x588).get());
  Box<Integer> x614 = new Box<Integer>((int)0);
  Box<Integer> x615 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x614, x615, (x613).get(), (x554).get(), (x590).get());
  Box<Integer> x616 = new Box<Integer>((int)0);
  Box<Integer> x617 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x616, x617, (x615).get(), (x556).get(), (x592).get());
  Box<Integer> x618 = new Box<Integer>((int)0);
  Box<Integer> x619 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x618, x619, (x617).get(), ((x557).get() + (x533).get()), ((x593).get() + (x559).get()));
  Box<Integer> x620 = new Box<Integer>((int)0);
  Box<Integer> x621 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x620, x621, 0x0, (x596).get(), (arg1[8]));
  Box<Integer> x622 = new Box<Integer>((int)0);
  Box<Integer> x623 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x622, x623, (x621).get(), (x598).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x624 = new Box<Integer>((int)0);
  Box<Integer> x625 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x624, x625, (x623).get(), (x600).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x626 = new Box<Integer>((int)0);
  Box<Integer> x627 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x626, x627, (x625).get(), (x602).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x628 = new Box<Integer>((int)0);
  Box<Integer> x629 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x628, x629, (x627).get(), (x604).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x630 = new Box<Integer>((int)0);
  Box<Integer> x631 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x630, x631, (x629).get(), (x606).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x632 = new Box<Integer>((int)0);
  Box<Integer> x633 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x632, x633, (x631).get(), (x608).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x634 = new Box<Integer>((int)0);
  Box<Integer> x635 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x634, x635, (x633).get(), (x610).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x636 = new Box<Integer>((int)0);
  Box<Integer> x637 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x636, x637, (x635).get(), (x612).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x638 = new Box<Integer>((int)0);
  Box<Integer> x639 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x638, x639, (x637).get(), (x614).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x640 = new Box<Integer>((int)0);
  Box<Integer> x641 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x640, x641, (x639).get(), (x616).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x642 = new Box<Integer>((int)0);
  Box<Integer> x643 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x642, x643, (x641).get(), (x618).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x644 = new Box<Integer>((int)0);
  Box<Integer> x645 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x644, x645, (x620).get(), 0xffffffff);
  Box<Integer> x646 = new Box<Integer>((int)0);
  Box<Integer> x647 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x646, x647, (x620).get(), 0xffffffff);
  Box<Integer> x648 = new Box<Integer>((int)0);
  Box<Integer> x649 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x648, x649, (x620).get(), 0xffffffff);
  Box<Integer> x650 = new Box<Integer>((int)0);
  Box<Integer> x651 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x650, x651, (x620).get(), 0xffffffff);
  Box<Integer> x652 = new Box<Integer>((int)0);
  Box<Integer> x653 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x652, x653, (x620).get(), 0xffffffff);
  Box<Integer> x654 = new Box<Integer>((int)0);
  Box<Integer> x655 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x654, x655, (x620).get(), 0xffffffff);
  Box<Integer> x656 = new Box<Integer>((int)0);
  Box<Integer> x657 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x656, x657, (x620).get(), 0xffffffff);
  Box<Integer> x658 = new Box<Integer>((int)0);
  Box<Integer> x659 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x658, x659, (x620).get(), 0xfffffffe);
  Box<Integer> x660 = new Box<Integer>((int)0);
  Box<Integer> x661 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x660, x661, (x620).get(), 0xffffffff);
  Box<Integer> x662 = new Box<Integer>((int)0);
  Box<Integer> x663 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x662, x663, (x620).get(), 0xffffffff);
  Box<Integer> x664 = new Box<Integer>((int)0);
  Box<Integer> x665 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x664, x665, 0x0, (x661).get(), (x658).get());
  Box<Integer> x666 = new Box<Integer>((int)0);
  Box<Integer> x667 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x666, x667, (x665).get(), (x659).get(), (x656).get());
  Box<Integer> x668 = new Box<Integer>((int)0);
  Box<Integer> x669 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x668, x669, (x667).get(), (x657).get(), (x654).get());
  Box<Integer> x670 = new Box<Integer>((int)0);
  Box<Integer> x671 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x670, x671, (x669).get(), (x655).get(), (x652).get());
  Box<Integer> x672 = new Box<Integer>((int)0);
  Box<Integer> x673 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x672, x673, (x671).get(), (x653).get(), (x650).get());
  Box<Integer> x674 = new Box<Integer>((int)0);
  Box<Integer> x675 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x674, x675, (x673).get(), (x651).get(), (x648).get());
  Box<Integer> x676 = new Box<Integer>((int)0);
  Box<Integer> x677 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x676, x677, (x675).get(), (x649).get(), (x646).get());
  Box<Integer> x678 = new Box<Integer>((int)0);
  Box<Integer> x679 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x678, x679, (x677).get(), (x647).get(), (x644).get());
  Box<Integer> x680 = new Box<Integer>((int)0);
  Box<Integer> x681 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x680, x681, 0x0, (x620).get(), (x662).get());
  Box<Integer> x682 = new Box<Integer>((int)0);
  Box<Integer> x683 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x682, x683, (x681).get(), (x622).get(), (x663).get());
  Box<Integer> x684 = new Box<Integer>((int)0);
  Box<Integer> x685 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x684, x685, (x683).get(), (x624).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x686 = new Box<Integer>((int)0);
  Box<Integer> x687 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x686, x687, (x685).get(), (x626).get(), (x660).get());
  Box<Integer> x688 = new Box<Integer>((int)0);
  Box<Integer> x689 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x688, x689, (x687).get(), (x628).get(), (x664).get());
  Box<Integer> x690 = new Box<Integer>((int)0);
  Box<Integer> x691 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x690, x691, (x689).get(), (x630).get(), (x666).get());
  Box<Integer> x692 = new Box<Integer>((int)0);
  Box<Integer> x693 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x692, x693, (x691).get(), (x632).get(), (x668).get());
  Box<Integer> x694 = new Box<Integer>((int)0);
  Box<Integer> x695 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x694, x695, (x693).get(), (x634).get(), (x670).get());
  Box<Integer> x696 = new Box<Integer>((int)0);
  Box<Integer> x697 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x696, x697, (x695).get(), (x636).get(), (x672).get());
  Box<Integer> x698 = new Box<Integer>((int)0);
  Box<Integer> x699 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x698, x699, (x697).get(), (x638).get(), (x674).get());
  Box<Integer> x700 = new Box<Integer>((int)0);
  Box<Integer> x701 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x700, x701, (x699).get(), (x640).get(), (x676).get());
  Box<Integer> x702 = new Box<Integer>((int)0);
  Box<Integer> x703 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x702, x703, (x701).get(), (x642).get(), (x678).get());
  Box<Integer> x704 = new Box<Integer>((int)0);
  Box<Integer> x705 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x704, x705, (x703).get(), ((x643).get() + (x619).get()), ((x679).get() + (x645).get()));
  Box<Integer> x706 = new Box<Integer>((int)0);
  Box<Integer> x707 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x706, x707, 0x0, (x682).get(), (arg1[9]));
  Box<Integer> x708 = new Box<Integer>((int)0);
  Box<Integer> x709 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x708, x709, (x707).get(), (x684).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x710 = new Box<Integer>((int)0);
  Box<Integer> x711 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x710, x711, (x709).get(), (x686).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x712 = new Box<Integer>((int)0);
  Box<Integer> x713 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x712, x713, (x711).get(), (x688).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x714 = new Box<Integer>((int)0);
  Box<Integer> x715 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x714, x715, (x713).get(), (x690).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x716 = new Box<Integer>((int)0);
  Box<Integer> x717 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x716, x717, (x715).get(), (x692).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x718 = new Box<Integer>((int)0);
  Box<Integer> x719 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x718, x719, (x717).get(), (x694).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x720 = new Box<Integer>((int)0);
  Box<Integer> x721 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x720, x721, (x719).get(), (x696).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x722 = new Box<Integer>((int)0);
  Box<Integer> x723 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x722, x723, (x721).get(), (x698).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x724 = new Box<Integer>((int)0);
  Box<Integer> x725 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x724, x725, (x723).get(), (x700).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x726 = new Box<Integer>((int)0);
  Box<Integer> x727 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x726, x727, (x725).get(), (x702).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x728 = new Box<Integer>((int)0);
  Box<Integer> x729 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x728, x729, (x727).get(), (x704).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x730 = new Box<Integer>((int)0);
  Box<Integer> x731 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x730, x731, (x706).get(), 0xffffffff);
  Box<Integer> x732 = new Box<Integer>((int)0);
  Box<Integer> x733 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x732, x733, (x706).get(), 0xffffffff);
  Box<Integer> x734 = new Box<Integer>((int)0);
  Box<Integer> x735 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x734, x735, (x706).get(), 0xffffffff);
  Box<Integer> x736 = new Box<Integer>((int)0);
  Box<Integer> x737 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x736, x737, (x706).get(), 0xffffffff);
  Box<Integer> x738 = new Box<Integer>((int)0);
  Box<Integer> x739 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x738, x739, (x706).get(), 0xffffffff);
  Box<Integer> x740 = new Box<Integer>((int)0);
  Box<Integer> x741 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x740, x741, (x706).get(), 0xffffffff);
  Box<Integer> x742 = new Box<Integer>((int)0);
  Box<Integer> x743 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x742, x743, (x706).get(), 0xffffffff);
  Box<Integer> x744 = new Box<Integer>((int)0);
  Box<Integer> x745 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x744, x745, (x706).get(), 0xfffffffe);
  Box<Integer> x746 = new Box<Integer>((int)0);
  Box<Integer> x747 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x746, x747, (x706).get(), 0xffffffff);
  Box<Integer> x748 = new Box<Integer>((int)0);
  Box<Integer> x749 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x748, x749, (x706).get(), 0xffffffff);
  Box<Integer> x750 = new Box<Integer>((int)0);
  Box<Integer> x751 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x750, x751, 0x0, (x747).get(), (x744).get());
  Box<Integer> x752 = new Box<Integer>((int)0);
  Box<Integer> x753 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x752, x753, (x751).get(), (x745).get(), (x742).get());
  Box<Integer> x754 = new Box<Integer>((int)0);
  Box<Integer> x755 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x754, x755, (x753).get(), (x743).get(), (x740).get());
  Box<Integer> x756 = new Box<Integer>((int)0);
  Box<Integer> x757 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x756, x757, (x755).get(), (x741).get(), (x738).get());
  Box<Integer> x758 = new Box<Integer>((int)0);
  Box<Integer> x759 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x758, x759, (x757).get(), (x739).get(), (x736).get());
  Box<Integer> x760 = new Box<Integer>((int)0);
  Box<Integer> x761 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x760, x761, (x759).get(), (x737).get(), (x734).get());
  Box<Integer> x762 = new Box<Integer>((int)0);
  Box<Integer> x763 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x762, x763, (x761).get(), (x735).get(), (x732).get());
  Box<Integer> x764 = new Box<Integer>((int)0);
  Box<Integer> x765 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x764, x765, (x763).get(), (x733).get(), (x730).get());
  Box<Integer> x766 = new Box<Integer>((int)0);
  Box<Integer> x767 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x766, x767, 0x0, (x706).get(), (x748).get());
  Box<Integer> x768 = new Box<Integer>((int)0);
  Box<Integer> x769 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x768, x769, (x767).get(), (x708).get(), (x749).get());
  Box<Integer> x770 = new Box<Integer>((int)0);
  Box<Integer> x771 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x770, x771, (x769).get(), (x710).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x772 = new Box<Integer>((int)0);
  Box<Integer> x773 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x772, x773, (x771).get(), (x712).get(), (x746).get());
  Box<Integer> x774 = new Box<Integer>((int)0);
  Box<Integer> x775 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x774, x775, (x773).get(), (x714).get(), (x750).get());
  Box<Integer> x776 = new Box<Integer>((int)0);
  Box<Integer> x777 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x776, x777, (x775).get(), (x716).get(), (x752).get());
  Box<Integer> x778 = new Box<Integer>((int)0);
  Box<Integer> x779 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x778, x779, (x777).get(), (x718).get(), (x754).get());
  Box<Integer> x780 = new Box<Integer>((int)0);
  Box<Integer> x781 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x780, x781, (x779).get(), (x720).get(), (x756).get());
  Box<Integer> x782 = new Box<Integer>((int)0);
  Box<Integer> x783 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x782, x783, (x781).get(), (x722).get(), (x758).get());
  Box<Integer> x784 = new Box<Integer>((int)0);
  Box<Integer> x785 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x784, x785, (x783).get(), (x724).get(), (x760).get());
  Box<Integer> x786 = new Box<Integer>((int)0);
  Box<Integer> x787 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x786, x787, (x785).get(), (x726).get(), (x762).get());
  Box<Integer> x788 = new Box<Integer>((int)0);
  Box<Integer> x789 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x788, x789, (x787).get(), (x728).get(), (x764).get());
  Box<Integer> x790 = new Box<Integer>((int)0);
  Box<Integer> x791 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x790, x791, (x789).get(), ((x729).get() + (x705).get()), ((x765).get() + (x731).get()));
  Box<Integer> x792 = new Box<Integer>((int)0);
  Box<Integer> x793 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x792, x793, 0x0, (x768).get(), (arg1[10]));
  Box<Integer> x794 = new Box<Integer>((int)0);
  Box<Integer> x795 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x794, x795, (x793).get(), (x770).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x796 = new Box<Integer>((int)0);
  Box<Integer> x797 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x796, x797, (x795).get(), (x772).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x798 = new Box<Integer>((int)0);
  Box<Integer> x799 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x798, x799, (x797).get(), (x774).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x800 = new Box<Integer>((int)0);
  Box<Integer> x801 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x800, x801, (x799).get(), (x776).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x802 = new Box<Integer>((int)0);
  Box<Integer> x803 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x802, x803, (x801).get(), (x778).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x804 = new Box<Integer>((int)0);
  Box<Integer> x805 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x804, x805, (x803).get(), (x780).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x806 = new Box<Integer>((int)0);
  Box<Integer> x807 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x806, x807, (x805).get(), (x782).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x808 = new Box<Integer>((int)0);
  Box<Integer> x809 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x808, x809, (x807).get(), (x784).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x810 = new Box<Integer>((int)0);
  Box<Integer> x811 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x810, x811, (x809).get(), (x786).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x812 = new Box<Integer>((int)0);
  Box<Integer> x813 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x812, x813, (x811).get(), (x788).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x814 = new Box<Integer>((int)0);
  Box<Integer> x815 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x814, x815, (x813).get(), (x790).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x816 = new Box<Integer>((int)0);
  Box<Integer> x817 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x816, x817, (x792).get(), 0xffffffff);
  Box<Integer> x818 = new Box<Integer>((int)0);
  Box<Integer> x819 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x818, x819, (x792).get(), 0xffffffff);
  Box<Integer> x820 = new Box<Integer>((int)0);
  Box<Integer> x821 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x820, x821, (x792).get(), 0xffffffff);
  Box<Integer> x822 = new Box<Integer>((int)0);
  Box<Integer> x823 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x822, x823, (x792).get(), 0xffffffff);
  Box<Integer> x824 = new Box<Integer>((int)0);
  Box<Integer> x825 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x824, x825, (x792).get(), 0xffffffff);
  Box<Integer> x826 = new Box<Integer>((int)0);
  Box<Integer> x827 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x826, x827, (x792).get(), 0xffffffff);
  Box<Integer> x828 = new Box<Integer>((int)0);
  Box<Integer> x829 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x828, x829, (x792).get(), 0xffffffff);
  Box<Integer> x830 = new Box<Integer>((int)0);
  Box<Integer> x831 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x830, x831, (x792).get(), 0xfffffffe);
  Box<Integer> x832 = new Box<Integer>((int)0);
  Box<Integer> x833 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x832, x833, (x792).get(), 0xffffffff);
  Box<Integer> x834 = new Box<Integer>((int)0);
  Box<Integer> x835 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x834, x835, (x792).get(), 0xffffffff);
  Box<Integer> x836 = new Box<Integer>((int)0);
  Box<Integer> x837 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x836, x837, 0x0, (x833).get(), (x830).get());
  Box<Integer> x838 = new Box<Integer>((int)0);
  Box<Integer> x839 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x838, x839, (x837).get(), (x831).get(), (x828).get());
  Box<Integer> x840 = new Box<Integer>((int)0);
  Box<Integer> x841 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x840, x841, (x839).get(), (x829).get(), (x826).get());
  Box<Integer> x842 = new Box<Integer>((int)0);
  Box<Integer> x843 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x842, x843, (x841).get(), (x827).get(), (x824).get());
  Box<Integer> x844 = new Box<Integer>((int)0);
  Box<Integer> x845 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x844, x845, (x843).get(), (x825).get(), (x822).get());
  Box<Integer> x846 = new Box<Integer>((int)0);
  Box<Integer> x847 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x846, x847, (x845).get(), (x823).get(), (x820).get());
  Box<Integer> x848 = new Box<Integer>((int)0);
  Box<Integer> x849 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x848, x849, (x847).get(), (x821).get(), (x818).get());
  Box<Integer> x850 = new Box<Integer>((int)0);
  Box<Integer> x851 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x850, x851, (x849).get(), (x819).get(), (x816).get());
  Box<Integer> x852 = new Box<Integer>((int)0);
  Box<Integer> x853 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x852, x853, 0x0, (x792).get(), (x834).get());
  Box<Integer> x854 = new Box<Integer>((int)0);
  Box<Integer> x855 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x854, x855, (x853).get(), (x794).get(), (x835).get());
  Box<Integer> x856 = new Box<Integer>((int)0);
  Box<Integer> x857 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x856, x857, (x855).get(), (x796).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x858 = new Box<Integer>((int)0);
  Box<Integer> x859 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x858, x859, (x857).get(), (x798).get(), (x832).get());
  Box<Integer> x860 = new Box<Integer>((int)0);
  Box<Integer> x861 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x860, x861, (x859).get(), (x800).get(), (x836).get());
  Box<Integer> x862 = new Box<Integer>((int)0);
  Box<Integer> x863 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x862, x863, (x861).get(), (x802).get(), (x838).get());
  Box<Integer> x864 = new Box<Integer>((int)0);
  Box<Integer> x865 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x864, x865, (x863).get(), (x804).get(), (x840).get());
  Box<Integer> x866 = new Box<Integer>((int)0);
  Box<Integer> x867 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x866, x867, (x865).get(), (x806).get(), (x842).get());
  Box<Integer> x868 = new Box<Integer>((int)0);
  Box<Integer> x869 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x868, x869, (x867).get(), (x808).get(), (x844).get());
  Box<Integer> x870 = new Box<Integer>((int)0);
  Box<Integer> x871 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x870, x871, (x869).get(), (x810).get(), (x846).get());
  Box<Integer> x872 = new Box<Integer>((int)0);
  Box<Integer> x873 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x872, x873, (x871).get(), (x812).get(), (x848).get());
  Box<Integer> x874 = new Box<Integer>((int)0);
  Box<Integer> x875 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x874, x875, (x873).get(), (x814).get(), (x850).get());
  Box<Integer> x876 = new Box<Integer>((int)0);
  Box<Integer> x877 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x876, x877, (x875).get(), ((x815).get() + (x791).get()), ((x851).get() + (x817).get()));
  Box<Integer> x878 = new Box<Integer>((int)0);
  Box<Integer> x879 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x878, x879, 0x0, (x854).get(), (arg1[11]));
  Box<Integer> x880 = new Box<Integer>((int)0);
  Box<Integer> x881 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x880, x881, (x879).get(), (x856).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x882 = new Box<Integer>((int)0);
  Box<Integer> x883 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x882, x883, (x881).get(), (x858).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x884 = new Box<Integer>((int)0);
  Box<Integer> x885 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x884, x885, (x883).get(), (x860).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x886 = new Box<Integer>((int)0);
  Box<Integer> x887 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x886, x887, (x885).get(), (x862).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x888 = new Box<Integer>((int)0);
  Box<Integer> x889 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x888, x889, (x887).get(), (x864).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x890 = new Box<Integer>((int)0);
  Box<Integer> x891 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x890, x891, (x889).get(), (x866).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x892 = new Box<Integer>((int)0);
  Box<Integer> x893 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x892, x893, (x891).get(), (x868).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x894 = new Box<Integer>((int)0);
  Box<Integer> x895 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x894, x895, (x893).get(), (x870).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x896 = new Box<Integer>((int)0);
  Box<Integer> x897 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x896, x897, (x895).get(), (x872).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x898 = new Box<Integer>((int)0);
  Box<Integer> x899 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x898, x899, (x897).get(), (x874).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x900 = new Box<Integer>((int)0);
  Box<Integer> x901 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x900, x901, (x899).get(), (x876).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x902 = new Box<Integer>((int)0);
  Box<Integer> x903 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x902, x903, (x878).get(), 0xffffffff);
  Box<Integer> x904 = new Box<Integer>((int)0);
  Box<Integer> x905 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x904, x905, (x878).get(), 0xffffffff);
  Box<Integer> x906 = new Box<Integer>((int)0);
  Box<Integer> x907 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x906, x907, (x878).get(), 0xffffffff);
  Box<Integer> x908 = new Box<Integer>((int)0);
  Box<Integer> x909 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x908, x909, (x878).get(), 0xffffffff);
  Box<Integer> x910 = new Box<Integer>((int)0);
  Box<Integer> x911 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x910, x911, (x878).get(), 0xffffffff);
  Box<Integer> x912 = new Box<Integer>((int)0);
  Box<Integer> x913 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x912, x913, (x878).get(), 0xffffffff);
  Box<Integer> x914 = new Box<Integer>((int)0);
  Box<Integer> x915 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x914, x915, (x878).get(), 0xffffffff);
  Box<Integer> x916 = new Box<Integer>((int)0);
  Box<Integer> x917 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x916, x917, (x878).get(), 0xfffffffe);
  Box<Integer> x918 = new Box<Integer>((int)0);
  Box<Integer> x919 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x918, x919, (x878).get(), 0xffffffff);
  Box<Integer> x920 = new Box<Integer>((int)0);
  Box<Integer> x921 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x920, x921, (x878).get(), 0xffffffff);
  Box<Integer> x922 = new Box<Integer>((int)0);
  Box<Integer> x923 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x922, x923, 0x0, (x919).get(), (x916).get());
  Box<Integer> x924 = new Box<Integer>((int)0);
  Box<Integer> x925 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x924, x925, (x923).get(), (x917).get(), (x914).get());
  Box<Integer> x926 = new Box<Integer>((int)0);
  Box<Integer> x927 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x926, x927, (x925).get(), (x915).get(), (x912).get());
  Box<Integer> x928 = new Box<Integer>((int)0);
  Box<Integer> x929 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x928, x929, (x927).get(), (x913).get(), (x910).get());
  Box<Integer> x930 = new Box<Integer>((int)0);
  Box<Integer> x931 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x930, x931, (x929).get(), (x911).get(), (x908).get());
  Box<Integer> x932 = new Box<Integer>((int)0);
  Box<Integer> x933 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x932, x933, (x931).get(), (x909).get(), (x906).get());
  Box<Integer> x934 = new Box<Integer>((int)0);
  Box<Integer> x935 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x934, x935, (x933).get(), (x907).get(), (x904).get());
  Box<Integer> x936 = new Box<Integer>((int)0);
  Box<Integer> x937 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x936, x937, (x935).get(), (x905).get(), (x902).get());
  Box<Integer> x938 = new Box<Integer>((int)0);
  Box<Integer> x939 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x938, x939, 0x0, (x878).get(), (x920).get());
  Box<Integer> x940 = new Box<Integer>((int)0);
  Box<Integer> x941 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x940, x941, (x939).get(), (x880).get(), (x921).get());
  Box<Integer> x942 = new Box<Integer>((int)0);
  Box<Integer> x943 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x942, x943, (x941).get(), (x882).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x944 = new Box<Integer>((int)0);
  Box<Integer> x945 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x944, x945, (x943).get(), (x884).get(), (x918).get());
  Box<Integer> x946 = new Box<Integer>((int)0);
  Box<Integer> x947 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x946, x947, (x945).get(), (x886).get(), (x922).get());
  Box<Integer> x948 = new Box<Integer>((int)0);
  Box<Integer> x949 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x948, x949, (x947).get(), (x888).get(), (x924).get());
  Box<Integer> x950 = new Box<Integer>((int)0);
  Box<Integer> x951 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x950, x951, (x949).get(), (x890).get(), (x926).get());
  Box<Integer> x952 = new Box<Integer>((int)0);
  Box<Integer> x953 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x952, x953, (x951).get(), (x892).get(), (x928).get());
  Box<Integer> x954 = new Box<Integer>((int)0);
  Box<Integer> x955 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x954, x955, (x953).get(), (x894).get(), (x930).get());
  Box<Integer> x956 = new Box<Integer>((int)0);
  Box<Integer> x957 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x956, x957, (x955).get(), (x896).get(), (x932).get());
  Box<Integer> x958 = new Box<Integer>((int)0);
  Box<Integer> x959 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x958, x959, (x957).get(), (x898).get(), (x934).get());
  Box<Integer> x960 = new Box<Integer>((int)0);
  Box<Integer> x961 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x960, x961, (x959).get(), (x900).get(), (x936).get());
  Box<Integer> x962 = new Box<Integer>((int)0);
  Box<Integer> x963 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x962, x963, (x961).get(), ((x901).get() + (x877).get()), ((x937).get() + (x903).get()));
  Box<Integer> x964 = new Box<Integer>((int)0);
  Box<Integer> x965 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x964, x965, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x940).get(), 0xffffffff);
  Box<Integer> x966 = new Box<Integer>((int)0);
  Box<Integer> x967 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x966, x967, (x965).get(), (x942).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x968 = new Box<Integer>((int)0);
  Box<Integer> x969 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x968, x969, (x967).get(), (x944).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x970 = new Box<Integer>((int)0);
  Box<Integer> x971 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x970, x971, (x969).get(), (x946).get(), 0xffffffff);
  Box<Integer> x972 = new Box<Integer>((int)0);
  Box<Integer> x973 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x972, x973, (x971).get(), (x948).get(), 0xfffffffe);
  Box<Integer> x974 = new Box<Integer>((int)0);
  Box<Integer> x975 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x974, x975, (x973).get(), (x950).get(), 0xffffffff);
  Box<Integer> x976 = new Box<Integer>((int)0);
  Box<Integer> x977 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x976, x977, (x975).get(), (x952).get(), 0xffffffff);
  Box<Integer> x978 = new Box<Integer>((int)0);
  Box<Integer> x979 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x978, x979, (x977).get(), (x954).get(), 0xffffffff);
  Box<Integer> x980 = new Box<Integer>((int)0);
  Box<Integer> x981 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x980, x981, (x979).get(), (x956).get(), 0xffffffff);
  Box<Integer> x982 = new Box<Integer>((int)0);
  Box<Integer> x983 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x982, x983, (x981).get(), (x958).get(), 0xffffffff);
  Box<Integer> x984 = new Box<Integer>((int)0);
  Box<Integer> x985 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x984, x985, (x983).get(), (x960).get(), 0xffffffff);
  Box<Integer> x986 = new Box<Integer>((int)0);
  Box<Integer> x987 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x986, x987, (x985).get(), (x962).get(), 0xffffffff);
  Box<Integer> x988 = new Box<Integer>((int)0);
  Box<Integer> x989 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x988, x989, (x987).get(), (x963).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x990 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x990, (x989).get(), (x964).get(), (x940).get());
  Box<Integer> x991 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x991, (x989).get(), (x966).get(), (x942).get());
  Box<Integer> x992 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x992, (x989).get(), (x968).get(), (x944).get());
  Box<Integer> x993 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x993, (x989).get(), (x970).get(), (x946).get());
  Box<Integer> x994 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x994, (x989).get(), (x972).get(), (x948).get());
  Box<Integer> x995 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x995, (x989).get(), (x974).get(), (x950).get());
  Box<Integer> x996 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x996, (x989).get(), (x976).get(), (x952).get());
  Box<Integer> x997 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x997, (x989).get(), (x978).get(), (x954).get());
  Box<Integer> x998 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x998, (x989).get(), (x980).get(), (x956).get());
  Box<Integer> x999 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x999, (x989).get(), (x982).get(), (x958).get());
  Box<Integer> x1000 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1000, (x989).get(), (x984).get(), (x960).get());
  Box<Integer> x1001 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1001, (x989).get(), (x986).get(), (x962).get());
  out1[0] = (x990).get();
  out1[1] = (x991).get();
  out1[2] = (x992).get();
  out1[3] = (x993).get();
  out1[4] = (x994).get();
  out1[5] = (x995).get();
  out1[6] = (x996).get();
  out1[7] = (x997).get();
  out1[8] = (x998).get();
  out1[9] = (x999).get();
  out1[10] = (x1000).get();
  out1[11] = (x1001).get();
}

/**
 * The function fiat_P384_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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_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[8]);
  int x9 = (arg1[9]);
  int x10 = (arg1[10]);
  int x11 = (arg1[11]);
  int x12 = (arg1[0]);
  Box<Integer> x13 = new Box<Integer>((int)0);
  Box<Integer> x14 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x13, x14, x12, 0x2);
  Box<Integer> x15 = new Box<Integer>((int)0);
  Box<Integer> x16 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x15, x16, x12, 0xfffffffe);
  Box<Integer> x17 = new Box<Integer>((int)0);
  Box<Integer> x18 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x17, x18, x12, 0x2);
  Box<Integer> x19 = new Box<Integer>((int)0);
  Box<Integer> x20 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x19, x20, x12, 0xfffffffe);
  Box<Integer> x21 = new Box<Integer>((int)0);
  Box<Integer> x22 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x21, x22, 0x0, (x14).get(), x12);
  Box<Integer> x23 = new Box<Integer>((int)0);
  Box<Integer> x24 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x23, x24, x12, 0xffffffff);
  Box<Integer> x25 = new Box<Integer>((int)0);
  Box<Integer> x26 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x25, x26, x12, 0xffffffff);
  Box<Integer> x27 = new Box<Integer>((int)0);
  Box<Integer> x28 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x27, x28, x12, 0xffffffff);
  Box<Integer> x29 = new Box<Integer>((int)0);
  Box<Integer> x30 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x29, x30, x12, 0xffffffff);
  Box<Integer> x31 = new Box<Integer>((int)0);
  Box<Integer> x32 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x31, x32, x12, 0xffffffff);
  Box<Integer> x33 = new Box<Integer>((int)0);
  Box<Integer> x34 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x33, x34, x12, 0xffffffff);
  Box<Integer> x35 = new Box<Integer>((int)0);
  Box<Integer> x36 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x35, x36, x12, 0xffffffff);
  Box<Integer> x37 = new Box<Integer>((int)0);
  Box<Integer> x38 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x37, x38, x12, 0xfffffffe);
  Box<Integer> x39 = new Box<Integer>((int)0);
  Box<Integer> x40 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x39, x40, x12, 0xffffffff);
  Box<Integer> x41 = new Box<Integer>((int)0);
  Box<Integer> x42 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x41, x42, x12, 0xffffffff);
  Box<Integer> x43 = new Box<Integer>((int)0);
  Box<Integer> x44 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x43, x44, 0x0, (x40).get(), (x37).get());
  Box<Integer> x45 = new Box<Integer>((int)0);
  Box<Integer> x46 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x45, x46, (x44).get(), (x38).get(), (x35).get());
  Box<Integer> x47 = new Box<Integer>((int)0);
  Box<Integer> x48 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x47, x48, (x46).get(), (x36).get(), (x33).get());
  Box<Integer> x49 = new Box<Integer>((int)0);
  Box<Integer> x50 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x49, x50, (x48).get(), (x34).get(), (x31).get());
  Box<Integer> x51 = new Box<Integer>((int)0);
  Box<Integer> x52 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x51, x52, (x50).get(), (x32).get(), (x29).get());
  Box<Integer> x53 = new Box<Integer>((int)0);
  Box<Integer> x54 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x53, x54, (x52).get(), (x30).get(), (x27).get());
  Box<Integer> x55 = new Box<Integer>((int)0);
  Box<Integer> x56 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x55, x56, (x54).get(), (x28).get(), (x25).get());
  Box<Integer> x57 = new Box<Integer>((int)0);
  Box<Integer> x58 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x57, x58, (x56).get(), (x26).get(), (x23).get());
  Box<Integer> x59 = new Box<Integer>((int)0);
  Box<Integer> x60 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x59, x60, 0x0, x12, (x41).get());
  Box<Integer> x61 = new Box<Integer>((int)0);
  Box<Integer> x62 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x61, x62, (x60).get(), (x19).get(), (x42).get());
  Box<Integer> x63 = new Box<Integer>((int)0);
  Box<Integer> x64 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x63, x64, 0x0, (x17).get(), (x39).get());
  Box<Integer> x65 = new Box<Integer>((int)0);
  Box<Integer> x66 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x65, x66, (x64).get(), (x18).get(), (x43).get());
  Box<Integer> x67 = new Box<Integer>((int)0);
  Box<Integer> x68 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x67, x68, (x66).get(), (x15).get(), (x45).get());
  Box<Integer> x69 = new Box<Integer>((int)0);
  Box<Integer> x70 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x69, x70, (x68).get(), (x16).get(), (x47).get());
  Box<Integer> x71 = new Box<Integer>((int)0);
  Box<Integer> x72 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x71, x72, (x70).get(), (x13).get(), (x49).get());
  Box<Integer> x73 = new Box<Integer>((int)0);
  Box<Integer> x74 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x73, x74, (x72).get(), (x21).get(), (x51).get());
  Box<Integer> x75 = new Box<Integer>((int)0);
  Box<Integer> x76 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x75, x76, (x74).get(), (x22).get(), (x53).get());
  Box<Integer> x77 = new Box<Integer>((int)0);
  Box<Integer> x78 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x77, x78, (x76).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x55).get());
  Box<Integer> x79 = new Box<Integer>((int)0);
  Box<Integer> x80 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x79, x80, (x78).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x57).get());
  Box<Integer> x81 = new Box<Integer>((int)0);
  Box<Integer> x82 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x81, x82, (x80).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), ((x58).get() + (x24).get()));
  Box<Integer> x83 = new Box<Integer>((int)0);
  Box<Integer> x84 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x83, x84, x1, 0x2);
  Box<Integer> x85 = new Box<Integer>((int)0);
  Box<Integer> x86 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x85, x86, x1, 0xfffffffe);
  Box<Integer> x87 = new Box<Integer>((int)0);
  Box<Integer> x88 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x87, x88, x1, 0x2);
  Box<Integer> x89 = new Box<Integer>((int)0);
  Box<Integer> x90 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x89, x90, x1, 0xfffffffe);
  Box<Integer> x91 = new Box<Integer>((int)0);
  Box<Integer> x92 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x91, x92, 0x0, (x84).get(), x1);
  Box<Integer> x93 = new Box<Integer>((int)0);
  Box<Integer> x94 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x93, x94, 0x0, (x61).get(), x1);
  Box<Integer> x95 = new Box<Integer>((int)0);
  Box<Integer> x96 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x95, x96, (x94).get(), ((x62).get() + (x20).get()), (x89).get());
  Box<Integer> x97 = new Box<Integer>((int)0);
  Box<Integer> x98 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x97, x98, (x96).get(), (x63).get(), (x90).get());
  Box<Integer> x99 = new Box<Integer>((int)0);
  Box<Integer> x100 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x99, x100, (x98).get(), (x65).get(), (x87).get());
  Box<Integer> x101 = new Box<Integer>((int)0);
  Box<Integer> x102 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x101, x102, (x100).get(), (x67).get(), (x88).get());
  Box<Integer> x103 = new Box<Integer>((int)0);
  Box<Integer> x104 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x103, x104, (x102).get(), (x69).get(), (x85).get());
  Box<Integer> x105 = new Box<Integer>((int)0);
  Box<Integer> x106 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x105, x106, (x104).get(), (x71).get(), (x86).get());
  Box<Integer> x107 = new Box<Integer>((int)0);
  Box<Integer> x108 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x107, x108, (x106).get(), (x73).get(), (x83).get());
  Box<Integer> x109 = new Box<Integer>((int)0);
  Box<Integer> x110 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x109, x110, (x108).get(), (x75).get(), (x91).get());
  Box<Integer> x111 = new Box<Integer>((int)0);
  Box<Integer> x112 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x111, x112, (x110).get(), (x77).get(), (x92).get());
  Box<Integer> x113 = new Box<Integer>((int)0);
  Box<Integer> x114 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x113, x114, (x112).get(), (x79).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x115 = new Box<Integer>((int)0);
  Box<Integer> x116 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x115, x116, (x114).get(), (x81).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x117 = new Box<Integer>((int)0);
  Box<Integer> x118 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x117, x118, (x93).get(), 0xffffffff);
  Box<Integer> x119 = new Box<Integer>((int)0);
  Box<Integer> x120 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x119, x120, (x93).get(), 0xffffffff);
  Box<Integer> x121 = new Box<Integer>((int)0);
  Box<Integer> x122 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x121, x122, (x93).get(), 0xffffffff);
  Box<Integer> x123 = new Box<Integer>((int)0);
  Box<Integer> x124 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x123, x124, (x93).get(), 0xffffffff);
  Box<Integer> x125 = new Box<Integer>((int)0);
  Box<Integer> x126 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x125, x126, (x93).get(), 0xffffffff);
  Box<Integer> x127 = new Box<Integer>((int)0);
  Box<Integer> x128 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x127, x128, (x93).get(), 0xffffffff);
  Box<Integer> x129 = new Box<Integer>((int)0);
  Box<Integer> x130 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x129, x130, (x93).get(), 0xffffffff);
  Box<Integer> x131 = new Box<Integer>((int)0);
  Box<Integer> x132 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x131, x132, (x93).get(), 0xfffffffe);
  Box<Integer> x133 = new Box<Integer>((int)0);
  Box<Integer> x134 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x133, x134, (x93).get(), 0xffffffff);
  Box<Integer> x135 = new Box<Integer>((int)0);
  Box<Integer> x136 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x135, x136, (x93).get(), 0xffffffff);
  Box<Integer> x137 = new Box<Integer>((int)0);
  Box<Integer> x138 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x137, x138, 0x0, (x134).get(), (x131).get());
  Box<Integer> x139 = new Box<Integer>((int)0);
  Box<Integer> x140 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x139, x140, (x138).get(), (x132).get(), (x129).get());
  Box<Integer> x141 = new Box<Integer>((int)0);
  Box<Integer> x142 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x141, x142, (x140).get(), (x130).get(), (x127).get());
  Box<Integer> x143 = new Box<Integer>((int)0);
  Box<Integer> x144 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x143, x144, (x142).get(), (x128).get(), (x125).get());
  Box<Integer> x145 = new Box<Integer>((int)0);
  Box<Integer> x146 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x145, x146, (x144).get(), (x126).get(), (x123).get());
  Box<Integer> x147 = new Box<Integer>((int)0);
  Box<Integer> x148 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x147, x148, (x146).get(), (x124).get(), (x121).get());
  Box<Integer> x149 = new Box<Integer>((int)0);
  Box<Integer> x150 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x149, x150, (x148).get(), (x122).get(), (x119).get());
  Box<Integer> x151 = new Box<Integer>((int)0);
  Box<Integer> x152 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x151, x152, (x150).get(), (x120).get(), (x117).get());
  Box<Integer> x153 = new Box<Integer>((int)0);
  Box<Integer> x154 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x153, x154, 0x0, (x93).get(), (x135).get());
  Box<Integer> x155 = new Box<Integer>((int)0);
  Box<Integer> x156 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x155, x156, (x154).get(), (x95).get(), (x136).get());
  Box<Integer> x157 = new Box<Integer>((int)0);
  Box<Integer> x158 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x157, x158, (x156).get(), (x97).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x159 = new Box<Integer>((int)0);
  Box<Integer> x160 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x159, x160, (x158).get(), (x99).get(), (x133).get());
  Box<Integer> x161 = new Box<Integer>((int)0);
  Box<Integer> x162 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x161, x162, (x160).get(), (x101).get(), (x137).get());
  Box<Integer> x163 = new Box<Integer>((int)0);
  Box<Integer> x164 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x163, x164, (x162).get(), (x103).get(), (x139).get());
  Box<Integer> x165 = new Box<Integer>((int)0);
  Box<Integer> x166 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x165, x166, (x164).get(), (x105).get(), (x141).get());
  Box<Integer> x167 = new Box<Integer>((int)0);
  Box<Integer> x168 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x167, x168, (x166).get(), (x107).get(), (x143).get());
  Box<Integer> x169 = new Box<Integer>((int)0);
  Box<Integer> x170 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x169, x170, (x168).get(), (x109).get(), (x145).get());
  Box<Integer> x171 = new Box<Integer>((int)0);
  Box<Integer> x172 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x171, x172, (x170).get(), (x111).get(), (x147).get());
  Box<Integer> x173 = new Box<Integer>((int)0);
  Box<Integer> x174 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x173, x174, (x172).get(), (x113).get(), (x149).get());
  Box<Integer> x175 = new Box<Integer>((int)0);
  Box<Integer> x176 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x175, x176, (x174).get(), (x115).get(), (x151).get());
  Box<Integer> x177 = new Box<Integer>((int)0);
  Box<Integer> x178 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x177, x178, (x176).get(), ((x116).get() + (x82).get()), ((x152).get() + (x118).get()));
  Box<Integer> x179 = new Box<Integer>((int)0);
  Box<Integer> x180 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x179, x180, x2, 0x2);
  Box<Integer> x181 = new Box<Integer>((int)0);
  Box<Integer> x182 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x181, x182, x2, 0xfffffffe);
  Box<Integer> x183 = new Box<Integer>((int)0);
  Box<Integer> x184 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x183, x184, x2, 0x2);
  Box<Integer> x185 = new Box<Integer>((int)0);
  Box<Integer> x186 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x185, x186, x2, 0xfffffffe);
  Box<Integer> x187 = new Box<Integer>((int)0);
  Box<Integer> x188 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x187, x188, 0x0, (x180).get(), x2);
  Box<Integer> x189 = new Box<Integer>((int)0);
  Box<Integer> x190 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x189, x190, 0x0, (x155).get(), x2);
  Box<Integer> x191 = new Box<Integer>((int)0);
  Box<Integer> x192 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x191, x192, (x190).get(), (x157).get(), (x185).get());
  Box<Integer> x193 = new Box<Integer>((int)0);
  Box<Integer> x194 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x193, x194, (x192).get(), (x159).get(), (x186).get());
  Box<Integer> x195 = new Box<Integer>((int)0);
  Box<Integer> x196 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x195, x196, (x194).get(), (x161).get(), (x183).get());
  Box<Integer> x197 = new Box<Integer>((int)0);
  Box<Integer> x198 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x197, x198, (x196).get(), (x163).get(), (x184).get());
  Box<Integer> x199 = new Box<Integer>((int)0);
  Box<Integer> x200 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x199, x200, (x198).get(), (x165).get(), (x181).get());
  Box<Integer> x201 = new Box<Integer>((int)0);
  Box<Integer> x202 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x201, x202, (x200).get(), (x167).get(), (x182).get());
  Box<Integer> x203 = new Box<Integer>((int)0);
  Box<Integer> x204 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x203, x204, (x202).get(), (x169).get(), (x179).get());
  Box<Integer> x205 = new Box<Integer>((int)0);
  Box<Integer> x206 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x205, x206, (x204).get(), (x171).get(), (x187).get());
  Box<Integer> x207 = new Box<Integer>((int)0);
  Box<Integer> x208 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x207, x208, (x206).get(), (x173).get(), (x188).get());
  Box<Integer> x209 = new Box<Integer>((int)0);
  Box<Integer> x210 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x209, x210, (x208).get(), (x175).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x211 = new Box<Integer>((int)0);
  Box<Integer> x212 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x211, x212, (x210).get(), (x177).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x213 = new Box<Integer>((int)0);
  Box<Integer> x214 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x213, x214, (x189).get(), 0xffffffff);
  Box<Integer> x215 = new Box<Integer>((int)0);
  Box<Integer> x216 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x215, x216, (x189).get(), 0xffffffff);
  Box<Integer> x217 = new Box<Integer>((int)0);
  Box<Integer> x218 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x217, x218, (x189).get(), 0xffffffff);
  Box<Integer> x219 = new Box<Integer>((int)0);
  Box<Integer> x220 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x219, x220, (x189).get(), 0xffffffff);
  Box<Integer> x221 = new Box<Integer>((int)0);
  Box<Integer> x222 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x221, x222, (x189).get(), 0xffffffff);
  Box<Integer> x223 = new Box<Integer>((int)0);
  Box<Integer> x224 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x223, x224, (x189).get(), 0xffffffff);
  Box<Integer> x225 = new Box<Integer>((int)0);
  Box<Integer> x226 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x225, x226, (x189).get(), 0xffffffff);
  Box<Integer> x227 = new Box<Integer>((int)0);
  Box<Integer> x228 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x227, x228, (x189).get(), 0xfffffffe);
  Box<Integer> x229 = new Box<Integer>((int)0);
  Box<Integer> x230 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x229, x230, (x189).get(), 0xffffffff);
  Box<Integer> x231 = new Box<Integer>((int)0);
  Box<Integer> x232 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x231, x232, (x189).get(), 0xffffffff);
  Box<Integer> x233 = new Box<Integer>((int)0);
  Box<Integer> x234 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x233, x234, 0x0, (x230).get(), (x227).get());
  Box<Integer> x235 = new Box<Integer>((int)0);
  Box<Integer> x236 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x235, x236, (x234).get(), (x228).get(), (x225).get());
  Box<Integer> x237 = new Box<Integer>((int)0);
  Box<Integer> x238 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x237, x238, (x236).get(), (x226).get(), (x223).get());
  Box<Integer> x239 = new Box<Integer>((int)0);
  Box<Integer> x240 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x239, x240, (x238).get(), (x224).get(), (x221).get());
  Box<Integer> x241 = new Box<Integer>((int)0);
  Box<Integer> x242 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x241, x242, (x240).get(), (x222).get(), (x219).get());
  Box<Integer> x243 = new Box<Integer>((int)0);
  Box<Integer> x244 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x243, x244, (x242).get(), (x220).get(), (x217).get());
  Box<Integer> x245 = new Box<Integer>((int)0);
  Box<Integer> x246 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x245, x246, (x244).get(), (x218).get(), (x215).get());
  Box<Integer> x247 = new Box<Integer>((int)0);
  Box<Integer> x248 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x247, x248, (x246).get(), (x216).get(), (x213).get());
  Box<Integer> x249 = new Box<Integer>((int)0);
  Box<Integer> x250 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x249, x250, 0x0, (x189).get(), (x231).get());
  Box<Integer> x251 = new Box<Integer>((int)0);
  Box<Integer> x252 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x251, x252, (x250).get(), (x191).get(), (x232).get());
  Box<Integer> x253 = new Box<Integer>((int)0);
  Box<Integer> x254 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x253, x254, (x252).get(), (x193).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x255 = new Box<Integer>((int)0);
  Box<Integer> x256 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x255, x256, (x254).get(), (x195).get(), (x229).get());
  Box<Integer> x257 = new Box<Integer>((int)0);
  Box<Integer> x258 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x257, x258, (x256).get(), (x197).get(), (x233).get());
  Box<Integer> x259 = new Box<Integer>((int)0);
  Box<Integer> x260 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x259, x260, (x258).get(), (x199).get(), (x235).get());
  Box<Integer> x261 = new Box<Integer>((int)0);
  Box<Integer> x262 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x261, x262, (x260).get(), (x201).get(), (x237).get());
  Box<Integer> x263 = new Box<Integer>((int)0);
  Box<Integer> x264 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x263, x264, (x262).get(), (x203).get(), (x239).get());
  Box<Integer> x265 = new Box<Integer>((int)0);
  Box<Integer> x266 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x265, x266, (x264).get(), (x205).get(), (x241).get());
  Box<Integer> x267 = new Box<Integer>((int)0);
  Box<Integer> x268 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x267, x268, (x266).get(), (x207).get(), (x243).get());
  Box<Integer> x269 = new Box<Integer>((int)0);
  Box<Integer> x270 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x269, x270, (x268).get(), (x209).get(), (x245).get());
  Box<Integer> x271 = new Box<Integer>((int)0);
  Box<Integer> x272 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x271, x272, (x270).get(), (x211).get(), (x247).get());
  Box<Integer> x273 = new Box<Integer>((int)0);
  Box<Integer> x274 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x273, x274, (x272).get(), ((x212).get() + (x178).get()), ((x248).get() + (x214).get()));
  Box<Integer> x275 = new Box<Integer>((int)0);
  Box<Integer> x276 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x275, x276, x3, 0x2);
  Box<Integer> x277 = new Box<Integer>((int)0);
  Box<Integer> x278 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x277, x278, x3, 0xfffffffe);
  Box<Integer> x279 = new Box<Integer>((int)0);
  Box<Integer> x280 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x279, x280, x3, 0x2);
  Box<Integer> x281 = new Box<Integer>((int)0);
  Box<Integer> x282 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x281, x282, x3, 0xfffffffe);
  Box<Integer> x283 = new Box<Integer>((int)0);
  Box<Integer> x284 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x283, x284, 0x0, (x276).get(), x3);
  Box<Integer> x285 = new Box<Integer>((int)0);
  Box<Integer> x286 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x285, x286, 0x0, (x251).get(), x3);
  Box<Integer> x287 = new Box<Integer>((int)0);
  Box<Integer> x288 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x287, x288, (x286).get(), (x253).get(), (x281).get());
  Box<Integer> x289 = new Box<Integer>((int)0);
  Box<Integer> x290 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x289, x290, (x288).get(), (x255).get(), (x282).get());
  Box<Integer> x291 = new Box<Integer>((int)0);
  Box<Integer> x292 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x291, x292, (x290).get(), (x257).get(), (x279).get());
  Box<Integer> x293 = new Box<Integer>((int)0);
  Box<Integer> x294 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x293, x294, (x292).get(), (x259).get(), (x280).get());
  Box<Integer> x295 = new Box<Integer>((int)0);
  Box<Integer> x296 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x295, x296, (x294).get(), (x261).get(), (x277).get());
  Box<Integer> x297 = new Box<Integer>((int)0);
  Box<Integer> x298 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x297, x298, (x296).get(), (x263).get(), (x278).get());
  Box<Integer> x299 = new Box<Integer>((int)0);
  Box<Integer> x300 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x299, x300, (x298).get(), (x265).get(), (x275).get());
  Box<Integer> x301 = new Box<Integer>((int)0);
  Box<Integer> x302 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x301, x302, (x300).get(), (x267).get(), (x283).get());
  Box<Integer> x303 = new Box<Integer>((int)0);
  Box<Integer> x304 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x303, x304, (x302).get(), (x269).get(), (x284).get());
  Box<Integer> x305 = new Box<Integer>((int)0);
  Box<Integer> x306 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x305, x306, (x304).get(), (x271).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x307 = new Box<Integer>((int)0);
  Box<Integer> x308 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x307, x308, (x306).get(), (x273).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x309 = new Box<Integer>((int)0);
  Box<Integer> x310 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x309, x310, (x285).get(), 0xffffffff);
  Box<Integer> x311 = new Box<Integer>((int)0);
  Box<Integer> x312 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x311, x312, (x285).get(), 0xffffffff);
  Box<Integer> x313 = new Box<Integer>((int)0);
  Box<Integer> x314 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x313, x314, (x285).get(), 0xffffffff);
  Box<Integer> x315 = new Box<Integer>((int)0);
  Box<Integer> x316 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x315, x316, (x285).get(), 0xffffffff);
  Box<Integer> x317 = new Box<Integer>((int)0);
  Box<Integer> x318 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x317, x318, (x285).get(), 0xffffffff);
  Box<Integer> x319 = new Box<Integer>((int)0);
  Box<Integer> x320 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x319, x320, (x285).get(), 0xffffffff);
  Box<Integer> x321 = new Box<Integer>((int)0);
  Box<Integer> x322 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x321, x322, (x285).get(), 0xffffffff);
  Box<Integer> x323 = new Box<Integer>((int)0);
  Box<Integer> x324 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x323, x324, (x285).get(), 0xfffffffe);
  Box<Integer> x325 = new Box<Integer>((int)0);
  Box<Integer> x326 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x325, x326, (x285).get(), 0xffffffff);
  Box<Integer> x327 = new Box<Integer>((int)0);
  Box<Integer> x328 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x327, x328, (x285).get(), 0xffffffff);
  Box<Integer> x329 = new Box<Integer>((int)0);
  Box<Integer> x330 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x329, x330, 0x0, (x326).get(), (x323).get());
  Box<Integer> x331 = new Box<Integer>((int)0);
  Box<Integer> x332 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x331, x332, (x330).get(), (x324).get(), (x321).get());
  Box<Integer> x333 = new Box<Integer>((int)0);
  Box<Integer> x334 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x333, x334, (x332).get(), (x322).get(), (x319).get());
  Box<Integer> x335 = new Box<Integer>((int)0);
  Box<Integer> x336 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x335, x336, (x334).get(), (x320).get(), (x317).get());
  Box<Integer> x337 = new Box<Integer>((int)0);
  Box<Integer> x338 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x337, x338, (x336).get(), (x318).get(), (x315).get());
  Box<Integer> x339 = new Box<Integer>((int)0);
  Box<Integer> x340 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x339, x340, (x338).get(), (x316).get(), (x313).get());
  Box<Integer> x341 = new Box<Integer>((int)0);
  Box<Integer> x342 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x341, x342, (x340).get(), (x314).get(), (x311).get());
  Box<Integer> x343 = new Box<Integer>((int)0);
  Box<Integer> x344 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x343, x344, (x342).get(), (x312).get(), (x309).get());
  Box<Integer> x345 = new Box<Integer>((int)0);
  Box<Integer> x346 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x345, x346, 0x0, (x285).get(), (x327).get());
  Box<Integer> x347 = new Box<Integer>((int)0);
  Box<Integer> x348 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x347, x348, (x346).get(), (x287).get(), (x328).get());
  Box<Integer> x349 = new Box<Integer>((int)0);
  Box<Integer> x350 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x349, x350, (x348).get(), (x289).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x351 = new Box<Integer>((int)0);
  Box<Integer> x352 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x351, x352, (x350).get(), (x291).get(), (x325).get());
  Box<Integer> x353 = new Box<Integer>((int)0);
  Box<Integer> x354 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x353, x354, (x352).get(), (x293).get(), (x329).get());
  Box<Integer> x355 = new Box<Integer>((int)0);
  Box<Integer> x356 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x355, x356, (x354).get(), (x295).get(), (x331).get());
  Box<Integer> x357 = new Box<Integer>((int)0);
  Box<Integer> x358 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x357, x358, (x356).get(), (x297).get(), (x333).get());
  Box<Integer> x359 = new Box<Integer>((int)0);
  Box<Integer> x360 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x359, x360, (x358).get(), (x299).get(), (x335).get());
  Box<Integer> x361 = new Box<Integer>((int)0);
  Box<Integer> x362 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x361, x362, (x360).get(), (x301).get(), (x337).get());
  Box<Integer> x363 = new Box<Integer>((int)0);
  Box<Integer> x364 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x363, x364, (x362).get(), (x303).get(), (x339).get());
  Box<Integer> x365 = new Box<Integer>((int)0);
  Box<Integer> x366 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x365, x366, (x364).get(), (x305).get(), (x341).get());
  Box<Integer> x367 = new Box<Integer>((int)0);
  Box<Integer> x368 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x367, x368, (x366).get(), (x307).get(), (x343).get());
  Box<Integer> x369 = new Box<Integer>((int)0);
  Box<Integer> x370 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x369, x370, (x368).get(), ((x308).get() + (x274).get()), ((x344).get() + (x310).get()));
  Box<Integer> x371 = new Box<Integer>((int)0);
  Box<Integer> x372 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x371, x372, x4, 0x2);
  Box<Integer> x373 = new Box<Integer>((int)0);
  Box<Integer> x374 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x373, x374, x4, 0xfffffffe);
  Box<Integer> x375 = new Box<Integer>((int)0);
  Box<Integer> x376 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x375, x376, x4, 0x2);
  Box<Integer> x377 = new Box<Integer>((int)0);
  Box<Integer> x378 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x377, x378, x4, 0xfffffffe);
  Box<Integer> x379 = new Box<Integer>((int)0);
  Box<Integer> x380 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x379, x380, 0x0, (x372).get(), x4);
  Box<Integer> x381 = new Box<Integer>((int)0);
  Box<Integer> x382 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x381, x382, 0x0, (x347).get(), x4);
  Box<Integer> x383 = new Box<Integer>((int)0);
  Box<Integer> x384 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x383, x384, (x382).get(), (x349).get(), (x377).get());
  Box<Integer> x385 = new Box<Integer>((int)0);
  Box<Integer> x386 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x385, x386, (x384).get(), (x351).get(), (x378).get());
  Box<Integer> x387 = new Box<Integer>((int)0);
  Box<Integer> x388 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x387, x388, (x386).get(), (x353).get(), (x375).get());
  Box<Integer> x389 = new Box<Integer>((int)0);
  Box<Integer> x390 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x389, x390, (x388).get(), (x355).get(), (x376).get());
  Box<Integer> x391 = new Box<Integer>((int)0);
  Box<Integer> x392 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x391, x392, (x390).get(), (x357).get(), (x373).get());
  Box<Integer> x393 = new Box<Integer>((int)0);
  Box<Integer> x394 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x393, x394, (x392).get(), (x359).get(), (x374).get());
  Box<Integer> x395 = new Box<Integer>((int)0);
  Box<Integer> x396 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x395, x396, (x394).get(), (x361).get(), (x371).get());
  Box<Integer> x397 = new Box<Integer>((int)0);
  Box<Integer> x398 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x397, x398, (x396).get(), (x363).get(), (x379).get());
  Box<Integer> x399 = new Box<Integer>((int)0);
  Box<Integer> x400 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x399, x400, (x398).get(), (x365).get(), (x380).get());
  Box<Integer> x401 = new Box<Integer>((int)0);
  Box<Integer> x402 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x401, x402, (x400).get(), (x367).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x403 = new Box<Integer>((int)0);
  Box<Integer> x404 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x403, x404, (x402).get(), (x369).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x405 = new Box<Integer>((int)0);
  Box<Integer> x406 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x405, x406, (x381).get(), 0xffffffff);
  Box<Integer> x407 = new Box<Integer>((int)0);
  Box<Integer> x408 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x407, x408, (x381).get(), 0xffffffff);
  Box<Integer> x409 = new Box<Integer>((int)0);
  Box<Integer> x410 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x409, x410, (x381).get(), 0xffffffff);
  Box<Integer> x411 = new Box<Integer>((int)0);
  Box<Integer> x412 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x411, x412, (x381).get(), 0xffffffff);
  Box<Integer> x413 = new Box<Integer>((int)0);
  Box<Integer> x414 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x413, x414, (x381).get(), 0xffffffff);
  Box<Integer> x415 = new Box<Integer>((int)0);
  Box<Integer> x416 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x415, x416, (x381).get(), 0xffffffff);
  Box<Integer> x417 = new Box<Integer>((int)0);
  Box<Integer> x418 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x417, x418, (x381).get(), 0xffffffff);
  Box<Integer> x419 = new Box<Integer>((int)0);
  Box<Integer> x420 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x419, x420, (x381).get(), 0xfffffffe);
  Box<Integer> x421 = new Box<Integer>((int)0);
  Box<Integer> x422 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x421, x422, (x381).get(), 0xffffffff);
  Box<Integer> x423 = new Box<Integer>((int)0);
  Box<Integer> x424 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x423, x424, (x381).get(), 0xffffffff);
  Box<Integer> x425 = new Box<Integer>((int)0);
  Box<Integer> x426 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x425, x426, 0x0, (x422).get(), (x419).get());
  Box<Integer> x427 = new Box<Integer>((int)0);
  Box<Integer> x428 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x427, x428, (x426).get(), (x420).get(), (x417).get());
  Box<Integer> x429 = new Box<Integer>((int)0);
  Box<Integer> x430 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x429, x430, (x428).get(), (x418).get(), (x415).get());
  Box<Integer> x431 = new Box<Integer>((int)0);
  Box<Integer> x432 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x431, x432, (x430).get(), (x416).get(), (x413).get());
  Box<Integer> x433 = new Box<Integer>((int)0);
  Box<Integer> x434 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x433, x434, (x432).get(), (x414).get(), (x411).get());
  Box<Integer> x435 = new Box<Integer>((int)0);
  Box<Integer> x436 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x435, x436, (x434).get(), (x412).get(), (x409).get());
  Box<Integer> x437 = new Box<Integer>((int)0);
  Box<Integer> x438 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x437, x438, (x436).get(), (x410).get(), (x407).get());
  Box<Integer> x439 = new Box<Integer>((int)0);
  Box<Integer> x440 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x439, x440, (x438).get(), (x408).get(), (x405).get());
  Box<Integer> x441 = new Box<Integer>((int)0);
  Box<Integer> x442 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x441, x442, 0x0, (x381).get(), (x423).get());
  Box<Integer> x443 = new Box<Integer>((int)0);
  Box<Integer> x444 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x443, x444, (x442).get(), (x383).get(), (x424).get());
  Box<Integer> x445 = new Box<Integer>((int)0);
  Box<Integer> x446 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x445, x446, (x444).get(), (x385).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x447 = new Box<Integer>((int)0);
  Box<Integer> x448 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x447, x448, (x446).get(), (x387).get(), (x421).get());
  Box<Integer> x449 = new Box<Integer>((int)0);
  Box<Integer> x450 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x449, x450, (x448).get(), (x389).get(), (x425).get());
  Box<Integer> x451 = new Box<Integer>((int)0);
  Box<Integer> x452 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x451, x452, (x450).get(), (x391).get(), (x427).get());
  Box<Integer> x453 = new Box<Integer>((int)0);
  Box<Integer> x454 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x453, x454, (x452).get(), (x393).get(), (x429).get());
  Box<Integer> x455 = new Box<Integer>((int)0);
  Box<Integer> x456 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x455, x456, (x454).get(), (x395).get(), (x431).get());
  Box<Integer> x457 = new Box<Integer>((int)0);
  Box<Integer> x458 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x457, x458, (x456).get(), (x397).get(), (x433).get());
  Box<Integer> x459 = new Box<Integer>((int)0);
  Box<Integer> x460 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x459, x460, (x458).get(), (x399).get(), (x435).get());
  Box<Integer> x461 = new Box<Integer>((int)0);
  Box<Integer> x462 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x461, x462, (x460).get(), (x401).get(), (x437).get());
  Box<Integer> x463 = new Box<Integer>((int)0);
  Box<Integer> x464 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x463, x464, (x462).get(), (x403).get(), (x439).get());
  Box<Integer> x465 = new Box<Integer>((int)0);
  Box<Integer> x466 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x465, x466, (x464).get(), ((x404).get() + (x370).get()), ((x440).get() + (x406).get()));
  Box<Integer> x467 = new Box<Integer>((int)0);
  Box<Integer> x468 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x467, x468, x5, 0x2);
  Box<Integer> x469 = new Box<Integer>((int)0);
  Box<Integer> x470 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x469, x470, x5, 0xfffffffe);
  Box<Integer> x471 = new Box<Integer>((int)0);
  Box<Integer> x472 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x471, x472, x5, 0x2);
  Box<Integer> x473 = new Box<Integer>((int)0);
  Box<Integer> x474 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x473, x474, x5, 0xfffffffe);
  Box<Integer> x475 = new Box<Integer>((int)0);
  Box<Integer> x476 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x475, x476, 0x0, (x468).get(), x5);
  Box<Integer> x477 = new Box<Integer>((int)0);
  Box<Integer> x478 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x477, x478, 0x0, (x443).get(), x5);
  Box<Integer> x479 = new Box<Integer>((int)0);
  Box<Integer> x480 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x479, x480, (x478).get(), (x445).get(), (x473).get());
  Box<Integer> x481 = new Box<Integer>((int)0);
  Box<Integer> x482 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x481, x482, (x480).get(), (x447).get(), (x474).get());
  Box<Integer> x483 = new Box<Integer>((int)0);
  Box<Integer> x484 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x483, x484, (x482).get(), (x449).get(), (x471).get());
  Box<Integer> x485 = new Box<Integer>((int)0);
  Box<Integer> x486 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x485, x486, (x484).get(), (x451).get(), (x472).get());
  Box<Integer> x487 = new Box<Integer>((int)0);
  Box<Integer> x488 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x487, x488, (x486).get(), (x453).get(), (x469).get());
  Box<Integer> x489 = new Box<Integer>((int)0);
  Box<Integer> x490 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x489, x490, (x488).get(), (x455).get(), (x470).get());
  Box<Integer> x491 = new Box<Integer>((int)0);
  Box<Integer> x492 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x491, x492, (x490).get(), (x457).get(), (x467).get());
  Box<Integer> x493 = new Box<Integer>((int)0);
  Box<Integer> x494 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x493, x494, (x492).get(), (x459).get(), (x475).get());
  Box<Integer> x495 = new Box<Integer>((int)0);
  Box<Integer> x496 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x495, x496, (x494).get(), (x461).get(), (x476).get());
  Box<Integer> x497 = new Box<Integer>((int)0);
  Box<Integer> x498 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x497, x498, (x496).get(), (x463).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x499 = new Box<Integer>((int)0);
  Box<Integer> x500 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x499, x500, (x498).get(), (x465).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x501 = new Box<Integer>((int)0);
  Box<Integer> x502 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x501, x502, (x477).get(), 0xffffffff);
  Box<Integer> x503 = new Box<Integer>((int)0);
  Box<Integer> x504 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x503, x504, (x477).get(), 0xffffffff);
  Box<Integer> x505 = new Box<Integer>((int)0);
  Box<Integer> x506 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x505, x506, (x477).get(), 0xffffffff);
  Box<Integer> x507 = new Box<Integer>((int)0);
  Box<Integer> x508 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x507, x508, (x477).get(), 0xffffffff);
  Box<Integer> x509 = new Box<Integer>((int)0);
  Box<Integer> x510 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x509, x510, (x477).get(), 0xffffffff);
  Box<Integer> x511 = new Box<Integer>((int)0);
  Box<Integer> x512 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x511, x512, (x477).get(), 0xffffffff);
  Box<Integer> x513 = new Box<Integer>((int)0);
  Box<Integer> x514 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x513, x514, (x477).get(), 0xffffffff);
  Box<Integer> x515 = new Box<Integer>((int)0);
  Box<Integer> x516 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x515, x516, (x477).get(), 0xfffffffe);
  Box<Integer> x517 = new Box<Integer>((int)0);
  Box<Integer> x518 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x517, x518, (x477).get(), 0xffffffff);
  Box<Integer> x519 = new Box<Integer>((int)0);
  Box<Integer> x520 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x519, x520, (x477).get(), 0xffffffff);
  Box<Integer> x521 = new Box<Integer>((int)0);
  Box<Integer> x522 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x521, x522, 0x0, (x518).get(), (x515).get());
  Box<Integer> x523 = new Box<Integer>((int)0);
  Box<Integer> x524 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x523, x524, (x522).get(), (x516).get(), (x513).get());
  Box<Integer> x525 = new Box<Integer>((int)0);
  Box<Integer> x526 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x525, x526, (x524).get(), (x514).get(), (x511).get());
  Box<Integer> x527 = new Box<Integer>((int)0);
  Box<Integer> x528 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x527, x528, (x526).get(), (x512).get(), (x509).get());
  Box<Integer> x529 = new Box<Integer>((int)0);
  Box<Integer> x530 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x529, x530, (x528).get(), (x510).get(), (x507).get());
  Box<Integer> x531 = new Box<Integer>((int)0);
  Box<Integer> x532 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x531, x532, (x530).get(), (x508).get(), (x505).get());
  Box<Integer> x533 = new Box<Integer>((int)0);
  Box<Integer> x534 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x533, x534, (x532).get(), (x506).get(), (x503).get());
  Box<Integer> x535 = new Box<Integer>((int)0);
  Box<Integer> x536 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x535, x536, (x534).get(), (x504).get(), (x501).get());
  Box<Integer> x537 = new Box<Integer>((int)0);
  Box<Integer> x538 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x537, x538, 0x0, (x477).get(), (x519).get());
  Box<Integer> x539 = new Box<Integer>((int)0);
  Box<Integer> x540 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x539, x540, (x538).get(), (x479).get(), (x520).get());
  Box<Integer> x541 = new Box<Integer>((int)0);
  Box<Integer> x542 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x541, x542, (x540).get(), (x481).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x543 = new Box<Integer>((int)0);
  Box<Integer> x544 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x543, x544, (x542).get(), (x483).get(), (x517).get());
  Box<Integer> x545 = new Box<Integer>((int)0);
  Box<Integer> x546 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x545, x546, (x544).get(), (x485).get(), (x521).get());
  Box<Integer> x547 = new Box<Integer>((int)0);
  Box<Integer> x548 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x547, x548, (x546).get(), (x487).get(), (x523).get());
  Box<Integer> x549 = new Box<Integer>((int)0);
  Box<Integer> x550 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x549, x550, (x548).get(), (x489).get(), (x525).get());
  Box<Integer> x551 = new Box<Integer>((int)0);
  Box<Integer> x552 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x551, x552, (x550).get(), (x491).get(), (x527).get());
  Box<Integer> x553 = new Box<Integer>((int)0);
  Box<Integer> x554 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x553, x554, (x552).get(), (x493).get(), (x529).get());
  Box<Integer> x555 = new Box<Integer>((int)0);
  Box<Integer> x556 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x555, x556, (x554).get(), (x495).get(), (x531).get());
  Box<Integer> x557 = new Box<Integer>((int)0);
  Box<Integer> x558 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x557, x558, (x556).get(), (x497).get(), (x533).get());
  Box<Integer> x559 = new Box<Integer>((int)0);
  Box<Integer> x560 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x559, x560, (x558).get(), (x499).get(), (x535).get());
  Box<Integer> x561 = new Box<Integer>((int)0);
  Box<Integer> x562 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x561, x562, (x560).get(), ((x500).get() + (x466).get()), ((x536).get() + (x502).get()));
  Box<Integer> x563 = new Box<Integer>((int)0);
  Box<Integer> x564 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x563, x564, x6, 0x2);
  Box<Integer> x565 = new Box<Integer>((int)0);
  Box<Integer> x566 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x565, x566, x6, 0xfffffffe);
  Box<Integer> x567 = new Box<Integer>((int)0);
  Box<Integer> x568 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x567, x568, x6, 0x2);
  Box<Integer> x569 = new Box<Integer>((int)0);
  Box<Integer> x570 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x569, x570, x6, 0xfffffffe);
  Box<Integer> x571 = new Box<Integer>((int)0);
  Box<Integer> x572 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x571, x572, 0x0, (x564).get(), x6);
  Box<Integer> x573 = new Box<Integer>((int)0);
  Box<Integer> x574 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x573, x574, 0x0, (x539).get(), x6);
  Box<Integer> x575 = new Box<Integer>((int)0);
  Box<Integer> x576 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x575, x576, (x574).get(), (x541).get(), (x569).get());
  Box<Integer> x577 = new Box<Integer>((int)0);
  Box<Integer> x578 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x577, x578, (x576).get(), (x543).get(), (x570).get());
  Box<Integer> x579 = new Box<Integer>((int)0);
  Box<Integer> x580 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x579, x580, (x578).get(), (x545).get(), (x567).get());
  Box<Integer> x581 = new Box<Integer>((int)0);
  Box<Integer> x582 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x581, x582, (x580).get(), (x547).get(), (x568).get());
  Box<Integer> x583 = new Box<Integer>((int)0);
  Box<Integer> x584 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x583, x584, (x582).get(), (x549).get(), (x565).get());
  Box<Integer> x585 = new Box<Integer>((int)0);
  Box<Integer> x586 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x585, x586, (x584).get(), (x551).get(), (x566).get());
  Box<Integer> x587 = new Box<Integer>((int)0);
  Box<Integer> x588 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x587, x588, (x586).get(), (x553).get(), (x563).get());
  Box<Integer> x589 = new Box<Integer>((int)0);
  Box<Integer> x590 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x589, x590, (x588).get(), (x555).get(), (x571).get());
  Box<Integer> x591 = new Box<Integer>((int)0);
  Box<Integer> x592 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x591, x592, (x590).get(), (x557).get(), (x572).get());
  Box<Integer> x593 = new Box<Integer>((int)0);
  Box<Integer> x594 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x593, x594, (x592).get(), (x559).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x595 = new Box<Integer>((int)0);
  Box<Integer> x596 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x595, x596, (x594).get(), (x561).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x597 = new Box<Integer>((int)0);
  Box<Integer> x598 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x597, x598, (x573).get(), 0xffffffff);
  Box<Integer> x599 = new Box<Integer>((int)0);
  Box<Integer> x600 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x599, x600, (x573).get(), 0xffffffff);
  Box<Integer> x601 = new Box<Integer>((int)0);
  Box<Integer> x602 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x601, x602, (x573).get(), 0xffffffff);
  Box<Integer> x603 = new Box<Integer>((int)0);
  Box<Integer> x604 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x603, x604, (x573).get(), 0xffffffff);
  Box<Integer> x605 = new Box<Integer>((int)0);
  Box<Integer> x606 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x605, x606, (x573).get(), 0xffffffff);
  Box<Integer> x607 = new Box<Integer>((int)0);
  Box<Integer> x608 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x607, x608, (x573).get(), 0xffffffff);
  Box<Integer> x609 = new Box<Integer>((int)0);
  Box<Integer> x610 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x609, x610, (x573).get(), 0xffffffff);
  Box<Integer> x611 = new Box<Integer>((int)0);
  Box<Integer> x612 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x611, x612, (x573).get(), 0xfffffffe);
  Box<Integer> x613 = new Box<Integer>((int)0);
  Box<Integer> x614 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x613, x614, (x573).get(), 0xffffffff);
  Box<Integer> x615 = new Box<Integer>((int)0);
  Box<Integer> x616 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x615, x616, (x573).get(), 0xffffffff);
  Box<Integer> x617 = new Box<Integer>((int)0);
  Box<Integer> x618 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x617, x618, 0x0, (x614).get(), (x611).get());
  Box<Integer> x619 = new Box<Integer>((int)0);
  Box<Integer> x620 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x619, x620, (x618).get(), (x612).get(), (x609).get());
  Box<Integer> x621 = new Box<Integer>((int)0);
  Box<Integer> x622 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x621, x622, (x620).get(), (x610).get(), (x607).get());
  Box<Integer> x623 = new Box<Integer>((int)0);
  Box<Integer> x624 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x623, x624, (x622).get(), (x608).get(), (x605).get());
  Box<Integer> x625 = new Box<Integer>((int)0);
  Box<Integer> x626 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x625, x626, (x624).get(), (x606).get(), (x603).get());
  Box<Integer> x627 = new Box<Integer>((int)0);
  Box<Integer> x628 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x627, x628, (x626).get(), (x604).get(), (x601).get());
  Box<Integer> x629 = new Box<Integer>((int)0);
  Box<Integer> x630 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x629, x630, (x628).get(), (x602).get(), (x599).get());
  Box<Integer> x631 = new Box<Integer>((int)0);
  Box<Integer> x632 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x631, x632, (x630).get(), (x600).get(), (x597).get());
  Box<Integer> x633 = new Box<Integer>((int)0);
  Box<Integer> x634 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x633, x634, 0x0, (x573).get(), (x615).get());
  Box<Integer> x635 = new Box<Integer>((int)0);
  Box<Integer> x636 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x635, x636, (x634).get(), (x575).get(), (x616).get());
  Box<Integer> x637 = new Box<Integer>((int)0);
  Box<Integer> x638 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x637, x638, (x636).get(), (x577).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x639 = new Box<Integer>((int)0);
  Box<Integer> x640 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x639, x640, (x638).get(), (x579).get(), (x613).get());
  Box<Integer> x641 = new Box<Integer>((int)0);
  Box<Integer> x642 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x641, x642, (x640).get(), (x581).get(), (x617).get());
  Box<Integer> x643 = new Box<Integer>((int)0);
  Box<Integer> x644 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x643, x644, (x642).get(), (x583).get(), (x619).get());
  Box<Integer> x645 = new Box<Integer>((int)0);
  Box<Integer> x646 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x645, x646, (x644).get(), (x585).get(), (x621).get());
  Box<Integer> x647 = new Box<Integer>((int)0);
  Box<Integer> x648 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x647, x648, (x646).get(), (x587).get(), (x623).get());
  Box<Integer> x649 = new Box<Integer>((int)0);
  Box<Integer> x650 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x649, x650, (x648).get(), (x589).get(), (x625).get());
  Box<Integer> x651 = new Box<Integer>((int)0);
  Box<Integer> x652 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x651, x652, (x650).get(), (x591).get(), (x627).get());
  Box<Integer> x653 = new Box<Integer>((int)0);
  Box<Integer> x654 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x653, x654, (x652).get(), (x593).get(), (x629).get());
  Box<Integer> x655 = new Box<Integer>((int)0);
  Box<Integer> x656 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x655, x656, (x654).get(), (x595).get(), (x631).get());
  Box<Integer> x657 = new Box<Integer>((int)0);
  Box<Integer> x658 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x657, x658, (x656).get(), ((x596).get() + (x562).get()), ((x632).get() + (x598).get()));
  Box<Integer> x659 = new Box<Integer>((int)0);
  Box<Integer> x660 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x659, x660, x7, 0x2);
  Box<Integer> x661 = new Box<Integer>((int)0);
  Box<Integer> x662 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x661, x662, x7, 0xfffffffe);
  Box<Integer> x663 = new Box<Integer>((int)0);
  Box<Integer> x664 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x663, x664, x7, 0x2);
  Box<Integer> x665 = new Box<Integer>((int)0);
  Box<Integer> x666 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x665, x666, x7, 0xfffffffe);
  Box<Integer> x667 = new Box<Integer>((int)0);
  Box<Integer> x668 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x667, x668, 0x0, (x660).get(), x7);
  Box<Integer> x669 = new Box<Integer>((int)0);
  Box<Integer> x670 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x669, x670, 0x0, (x635).get(), x7);
  Box<Integer> x671 = new Box<Integer>((int)0);
  Box<Integer> x672 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x671, x672, (x670).get(), (x637).get(), (x665).get());
  Box<Integer> x673 = new Box<Integer>((int)0);
  Box<Integer> x674 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x673, x674, (x672).get(), (x639).get(), (x666).get());
  Box<Integer> x675 = new Box<Integer>((int)0);
  Box<Integer> x676 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x675, x676, (x674).get(), (x641).get(), (x663).get());
  Box<Integer> x677 = new Box<Integer>((int)0);
  Box<Integer> x678 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x677, x678, (x676).get(), (x643).get(), (x664).get());
  Box<Integer> x679 = new Box<Integer>((int)0);
  Box<Integer> x680 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x679, x680, (x678).get(), (x645).get(), (x661).get());
  Box<Integer> x681 = new Box<Integer>((int)0);
  Box<Integer> x682 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x681, x682, (x680).get(), (x647).get(), (x662).get());
  Box<Integer> x683 = new Box<Integer>((int)0);
  Box<Integer> x684 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x683, x684, (x682).get(), (x649).get(), (x659).get());
  Box<Integer> x685 = new Box<Integer>((int)0);
  Box<Integer> x686 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x685, x686, (x684).get(), (x651).get(), (x667).get());
  Box<Integer> x687 = new Box<Integer>((int)0);
  Box<Integer> x688 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x687, x688, (x686).get(), (x653).get(), (x668).get());
  Box<Integer> x689 = new Box<Integer>((int)0);
  Box<Integer> x690 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x689, x690, (x688).get(), (x655).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x691 = new Box<Integer>((int)0);
  Box<Integer> x692 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x691, x692, (x690).get(), (x657).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x693 = new Box<Integer>((int)0);
  Box<Integer> x694 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x693, x694, (x669).get(), 0xffffffff);
  Box<Integer> x695 = new Box<Integer>((int)0);
  Box<Integer> x696 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x695, x696, (x669).get(), 0xffffffff);
  Box<Integer> x697 = new Box<Integer>((int)0);
  Box<Integer> x698 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x697, x698, (x669).get(), 0xffffffff);
  Box<Integer> x699 = new Box<Integer>((int)0);
  Box<Integer> x700 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x699, x700, (x669).get(), 0xffffffff);
  Box<Integer> x701 = new Box<Integer>((int)0);
  Box<Integer> x702 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x701, x702, (x669).get(), 0xffffffff);
  Box<Integer> x703 = new Box<Integer>((int)0);
  Box<Integer> x704 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x703, x704, (x669).get(), 0xffffffff);
  Box<Integer> x705 = new Box<Integer>((int)0);
  Box<Integer> x706 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x705, x706, (x669).get(), 0xffffffff);
  Box<Integer> x707 = new Box<Integer>((int)0);
  Box<Integer> x708 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x707, x708, (x669).get(), 0xfffffffe);
  Box<Integer> x709 = new Box<Integer>((int)0);
  Box<Integer> x710 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x709, x710, (x669).get(), 0xffffffff);
  Box<Integer> x711 = new Box<Integer>((int)0);
  Box<Integer> x712 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x711, x712, (x669).get(), 0xffffffff);
  Box<Integer> x713 = new Box<Integer>((int)0);
  Box<Integer> x714 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x713, x714, 0x0, (x710).get(), (x707).get());
  Box<Integer> x715 = new Box<Integer>((int)0);
  Box<Integer> x716 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x715, x716, (x714).get(), (x708).get(), (x705).get());
  Box<Integer> x717 = new Box<Integer>((int)0);
  Box<Integer> x718 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x717, x718, (x716).get(), (x706).get(), (x703).get());
  Box<Integer> x719 = new Box<Integer>((int)0);
  Box<Integer> x720 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x719, x720, (x718).get(), (x704).get(), (x701).get());
  Box<Integer> x721 = new Box<Integer>((int)0);
  Box<Integer> x722 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x721, x722, (x720).get(), (x702).get(), (x699).get());
  Box<Integer> x723 = new Box<Integer>((int)0);
  Box<Integer> x724 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x723, x724, (x722).get(), (x700).get(), (x697).get());
  Box<Integer> x725 = new Box<Integer>((int)0);
  Box<Integer> x726 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x725, x726, (x724).get(), (x698).get(), (x695).get());
  Box<Integer> x727 = new Box<Integer>((int)0);
  Box<Integer> x728 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x727, x728, (x726).get(), (x696).get(), (x693).get());
  Box<Integer> x729 = new Box<Integer>((int)0);
  Box<Integer> x730 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x729, x730, 0x0, (x669).get(), (x711).get());
  Box<Integer> x731 = new Box<Integer>((int)0);
  Box<Integer> x732 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x731, x732, (x730).get(), (x671).get(), (x712).get());
  Box<Integer> x733 = new Box<Integer>((int)0);
  Box<Integer> x734 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x733, x734, (x732).get(), (x673).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x735 = new Box<Integer>((int)0);
  Box<Integer> x736 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x735, x736, (x734).get(), (x675).get(), (x709).get());
  Box<Integer> x737 = new Box<Integer>((int)0);
  Box<Integer> x738 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x737, x738, (x736).get(), (x677).get(), (x713).get());
  Box<Integer> x739 = new Box<Integer>((int)0);
  Box<Integer> x740 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x739, x740, (x738).get(), (x679).get(), (x715).get());
  Box<Integer> x741 = new Box<Integer>((int)0);
  Box<Integer> x742 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x741, x742, (x740).get(), (x681).get(), (x717).get());
  Box<Integer> x743 = new Box<Integer>((int)0);
  Box<Integer> x744 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x743, x744, (x742).get(), (x683).get(), (x719).get());
  Box<Integer> x745 = new Box<Integer>((int)0);
  Box<Integer> x746 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x745, x746, (x744).get(), (x685).get(), (x721).get());
  Box<Integer> x747 = new Box<Integer>((int)0);
  Box<Integer> x748 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x747, x748, (x746).get(), (x687).get(), (x723).get());
  Box<Integer> x749 = new Box<Integer>((int)0);
  Box<Integer> x750 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x749, x750, (x748).get(), (x689).get(), (x725).get());
  Box<Integer> x751 = new Box<Integer>((int)0);
  Box<Integer> x752 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x751, x752, (x750).get(), (x691).get(), (x727).get());
  Box<Integer> x753 = new Box<Integer>((int)0);
  Box<Integer> x754 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x753, x754, (x752).get(), ((x692).get() + (x658).get()), ((x728).get() + (x694).get()));
  Box<Integer> x755 = new Box<Integer>((int)0);
  Box<Integer> x756 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x755, x756, x8, 0x2);
  Box<Integer> x757 = new Box<Integer>((int)0);
  Box<Integer> x758 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x757, x758, x8, 0xfffffffe);
  Box<Integer> x759 = new Box<Integer>((int)0);
  Box<Integer> x760 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x759, x760, x8, 0x2);
  Box<Integer> x761 = new Box<Integer>((int)0);
  Box<Integer> x762 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x761, x762, x8, 0xfffffffe);
  Box<Integer> x763 = new Box<Integer>((int)0);
  Box<Integer> x764 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x763, x764, 0x0, (x756).get(), x8);
  Box<Integer> x765 = new Box<Integer>((int)0);
  Box<Integer> x766 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x765, x766, 0x0, (x731).get(), x8);
  Box<Integer> x767 = new Box<Integer>((int)0);
  Box<Integer> x768 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x767, x768, (x766).get(), (x733).get(), (x761).get());
  Box<Integer> x769 = new Box<Integer>((int)0);
  Box<Integer> x770 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x769, x770, (x768).get(), (x735).get(), (x762).get());
  Box<Integer> x771 = new Box<Integer>((int)0);
  Box<Integer> x772 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x771, x772, (x770).get(), (x737).get(), (x759).get());
  Box<Integer> x773 = new Box<Integer>((int)0);
  Box<Integer> x774 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x773, x774, (x772).get(), (x739).get(), (x760).get());
  Box<Integer> x775 = new Box<Integer>((int)0);
  Box<Integer> x776 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x775, x776, (x774).get(), (x741).get(), (x757).get());
  Box<Integer> x777 = new Box<Integer>((int)0);
  Box<Integer> x778 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x777, x778, (x776).get(), (x743).get(), (x758).get());
  Box<Integer> x779 = new Box<Integer>((int)0);
  Box<Integer> x780 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x779, x780, (x778).get(), (x745).get(), (x755).get());
  Box<Integer> x781 = new Box<Integer>((int)0);
  Box<Integer> x782 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x781, x782, (x780).get(), (x747).get(), (x763).get());
  Box<Integer> x783 = new Box<Integer>((int)0);
  Box<Integer> x784 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x783, x784, (x782).get(), (x749).get(), (x764).get());
  Box<Integer> x785 = new Box<Integer>((int)0);
  Box<Integer> x786 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x785, x786, (x784).get(), (x751).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x787 = new Box<Integer>((int)0);
  Box<Integer> x788 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x787, x788, (x786).get(), (x753).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x789 = new Box<Integer>((int)0);
  Box<Integer> x790 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x789, x790, (x765).get(), 0xffffffff);
  Box<Integer> x791 = new Box<Integer>((int)0);
  Box<Integer> x792 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x791, x792, (x765).get(), 0xffffffff);
  Box<Integer> x793 = new Box<Integer>((int)0);
  Box<Integer> x794 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x793, x794, (x765).get(), 0xffffffff);
  Box<Integer> x795 = new Box<Integer>((int)0);
  Box<Integer> x796 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x795, x796, (x765).get(), 0xffffffff);
  Box<Integer> x797 = new Box<Integer>((int)0);
  Box<Integer> x798 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x797, x798, (x765).get(), 0xffffffff);
  Box<Integer> x799 = new Box<Integer>((int)0);
  Box<Integer> x800 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x799, x800, (x765).get(), 0xffffffff);
  Box<Integer> x801 = new Box<Integer>((int)0);
  Box<Integer> x802 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x801, x802, (x765).get(), 0xffffffff);
  Box<Integer> x803 = new Box<Integer>((int)0);
  Box<Integer> x804 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x803, x804, (x765).get(), 0xfffffffe);
  Box<Integer> x805 = new Box<Integer>((int)0);
  Box<Integer> x806 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x805, x806, (x765).get(), 0xffffffff);
  Box<Integer> x807 = new Box<Integer>((int)0);
  Box<Integer> x808 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x807, x808, (x765).get(), 0xffffffff);
  Box<Integer> x809 = new Box<Integer>((int)0);
  Box<Integer> x810 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x809, x810, 0x0, (x806).get(), (x803).get());
  Box<Integer> x811 = new Box<Integer>((int)0);
  Box<Integer> x812 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x811, x812, (x810).get(), (x804).get(), (x801).get());
  Box<Integer> x813 = new Box<Integer>((int)0);
  Box<Integer> x814 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x813, x814, (x812).get(), (x802).get(), (x799).get());
  Box<Integer> x815 = new Box<Integer>((int)0);
  Box<Integer> x816 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x815, x816, (x814).get(), (x800).get(), (x797).get());
  Box<Integer> x817 = new Box<Integer>((int)0);
  Box<Integer> x818 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x817, x818, (x816).get(), (x798).get(), (x795).get());
  Box<Integer> x819 = new Box<Integer>((int)0);
  Box<Integer> x820 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x819, x820, (x818).get(), (x796).get(), (x793).get());
  Box<Integer> x821 = new Box<Integer>((int)0);
  Box<Integer> x822 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x821, x822, (x820).get(), (x794).get(), (x791).get());
  Box<Integer> x823 = new Box<Integer>((int)0);
  Box<Integer> x824 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x823, x824, (x822).get(), (x792).get(), (x789).get());
  Box<Integer> x825 = new Box<Integer>((int)0);
  Box<Integer> x826 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x825, x826, 0x0, (x765).get(), (x807).get());
  Box<Integer> x827 = new Box<Integer>((int)0);
  Box<Integer> x828 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x827, x828, (x826).get(), (x767).get(), (x808).get());
  Box<Integer> x829 = new Box<Integer>((int)0);
  Box<Integer> x830 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x829, x830, (x828).get(), (x769).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x831 = new Box<Integer>((int)0);
  Box<Integer> x832 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x831, x832, (x830).get(), (x771).get(), (x805).get());
  Box<Integer> x833 = new Box<Integer>((int)0);
  Box<Integer> x834 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x833, x834, (x832).get(), (x773).get(), (x809).get());
  Box<Integer> x835 = new Box<Integer>((int)0);
  Box<Integer> x836 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x835, x836, (x834).get(), (x775).get(), (x811).get());
  Box<Integer> x837 = new Box<Integer>((int)0);
  Box<Integer> x838 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x837, x838, (x836).get(), (x777).get(), (x813).get());
  Box<Integer> x839 = new Box<Integer>((int)0);
  Box<Integer> x840 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x839, x840, (x838).get(), (x779).get(), (x815).get());
  Box<Integer> x841 = new Box<Integer>((int)0);
  Box<Integer> x842 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x841, x842, (x840).get(), (x781).get(), (x817).get());
  Box<Integer> x843 = new Box<Integer>((int)0);
  Box<Integer> x844 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x843, x844, (x842).get(), (x783).get(), (x819).get());
  Box<Integer> x845 = new Box<Integer>((int)0);
  Box<Integer> x846 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x845, x846, (x844).get(), (x785).get(), (x821).get());
  Box<Integer> x847 = new Box<Integer>((int)0);
  Box<Integer> x848 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x847, x848, (x846).get(), (x787).get(), (x823).get());
  Box<Integer> x849 = new Box<Integer>((int)0);
  Box<Integer> x850 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x849, x850, (x848).get(), ((x788).get() + (x754).get()), ((x824).get() + (x790).get()));
  Box<Integer> x851 = new Box<Integer>((int)0);
  Box<Integer> x852 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x851, x852, x9, 0x2);
  Box<Integer> x853 = new Box<Integer>((int)0);
  Box<Integer> x854 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x853, x854, x9, 0xfffffffe);
  Box<Integer> x855 = new Box<Integer>((int)0);
  Box<Integer> x856 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x855, x856, x9, 0x2);
  Box<Integer> x857 = new Box<Integer>((int)0);
  Box<Integer> x858 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x857, x858, x9, 0xfffffffe);
  Box<Integer> x859 = new Box<Integer>((int)0);
  Box<Integer> x860 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x859, x860, 0x0, (x852).get(), x9);
  Box<Integer> x861 = new Box<Integer>((int)0);
  Box<Integer> x862 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x861, x862, 0x0, (x827).get(), x9);
  Box<Integer> x863 = new Box<Integer>((int)0);
  Box<Integer> x864 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x863, x864, (x862).get(), (x829).get(), (x857).get());
  Box<Integer> x865 = new Box<Integer>((int)0);
  Box<Integer> x866 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x865, x866, (x864).get(), (x831).get(), (x858).get());
  Box<Integer> x867 = new Box<Integer>((int)0);
  Box<Integer> x868 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x867, x868, (x866).get(), (x833).get(), (x855).get());
  Box<Integer> x869 = new Box<Integer>((int)0);
  Box<Integer> x870 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x869, x870, (x868).get(), (x835).get(), (x856).get());
  Box<Integer> x871 = new Box<Integer>((int)0);
  Box<Integer> x872 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x871, x872, (x870).get(), (x837).get(), (x853).get());
  Box<Integer> x873 = new Box<Integer>((int)0);
  Box<Integer> x874 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x873, x874, (x872).get(), (x839).get(), (x854).get());
  Box<Integer> x875 = new Box<Integer>((int)0);
  Box<Integer> x876 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x875, x876, (x874).get(), (x841).get(), (x851).get());
  Box<Integer> x877 = new Box<Integer>((int)0);
  Box<Integer> x878 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x877, x878, (x876).get(), (x843).get(), (x859).get());
  Box<Integer> x879 = new Box<Integer>((int)0);
  Box<Integer> x880 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x879, x880, (x878).get(), (x845).get(), (x860).get());
  Box<Integer> x881 = new Box<Integer>((int)0);
  Box<Integer> x882 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x881, x882, (x880).get(), (x847).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x883 = new Box<Integer>((int)0);
  Box<Integer> x884 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x883, x884, (x882).get(), (x849).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x885 = new Box<Integer>((int)0);
  Box<Integer> x886 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x885, x886, (x861).get(), 0xffffffff);
  Box<Integer> x887 = new Box<Integer>((int)0);
  Box<Integer> x888 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x887, x888, (x861).get(), 0xffffffff);
  Box<Integer> x889 = new Box<Integer>((int)0);
  Box<Integer> x890 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x889, x890, (x861).get(), 0xffffffff);
  Box<Integer> x891 = new Box<Integer>((int)0);
  Box<Integer> x892 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x891, x892, (x861).get(), 0xffffffff);
  Box<Integer> x893 = new Box<Integer>((int)0);
  Box<Integer> x894 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x893, x894, (x861).get(), 0xffffffff);
  Box<Integer> x895 = new Box<Integer>((int)0);
  Box<Integer> x896 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x895, x896, (x861).get(), 0xffffffff);
  Box<Integer> x897 = new Box<Integer>((int)0);
  Box<Integer> x898 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x897, x898, (x861).get(), 0xffffffff);
  Box<Integer> x899 = new Box<Integer>((int)0);
  Box<Integer> x900 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x899, x900, (x861).get(), 0xfffffffe);
  Box<Integer> x901 = new Box<Integer>((int)0);
  Box<Integer> x902 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x901, x902, (x861).get(), 0xffffffff);
  Box<Integer> x903 = new Box<Integer>((int)0);
  Box<Integer> x904 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x903, x904, (x861).get(), 0xffffffff);
  Box<Integer> x905 = new Box<Integer>((int)0);
  Box<Integer> x906 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x905, x906, 0x0, (x902).get(), (x899).get());
  Box<Integer> x907 = new Box<Integer>((int)0);
  Box<Integer> x908 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x907, x908, (x906).get(), (x900).get(), (x897).get());
  Box<Integer> x909 = new Box<Integer>((int)0);
  Box<Integer> x910 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x909, x910, (x908).get(), (x898).get(), (x895).get());
  Box<Integer> x911 = new Box<Integer>((int)0);
  Box<Integer> x912 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x911, x912, (x910).get(), (x896).get(), (x893).get());
  Box<Integer> x913 = new Box<Integer>((int)0);
  Box<Integer> x914 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x913, x914, (x912).get(), (x894).get(), (x891).get());
  Box<Integer> x915 = new Box<Integer>((int)0);
  Box<Integer> x916 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x915, x916, (x914).get(), (x892).get(), (x889).get());
  Box<Integer> x917 = new Box<Integer>((int)0);
  Box<Integer> x918 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x917, x918, (x916).get(), (x890).get(), (x887).get());
  Box<Integer> x919 = new Box<Integer>((int)0);
  Box<Integer> x920 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x919, x920, (x918).get(), (x888).get(), (x885).get());
  Box<Integer> x921 = new Box<Integer>((int)0);
  Box<Integer> x922 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x921, x922, 0x0, (x861).get(), (x903).get());
  Box<Integer> x923 = new Box<Integer>((int)0);
  Box<Integer> x924 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x923, x924, (x922).get(), (x863).get(), (x904).get());
  Box<Integer> x925 = new Box<Integer>((int)0);
  Box<Integer> x926 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x925, x926, (x924).get(), (x865).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x927 = new Box<Integer>((int)0);
  Box<Integer> x928 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x927, x928, (x926).get(), (x867).get(), (x901).get());
  Box<Integer> x929 = new Box<Integer>((int)0);
  Box<Integer> x930 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x929, x930, (x928).get(), (x869).get(), (x905).get());
  Box<Integer> x931 = new Box<Integer>((int)0);
  Box<Integer> x932 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x931, x932, (x930).get(), (x871).get(), (x907).get());
  Box<Integer> x933 = new Box<Integer>((int)0);
  Box<Integer> x934 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x933, x934, (x932).get(), (x873).get(), (x909).get());
  Box<Integer> x935 = new Box<Integer>((int)0);
  Box<Integer> x936 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x935, x936, (x934).get(), (x875).get(), (x911).get());
  Box<Integer> x937 = new Box<Integer>((int)0);
  Box<Integer> x938 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x937, x938, (x936).get(), (x877).get(), (x913).get());
  Box<Integer> x939 = new Box<Integer>((int)0);
  Box<Integer> x940 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x939, x940, (x938).get(), (x879).get(), (x915).get());
  Box<Integer> x941 = new Box<Integer>((int)0);
  Box<Integer> x942 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x941, x942, (x940).get(), (x881).get(), (x917).get());
  Box<Integer> x943 = new Box<Integer>((int)0);
  Box<Integer> x944 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x943, x944, (x942).get(), (x883).get(), (x919).get());
  Box<Integer> x945 = new Box<Integer>((int)0);
  Box<Integer> x946 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x945, x946, (x944).get(), ((x884).get() + (x850).get()), ((x920).get() + (x886).get()));
  Box<Integer> x947 = new Box<Integer>((int)0);
  Box<Integer> x948 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x947, x948, x10, 0x2);
  Box<Integer> x949 = new Box<Integer>((int)0);
  Box<Integer> x950 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x949, x950, x10, 0xfffffffe);
  Box<Integer> x951 = new Box<Integer>((int)0);
  Box<Integer> x952 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x951, x952, x10, 0x2);
  Box<Integer> x953 = new Box<Integer>((int)0);
  Box<Integer> x954 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x953, x954, x10, 0xfffffffe);
  Box<Integer> x955 = new Box<Integer>((int)0);
  Box<Integer> x956 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x955, x956, 0x0, (x948).get(), x10);
  Box<Integer> x957 = new Box<Integer>((int)0);
  Box<Integer> x958 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x957, x958, 0x0, (x923).get(), x10);
  Box<Integer> x959 = new Box<Integer>((int)0);
  Box<Integer> x960 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x959, x960, (x958).get(), (x925).get(), (x953).get());
  Box<Integer> x961 = new Box<Integer>((int)0);
  Box<Integer> x962 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x961, x962, (x960).get(), (x927).get(), (x954).get());
  Box<Integer> x963 = new Box<Integer>((int)0);
  Box<Integer> x964 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x963, x964, (x962).get(), (x929).get(), (x951).get());
  Box<Integer> x965 = new Box<Integer>((int)0);
  Box<Integer> x966 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x965, x966, (x964).get(), (x931).get(), (x952).get());
  Box<Integer> x967 = new Box<Integer>((int)0);
  Box<Integer> x968 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x967, x968, (x966).get(), (x933).get(), (x949).get());
  Box<Integer> x969 = new Box<Integer>((int)0);
  Box<Integer> x970 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x969, x970, (x968).get(), (x935).get(), (x950).get());
  Box<Integer> x971 = new Box<Integer>((int)0);
  Box<Integer> x972 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x971, x972, (x970).get(), (x937).get(), (x947).get());
  Box<Integer> x973 = new Box<Integer>((int)0);
  Box<Integer> x974 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x973, x974, (x972).get(), (x939).get(), (x955).get());
  Box<Integer> x975 = new Box<Integer>((int)0);
  Box<Integer> x976 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x975, x976, (x974).get(), (x941).get(), (x956).get());
  Box<Integer> x977 = new Box<Integer>((int)0);
  Box<Integer> x978 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x977, x978, (x976).get(), (x943).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x979 = new Box<Integer>((int)0);
  Box<Integer> x980 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x979, x980, (x978).get(), (x945).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x981 = new Box<Integer>((int)0);
  Box<Integer> x982 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x981, x982, (x957).get(), 0xffffffff);
  Box<Integer> x983 = new Box<Integer>((int)0);
  Box<Integer> x984 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x983, x984, (x957).get(), 0xffffffff);
  Box<Integer> x985 = new Box<Integer>((int)0);
  Box<Integer> x986 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x985, x986, (x957).get(), 0xffffffff);
  Box<Integer> x987 = new Box<Integer>((int)0);
  Box<Integer> x988 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x987, x988, (x957).get(), 0xffffffff);
  Box<Integer> x989 = new Box<Integer>((int)0);
  Box<Integer> x990 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x989, x990, (x957).get(), 0xffffffff);
  Box<Integer> x991 = new Box<Integer>((int)0);
  Box<Integer> x992 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x991, x992, (x957).get(), 0xffffffff);
  Box<Integer> x993 = new Box<Integer>((int)0);
  Box<Integer> x994 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x993, x994, (x957).get(), 0xffffffff);
  Box<Integer> x995 = new Box<Integer>((int)0);
  Box<Integer> x996 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x995, x996, (x957).get(), 0xfffffffe);
  Box<Integer> x997 = new Box<Integer>((int)0);
  Box<Integer> x998 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x997, x998, (x957).get(), 0xffffffff);
  Box<Integer> x999 = new Box<Integer>((int)0);
  Box<Integer> x1000 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x999, x1000, (x957).get(), 0xffffffff);
  Box<Integer> x1001 = new Box<Integer>((int)0);
  Box<Integer> x1002 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1001, x1002, 0x0, (x998).get(), (x995).get());
  Box<Integer> x1003 = new Box<Integer>((int)0);
  Box<Integer> x1004 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1003, x1004, (x1002).get(), (x996).get(), (x993).get());
  Box<Integer> x1005 = new Box<Integer>((int)0);
  Box<Integer> x1006 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1005, x1006, (x1004).get(), (x994).get(), (x991).get());
  Box<Integer> x1007 = new Box<Integer>((int)0);
  Box<Integer> x1008 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1007, x1008, (x1006).get(), (x992).get(), (x989).get());
  Box<Integer> x1009 = new Box<Integer>((int)0);
  Box<Integer> x1010 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1009, x1010, (x1008).get(), (x990).get(), (x987).get());
  Box<Integer> x1011 = new Box<Integer>((int)0);
  Box<Integer> x1012 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1011, x1012, (x1010).get(), (x988).get(), (x985).get());
  Box<Integer> x1013 = new Box<Integer>((int)0);
  Box<Integer> x1014 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1013, x1014, (x1012).get(), (x986).get(), (x983).get());
  Box<Integer> x1015 = new Box<Integer>((int)0);
  Box<Integer> x1016 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1015, x1016, (x1014).get(), (x984).get(), (x981).get());
  Box<Integer> x1017 = new Box<Integer>((int)0);
  Box<Integer> x1018 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1017, x1018, 0x0, (x957).get(), (x999).get());
  Box<Integer> x1019 = new Box<Integer>((int)0);
  Box<Integer> x1020 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1019, x1020, (x1018).get(), (x959).get(), (x1000).get());
  Box<Integer> x1021 = new Box<Integer>((int)0);
  Box<Integer> x1022 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1021, x1022, (x1020).get(), (x961).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1023 = new Box<Integer>((int)0);
  Box<Integer> x1024 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1023, x1024, (x1022).get(), (x963).get(), (x997).get());
  Box<Integer> x1025 = new Box<Integer>((int)0);
  Box<Integer> x1026 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1025, x1026, (x1024).get(), (x965).get(), (x1001).get());
  Box<Integer> x1027 = new Box<Integer>((int)0);
  Box<Integer> x1028 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1027, x1028, (x1026).get(), (x967).get(), (x1003).get());
  Box<Integer> x1029 = new Box<Integer>((int)0);
  Box<Integer> x1030 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1029, x1030, (x1028).get(), (x969).get(), (x1005).get());
  Box<Integer> x1031 = new Box<Integer>((int)0);
  Box<Integer> x1032 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1031, x1032, (x1030).get(), (x971).get(), (x1007).get());
  Box<Integer> x1033 = new Box<Integer>((int)0);
  Box<Integer> x1034 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1033, x1034, (x1032).get(), (x973).get(), (x1009).get());
  Box<Integer> x1035 = new Box<Integer>((int)0);
  Box<Integer> x1036 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1035, x1036, (x1034).get(), (x975).get(), (x1011).get());
  Box<Integer> x1037 = new Box<Integer>((int)0);
  Box<Integer> x1038 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1037, x1038, (x1036).get(), (x977).get(), (x1013).get());
  Box<Integer> x1039 = new Box<Integer>((int)0);
  Box<Integer> x1040 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1039, x1040, (x1038).get(), (x979).get(), (x1015).get());
  Box<Integer> x1041 = new Box<Integer>((int)0);
  Box<Integer> x1042 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1041, x1042, (x1040).get(), ((x980).get() + (x946).get()), ((x1016).get() + (x982).get()));
  Box<Integer> x1043 = new Box<Integer>((int)0);
  Box<Integer> x1044 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1043, x1044, x11, 0x2);
  Box<Integer> x1045 = new Box<Integer>((int)0);
  Box<Integer> x1046 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1045, x1046, x11, 0xfffffffe);
  Box<Integer> x1047 = new Box<Integer>((int)0);
  Box<Integer> x1048 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1047, x1048, x11, 0x2);
  Box<Integer> x1049 = new Box<Integer>((int)0);
  Box<Integer> x1050 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1049, x1050, x11, 0xfffffffe);
  Box<Integer> x1051 = new Box<Integer>((int)0);
  Box<Integer> x1052 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1051, x1052, 0x0, (x1044).get(), x11);
  Box<Integer> x1053 = new Box<Integer>((int)0);
  Box<Integer> x1054 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1053, x1054, 0x0, (x1019).get(), x11);
  Box<Integer> x1055 = new Box<Integer>((int)0);
  Box<Integer> x1056 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1055, x1056, (x1054).get(), (x1021).get(), (x1049).get());
  Box<Integer> x1057 = new Box<Integer>((int)0);
  Box<Integer> x1058 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1057, x1058, (x1056).get(), (x1023).get(), (x1050).get());
  Box<Integer> x1059 = new Box<Integer>((int)0);
  Box<Integer> x1060 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1059, x1060, (x1058).get(), (x1025).get(), (x1047).get());
  Box<Integer> x1061 = new Box<Integer>((int)0);
  Box<Integer> x1062 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1061, x1062, (x1060).get(), (x1027).get(), (x1048).get());
  Box<Integer> x1063 = new Box<Integer>((int)0);
  Box<Integer> x1064 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1063, x1064, (x1062).get(), (x1029).get(), (x1045).get());
  Box<Integer> x1065 = new Box<Integer>((int)0);
  Box<Integer> x1066 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1065, x1066, (x1064).get(), (x1031).get(), (x1046).get());
  Box<Integer> x1067 = new Box<Integer>((int)0);
  Box<Integer> x1068 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1067, x1068, (x1066).get(), (x1033).get(), (x1043).get());
  Box<Integer> x1069 = new Box<Integer>((int)0);
  Box<Integer> x1070 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1069, x1070, (x1068).get(), (x1035).get(), (x1051).get());
  Box<Integer> x1071 = new Box<Integer>((int)0);
  Box<Integer> x1072 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1071, x1072, (x1070).get(), (x1037).get(), (x1052).get());
  Box<Integer> x1073 = new Box<Integer>((int)0);
  Box<Integer> x1074 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1073, x1074, (x1072).get(), (x1039).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1075 = new Box<Integer>((int)0);
  Box<Integer> x1076 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1075, x1076, (x1074).get(), (x1041).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1077 = new Box<Integer>((int)0);
  Box<Integer> x1078 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1077, x1078, (x1053).get(), 0xffffffff);
  Box<Integer> x1079 = new Box<Integer>((int)0);
  Box<Integer> x1080 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1079, x1080, (x1053).get(), 0xffffffff);
  Box<Integer> x1081 = new Box<Integer>((int)0);
  Box<Integer> x1082 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1081, x1082, (x1053).get(), 0xffffffff);
  Box<Integer> x1083 = new Box<Integer>((int)0);
  Box<Integer> x1084 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1083, x1084, (x1053).get(), 0xffffffff);
  Box<Integer> x1085 = new Box<Integer>((int)0);
  Box<Integer> x1086 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1085, x1086, (x1053).get(), 0xffffffff);
  Box<Integer> x1087 = new Box<Integer>((int)0);
  Box<Integer> x1088 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1087, x1088, (x1053).get(), 0xffffffff);
  Box<Integer> x1089 = new Box<Integer>((int)0);
  Box<Integer> x1090 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1089, x1090, (x1053).get(), 0xffffffff);
  Box<Integer> x1091 = new Box<Integer>((int)0);
  Box<Integer> x1092 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1091, x1092, (x1053).get(), 0xfffffffe);
  Box<Integer> x1093 = new Box<Integer>((int)0);
  Box<Integer> x1094 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1093, x1094, (x1053).get(), 0xffffffff);
  Box<Integer> x1095 = new Box<Integer>((int)0);
  Box<Integer> x1096 = new Box<Integer>((int)0);
  fiat_P384_mulx_u32(x1095, x1096, (x1053).get(), 0xffffffff);
  Box<Integer> x1097 = new Box<Integer>((int)0);
  Box<Integer> x1098 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1097, x1098, 0x0, (x1094).get(), (x1091).get());
  Box<Integer> x1099 = new Box<Integer>((int)0);
  Box<Integer> x1100 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1099, x1100, (x1098).get(), (x1092).get(), (x1089).get());
  Box<Integer> x1101 = new Box<Integer>((int)0);
  Box<Integer> x1102 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1101, x1102, (x1100).get(), (x1090).get(), (x1087).get());
  Box<Integer> x1103 = new Box<Integer>((int)0);
  Box<Integer> x1104 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1103, x1104, (x1102).get(), (x1088).get(), (x1085).get());
  Box<Integer> x1105 = new Box<Integer>((int)0);
  Box<Integer> x1106 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1105, x1106, (x1104).get(), (x1086).get(), (x1083).get());
  Box<Integer> x1107 = new Box<Integer>((int)0);
  Box<Integer> x1108 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1107, x1108, (x1106).get(), (x1084).get(), (x1081).get());
  Box<Integer> x1109 = new Box<Integer>((int)0);
  Box<Integer> x1110 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1109, x1110, (x1108).get(), (x1082).get(), (x1079).get());
  Box<Integer> x1111 = new Box<Integer>((int)0);
  Box<Integer> x1112 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1111, x1112, (x1110).get(), (x1080).get(), (x1077).get());
  Box<Integer> x1113 = new Box<Integer>((int)0);
  Box<Integer> x1114 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1113, x1114, 0x0, (x1053).get(), (x1095).get());
  Box<Integer> x1115 = new Box<Integer>((int)0);
  Box<Integer> x1116 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1115, x1116, (x1114).get(), (x1055).get(), (x1096).get());
  Box<Integer> x1117 = new Box<Integer>((int)0);
  Box<Integer> x1118 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1117, x1118, (x1116).get(), (x1057).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1119 = new Box<Integer>((int)0);
  Box<Integer> x1120 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1119, x1120, (x1118).get(), (x1059).get(), (x1093).get());
  Box<Integer> x1121 = new Box<Integer>((int)0);
  Box<Integer> x1122 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1121, x1122, (x1120).get(), (x1061).get(), (x1097).get());
  Box<Integer> x1123 = new Box<Integer>((int)0);
  Box<Integer> x1124 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1123, x1124, (x1122).get(), (x1063).get(), (x1099).get());
  Box<Integer> x1125 = new Box<Integer>((int)0);
  Box<Integer> x1126 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1125, x1126, (x1124).get(), (x1065).get(), (x1101).get());
  Box<Integer> x1127 = new Box<Integer>((int)0);
  Box<Integer> x1128 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1127, x1128, (x1126).get(), (x1067).get(), (x1103).get());
  Box<Integer> x1129 = new Box<Integer>((int)0);
  Box<Integer> x1130 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1129, x1130, (x1128).get(), (x1069).get(), (x1105).get());
  Box<Integer> x1131 = new Box<Integer>((int)0);
  Box<Integer> x1132 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1131, x1132, (x1130).get(), (x1071).get(), (x1107).get());
  Box<Integer> x1133 = new Box<Integer>((int)0);
  Box<Integer> x1134 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1133, x1134, (x1132).get(), (x1073).get(), (x1109).get());
  Box<Integer> x1135 = new Box<Integer>((int)0);
  Box<Integer> x1136 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1135, x1136, (x1134).get(), (x1075).get(), (x1111).get());
  Box<Integer> x1137 = new Box<Integer>((int)0);
  Box<Integer> x1138 = new Box<Integer>((int)0);
  fiat_P384_addcarryx_u32(x1137, x1138, (x1136).get(), ((x1076).get() + (x1042).get()), ((x1112).get() + (x1078).get()));
  Box<Integer> x1139 = new Box<Integer>((int)0);
  Box<Integer> x1140 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1139, x1140, (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()), (x1115).get(), 0xffffffff);
  Box<Integer> x1141 = new Box<Integer>((int)0);
  Box<Integer> x1142 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1141, x1142, (x1140).get(), (x1117).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1143 = new Box<Integer>((int)0);
  Box<Integer> x1144 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1143, x1144, (x1142).get(), (x1119).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1145 = new Box<Integer>((int)0);
  Box<Integer> x1146 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1145, x1146, (x1144).get(), (x1121).get(), 0xffffffff);
  Box<Integer> x1147 = new Box<Integer>((int)0);
  Box<Integer> x1148 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1147, x1148, (x1146).get(), (x1123).get(), 0xfffffffe);
  Box<Integer> x1149 = new Box<Integer>((int)0);
  Box<Integer> x1150 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1149, x1150, (x1148).get(), (x1125).get(), 0xffffffff);
  Box<Integer> x1151 = new Box<Integer>((int)0);
  Box<Integer> x1152 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1151, x1152, (x1150).get(), (x1127).get(), 0xffffffff);
  Box<Integer> x1153 = new Box<Integer>((int)0);
  Box<Integer> x1154 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1153, x1154, (x1152).get(), (x1129).get(), 0xffffffff);
  Box<Integer> x1155 = new Box<Integer>((int)0);
  Box<Integer> x1156 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1155, x1156, (x1154).get(), (x1131).get(), 0xffffffff);
  Box<Integer> x1157 = new Box<Integer>((int)0);
  Box<Integer> x1158 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1157, x1158, (x1156).get(), (x1133).get(), 0xffffffff);
  Box<Integer> x1159 = new Box<Integer>((int)0);
  Box<Integer> x1160 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1159, x1160, (x1158).get(), (x1135).get(), 0xffffffff);
  Box<Integer> x1161 = new Box<Integer>((int)0);
  Box<Integer> x1162 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1161, x1162, (x1160).get(), (x1137).get(), 0xffffffff);
  Box<Integer> x1163 = new Box<Integer>((int)0);
  Box<Integer> x1164 = new Box<Integer>((int)0);
  fiat_P384_subborrowx_u32(x1163, x1164, (x1162).get(), (x1138).get(), (int) Integer.toUnsignedLong(((Number) (0x0)).intValue()));
  Box<Integer> x1165 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1165, (x1164).get(), (x1139).get(), (x1115).get());
  Box<Integer> x1166 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1166, (x1164).get(), (x1141).get(), (x1117).get());
  Box<Integer> x1167 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1167, (x1164).get(), (x1143).get(), (x1119).get());
  Box<Integer> x1168 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1168, (x1164).get(), (x1145).get(), (x1121).get());
  Box<Integer> x1169 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1169, (x1164).get(), (x1147).get(), (x1123).get());
  Box<Integer> x1170 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1170, (x1164).get(), (x1149).get(), (x1125).get());
  Box<Integer> x1171 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1171, (x1164).get(), (x1151).get(), (x1127).get());
  Box<Integer> x1172 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1172, (x1164).get(), (x1153).get(), (x1129).get());
  Box<Integer> x1173 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1173, (x1164).get(), (x1155).get(), (x1131).get());
  Box<Integer> x1174 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1174, (x1164).get(), (x1157).get(), (x1133).get());
  Box<Integer> x1175 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1175, (x1164).get(), (x1159).get(), (x1135).get());
  Box<Integer> x1176 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1176, (x1164).get(), (x1161).get(), (x1137).get());
  out1[0] = (x1165).get();
  out1[1] = (x1166).get();
  out1[2] = (x1167).get();
  out1[3] = (x1168).get();
  out1[4] = (x1169).get();
  out1[5] = (x1170).get();
  out1[6] = (x1171).get();
  out1[7] = (x1172).get();
  out1[8] = (x1173).get();
  out1[9] = (x1174).get();
  out1[10] = (x1175).get();
  out1[11] = (x1176).get();
}

/**
 * The function fiat_P384_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], [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_P384_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]) | ((arg1[8]) | ((arg1[9]) | ((arg1[10]) | (arg1[11]))))))))))));
  out1.set(x1);
}

/**
 * The function fiat_P384_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], [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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_selectznz(int[] out1, int arg1, final int[] arg2, final int[] arg3) {
  Box<Integer> x1 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x1, arg1, (arg2[0]), (arg3[0]));
  Box<Integer> x2 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x2, arg1, (arg2[1]), (arg3[1]));
  Box<Integer> x3 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x3, arg1, (arg2[2]), (arg3[2]));
  Box<Integer> x4 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x4, arg1, (arg2[3]), (arg3[3]));
  Box<Integer> x5 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x5, arg1, (arg2[4]), (arg3[4]));
  Box<Integer> x6 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x6, arg1, (arg2[5]), (arg3[5]));
  Box<Integer> x7 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x7, arg1, (arg2[6]), (arg3[6]));
  Box<Integer> x8 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x8, arg1, (arg2[7]), (arg3[7]));
  Box<Integer> x9 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x9, arg1, (arg2[8]), (arg3[8]));
  Box<Integer> x10 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x10, arg1, (arg2[9]), (arg3[9]));
  Box<Integer> x11 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x11, arg1, (arg2[10]), (arg3[10]));
  Box<Integer> x12 = new Box<Integer>((int)0);
  fiat_P384_cmovznz_u32(x12, arg1, (arg2[11]), (arg3[11]));
  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();
  out1[8] = (x9).get();
  out1[9] = (x10).get();
  out1[10] = (x11).get();
  out1[11] = (x12).get();
}

/**
 * The function fiat_P384_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..47] <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], [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], [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_P384_to_bytes(int[] out1, final int[] arg1) {
  int x1 = (arg1[11]);
  int x2 = (arg1[10]);
  int x3 = (arg1[9]);
  int x4 = (arg1[8]);
  int x5 = (arg1[7]);
  int x6 = (arg1[6]);
  int x7 = (arg1[5]);
  int x8 = (arg1[4]);
  int x9 = (arg1[3]);
  int x10 = (arg1[2]);
  int x11 = (arg1[1]);
  int x12 = (arg1[0]);
  int x13 = (x12 & 0xff);
  int x14 = (x12 >>> 8);
  int x15 = (x14 & 0xff);
  int x16 = (x14 >>> 8);
  int x17 = (x16 & 0xff);
  int x18 = (x16 >>> 8);
  int x19 = (x11 & 0xff);
  int x20 = (x11 >>> 8);
  int x21 = (x20 & 0xff);
  int x22 = (x20 >>> 8);
  int x23 = (x22 & 0xff);
  int x24 = (x22 >>> 8);
  int x25 = (x10 & 0xff);
  int x26 = (x10 >>> 8);
  int x27 = (x26 & 0xff);
  int x28 = (x26 >>> 8);
  int x29 = (x28 & 0xff);
  int x30 = (x28 >>> 8);
  int x31 = (x9 & 0xff);
  int x32 = (x9 >>> 8);
  int x33 = (x32 & 0xff);
  int x34 = (x32 >>> 8);
  int x35 = (x34 & 0xff);
  int x36 = (x34 >>> 8);
  int x37 = (x8 & 0xff);
  int x38 = (x8 >>> 8);
  int x39 = (x38 & 0xff);
  int x40 = (x38 >>> 8);
  int x41 = (x40 & 0xff);
  int x42 = (x40 >>> 8);
  int x43 = (x7 & 0xff);
  int x44 = (x7 >>> 8);
  int x45 = (x44 & 0xff);
  int x46 = (x44 >>> 8);
  int x47 = (x46 & 0xff);
  int x48 = (x46 >>> 8);
  int x49 = (x6 & 0xff);
  int x50 = (x6 >>> 8);
  int x51 = (x50 & 0xff);
  int x52 = (x50 >>> 8);
  int x53 = (x52 & 0xff);
  int x54 = (x52 >>> 8);
  int x55 = (x5 & 0xff);
  int x56 = (x5 >>> 8);
  int x57 = (x56 & 0xff);
  int x58 = (x56 >>> 8);
  int x59 = (x58 & 0xff);
  int x60 = (x58 >>> 8);
  int x61 = (x4 & 0xff);
  int x62 = (x4 >>> 8);
  int x63 = (x62 & 0xff);
  int x64 = (x62 >>> 8);
  int x65 = (x64 & 0xff);
  int x66 = (x64 >>> 8);
  int x67 = (x3 & 0xff);
  int x68 = (x3 >>> 8);
  int x69 = (x68 & 0xff);
  int x70 = (x68 >>> 8);
  int x71 = (x70 & 0xff);
  int x72 = (x70 >>> 8);
  int x73 = (x2 & 0xff);
  int x74 = (x2 >>> 8);
  int x75 = (x74 & 0xff);
  int x76 = (x74 >>> 8);
  int x77 = (x76 & 0xff);
  int x78 = (x76 >>> 8);
  int x79 = (x1 & 0xff);
  int x80 = (x1 >>> 8);
  int x81 = (x80 & 0xff);
  int x82 = (x80 >>> 8);
  int x83 = (x82 & 0xff);
  int x84 = (x82 >>> 8);
  out1[0] = x13;
  out1[1] = x15;
  out1[2] = x17;
  out1[3] = x18;
  out1[4] = x19;
  out1[5] = x21;
  out1[6] = x23;
  out1[7] = x24;
  out1[8] = x25;
  out1[9] = x27;
  out1[10] = x29;
  out1[11] = x30;
  out1[12] = x31;
  out1[13] = x33;
  out1[14] = x35;
  out1[15] = x36;
  out1[16] = x37;
  out1[17] = x39;
  out1[18] = x41;
  out1[19] = x42;
  out1[20] = x43;
  out1[21] = x45;
  out1[22] = x47;
  out1[23] = x48;
  out1[24] = x49;
  out1[25] = x51;
  out1[26] = x53;
  out1[27] = x54;
  out1[28] = x55;
  out1[29] = x57;
  out1[30] = x59;
  out1[31] = x60;
  out1[32] = x61;
  out1[33] = x63;
  out1[34] = x65;
  out1[35] = x66;
  out1[36] = x67;
  out1[37] = x69;
  out1[38] = x71;
  out1[39] = x72;
  out1[40] = x73;
  out1[41] = x75;
  out1[42] = x77;
  out1[43] = x78;
  out1[44] = x79;
  out1[45] = x81;
  out1[46] = x83;
  out1[47] = x84;
}

/**
 * The function fiat_P384_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], [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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_from_bytes(int[] out1, final int[] arg1) {
  int x1 = ((arg1[47]) << 24);
  int x2 = ((arg1[46]) << 16);
  int x3 = ((arg1[45]) << 8);
  int x4 = (arg1[44]);
  int x5 = ((arg1[43]) << 24);
  int x6 = ((arg1[42]) << 16);
  int x7 = ((arg1[41]) << 8);
  int x8 = (arg1[40]);
  int x9 = ((arg1[39]) << 24);
  int x10 = ((arg1[38]) << 16);
  int x11 = ((arg1[37]) << 8);
  int x12 = (arg1[36]);
  int x13 = ((arg1[35]) << 24);
  int x14 = ((arg1[34]) << 16);
  int x15 = ((arg1[33]) << 8);
  int x16 = (arg1[32]);
  int x17 = ((arg1[31]) << 24);
  int x18 = ((arg1[30]) << 16);
  int x19 = ((arg1[29]) << 8);
  int x20 = (arg1[28]);
  int x21 = ((arg1[27]) << 24);
  int x22 = ((arg1[26]) << 16);
  int x23 = ((arg1[25]) << 8);
  int x24 = (arg1[24]);
  int x25 = ((arg1[23]) << 24);
  int x26 = ((arg1[22]) << 16);
  int x27 = ((arg1[21]) << 8);
  int x28 = (arg1[20]);
  int x29 = ((arg1[19]) << 24);
  int x30 = ((arg1[18]) << 16);
  int x31 = ((arg1[17]) << 8);
  int x32 = (arg1[16]);
  int x33 = ((arg1[15]) << 24);
  int x34 = ((arg1[14]) << 16);
  int x35 = ((arg1[13]) << 8);
  int x36 = (arg1[12]);
  int x37 = ((arg1[11]) << 24);
  int x38 = ((arg1[10]) << 16);
  int x39 = ((arg1[9]) << 8);
  int x40 = (arg1[8]);
  int x41 = ((arg1[7]) << 24);
  int x42 = ((arg1[6]) << 16);
  int x43 = ((arg1[5]) << 8);
  int x44 = (arg1[4]);
  int x45 = ((arg1[3]) << 24);
  int x46 = ((arg1[2]) << 16);
  int x47 = ((arg1[1]) << 8);
  int x48 = (arg1[0]);
  int x49 = (x47 + x48);
  int x50 = (x46 + x49);
  int x51 = (x45 + x50);
  int x52 = (x43 + x44);
  int x53 = (x42 + x52);
  int x54 = (x41 + x53);
  int x55 = (x39 + x40);
  int x56 = (x38 + x55);
  int x57 = (x37 + x56);
  int x58 = (x35 + x36);
  int x59 = (x34 + x58);
  int x60 = (x33 + x59);
  int x61 = (x31 + x32);
  int x62 = (x30 + x61);
  int x63 = (x29 + x62);
  int x64 = (x27 + x28);
  int x65 = (x26 + x64);
  int x66 = (x25 + x65);
  int x67 = (x23 + x24);
  int x68 = (x22 + x67);
  int x69 = (x21 + x68);
  int x70 = (x19 + x20);
  int x71 = (x18 + x70);
  int x72 = (x17 + x71);
  int x73 = (x15 + x16);
  int x74 = (x14 + x73);
  int x75 = (x13 + x74);
  int x76 = (x11 + x12);
  int x77 = (x10 + x76);
  int x78 = (x9 + x77);
  int x79 = (x7 + x8);
  int x80 = (x6 + x79);
  int x81 = (x5 + x80);
  int x82 = (x3 + x4);
  int x83 = (x2 + x82);
  int x84 = (x1 + x83);
  out1[0] = x51;
  out1[1] = x54;
  out1[2] = x57;
  out1[3] = x60;
  out1[4] = x63;
  out1[5] = x66;
  out1[6] = x69;
  out1[7] = x72;
  out1[8] = x75;
  out1[9] = x78;
  out1[10] = x81;
  out1[11] = x84;
}

/**
 * The function fiat_P384_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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_set_one(int[] out1) {
  out1[0] = 0x1;
  out1[1] = 0xffffffff;
  out1[2] = 0xffffffff;
  out1[3] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[4] = 0x1;
  out1[5] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[6] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[7] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[8] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[9] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[10] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[11] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
}

/**
 * The function fiat_P384_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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_msat(int[] out1) {
  out1[0] = 0xffffffff;
  out1[1] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[2] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
  out1[3] = 0xffffffff;
  out1[4] = 0xfffffffe;
  out1[5] = 0xffffffff;
  out1[6] = 0xffffffff;
  out1[7] = 0xffffffff;
  out1[8] = 0xffffffff;
  out1[9] = 0xffffffff;
  out1[10] = 0xffffffff;
  out1[11] = 0xffffffff;
  out1[12] = (int) Integer.toUnsignedLong(((Number) (0x0)).intValue());
}

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

/**
 * The function fiat_P384_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], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff], [0x0 ~&gt; 0xffffffff]] <p>
 */
public static void fiat_P384_divstep_precomp(int[] out1) {
  out1[0] = 0xfff18fff;
  out1[1] = 0xfff69400;
  out1[2] = 0xffffd3ff;
  out1[3] = 0x2b7fe;
  out1[4] = 0xfffe97ff;
  out1[5] = 0xfffedbff;
  out1[6] = 0x2fff;
  out1[7] = 0x28400;
  out1[8] = 0x50400;
  out1[9] = 0x60400;
  out1[10] = 0x38000;
  out1[11] = 0xfffc4800;
}

}
