#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
double exp(double);
double sqrt(double);
double Iq(double q, double fp_case_num, double N[], double Phi[], double v[],
          double L[], double b[], double Kab, double Kac, double Kad,
          double Kbc, double Kbd, double Kcd) {
  int icase = (int)(fp_case_num + 0.5);
  double Nab, Nac, Nad, Nbc, Nbd, Ncd;
  double Phiab, Phiac, Phiad, Phibc, Phibd, Phicd;
  double vab, vac, vad, vbc, vbd, vcd;
  double m;
  double Xa, Xb, Xc, Xd;
  double Paa, S0aa, Pab, S0ab, Pac, S0ac, Pad, S0ad;
  double S0ba, Pbb, S0bb, Pbc, S0bc, Pbd, S0bd;
  double S0ca, S0cb, Pcc, S0cc, Pcd, S0cd;
  double Pdd, S0dd;
  double Kaa, Kbb, Kcc;
  double Kba, Kca, Kcb;
  double Zaa, Zab, Zac, Zba, Zbb, Zbc, Zca, Zcb, Zcc;
  double DenT, T11, T12, T13, T21, T22, T23, T31, T32, T33;
  double Y1, Y2, Y3, X11, X12, X13, X21, X22, X23, X31, X32, X33;
  double ZZ, DenQ1, DenQ2, DenQ3, DenQ, Q11, Q12, Q13, Q21, Q22, Q23, Q31, Q32,
      Q33;
  double N11, N12, N13, N21, N22, N23, N31, N32, N33;
  double M11, M12, M13, M21, M22, M23, M31, M32, M33;
  double S11, S12, S22, S23, S13, S33;
  double Lad, Lbd, Lcd, Nav, Intg;
  if (icase <= 1) {
    Phi[0] = Phi[1] = 0.0000001;
    N[0] = N[1] = 1000.0;
    L[0] = L[1] = 1.e-12;
    v[0] = v[1] = 100.0;
    b[0] = b[1] = 5.0;
    Kab = Kac = Kad = Kbc = Kbd = -0.0004;
  } else if ((icase > 1) && (icase <= 4)) {
    Phi[0] = 0.0000001;
    N[0] = 1000.0;
    L[0] = 1.e-12;
    v[0] = 100.0;
    b[0] = 5.0;
    Kab = Kac = Kad = -0.0004;
  }
  Phi[3] = 1.0 - Phi[0] - Phi[1] - Phi[2];
  Nab = sqrt(N[0] * N[1]);
  Nac = sqrt(N[0] * N[2]);
  Nad = sqrt(N[0] * N[3]);
  Nbc = sqrt(N[1] * N[2]);
  Nbd = sqrt(N[1] * N[3]);
  Ncd = sqrt(N[2] * N[3]);
  vab = sqrt(v[0] * v[1]);
  vac = sqrt(v[0] * v[2]);
  vad = sqrt(v[0] * v[3]);
  vbc = sqrt(v[1] * v[2]);
  vbd = sqrt(v[1] * v[3]);
  vcd = sqrt(v[2] * v[3]);
  Phiab = sqrt(Phi[0] * Phi[1]);
  Phiac = sqrt(Phi[0] * Phi[2]);
  Phiad = sqrt(Phi[0] * Phi[3]);
  Phibc = sqrt(Phi[1] * Phi[2]);
  Phibd = sqrt(Phi[1] * Phi[3]);
  Phicd = sqrt(Phi[2] * Phi[3]);
  Xa = q * q * b[0] * b[0] * N[0] / 6.0;
  Xb = q * q * b[1] * b[1] * N[1] / 6.0;
  Xc = q * q * b[2] * b[2] * N[2] / 6.0;
  Xd = q * q * b[3] * b[3] * N[3] / 6.0;
  Paa = 2.0 * (exp(-Xa) - 1.0 + Xa) / (Xa * Xa);
  S0aa = N[0] * Phi[0] * v[0] * Paa;
  Pab = ((1.0 - exp(-Xa)) / Xa) * ((1.0 - exp(-Xb)) / Xb);
  S0ab = (Phiab * vab * Nab) * Pab;
  Pac = ((1.0 - exp(-Xa)) / Xa) * exp(-Xb) * ((1.0 - exp(-Xc)) / Xc);
  S0ac = (Phiac * vac * Nac) * Pac;
  Pad = ((1.0 - exp(-Xa)) / Xa) * exp(-Xb - Xc) * ((1.0 - exp(-Xd)) / Xd);
  S0ad = (Phiad * vad * Nad) * Pad;
  S0ba = S0ab;
  Pbb = 2.0 * (exp(-Xb) - 1.0 + Xb) / (Xb * Xb);
  S0bb = N[1] * Phi[1] * v[1] * Pbb;
  Pbc = ((1.0 - exp(-Xb)) / Xb) * ((1.0 - exp(-Xc)) / Xc);
  S0bc = (Phibc * vbc * Nbc) * Pbc;
  Pbd = ((1.0 - exp(-Xb)) / Xb) * exp(-Xc) * ((1.0 - exp(-Xd)) / Xd);
  S0bd = (Phibd * vbd * Nbd) * Pbd;
  S0ca = S0ac;
  S0cb = S0bc;
  Pcc = 2.0 * (exp(-Xc) - 1.0 + Xc) / (Xc * Xc);
  S0cc = N[2] * Phi[2] * v[2] * Pcc;
  Pcd = ((1.0 - exp(-Xc)) / Xc) * ((1.0 - exp(-Xd)) / Xd);
  S0cd = (Phicd * vcd * Ncd) * Pcd;
  Pdd = 2.0 * (exp(-Xd) - 1.0 + Xd) / (Xd * Xd);
  S0dd = N[3] * Phi[3] * v[3] * Pdd;
  switch (icase) {
  case 0:
    S0aa = 0.000001;
    S0ab = 0.000002;
    S0ac = 0.000003;
    S0ad = 0.000004;
    S0bb = 0.000005;
    S0bc = 0.000006;
    S0bd = 0.000007;
    S0cd = 0.000008;
    break;
  case 1:
    S0aa = 0.000001;
    S0ab = 0.000002;
    S0ac = 0.000003;
    S0ad = 0.000004;
    S0bb = 0.000005;
    S0bc = 0.000006;
    S0bd = 0.000007;
    break;
  case 2:
    S0aa = 0.000001;
    S0ab = 0.000002;
    S0ac = 0.000003;
    S0ad = 0.000004;
    S0bc = 0.000005;
    S0bd = 0.000006;
    S0cd = 0.000007;
    break;
  case 3:
    S0aa = 0.000001;
    S0ab = 0.000002;
    S0ac = 0.000003;
    S0ad = 0.000004;
    S0bc = 0.000005;
    S0bd = 0.000006;
    break;
  case 4:
    S0aa = 0.000001;
    S0ab = 0.000002;
    S0ac = 0.000003;
    S0ad = 0.000004;
    break;
  case 5:
    S0ab = 0.000001;
    S0ac = 0.000002;
    S0ad = 0.000003;
    S0bc = 0.000004;
    S0bd = 0.000005;
    S0cd = 0.000006;
    break;
  case 6:
    S0ab = 0.000001;
    S0ac = 0.000002;
    S0ad = 0.000003;
    S0bc = 0.000004;
    S0bd = 0.000005;
    break;
  case 7:
    S0ab = 0.000001;
    S0ac = 0.000002;
    S0ad = 0.000003;
    break;
  case 8:
    S0ac = 0.000001;
    S0ad = 0.000002;
    S0bc = 0.000003;
    S0bd = 0.000004;
    break;
  default:
    break;
  }
  S0ba = S0ab;
  S0ca = S0ac;
  S0cb = S0bc;
  Kaa = 0.0;
  Kbb = 0.0;
  Kcc = 0.0;
  Kba = Kab;
  Kca = Kac;
  Kcb = Kbc;
  Zaa = Kaa - Kad - Kad;
  Zab = Kab - Kad - Kbd;
  Zac = Kac - Kad - Kcd;
  Zba = Kba - Kbd - Kad;
  Zbb = Kbb - Kbd - Kbd;
  Zbc = Kbc - Kbd - Kcd;
  Zca = Kca - Kcd - Kad;
  Zcb = Kcb - Kcd - Kbd;
  Zcc = Kcc - Kcd - Kcd;
  DenT = (-(S0ac * S0bb * S0ca) + S0ab * S0bc * S0ca + S0ac * S0ba * S0cb -
          S0aa * S0bc * S0cb - S0ab * S0ba * S0cc + S0aa * S0bb * S0cc);
  T11 = (-(S0bc * S0cb) + S0bb * S0cc) / DenT;
  T12 = (S0ac * S0cb - S0ab * S0cc) / DenT;
  T13 = (-(S0ac * S0bb) + S0ab * S0bc) / DenT;
  T21 = (S0bc * S0ca - S0ba * S0cc) / DenT;
  T22 = (-(S0ac * S0ca) + S0aa * S0cc) / DenT;
  T23 = (S0ac * S0ba - S0aa * S0bc) / DenT;
  T31 = (-(S0bb * S0ca) + S0ba * S0cb) / DenT;
  T32 = (S0ab * S0ca - S0aa * S0cb) / DenT;
  T33 = (-(S0ab * S0ba) + S0aa * S0bb) / DenT;
  Y1 = T11 * S0ad + T12 * S0bd + T13 * S0cd + 1.0;
  Y2 = T21 * S0ad + T22 * S0bd + T23 * S0cd + 1.0;
  Y3 = T31 * S0ad + T32 * S0bd + T33 * S0cd + 1.0;
  X11 = Y1 * Y1;
  X12 = Y1 * Y2;
  X13 = Y1 * Y3;
  X21 = Y2 * Y1;
  X22 = Y2 * Y2;
  X23 = Y2 * Y3;
  X31 = Y3 * Y1;
  X32 = Y3 * Y2;
  X33 = Y3 * Y3;
  ZZ = S0ad * (T11 * S0ad + T12 * S0bd + T13 * S0cd) +
       S0bd * (T21 * S0ad + T22 * S0bd + T23 * S0cd) +
       S0cd * (T31 * S0ad + T32 * S0bd + T33 * S0cd);
  m = 1.0 / (S0dd - ZZ);
  N11 = m * X11 + Zaa;
  N12 = m * X12 + Zab;
  N13 = m * X13 + Zac;
  N21 = m * X21 + Zba;
  N22 = m * X22 + Zbb;
  N23 = m * X23 + Zbc;
  N31 = m * X31 + Zca;
  N32 = m * X32 + Zcb;
  N33 = m * X33 + Zcc;
  M11 = N11 * S0aa + N12 * S0ab + N13 * S0ac;
  M12 = N11 * S0ab + N12 * S0bb + N13 * S0bc;
  M13 = N11 * S0ac + N12 * S0bc + N13 * S0cc;
  M21 = N21 * S0aa + N22 * S0ab + N23 * S0ac;
  M22 = N21 * S0ab + N22 * S0bb + N23 * S0bc;
  M23 = N21 * S0ac + N22 * S0bc + N23 * S0cc;
  M31 = N31 * S0aa + N32 * S0ab + N33 * S0ac;
  M32 = N31 * S0ab + N32 * S0bb + N33 * S0bc;
  M33 = N31 * S0ac + N32 * S0bc + N33 * S0cc;
  DenQ1 = 1.0 + M11 - M12 * M21 + M22 + M11 * M22 - M13 * M31 - M13 * M22 * M31;
  DenQ2 = M12 * M23 * M31 + M13 * M21 * M32 - M23 * M32 - M11 * M23 * M32 +
          M33 + M11 * M33;
  DenQ3 = -M12 * M21 * M33 + M22 * M33 + M11 * M22 * M33;
  DenQ = DenQ1 + DenQ2 + DenQ3;
  Q11 = (1.0 + M22 - M23 * M32 + M33 + M22 * M33) / DenQ;
  Q12 = (-M12 + M13 * M32 - M12 * M33) / DenQ;
  Q13 = (-M13 - M13 * M22 + M12 * M23) / DenQ;
  Q21 = (-M21 + M23 * M31 - M21 * M33) / DenQ;
  Q22 = (1.0 + M11 - M13 * M31 + M33 + M11 * M33) / DenQ;
  Q23 = (M13 * M21 - M23 - M11 * M23) / DenQ;
  Q31 = (-M31 - M22 * M31 + M21 * M32) / DenQ;
  Q32 = (M12 * M31 - M32 - M11 * M32) / DenQ;
  Q33 = (1.0 + M11 - M12 * M21 + M22 + M11 * M22) / DenQ;
  S11 = Q11 * S0aa + Q21 * S0ab + Q31 * S0ac;
  S12 = Q12 * S0aa + Q22 * S0ab + Q32 * S0ac;
  S13 = Q13 * S0aa + Q23 * S0ab + Q33 * S0ac;
  S22 = Q12 * S0ba + Q22 * S0bb + Q32 * S0bc;
  S23 = Q13 * S0ba + Q23 * S0bb + Q33 * S0bc;
  S33 = Q13 * S0ca + Q23 * S0cb + Q33 * S0cc;
  Nav = 6.022045e+23;
  Lad = (L[0] / v[0] - L[3] / v[3]) * sqrt(Nav);
  Lbd = (L[1] / v[1] - L[3] / v[3]) * sqrt(Nav);
  Lcd = (L[2] / v[2] - L[3] / v[3]) * sqrt(Nav);
  Intg = Lad * Lad * S11 + Lbd * Lbd * S22 + Lcd * Lcd * S33 +
         2.0 * Lad * Lbd * S12 + 2.0 * Lbd * Lcd * S23 + 2.0 * Lad * Lcd * S13;
  Intg *= 1.0e-26;
  return Intg;
}


x86 assembly (clang, -O0):
<Iq>:
push   %rbp
mov    %rsp,%rbp
sub    $0x4f0,%rsp
movsd  %xmm0,-0x8(%rbp)
movsd  %xmm1,-0x10(%rbp)
mov    %rdi,-0x18(%rbp)
mov    %rsi,-0x20(%rbp)
mov    %rdx,-0x28(%rbp)
mov    %rcx,-0x30(%rbp)
mov    %r8,-0x38(%rbp)
movsd  %xmm2,-0x40(%rbp)
movsd  %xmm3,-0x48(%rbp)
movsd  %xmm4,-0x50(%rbp)
movsd  %xmm5,-0x58(%rbp)
movsd  %xmm6,-0x60(%rbp)
movsd  %xmm7,-0x68(%rbp)
movsd  0x2e91(%rip),%xmm0
addsd  -0x10(%rbp),%xmm0
cvttsd2si %xmm0,%eax
mov    %eax,-0x6c(%rbp)
cmpl   $0x1,-0x6c(%rbp)
jg     1270 <Iq+0x150>
mov    -0x20(%rbp),%rax
movsd  0x2e9f(%rip),%xmm0
movsd  %xmm0,0x8(%rax)
mov    -0x20(%rbp),%rax
movsd  0x2e8e(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0x2e76(%rip),%xmm0
movsd  %xmm0,0x8(%rax)
mov    -0x18(%rbp),%rax
movsd  0x2e65(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x30(%rbp),%rax
movsd  0x2e4d(%rip),%xmm0
movsd  %xmm0,0x8(%rax)
mov    -0x30(%rbp),%rax
movsd  0x2e3c(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x28(%rbp),%rax
movsd  0x2e24(%rip),%xmm0
movsd  %xmm0,0x8(%rax)
mov    -0x28(%rbp),%rax
movsd  0x2e13(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x38(%rbp),%rax
movsd  0x2dfb(%rip),%xmm0
movsd  %xmm0,0x8(%rax)
mov    -0x38(%rbp),%rax
movsd  0x2dea(%rip),%xmm0
movsd  %xmm0,(%rax)
movsd  0x2dd6(%rip),%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  0x2dc9(%rip),%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  0x2dbc(%rip),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x2daf(%rip),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x2da2(%rip),%xmm0
movsd  %xmm0,-0x40(%rbp)
jmp    1300 <Iq+0x1e0>
cmpl   $0x1,-0x6c(%rbp)
jle    12fb <Iq+0x1db>
cmpl   $0x4,-0x6c(%rbp)
jg     12fb <Iq+0x1db>
mov    -0x20(%rbp),%rax
movsd  0x2da0(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x18(%rbp),%rax
movsd  0x2d88(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x30(%rbp),%rax
movsd  0x2d70(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x28(%rbp),%rax
movsd  0x2d58(%rip),%xmm0
movsd  %xmm0,(%rax)
mov    -0x38(%rbp),%rax
movsd  0x2d40(%rip),%xmm0
movsd  %xmm0,(%rax)
movsd  0x2d2c(%rip),%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x2d1f(%rip),%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x2d12(%rip),%xmm0
movsd  %xmm0,-0x40(%rbp)
jmp    1300 <Iq+0x1e0>
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm2
movsd  0x8(%rax),%xmm1
movsd  0x2d23(%rip),%xmm0
movsd  %xmm0,-0x470(%rbp)
ff
subsd  %xmm2,%xmm0
subsd  %xmm1,%xmm0
movsd  0x10(%rax),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,0x18(%rax)
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x8(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x78(%rbp)
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x80(%rbp)
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x88(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x90(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x98(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xa0(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x8(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xd8(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xe0(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xe8(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xf0(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xf8(%rbp)
ff
mov    -0x28(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0x100(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x8(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xa8(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xb0(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xb8(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x10(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xc0(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  0x8(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xc8(%rbp)
ff
mov    -0x20(%rbp),%rax
movsd  0x10(%rax),%xmm0
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
call   1040 <sqrt@plt>
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
mulsd  %xmm0,%xmm0
mov    -0x38(%rbp),%rax
movsd  (%rax),%xmm1
mulsd  %xmm1,%xmm0
mulsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x2ac1(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x110(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
mulsd  %xmm0,%xmm0
mov    -0x38(%rbp),%rax
movsd  0x8(%rax),%xmm2
mulsd  %xmm2,%xmm0
mulsd  %xmm2,%xmm0
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm2
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
mulsd  %xmm0,%xmm0
mov    -0x38(%rbp),%rax
movsd  0x10(%rax),%xmm2
mulsd  %xmm2,%xmm0
mulsd  %xmm2,%xmm0
mov    -0x18(%rbp),%rax
movsd  0x10(%rax),%xmm2
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
mulsd  %xmm0,%xmm0
mov    -0x38(%rbp),%rax
movsd  0x18(%rax),%xmm2
mulsd  %xmm2,%xmm0
mulsd  %xmm2,%xmm0
mov    -0x18(%rbp),%rax
movsd  0x18(%rax),%xmm2
mulsd  %xmm2,%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0x110(%rbp),%xmm0
ff
movapd 0x2a6c(%rip),%xmm1
movaps %xmm1,-0x490(%rbp)
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
subsd  %xmm2,%xmm0
movsd  -0x110(%rbp),%xmm2
ff
addsd  %xmm2,%xmm0
addsd  %xmm0,%xmm0
mulsd  %xmm2,%xmm2
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm2
mulsd  %xmm2,%xmm0
mov    -0x28(%rbp),%rax
movsd  (%rax),%xmm2
mulsd  %xmm2,%xmm0
movsd  -0x130(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  -0x110(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x110(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x4d0(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x4d0(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x118(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  -0xa8(%rbp),%xmm0
ff
movsd  -0xd8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x78(%rbp),%xmm2
mulsd  %xmm2,%xmm0
movsd  -0x140(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x110(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x110(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x4c8(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x4c8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x4c0(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x4c0(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x120(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  -0xb0(%rbp),%xmm0
ff
movsd  -0xe0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x80(%rbp),%xmm2
mulsd  %xmm2,%xmm0
movsd  -0x150(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  -0x110(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x110(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x4b8(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
movsd  -0x120(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x4b8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x4b0(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x4b0(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x128(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x160(%rbp)
ff
movsd  -0xb8(%rbp),%xmm0
ff
movsd  -0xe8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x88(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x160(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  -0x148(%rbp),%xmm0
ff
movsd  %xmm0,-0x170(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
subsd  %xmm2,%xmm0
movsd  -0x118(%rbp),%xmm2
ff
addsd  %xmm2,%xmm0
addsd  %xmm0,%xmm0
mulsd  %xmm2,%xmm2
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
movsd  0x8(%rax),%xmm2
mulsd  %xmm2,%xmm0
mov    -0x28(%rbp),%rax
movsd  0x8(%rax),%xmm2
mulsd  %xmm2,%xmm0
movsd  -0x178(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x118(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x4a8(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x4a8(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x120(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  -0xf0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x90(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x188(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  -0x118(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x118(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x4a0(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x4a0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x498(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x498(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x128(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  -0xc8(%rbp),%xmm0
ff
movsd  -0xf8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x98(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x198(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  -0x190(%rbp),%xmm0
ff
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
subsd  %xmm2,%xmm0
movsd  -0x120(%rbp),%xmm2
ff
addsd  %xmm2,%xmm0
addsd  %xmm0,%xmm0
mulsd  %xmm2,%xmm2
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x10(%rax),%xmm0
mov    -0x20(%rbp),%rax
movsd  0x10(%rax),%xmm2
mulsd  %xmm2,%xmm0
mov    -0x28(%rbp),%rax
movsd  0x10(%rax),%xmm2
mulsd  %xmm2,%xmm0
movsd  -0x1b8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  -0x120(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movaps %xmm0,%xmm2
movsd  -0x470(%rbp),%xmm0
ff
subsd  %xmm2,%xmm0
movsd  -0x120(%rbp),%xmm2
ff
divsd  %xmm2,%xmm0
movsd  %xmm0,-0x478(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movaps -0x490(%rbp),%xmm1
movsd  -0x470(%rbp),%xmm2
ff
movaps %xmm0,%xmm3
movsd  -0x478(%rbp),%xmm0
ff
subsd  %xmm3,%xmm2
movsd  -0x128(%rbp),%xmm3
ff
divsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
movsd  -0xd0(%rbp),%xmm0
ff
movsd  -0x100(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0xa0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  -0x1c8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  -0x128(%rbp),%xmm0
ff
pxor   %xmm1,%xmm0
call   1030 <exp@plt>
movsd  -0x470(%rbp),%xmm1
ff
subsd  %xmm1,%xmm0
movsd  -0x128(%rbp),%xmm1
ff
addsd  %xmm1,%xmm0
addsd  %xmm0,%xmm0
mulsd  %xmm1,%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
mov    -0x18(%rbp),%rax
movsd  0x18(%rax),%xmm0
mov    -0x20(%rbp),%rax
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
mov    -0x28(%rbp),%rax
movsd  0x18(%rax),%xmm1
mulsd  %xmm1,%xmm0
movsd  -0x1d8(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
mov    -0x6c(%rbp),%eax
mov    %rax,-0x468(%rbp)
sub    $0x8,%rax
ja     2094 <Iq+0xf74>
mov    -0x468(%rbp),%rax
lea    0x2372(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
movsd  0x2311(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x22f9(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x22e1(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x22c9(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x22d9(%rip),%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  0x22d1(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x22c9(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x22c1(%rip),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x228c(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x2274(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x225c(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x2244(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x2254(%rip),%xmm0
movsd  %xmm0,-0x180(%rbp)
ff
movsd  0x224c(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x2244(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x2217(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x21ff(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x21e7(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x21cf(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x21df(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x21d7(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x21cf(%rip),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x21a2(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x218a(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x2172(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x215a(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x216a(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x2162(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x213d(%rip),%xmm0
movsd  %xmm0,-0x138(%rbp)
ff
movsd  0x2125(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x210d(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x20f5(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x20f8(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x20e0(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x20c8(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x20b0(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x20c0(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x20b8(%rip),%xmm0
movsd  %xmm0,-0x1d0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x2093(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x207b(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x2063(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x204b(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
movsd  0x205b(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x203e(%rip),%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  0x2026(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x200e(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
jmp    2099 <Iq+0xf79>
movsd  0x2009(%rip),%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  0x1ff1(%rip),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x1fd9(%rip),%xmm0
movsd  %xmm0,-0x190(%rbp)
ff
movsd  0x1fc1(%rip),%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
jmp    2099 <Iq+0xf79>
jmp    2099 <Iq+0xf79>
movsd  -0x148(%rbp),%xmm0
ff
movsd  %xmm0,-0x170(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  -0x190(%rbp),%xmm0
ff
movsd  %xmm0,-0x1b0(%rbp)
ff
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x1e8(%rbp)
ff
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x1f0(%rbp)
ff
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
movsd  -0x48(%rbp),%xmm0
movsd  %xmm0,-0x208(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  %xmm0,-0x210(%rbp)
ff
movsd  -0x1e8(%rbp),%xmm0
ff
subsd  -0x50(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  -0x40(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x220(%rbp)
ff
movsd  -0x48(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x228(%rbp)
ff
movsd  -0x200(%rbp),%xmm0
ff
subsd  -0x60(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x230(%rbp)
ff
movsd  -0x1f0(%rbp),%xmm0
ff
subsd  -0x60(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x240(%rbp)
ff
movsd  -0x208(%rbp),%xmm0
ff
subsd  -0x68(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  -0x210(%rbp),%xmm0
ff
subsd  -0x68(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
movsd  -0x1f8(%rbp),%xmm0
ff
subsd  -0x68(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  -0x1a8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x148(%rbp),%xmm0
ff
mulsd  -0x190(%rbp),%xmm0
ff
movsd  -0x1a8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x158(%rbp),%xmm1
ff
mulsd  -0x170(%rbp),%xmm1
ff
movsd  -0x1b0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x138(%rbp),%xmm0
ff
mulsd  -0x190(%rbp),%xmm0
ff
movsd  -0x1b0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x148(%rbp),%xmm1
ff
mulsd  -0x170(%rbp),%xmm1
ff
movsd  -0x1c0(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x138(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x260(%rbp)
ff
movsd  -0x190(%rbp),%xmm0
ff
mulsd  -0x1b0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x180(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x268(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movsd  -0x1b0(%rbp),%xmm2
ff
movsd  -0x148(%rbp),%xmm1
ff
mulsd  -0x1c0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x270(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x148(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x278(%rbp)
ff
movsd  -0x190(%rbp),%xmm0
ff
movsd  -0x1a8(%rbp),%xmm2
ff
movsd  -0x170(%rbp),%xmm1
ff
mulsd  -0x1c0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x280(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
mulsd  -0x1a8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x138(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x288(%rbp)
ff
movsd  -0x158(%rbp),%xmm0
ff
movsd  -0x170(%rbp),%xmm2
ff
movsd  -0x138(%rbp),%xmm1
ff
mulsd  -0x190(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x290(%rbp)
ff
movsd  -0x180(%rbp),%xmm0
ff
mulsd  -0x1a8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x170(%rbp),%xmm0
ff
movsd  -0x1b0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x298(%rbp)
ff
movsd  -0x148(%rbp),%xmm0
ff
movsd  -0x1a8(%rbp),%xmm2
ff
movsd  -0x138(%rbp),%xmm1
ff
mulsd  -0x1b0(%rbp),%xmm1
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x2a0(%rbp)
ff
movsd  -0x148(%rbp),%xmm0
ff
mulsd  -0x170(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  -0x138(%rbp),%xmm0
ff
movsd  -0x180(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x260(%rbp),%xmm0
ff
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  -0x268(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x270(%rbp),%xmm0
ff
mulsd  -0x1a0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x278(%rbp),%xmm0
ff
movsd  -0x1d0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x1a32(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  -0x280(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x288(%rbp),%xmm0
ff
mulsd  -0x1a0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x290(%rbp),%xmm0
ff
movsd  -0x1d0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x19de(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  -0x298(%rbp),%xmm1
ff
movsd  -0x168(%rbp),%xmm2
ff
movsd  -0x2a0(%rbp),%xmm0
ff
mulsd  -0x1a0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x2a8(%rbp),%xmm0
ff
movsd  -0x1d0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x198a(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  -0x2b0(%rbp),%xmm0
ff
mulsd  -0x2b0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  -0x2b0(%rbp),%xmm0
ff
mulsd  -0x2b8(%rbp),%xmm0
ff
movsd  %xmm0,-0x2d0(%rbp)
ff
movsd  -0x2b0(%rbp),%xmm0
ff
mulsd  -0x2c0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
mulsd  -0x2b0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
mulsd  -0x2b8(%rbp),%xmm0
ff
movsd  %xmm0,-0x2e8(%rbp)
ff
movsd  -0x2b8(%rbp),%xmm0
ff
mulsd  -0x2c0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2f0(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm0
ff
mulsd  -0x2b0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm0
ff
mulsd  -0x2b8(%rbp),%xmm0
ff
movsd  %xmm0,-0x300(%rbp)
ff
movsd  -0x2c0(%rbp),%xmm0
ff
mulsd  -0x2c0(%rbp),%xmm0
ff
movsd  %xmm0,-0x308(%rbp)
ff
movsd  -0x168(%rbp),%xmm1
ff
movsd  -0x268(%rbp),%xmm0
ff
movsd  -0x168(%rbp),%xmm3
ff
movsd  -0x270(%rbp),%xmm2
ff
mulsd  -0x1a0(%rbp),%xmm2
ff
mulsd  %xmm3,%xmm0
addsd  %xmm2,%xmm0
movsd  -0x278(%rbp),%xmm2
ff
movsd  -0x1d0(%rbp),%xmm3
ff
mulsd  %xmm3,%xmm2
addsd  %xmm0,%xmm2
movsd  -0x1a0(%rbp),%xmm0
ff
movsd  -0x280(%rbp),%xmm4
ff
movsd  -0x168(%rbp),%xmm5
ff
movsd  -0x288(%rbp),%xmm3
ff
mulsd  -0x1a0(%rbp),%xmm3
ff
mulsd  %xmm5,%xmm4
addsd  %xmm3,%xmm4
movsd  -0x290(%rbp),%xmm3
ff
movsd  -0x1d0(%rbp),%xmm5
ff
mulsd  %xmm5,%xmm3
addsd  %xmm4,%xmm3
mulsd  %xmm3,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x1d0(%rbp),%xmm0
ff
movsd  -0x298(%rbp),%xmm3
ff
movsd  -0x168(%rbp),%xmm4
ff
movsd  -0x2a0(%rbp),%xmm2
ff
mulsd  -0x1a0(%rbp),%xmm2
ff
mulsd  %xmm4,%xmm3
addsd  %xmm2,%xmm3
movsd  -0x2a8(%rbp),%xmm2
ff
movsd  -0x1d0(%rbp),%xmm4
ff
mulsd  %xmm4,%xmm2
addsd  %xmm3,%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  -0x1e0(%rbp),%xmm1
ff
subsd  -0x310(%rbp),%xmm1
ff
movsd  0x179a(%rip),%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2c8(%rbp),%xmm2
ff
movsd  -0x218(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x380(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2d0(%rbp),%xmm2
ff
movsd  -0x220(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x388(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2d8(%rbp),%xmm2
ff
movsd  -0x228(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x390(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2e0(%rbp),%xmm2
ff
movsd  -0x230(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x398(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2e8(%rbp),%xmm2
ff
movsd  -0x238(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3a0(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2f0(%rbp),%xmm2
ff
movsd  -0x240(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3a8(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x2f8(%rbp),%xmm2
ff
movsd  -0x248(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3b0(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x300(%rbp),%xmm2
ff
movsd  -0x250(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3b8(%rbp)
ff
movsd  -0x108(%rbp),%xmm0
ff
movsd  -0x308(%rbp),%xmm2
ff
movsd  -0x258(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3c0(%rbp)
ff
movsd  -0x380(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x388(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x390(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3c8(%rbp)
ff
movsd  -0x380(%rbp),%xmm1
ff
movsd  -0x148(%rbp),%xmm2
ff
movsd  -0x388(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x390(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3d0(%rbp)
ff
movsd  -0x380(%rbp),%xmm1
ff
movsd  -0x158(%rbp),%xmm2
ff
movsd  -0x388(%rbp),%xmm0
ff
mulsd  -0x190(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x390(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3d8(%rbp)
ff
movsd  -0x398(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x3a0(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3a8(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3e0(%rbp)
ff
movsd  -0x398(%rbp),%xmm1
ff
movsd  -0x148(%rbp),%xmm2
ff
movsd  -0x3a0(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3a8(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3e8(%rbp)
ff
movsd  -0x398(%rbp),%xmm1
ff
movsd  -0x158(%rbp),%xmm2
ff
movsd  -0x3a0(%rbp),%xmm0
ff
mulsd  -0x190(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3a8(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f0(%rbp)
ff
movsd  -0x3b0(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x3b8(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c0(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f8(%rbp)
ff
movsd  -0x3b0(%rbp),%xmm1
ff
movsd  -0x148(%rbp),%xmm2
ff
movsd  -0x3b8(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c0(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x400(%rbp)
ff
movsd  -0x3b0(%rbp),%xmm1
ff
movsd  -0x158(%rbp),%xmm2
ff
movsd  -0x3b8(%rbp),%xmm0
ff
mulsd  -0x190(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c0(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x408(%rbp)
ff
movsd  0x1396(%rip),%xmm0
addsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3d0(%rbp),%xmm1
ff
movsd  -0x3e0(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x3e8(%rbp),%xmm1
ff
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3e8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x3d8(%rbp),%xmm1
movsd  -0x3f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3d8(%rbp),%xmm0
ff
mulsd  -0x3e8(%rbp),%xmm0
ff
movsd  -0x3f8(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  -0x3d0(%rbp),%xmm1
ff
mulsd  -0x3f0(%rbp),%xmm1
ff
movsd  -0x3f8(%rbp),%xmm2
ff
movsd  -0x3d8(%rbp),%xmm0
ff
mulsd  -0x3e0(%rbp),%xmm0
ff
mulsd  -0x400(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3f0(%rbp),%xmm0
ff
movsd  -0x400(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x3c8(%rbp),%xmm1
ff
mulsd  -0x3f0(%rbp),%xmm1
ff
movsd  -0x400(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x408(%rbp),%xmm1
ff
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x320(%rbp)
ff
movsd  -0x3d0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  -0x3e0(%rbp),%xmm1
ff
movsd  -0x408(%rbp),%xmm2
ff
movsd  -0x3e8(%rbp),%xmm0
ff
mulsd  -0x408(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c8(%rbp),%xmm0
ff
mulsd  -0x3e8(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  -0x318(%rbp),%xmm0
ff
addsd  -0x320(%rbp),%xmm0
ff
addsd  -0x328(%rbp),%xmm0
ff
movsd  %xmm0,-0x330(%rbp)
ff
movsd  0x1174(%rip),%xmm0
addsd  -0x3e8(%rbp),%xmm0
ff
movsd  -0x3f0(%rbp),%xmm1
ff
movsd  -0x400(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x408(%rbp),%xmm1
ff
movsd  -0x3e8(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x338(%rbp)
ff
movsd  -0x3d0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x400(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3d0(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x340(%rbp)
ff
movsd  -0x3d8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x3e8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3d0(%rbp),%xmm0
ff
movsd  -0x3f0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
movsd  %xmm0,-0x348(%rbp)
ff
movsd  -0x3e0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x3f0(%rbp),%xmm1
ff
movsd  -0x3f8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3e0(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x350(%rbp)
ff
movsd  0xfa3(%rip),%xmm0
addsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x3f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x408(%rbp),%xmm1
ff
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x408(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x358(%rbp)
ff
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  -0x3e0(%rbp),%xmm2
ff
movsd  -0x3f0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3f0(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x360(%rbp)
ff
movsd  -0x3f8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
movsd  -0x3e8(%rbp),%xmm1
ff
movsd  -0x3f8(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3e0(%rbp),%xmm0
ff
movsd  -0x400(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x368(%rbp)
ff
movsd  -0x3d0(%rbp),%xmm1
ff
movsd  -0x3f8(%rbp),%xmm2
ff
movsd  -0x400(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x400(%rbp),%xmm2
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x370(%rbp)
ff
movsd  0xdd2(%rip),%xmm0
addsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3d0(%rbp),%xmm1
ff
movsd  -0x3e0(%rbp),%xmm2
ff
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x3e8(%rbp),%xmm1
ff
movsd  -0x3c8(%rbp),%xmm0
ff
movsd  -0x3e8(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
divsd  -0x330(%rbp),%xmm0
ff
movsd  %xmm0,-0x378(%rbp)
ff
movsd  -0x338(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x350(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x368(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x410(%rbp)
ff
movsd  -0x340(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x358(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x370(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x418(%rbp)
ff
movsd  -0x348(%rbp),%xmm1
ff
movsd  -0x138(%rbp),%xmm2
ff
movsd  -0x360(%rbp),%xmm0
ff
mulsd  -0x148(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x378(%rbp),%xmm0
ff
movsd  -0x158(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x430(%rbp)
ff
movsd  -0x340(%rbp),%xmm1
ff
movsd  -0x170(%rbp),%xmm2
ff
movsd  -0x358(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x370(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x420(%rbp)
ff
movsd  -0x348(%rbp),%xmm1
ff
movsd  -0x170(%rbp),%xmm2
ff
movsd  -0x360(%rbp),%xmm0
ff
mulsd  -0x180(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x378(%rbp),%xmm0
ff
movsd  -0x190(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x428(%rbp)
ff
movsd  -0x348(%rbp),%xmm1
ff
movsd  -0x1a8(%rbp),%xmm2
ff
movsd  -0x360(%rbp),%xmm0
ff
mulsd  -0x1b0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x378(%rbp),%xmm0
ff
movsd  -0x1c0(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x438(%rbp)
ff
movsd  0xc13(%rip),%xmm0
movsd  %xmm0,-0x458(%rbp)
ff
mov    -0x30(%rbp),%rax
movsd  (%rax),%xmm0
mov    -0x28(%rbp),%rax
divsd  (%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x18(%rax),%xmm1
mov    -0x28(%rbp),%rax
divsd  0x18(%rax),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x4e8(%rbp)
ff
movsd  -0x458(%rbp),%xmm0
ff
call   1040 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  -0x4e8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x440(%rbp)
ff
mov    -0x30(%rbp),%rax
movsd  0x8(%rax),%xmm0
mov    -0x28(%rbp),%rax
divsd  0x8(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x18(%rax),%xmm1
mov    -0x28(%rbp),%rax
divsd  0x18(%rax),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x4e0(%rbp)
ff
movsd  -0x458(%rbp),%xmm0
ff
call   1040 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  -0x4e0(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x448(%rbp)
ff
mov    -0x30(%rbp),%rax
movsd  0x10(%rax),%xmm0
mov    -0x28(%rbp),%rax
divsd  0x10(%rax),%xmm0
mov    -0x30(%rbp),%rax
movsd  0x18(%rax),%xmm1
mov    -0x28(%rbp),%rax
divsd  0x18(%rax),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x4d8(%rbp)
ff
movsd  -0x458(%rbp),%xmm0
ff
call   1040 <sqrt@plt>
movaps %xmm0,%xmm1
movsd  -0x4d8(%rbp),%xmm0
ff
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x450(%rbp)
ff
movsd  -0x440(%rbp),%xmm0
ff
mulsd  -0x440(%rbp),%xmm0
ff
movsd  -0x410(%rbp),%xmm2
ff
movsd  -0x448(%rbp),%xmm1
ff
mulsd  -0x448(%rbp),%xmm1
ff
mulsd  -0x420(%rbp),%xmm1
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x450(%rbp),%xmm1
ff
mulsd  -0x450(%rbp),%xmm1
ff
movsd  -0x438(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xaa9(%rip),%xmm0
mulsd  -0x440(%rbp),%xmm0
ff
mulsd  -0x448(%rbp),%xmm0
ff
movsd  -0x418(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0xa81(%rip),%xmm1
mulsd  -0x448(%rbp),%xmm1
ff
mulsd  -0x450(%rbp),%xmm1
ff
movsd  -0x428(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  0xa59(%rip),%xmm0
mulsd  -0x440(%rbp),%xmm0
ff
mulsd  -0x450(%rbp),%xmm0
ff
movsd  -0x430(%rbp),%xmm2
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x460(%rbp)
ff
movsd  0xa21(%rip),%xmm0
mulsd  -0x460(%rbp),%xmm0
ff
movsd  %xmm0,-0x460(%rbp)
ff
movsd  -0x460(%rbp),%xmm0
ff
add    $0x4f0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<Iq>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x268,%rsp
movaps %xmm7,0xf0(%rsp)
mov    %r8,%r13
mov    %rcx,%r14
mov    %rdx,%r15
mov    %rsi,%rbx
mov    %rdi,%r12
addsd  0x1eb0(%rip),%xmm1
cvttsd2si %xmm1,%ebp
movabs $0x4014000000000000,%rax
cmp    $0x1,%ebp
movaps %xmm0,0x10(%rsp)
jg     11a6 <Iq+0x86>
movaps 0x1f01(%rip),%xmm0
movups %xmm0,(%rbx)
movaps 0x1f07(%rip),%xmm0
movups %xmm0,(%r12)
movaps 0x1f0b(%rip),%xmm0
movups %xmm0,(%r14)
movaps 0x1f10(%rip),%xmm0
movups %xmm0,(%r15)
mov    %rax,0x8(%r13)
movsd  0x1e68(%rip),%xmm6
movapd %xmm6,%xmm5
jmp    11e0 <Iq+0xc0>
cmp    $0x4,%ebp
ja     11fa <Iq+0xda>
movabs $0x3e7ad7f29abcaf48,%rcx
d7 7a 3e
mov    %rcx,(%rbx)
movabs $0x408f400000000000,%rcx
40 8f 40
mov    %rcx,(%r12)
movabs $0x3d719799812dea11,%rcx
97 71 3d
mov    %rcx,(%r14)
movabs $0x4059000000000000,%rcx
mov    %rcx,(%r15)
mov    %rax,0x0(%r13)
movsd  0x1e1c(%rip),%xmm2
movapd %xmm2,%xmm3
unpcklpd %xmm5,%xmm3
movapd %xmm2,%xmm4
jmp    11fe <Iq+0xde>
unpcklpd %xmm5,%xmm3
unpcklpd %xmm6,%xmm4
movsd  0x1e06(%rip),%xmm0
subsd  (%rbx),%xmm0
subsd  0x8(%rbx),%xmm0
subsd  0x10(%rbx),%xmm0
movsd  %xmm0,0x18(%rbx)
movsd  (%r12),%xmm0
mulsd  0x8(%r12),%xmm0
xorpd  %xmm5,%xmm5
ucomisd %xmm5,%xmm0
movapd %xmm3,0x100(%rsp)
movapd %xmm4,0xe0(%rsp)
movapd %xmm2,0x250(%rsp)
jb     1258 <Iq+0x138>
xorps  %xmm1,%xmm1
sqrtsd %xmm0,%xmm1
jmp    1265 <Iq+0x145>
call   1040 <sqrt@plt>
xorpd  %xmm5,%xmm5
movapd %xmm0,%xmm1
movsd  (%r12),%xmm0
mulsd  0x10(%r12),%xmm0
ucomisd %xmm5,%xmm0
movapd %xmm1,0x30(%rsp)
jb     1287 <Iq+0x167>
xorps  %xmm1,%xmm1
sqrtsd %xmm0,%xmm1
jmp    1290 <Iq+0x170>
call   1040 <sqrt@plt>
movapd %xmm0,%xmm1
movsd  (%r12),%xmm0
mulsd  0x18(%r12),%xmm0
xorpd  %xmm2,%xmm2
ucomisd %xmm2,%xmm0
movapd %xmm1,0x110(%rsp)
jb     12b6 <Iq+0x196>
sqrtsd %xmm0,%xmm0
jmp    12bf <Iq+0x19f>
call   1040 <sqrt@plt>
xorpd  %xmm2,%xmm2
movapd %xmm0,0x160(%rsp)
movsd  0x8(%r12),%xmm0
mulsd  0x10(%r12),%xmm0
ucomisd %xmm2,%xmm0
jb     12e5 <Iq+0x1c5>
xorps  %xmm1,%xmm1
sqrtsd %xmm0,%xmm1
jmp    12ee <Iq+0x1ce>
call   1040 <sqrt@plt>
movapd %xmm0,%xmm1
movsd  0x8(%r12),%xmm0
mulsd  0x18(%r12),%xmm0
xorpd  %xmm2,%xmm2
ucomisd %xmm2,%xmm0
movapd %xmm1,0x90(%rsp)
jb     1318 <Iq+0x1f8>
xorps  %xmm1,%xmm1
sqrtsd %xmm0,%xmm1
jmp    1325 <Iq+0x205>
call   1040 <sqrt@plt>
xorpd  %xmm2,%xmm2
movapd %xmm0,%xmm1
movsd  0x10(%r12),%xmm0
mulsd  0x18(%r12),%xmm0
ucomisd %xmm2,%xmm0
movapd %xmm1,0x20(%rsp)
jb     1345 <Iq+0x225>
sqrtsd %xmm0,%xmm0
jmp    134a <Iq+0x22a>
call   1040 <sqrt@plt>
movapd %xmm0,0x190(%rsp)
movsd  (%r15),%xmm0
mulsd  0x8(%r15),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     136e <Iq+0x24e>
sqrtsd %xmm0,%xmm0
jmp    1377 <Iq+0x257>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movapd %xmm0,0x180(%rsp)
movsd  (%r15),%xmm0
mulsd  0x10(%r15),%xmm0
ucomisd %xmm1,%xmm0
jb     1397 <Iq+0x277>
sqrtsd %xmm0,%xmm0
jmp    139c <Iq+0x27c>
call   1040 <sqrt@plt>
movapd %xmm0,0x150(%rsp)
movsd  (%r15),%xmm0
mulsd  0x18(%r15),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     13c0 <Iq+0x2a0>
sqrtsd %xmm0,%xmm0
jmp    13c9 <Iq+0x2a9>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movapd %xmm0,0x140(%rsp)
movsd  0x8(%r15),%xmm0
mulsd  0x10(%r15),%xmm0
ucomisd %xmm1,%xmm0
jb     13ea <Iq+0x2ca>
sqrtsd %xmm0,%xmm0
jmp    13ef <Iq+0x2cf>
call   1040 <sqrt@plt>
movsd  %xmm0,0xa0(%rsp)
movsd  0x8(%r15),%xmm0
mulsd  0x18(%r15),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     1414 <Iq+0x2f4>
sqrtsd %xmm0,%xmm0
jmp    141d <Iq+0x2fd>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movsd  %xmm0,0xc8(%rsp)
movsd  0x10(%r15),%xmm0
mulsd  0x18(%r15),%xmm0
ucomisd %xmm1,%xmm0
jb     143e <Iq+0x31e>
sqrtsd %xmm0,%xmm0
jmp    1443 <Iq+0x323>
call   1040 <sqrt@plt>
movapd %xmm0,0x170(%rsp)
movsd  (%rbx),%xmm0
mulsd  0x8(%rbx),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     1465 <Iq+0x345>
sqrtsd %xmm0,%xmm0
jmp    146e <Iq+0x34e>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movapd %xmm0,0x70(%rsp)
movsd  (%rbx),%xmm0
mulsd  0x10(%rbx),%xmm0
ucomisd %xmm1,%xmm0
jb     1489 <Iq+0x369>
sqrtsd %xmm0,%xmm0
jmp    148e <Iq+0x36e>
call   1040 <sqrt@plt>
movapd %xmm0,0x130(%rsp)
movsd  (%rbx),%xmm0
mulsd  0x18(%rbx),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     14b0 <Iq+0x390>
sqrtsd %xmm0,%xmm0
jmp    14b9 <Iq+0x399>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movapd %xmm0,0x120(%rsp)
movsd  0x8(%rbx),%xmm0
mulsd  0x10(%rbx),%xmm0
ucomisd %xmm1,%xmm0
jb     14d8 <Iq+0x3b8>
sqrtsd %xmm0,%xmm0
jmp    14dd <Iq+0x3bd>
call   1040 <sqrt@plt>
movsd  %xmm0,0xb8(%rsp)
movsd  0x8(%rbx),%xmm0
mulsd  0x18(%rbx),%xmm0
xorpd  %xmm1,%xmm1
ucomisd %xmm1,%xmm0
jb     1500 <Iq+0x3e0>
sqrtsd %xmm0,%xmm0
jmp    1509 <Iq+0x3e9>
call   1040 <sqrt@plt>
xorpd  %xmm1,%xmm1
movsd  %xmm0,0xc0(%rsp)
movsd  0x10(%rbx),%xmm0
mulsd  0x18(%rbx),%xmm0
ucomisd %xmm1,%xmm0
jb     1528 <Iq+0x408>
sqrtsd %xmm0,%xmm0
jmp    152d <Iq+0x40d>
call   1040 <sqrt@plt>
movapd 0x70(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
movapd %xmm1,0x70(%rsp)
movapd 0x10(%rsp),%xmm3
mulsd  %xmm3,%xmm3
unpcklpd %xmm3,%xmm3
movupd 0x0(%r13),%xmm0
movupd 0x10(%r13),%xmm1
movapd %xmm3,%xmm2
mulpd  %xmm0,%xmm2
mulpd  %xmm0,%xmm2
movupd (%r12),%xmm4
mulpd  %xmm2,%xmm4
movupd 0x10(%r12),%xmm0
movapd 0x1b34(%rip),%xmm2
divpd  %xmm2,%xmm4
movapd %xmm4,0x50(%rsp)
mulpd  %xmm1,%xmm3
mulpd  %xmm1,%xmm3
mulpd  %xmm0,%xmm3
divpd  %xmm2,%xmm3
movapd %xmm3,0x10(%rsp)
movapd %xmm4,%xmm0
xorpd  0x1b18(%rip),%xmm0
movapd %xmm0,0x60(%rsp)
call   1030 <exp@plt>
movapd %xmm0,0x200(%rsp)
movsd  (%r12),%xmm0
movaps %xmm0,0x210(%rsp)
movsd  (%rbx),%xmm0
movaps %xmm0,0xd0(%rsp)
movsd  (%r15),%xmm0
movaps %xmm0,(%rsp)
movaps 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0x220(%rsp)
movaps 0x50(%rsp),%xmm0
movhlps %xmm0,%xmm0
xorps  0x1ac0(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
call   1030 <exp@plt>
movaps %xmm0,0x230(%rsp)
movaps 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0x1e0(%rsp)
movaps 0x40(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0x1f0(%rsp)
movaps 0x10(%rsp),%xmm0
xorps  0x1a7e(%rip),%xmm0
movaps %xmm0,0x80(%rsp)
call   1030 <exp@plt>
movaps %xmm0,0x1d0(%rsp)
movaps 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0x1c0(%rsp)
movapd 0x40(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1030 <exp@plt>
movapd %xmm0,0x1b0(%rsp)
movaps 0x10(%rsp),%xmm0
movhlps %xmm0,%xmm0
movaps %xmm0,0x240(%rsp)
xorps  0x1a26(%rip),%xmm0
movaps %xmm0,0x60(%rsp)
call   1030 <exp@plt>
movaps %xmm0,0x1a0(%rsp)
movapd 0x40(%rsp),%xmm0
call   1030 <exp@plt>
movapd 0x200(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
addpd  0x1a14(%rip),%xmm1
movapd 0x50(%rsp),%xmm0
addpd  %xmm0,%xmm1
addpd  %xmm1,%xmm1
mulpd  %xmm0,%xmm0
movapd 0x210(%rsp),%xmm2
movhpd 0x8(%r12),%xmm2
divpd  %xmm0,%xmm1
movapd 0xd0(%rsp),%xmm0
movhpd 0x8(%rbx),%xmm0
mulpd  %xmm2,%xmm0
movapd %xmm0,%xmm2
movapd (%rsp),%xmm0
movhpd 0x8(%r15),%xmm0
mulpd  %xmm2,%xmm0
mulpd  %xmm1,%xmm0
movapd %xmm0,(%rsp)
movaps 0x40(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0xd0(%rsp)
movapd 0x80(%rsp),%xmm0
call   1030 <exp@plt>
movapd 0xd0(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
movapd 0x197b(%rip),%xmm0
subpd  %xmm1,%xmm0
movapd 0x50(%rsp),%xmm1
shufpd $0x1,0x10(%rsp),%xmm1
divpd  %xmm1,%xmm0
movapd %xmm0,%xmm1
unpckhpd %xmm0,%xmm1
mulsd  %xmm0,%xmm1
movsd  0xa0(%rsp),%xmm2
mulsd  0xb8(%rsp),%xmm2
movapd 0x90(%rsp),%xmm0
mulsd  %xmm2,%xmm0
mulsd  %xmm1,%xmm0
movapd %xmm0,0x90(%rsp)
movaps 0x40(%rsp),%xmm0
call   1030 <exp@plt>
movaps %xmm0,0xa0(%rsp)
movaps 0x80(%rsp),%xmm0
call   1030 <exp@plt>
movsd  %xmm0,0x40(%rsp)
movapd 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movapd 0xa0(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
movapd 0x18e9(%rip),%xmm0
subpd  %xmm1,%xmm0
movapd 0x50(%rsp),%xmm1
unpckhpd 0x10(%rsp),%xmm1
movapd %xmm1,0xa0(%rsp)
divpd  %xmm1,%xmm0
movsd  0x40(%rsp),%xmm1
mulsd  %xmm0,%xmm1
unpckhpd %xmm0,%xmm0
mulsd  %xmm1,%xmm0
movsd  0xc8(%rsp),%xmm2
mulsd  0xc0(%rsp),%xmm2
movapd 0x20(%rsp),%xmm1
mulsd  %xmm2,%xmm1
mulsd  %xmm0,%xmm1
movapd %xmm1,0x20(%rsp)
movapd 0x80(%rsp),%xmm0
call   1030 <exp@plt>
addsd  0x17c6(%rip),%xmm0
movapd 0x10(%rsp),%xmm1
addsd  %xmm1,%xmm0
addsd  %xmm0,%xmm0
mulsd  %xmm1,%xmm1
movsd  0x10(%r12),%xmm2
mulsd  0x10(%rbx),%xmm2
divsd  %xmm1,%xmm0
mulsd  0x10(%r15),%xmm2
mulsd  %xmm0,%xmm2
movapd %xmm2,0x40(%rsp)
movapd 0x80(%rsp),%xmm0
call   1030 <exp@plt>
movapd 0x220(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
movapd 0x1829(%rip),%xmm2
subpd  %xmm1,%xmm2
movapd 0x50(%rsp),%xmm0
unpcklpd 0x10(%rsp),%xmm0
divpd  %xmm0,%xmm2
movapd %xmm2,0x80(%rsp)
movapd 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movapd 0x230(%rsp),%xmm1
unpcklpd %xmm0,%xmm1
movapd 0x17ec(%rip),%xmm0
subpd  %xmm1,%xmm0
divpd  0xa0(%rsp),%xmm0
mulpd  0x80(%rsp),%xmm0
movapd 0x180(%rsp),%xmm2
unpcklpd 0x170(%rsp),%xmm2
mulpd  0x70(%rsp),%xmm2
movapd 0x30(%rsp),%xmm1
unpcklpd 0x190(%rsp),%xmm1
mulpd  %xmm2,%xmm1
mulpd  %xmm0,%xmm1
movapd %xmm1,0x30(%rsp)
movapd 0x60(%rsp),%xmm0
call   1030 <exp@plt>
movapd %xmm0,%xmm12
movsd  0x18(%r12),%xmm1
movsd  0x18(%rbx),%xmm2
movsd  0x18(%r15),%xmm7
cmp    $0x8,%ebp
ja     197e <Iq+0x85e>
mov    %ebp,%eax
lea    0x1811(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
movapd 0x17d0(%rip),%xmm6
movapd 0x17d7(%rip),%xmm15
jmp    1a54 <Iq+0x934>
movapd 0x1e0(%rsp),%xmm3
unpcklpd 0x1c0(%rsp),%xmm3
movapd 0x1738(%rip),%xmm5
movapd %xmm5,%xmm0
subpd  %xmm3,%xmm0
movapd 0x50(%rsp),%xmm3
unpcklpd %xmm3,%xmm3
divpd  %xmm3,%xmm0
movapd 0x1f0(%rsp),%xmm3
unpcklpd 0x1b0(%rsp),%xmm3
mulpd  %xmm0,%xmm3
movapd 0x1d0(%rsp),%xmm0
unpcklpd 0x1a0(%rsp),%xmm0
subpd  %xmm0,%xmm5
divpd  0x10(%rsp),%xmm5
mulpd  %xmm3,%xmm5
movapd 0x150(%rsp),%xmm0
unpcklpd 0x140(%rsp),%xmm0
movapd 0x130(%rsp),%xmm3
unpcklpd 0x120(%rsp),%xmm3
mulpd  %xmm0,%xmm3
movapd 0x110(%rsp),%xmm4
unpcklpd 0x160(%rsp),%xmm4
mulpd  %xmm3,%xmm4
mulpd  %xmm5,%xmm4
movapd 0x30(%rsp),%xmm15
movapd 0x90(%rsp),%xmm9
jmp    1b8b <Iq+0xa6b>
movapd 0x30(%rsp),%xmm15
movlpd 0x15f4(%rip),%xmm15
movapd 0x16ec(%rip),%xmm6
movapd 0x16c4(%rip),%xmm4
movsd  0x15e3(%rip),%xmm9
movsd  0x15e3(%rip),%xmm0
movapd %xmm0,0x20(%rsp)
jmp    1b90 <Iq+0xa70>
movapd (%rsp),%xmm6
movlpd 0x15ab(%rip),%xmm6
movapd 0x16a2(%rip),%xmm15
jmp    1aad <Iq+0x98d>
movapd 0x30(%rsp),%xmm15
movlpd 0x15a0(%rip),%xmm15
movapd (%rsp),%xmm6
movlpd 0x1583(%rip),%xmm6
movapd 0x166b(%rip),%xmm4
movsd  0x157a(%rip),%xmm9
movsd  0x1582(%rip),%xmm0
movapd %xmm0,0x20(%rsp)
jmp    1b90 <Iq+0xa70>
movapd 0x30(%rsp),%xmm15
movlpd 0x155f(%rip),%xmm15
movapd (%rsp),%xmm6
movlpd 0x1542(%rip),%xmm6
movapd 0x162a(%rip),%xmm4
movapd 0x90(%rsp),%xmm9
jmp    1b90 <Iq+0xa70>
movapd 0x1602(%rip),%xmm15
jmp    1b20 <Iq+0xa00>
movapd 0x30(%rsp),%xmm15
movlpd 0x1510(%rip),%xmm15
movapd 0x15d8(%rip),%xmm4
movsd  0x14f7(%rip),%xmm9
movsd  0x14ff(%rip),%xmm0
movapd %xmm0,0x20(%rsp)
jmp    1b8b <Iq+0xa6b>
movapd 0x30(%rsp),%xmm15
movlpd 0x14df(%rip),%xmm15
movapd 0x15a7(%rip),%xmm4
movapd 0x90(%rsp),%xmm9
jmp    1b8b <Iq+0xa6b>
movapd 0x1583(%rip),%xmm4
movsd  0x14aa(%rip),%xmm9
movsd  0x14aa(%rip),%xmm0
movapd %xmm0,0x20(%rsp)
movapd 0x30(%rsp),%xmm15
movapd (%rsp),%xmm6
movapd %xmm6,(%rsp)
mulsd  %xmm2,%xmm1
mulsd  %xmm7,%xmm1
addsd  0x1472(%rip),%xmm12
movapd 0x240(%rsp),%xmm0
addsd  %xmm0,%xmm12
addsd  %xmm12,%xmm12
mulsd  %xmm0,%xmm0
divsd  %xmm0,%xmm12
mulsd  %xmm1,%xmm12
movapd %xmm7,0x80(%rsp)
xorpd  %xmm10,%xmm10
movapd 0x250(%rsp),%xmm1
unpcklpd %xmm1,%xmm10
movapd 0xe0(%rsp),%xmm2
subpd  %xmm2,%xmm10
movapd %xmm2,%xmm0
unpcklpd %xmm2,%xmm0
subpd  %xmm0,%xmm10
movq   %xmm1,%xmm0
subpd  %xmm2,%xmm0
movapd %xmm0,%xmm7
movapd 0x100(%rsp),%xmm14
movapd %xmm14,%xmm3
subpd  %xmm2,%xmm3
movapd 0xf0(%rsp),%xmm1
movapd %xmm1,%xmm0
unpcklpd %xmm1,%xmm0
subpd  %xmm0,%xmm3
movapd %xmm3,0x50(%rsp)
movapd %xmm14,%xmm11
subsd  %xmm1,%xmm11
subsd  %xmm2,%xmm11
movapd %xmm2,%xmm0
unpckhpd %xmm2,%xmm0
subpd  %xmm0,%xmm7
movapd %xmm7,0xe0(%rsp)
unpckhpd %xmm14,%xmm14
subsd  %xmm1,%xmm14
subsd  %xmm0,%xmm14
xorpd  %xmm0,%xmm0
subsd  %xmm1,%xmm0
subsd  %xmm1,%xmm0
movsd  %xmm0,0x60(%rsp)
movapd %xmm4,%xmm2
unpcklpd %xmm6,%xmm2
xorpd  0x1433(%rip),%xmm2
movapd %xmm6,%xmm1
shufpd $0x1,%xmm9,%xmm1
movapd %xmm1,0x70(%rsp)
mulpd  %xmm2,%xmm1
movapd %xmm4,%xmm0
mulsd  %xmm1,%xmm0
movapd %xmm9,%xmm3
mulsd  %xmm15,%xmm3
mulsd  %xmm4,%xmm3
addsd  %xmm0,%xmm3
movapd %xmm4,%xmm7
movapd %xmm4,%xmm6
mulsd  %xmm15,%xmm6
mulsd  %xmm9,%xmm6
addsd  %xmm3,%xmm6
movapd %xmm9,%xmm3
unpcklpd %xmm15,%xmm3
movapd %xmm9,%xmm13
movapd 0x40(%rsp),%xmm8
unpcklpd %xmm8,%xmm13
movapd %xmm13,0x100(%rsp)
mulpd  %xmm3,%xmm13
movapd %xmm15,%xmm4
unpcklpd %xmm7,%xmm4
movapd %xmm4,0xf0(%rsp)
movapd %xmm3,%xmm0
mulpd  %xmm4,%xmm3
addpd  %xmm1,%xmm3
unpckhpd %xmm1,%xmm1
mulsd  %xmm9,%xmm1
addsd  %xmm6,%xmm1
movapd (%rsp),%xmm6
movapd %xmm6,%xmm4
unpckhpd %xmm6,%xmm4
movapd %xmm4,0x10(%rsp)
xorpd  0x137f(%rip),%xmm0
pshufd $0xee,%xmm0,%xmm0
mulsd  %xmm15,%xmm0
mulsd  %xmm6,%xmm4
movapd %xmm6,%xmm5
movapd %xmm4,%xmm6
addsd  %xmm0,%xmm4
mulsd  %xmm8,%xmm0
addsd  %xmm1,%xmm0
mulsd  %xmm8,%xmm6
addsd  %xmm0,%xmm6
movapd %xmm5,%xmm0
shufpd $0x1,%xmm7,%xmm0
movapd %xmm8,%xmm1
unpcklpd %xmm9,%xmm1
mulpd  %xmm0,%xmm1
subpd  %xmm13,%xmm1
mulsd  %xmm7,%xmm2
movapd %xmm5,%xmm0
mulsd  %xmm8,%xmm0
addsd  %xmm2,%xmm0
divsd  %xmm6,%xmm0
divsd  %xmm6,%xmm4
unpcklpd %xmm6,%xmm6
divpd  %xmm6,%xmm1
divpd  %xmm6,%xmm3
movapd %xmm1,%xmm2
shufpd $0x1,%xmm0,%xmm2
movapd 0x20(%rsp),%xmm8
movapd %xmm8,%xmm0
unpcklpd %xmm8,%xmm0
mulpd  %xmm0,%xmm2
movapd %xmm7,%xmm5
unpckhpd %xmm7,%xmm5
mulpd  %xmm5,%xmm1
addpd  %xmm2,%xmm1
movapd %xmm15,%xmm0
unpckhpd %xmm15,%xmm0
movapd %xmm3,%xmm2
mulpd  %xmm0,%xmm2
addpd  %xmm1,%xmm2
movapd %xmm3,%xmm1
unpckhpd %xmm3,%xmm1
mulsd  %xmm8,%xmm1
mulsd  %xmm5,%xmm3
addsd  %xmm1,%xmm3
mulsd  %xmm0,%xmm4
addsd  %xmm3,%xmm4
movapd 0x12b9(%rip),%xmm6
addpd  %xmm2,%xmm6
mulsd  %xmm2,%xmm5
unpckhpd %xmm2,%xmm2
mulsd  %xmm8,%xmm2
addsd  %xmm5,%xmm2
mulsd  %xmm4,%xmm0
addsd  %xmm0,%xmm2
subsd  %xmm2,%xmm12
movsd  0x11cf(%rip),%xmm1
movapd %xmm1,%xmm2
divsd  %xmm12,%xmm2
movapd %xmm6,%xmm3
unpcklpd %xmm6,%xmm3
mulpd  %xmm6,%xmm3
movapd %xmm2,%xmm13
unpcklpd %xmm2,%xmm13
movapd %xmm13,%xmm0
mulpd  %xmm3,%xmm0
addpd  %xmm10,%xmm0
addsd  %xmm1,%xmm4
movapd %xmm4,%xmm1
unpcklpd %xmm4,%xmm1
mulpd  %xmm6,%xmm1
mulpd  %xmm6,%xmm6
movhlps %xmm3,%xmm6
mulpd  %xmm13,%xmm6
addpd  0xe0(%rsp),%xmm6
mulpd  %xmm1,%xmm13
addpd  0x50(%rsp),%xmm13
movapd %xmm2,%xmm8
mulsd  %xmm1,%xmm8
addsd  %xmm11,%xmm8
unpckhpd %xmm1,%xmm1
mulsd  %xmm2,%xmm1
addsd  %xmm14,%xmm1
mulsd  %xmm4,%xmm4
mulsd  %xmm4,%xmm2
addsd  0x60(%rsp),%xmm2
movapd %xmm9,%xmm3
mulsd  %xmm6,%xmm3
movapd %xmm0,%xmm5
mulsd  %xmm7,%xmm5
addsd  %xmm3,%xmm5
movapd %xmm13,%xmm12
movapd 0x40(%rsp),%xmm10
mulsd  %xmm10,%xmm12
addsd  %xmm5,%xmm12
movapd %xmm6,%xmm3
unpckhpd %xmm6,%xmm3
mulsd  %xmm15,%xmm3
movapd %xmm0,%xmm5
unpckhpd %xmm0,%xmm5
movapd (%rsp),%xmm4
mulsd  %xmm4,%xmm5
addsd  %xmm3,%xmm5
movapd %xmm13,%xmm3
unpckhpd %xmm13,%xmm3
mulsd  %xmm7,%xmm3
addsd  %xmm5,%xmm3
movapd %xmm3,0x50(%rsp)
movapd %xmm4,%xmm3
movsd  %xmm15,%xmm3
mulpd  %xmm6,%xmm3
movapd %xmm4,%xmm5
unpcklpd %xmm15,%xmm5
mulpd  %xmm0,%xmm5
addpd  %xmm3,%xmm5
movapd %xmm7,%xmm14
unpcklpd %xmm9,%xmm14
mulpd  %xmm13,%xmm14
addpd  %xmm5,%xmm14
mulpd  0x70(%rsp),%xmm6
mulpd  0xf0(%rsp),%xmm0
addpd  %xmm6,%xmm0
mulpd  0x100(%rsp),%xmm13
addpd  %xmm0,%xmm13
movapd 0x10(%rsp),%xmm0
mulsd  %xmm1,%xmm0
movapd %xmm8,%xmm3
movapd %xmm15,0x30(%rsp)
mulsd  %xmm15,%xmm3
addsd  %xmm0,%xmm3
movapd %xmm2,%xmm0
movapd %xmm9,0x90(%rsp)
mulsd  %xmm9,%xmm0
addsd  %xmm3,%xmm0
movapd %xmm0,%xmm5
unpcklpd %xmm9,%xmm15
unpcklpd %xmm1,%xmm1
mulpd  %xmm15,%xmm1
unpcklpd %xmm8,%xmm8
movapd %xmm4,%xmm0
movapd %xmm7,0x110(%rsp)
unpcklpd %xmm7,%xmm0
mulpd  %xmm8,%xmm0
addpd  %xmm1,%xmm0
unpcklpd %xmm2,%xmm2
movapd %xmm7,%xmm6
unpcklpd %xmm10,%xmm6
mulpd  %xmm2,%xmm6
addpd  %xmm0,%xmm6
movapd %xmm14,%xmm7
unpckhpd %xmm14,%xmm7
movapd %xmm12,%xmm2
movapd 0x10ab(%rip),%xmm0
xorpd  %xmm0,%xmm2
movapd %xmm7,%xmm11
mulsd  %xmm2,%xmm11
movapd %xmm13,%xmm3
unpckhpd %xmm13,%xmm3
movapd %xmm13,%xmm1
mulsd  %xmm3,%xmm1
movapd %xmm12,%xmm15
movapd 0x50(%rsp),%xmm0
mulsd  %xmm0,%xmm15
movapd %xmm5,%xmm8
movapd %xmm5,%xmm10
mulsd  %xmm15,%xmm8
movapd %xmm11,%xmm9
subsd  %xmm12,%xmm11
addsd  %xmm1,%xmm11
mulsd  %xmm6,%xmm1
addsd  %xmm8,%xmm1
movapd %xmm3,%xmm5
movapd 0x1047(%rip),%xmm4
xorpd  %xmm4,%xmm5
movapd %xmm10,0x70(%rsp)
mulsd  %xmm10,%xmm5
addsd  %xmm5,%xmm1
movapd %xmm14,%xmm4
mulsd  %xmm3,%xmm4
subsd  %xmm3,%xmm15
subsd  %xmm4,%xmm15
mulsd  %xmm10,%xmm4
subsd  %xmm4,%xmm1
movapd %xmm14,%xmm4
movapd %xmm14,%xmm8
addsd  0xf54(%rip),%xmm8
movapd %xmm0,%xmm14
mulsd  %xmm13,%xmm14
mulsd  %xmm6,%xmm2
movapd %xmm2,%xmm10
addsd  %xmm8,%xmm2
movapd %xmm2,0x20(%rsp)
subsd  %xmm14,%xmm8
addsd  %xmm7,%xmm8
movapd %xmm4,%xmm0
movapd %xmm4,%xmm2
mulsd  %xmm7,%xmm0
addsd  %xmm0,%xmm8
addsd  %xmm8,%xmm10
movapd %xmm6,%xmm4
unpckhpd %xmm6,%xmm4
addsd  %xmm4,%xmm1
unpcklpd %xmm1,%xmm10
unpcklpd %xmm2,%xmm9
mulpd  %xmm6,%xmm9
addpd  %xmm10,%xmm9
movsd  0xeed(%rip),%xmm10
addsd  %xmm7,%xmm10
addsd  %xmm5,%xmm10
movapd %xmm7,%xmm1
mulsd  %xmm4,%xmm1
mulsd  %xmm4,%xmm14
addsd  %xmm4,%xmm10
addsd  %xmm1,%xmm10
subsd  %xmm14,%xmm1
mulsd  %xmm4,%xmm0
addsd  %xmm1,%xmm0
movapd %xmm9,%xmm1
unpckhpd %xmm9,%xmm1
addsd  %xmm9,%xmm1
addsd  %xmm0,%xmm1
xorpd  0xf54(%rip),%xmm7
movapd 0x70(%rsp),%xmm14
mulsd  %xmm14,%xmm12
subsd  %xmm13,%xmm12
mulsd  %xmm6,%xmm3
mulsd  %xmm6,%xmm7
subsd  %xmm6,%xmm7
mulsd  %xmm13,%xmm6
mulsd  %xmm4,%xmm13
subsd  %xmm13,%xmm12
movapd 0x50(%rsp),%xmm5
subsd  %xmm5,%xmm3
movapd %xmm5,%xmm0
mulsd  %xmm4,%xmm0
subsd  %xmm0,%xmm3
movapd 0x20(%rsp),%xmm0
addsd  %xmm4,%xmm0
mulsd  %xmm2,%xmm4
addsd  %xmm0,%xmm4
movapd %xmm14,%xmm0
mulsd  %xmm14,%xmm5
addsd  %xmm7,%xmm5
subsd  %xmm0,%xmm6
mulsd  %xmm2,%xmm0
subsd  %xmm0,%xmm6
divsd  %xmm1,%xmm10
divsd  %xmm1,%xmm12
divsd  %xmm1,%xmm11
divsd  %xmm1,%xmm3
divsd  %xmm1,%xmm4
divsd  %xmm1,%xmm15
divsd  %xmm1,%xmm5
divsd  %xmm1,%xmm6
divsd  %xmm1,%xmm8
movapd 0x30(%rsp),%xmm0
mulsd  %xmm0,%xmm3
movapd (%rsp),%xmm7
mulsd  %xmm7,%xmm10
addsd  %xmm3,%xmm10
movapd 0x110(%rsp),%xmm2
mulsd  %xmm2,%xmm5
addsd  %xmm10,%xmm5
movapd %xmm5,%xmm10
movapd %xmm0,%xmm3
mulsd  %xmm4,%xmm3
movapd %xmm12,%xmm1
mulsd  %xmm7,%xmm1
addsd  %xmm3,%xmm1
movapd %xmm6,%xmm5
mulsd  %xmm2,%xmm5
addsd  %xmm1,%xmm5
movapd %xmm0,%xmm1
mulsd  %xmm15,%xmm1
mulsd  %xmm11,%xmm7
addsd  %xmm1,%xmm7
movapd %xmm7,%xmm1
movapd %xmm8,%xmm7
mulsd  %xmm2,%xmm7
addsd  %xmm1,%xmm7
movapd 0x10(%rsp),%xmm1
mulsd  %xmm1,%xmm4
mulsd  %xmm0,%xmm12
addsd  %xmm4,%xmm12
movapd 0x90(%rsp),%xmm3
mulsd  %xmm3,%xmm6
addsd  %xmm12,%xmm6
mulsd  %xmm15,%xmm1
mulsd  %xmm11,%xmm0
addsd  %xmm1,%xmm0
movapd %xmm8,%xmm1
mulsd  %xmm3,%xmm1
addsd  %xmm0,%xmm1
mulsd  %xmm3,%xmm15
mulsd  %xmm2,%xmm11
addsd  %xmm15,%xmm11
mulsd  0x40(%rsp),%xmm8
movsd  (%r14),%xmm0
movhpd 0x18(%r14),%xmm0
addsd  %xmm11,%xmm8
movsd  (%r15),%xmm2
unpcklpd 0x80(%rsp),%xmm2
divpd  %xmm2,%xmm0
movupd 0x8(%r14),%xmm2
movupd 0x8(%r15),%xmm3
divpd  %xmm3,%xmm2
movapd %xmm0,%xmm3
unpckhpd %xmm0,%xmm3
subsd  %xmm3,%xmm0
mulsd  0xd44(%rip),%xmm0
subpd  %xmm3,%xmm2
mulpd  0xe40(%rip),%xmm2
movapd %xmm0,%xmm3
mulsd  %xmm0,%xmm3
mulsd  %xmm10,%xmm3
movapd %xmm2,%xmm4
mulsd  %xmm2,%xmm4
mulsd  %xmm6,%xmm4
addsd  %xmm3,%xmm4
movapd %xmm2,%xmm3
unpckhpd %xmm2,%xmm3
addsd  %xmm0,%xmm0
movapd %xmm0,%xmm6
mulsd  %xmm2,%xmm6
addsd  %xmm2,%xmm2
mulsd  %xmm3,%xmm2
mulsd  %xmm3,%xmm0
mulsd  %xmm3,%xmm3
mulsd  %xmm8,%xmm3
addsd  %xmm4,%xmm3
mulsd  %xmm5,%xmm6
addsd  %xmm3,%xmm6
mulsd  %xmm1,%xmm2
addsd  %xmm6,%xmm2
mulsd  %xmm7,%xmm0
addsd  %xmm2,%xmm0
mulsd  0xcd6(%rip),%xmm0
add    $0x268,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define double @Iq(double %0, double %1, double* %2, double* %3, double* %4, double* %5, double* %6, double %7, double %8, double %9, double %10, double %11, double %12) {
%14 = alloca double
%15 = alloca double
%16 = alloca double*
%17 = alloca double*
%18 = alloca double*
%19 = alloca double*
%20 = alloca double*
%21 = alloca double
%22 = alloca double
%23 = alloca double
%24 = alloca double
%25 = alloca double
%26 = alloca double
%27 = alloca i32
%28 = alloca double
%29 = alloca double
%30 = alloca double
%31 = alloca double
%32 = alloca double
%33 = alloca double
%34 = alloca double
%35 = alloca double
%36 = alloca double
%37 = alloca double
%38 = alloca double
%39 = alloca double
%40 = alloca double
%41 = alloca double
%42 = alloca double
%43 = alloca double
%44 = alloca double
%45 = alloca double
%46 = alloca double
%47 = alloca double
%48 = alloca double
%49 = alloca double
%50 = alloca double
%51 = alloca double
%52 = alloca double
%53 = alloca double
%54 = alloca double
%55 = alloca double
%56 = alloca double
%57 = alloca double
%58 = alloca double
%59 = alloca double
%60 = alloca double
%61 = alloca double
%62 = alloca double
%63 = alloca double
%64 = alloca double
%65 = alloca double
%66 = alloca double
%67 = alloca double
%68 = alloca double
%69 = alloca double
%70 = alloca double
%71 = alloca double
%72 = alloca double
%73 = alloca double
%74 = alloca double
%75 = alloca double
%76 = alloca double
%77 = alloca double
%78 = alloca double
%79 = alloca double
%80 = alloca double
%81 = alloca double
%82 = alloca double
%83 = alloca double
%84 = alloca double
%85 = alloca double
%86 = alloca double
%87 = alloca double
%88 = alloca double
%89 = alloca double
%90 = alloca double
%91 = alloca double
%92 = alloca double
%93 = alloca double
%94 = alloca double
%95 = alloca double
%96 = alloca double
%97 = alloca double
%98 = alloca double
%99 = alloca double
%100 = alloca double
%101 = alloca double
%102 = alloca double
%103 = alloca double
%104 = alloca double
%105 = alloca double
%106 = alloca double
%107 = alloca double
%108 = alloca double
%109 = alloca double
%110 = alloca double
%111 = alloca double
%112 = alloca double
%113 = alloca double
%114 = alloca double
%115 = alloca double
%116 = alloca double
%117 = alloca double
%118 = alloca double
%119 = alloca double
%120 = alloca double
%121 = alloca double
%122 = alloca double
%123 = alloca double
%124 = alloca double
%125 = alloca double
%126 = alloca double
%127 = alloca double
%128 = alloca double
%129 = alloca double
%130 = alloca double
%131 = alloca double
%132 = alloca double
%133 = alloca double
%134 = alloca double
%135 = alloca double
%136 = alloca double
%137 = alloca double
%138 = alloca double
%139 = alloca double
%140 = alloca double
%141 = alloca double
%142 = alloca double
%143 = alloca double
%144 = alloca double
%145 = alloca double
%146 = alloca double
%147 = alloca double
%148 = alloca double
%149 = alloca double
%150 = alloca double
%151 = alloca double
%152 = alloca double
%153 = alloca double
store double %0, double* %14
store double %1, double* %15
store double* %2, double** %16
store double* %3, double** %17
store double* %4, double** %18
store double* %5, double** %19
store double* %6, double** %20
store double %7, double* %21
store double %8, double* %22
store double %9, double* %23
store double %10, double* %24
store double %11, double* %25
store double %12, double* %26
%154 = load double, double* %15
%155 = fadd double %154, 5.000000e-01
%156 = fptosi double %155 to i32
store i32 %156, i32* %27
%157 = load i32, i32* %27
%158 = icmp sle i32 %157, 1
br i1 %158, label %159, label %180
159: ; preds = %13
%160 = load double*, double** %17
%161 = getelementptr inbounds double, double* %160, i64 1
store double 0x3E7AD7F29ABCAF48, double* %161
%162 = load double*, double** %17
%163 = getelementptr inbounds double, double* %162, i64 0
store double 0x3E7AD7F29ABCAF48, double* %163
%164 = load double*, double** %16
%165 = getelementptr inbounds double, double* %164, i64 1
store double 1.000000e+03, double* %165
%166 = load double*, double** %16
%167 = getelementptr inbounds double, double* %166, i64 0
store double 1.000000e+03, double* %167
%168 = load double*, double** %19
%169 = getelementptr inbounds double, double* %168, i64 1
store double 0x3D719799812DEA11, double* %169
%170 = load double*, double** %19
%171 = getelementptr inbounds double, double* %170, i64 0
store double 0x3D719799812DEA11, double* %171
%172 = load double*, double** %18
%173 = getelementptr inbounds double, double* %172, i64 1
store double 1.000000e+02, double* %173
%174 = load double*, double** %18
%175 = getelementptr inbounds double, double* %174, i64 0
store double 1.000000e+02, double* %175
%176 = load double*, double** %20
%177 = getelementptr inbounds double, double* %176, i64 1
store double 5.000000e+00, double* %177
%178 = load double*, double** %20
%179 = getelementptr inbounds double, double* %178, i64 0
store double 5.000000e+00, double* %179
store double -4.000000e-04, double* %25
store double -4.000000e-04, double* %24
store double -4.000000e-04, double* %23
store double -4.000000e-04, double* %22
store double -4.000000e-04, double* %21
br label %198
180: ; preds = %13
%181 = load i32, i32* %27
%182 = icmp sgt i32 %181, 1
br i1 %182, label %183, label %197
183: ; preds = %180
%184 = load i32, i32* %27
%185 = icmp sle i32 %184, 4
br i1 %185, label %186, label %197
186: ; preds = %183
%187 = load double*, double** %17
%188 = getelementptr inbounds double, double* %187, i64 0
store double 0x3E7AD7F29ABCAF48, double* %188
%189 = load double*, double** %16
%190 = getelementptr inbounds double, double* %189, i64 0
store double 1.000000e+03, double* %190
%191 = load double*, double** %19
%192 = getelementptr inbounds double, double* %191, i64 0
store double 0x3D719799812DEA11, double* %192
%193 = load double*, double** %18
%194 = getelementptr inbounds double, double* %193, i64 0
store double 1.000000e+02, double* %194
%195 = load double*, double** %20
%196 = getelementptr inbounds double, double* %195, i64 0
store double 5.000000e+00, double* %196
store double -4.000000e-04, double* %23
store double -4.000000e-04, double* %22
store double -4.000000e-04, double* %21
br label %197
197: ; preds = %186, %183, %180
br label %198
198: ; preds = %197, %159
%199 = load double*, double** %17
%200 = getelementptr inbounds double, double* %199, i64 0
%201 = load double, double* %200
%202 = fsub double 1.000000e+00, %201
%203 = load double*, double** %17
%204 = getelementptr inbounds double, double* %203, i64 1
%205 = load double, double* %204
%206 = fsub double %202, %205
%207 = load double*, double** %17
%208 = getelementptr inbounds double, double* %207, i64 2
%209 = load double, double* %208
%210 = fsub double %206, %209
%211 = load double*, double** %17
%212 = getelementptr inbounds double, double* %211, i64 3
store double %210, double* %212
%213 = load double*, double** %16
%214 = getelementptr inbounds double, double* %213, i64 0
%215 = load double, double* %214
%216 = load double*, double** %16
%217 = getelementptr inbounds double, double* %216, i64 1
%218 = load double, double* %217
%219 = fmul double %215, %218
%220 = call double @sqrt(double %219)
store double %220, double* %28
%221 = load double*, double** %16
%222 = getelementptr inbounds double, double* %221, i64 0
%223 = load double, double* %222
%224 = load double*, double** %16
%225 = getelementptr inbounds double, double* %224, i64 2
%226 = load double, double* %225
%227 = fmul double %223, %226
%228 = call double @sqrt(double %227)
store double %228, double* %29
%229 = load double*, double** %16
%230 = getelementptr inbounds double, double* %229, i64 0
%231 = load double, double* %230
%232 = load double*, double** %16
%233 = getelementptr inbounds double, double* %232, i64 3
%234 = load double, double* %233
%235 = fmul double %231, %234
%236 = call double @sqrt(double %235)
store double %236, double* %30
%237 = load double*, double** %16
%238 = getelementptr inbounds double, double* %237, i64 1
%239 = load double, double* %238
%240 = load double*, double** %16
%241 = getelementptr inbounds double, double* %240, i64 2
%242 = load double, double* %241
%243 = fmul double %239, %242
%244 = call double @sqrt(double %243)
store double %244, double* %31
%245 = load double*, double** %16
%246 = getelementptr inbounds double, double* %245, i64 1
%247 = load double, double* %246
%248 = load double*, double** %16
%249 = getelementptr inbounds double, double* %248, i64 3
%250 = load double, double* %249
%251 = fmul double %247, %250
%252 = call double @sqrt(double %251)
store double %252, double* %32
%253 = load double*, double** %16
%254 = getelementptr inbounds double, double* %253, i64 2
%255 = load double, double* %254
%256 = load double*, double** %16
%257 = getelementptr inbounds double, double* %256, i64 3
%258 = load double, double* %257
%259 = fmul double %255, %258
%260 = call double @sqrt(double %259)
store double %260, double* %33
%261 = load double*, double** %18
%262 = getelementptr inbounds double, double* %261, i64 0
%263 = load double, double* %262
%264 = load double*, double** %18
%265 = getelementptr inbounds double, double* %264, i64 1
%266 = load double, double* %265
%267 = fmul double %263, %266
%268 = call double @sqrt(double %267)
store double %268, double* %40
%269 = load double*, double** %18
%270 = getelementptr inbounds double, double* %269, i64 0
%271 = load double, double* %270
%272 = load double*, double** %18
%273 = getelementptr inbounds double, double* %272, i64 2
%274 = load double, double* %273
%275 = fmul double %271, %274
%276 = call double @sqrt(double %275)
store double %276, double* %41
%277 = load double*, double** %18
%278 = getelementptr inbounds double, double* %277, i64 0
%279 = load double, double* %278
%280 = load double*, double** %18
%281 = getelementptr inbounds double, double* %280, i64 3
%282 = load double, double* %281
%283 = fmul double %279, %282
%284 = call double @sqrt(double %283)
store double %284, double* %42
%285 = load double*, double** %18
%286 = getelementptr inbounds double, double* %285, i64 1
%287 = load double, double* %286
%288 = load double*, double** %18
%289 = getelementptr inbounds double, double* %288, i64 2
%290 = load double, double* %289
%291 = fmul double %287, %290
%292 = call double @sqrt(double %291)
store double %292, double* %43
%293 = load double*, double** %18
%294 = getelementptr inbounds double, double* %293, i64 1
%295 = load double, double* %294
%296 = load double*, double** %18
%297 = getelementptr inbounds double, double* %296, i64 3
%298 = load double, double* %297
%299 = fmul double %295, %298
%300 = call double @sqrt(double %299)
store double %300, double* %44
%301 = load double*, double** %18
%302 = getelementptr inbounds double, double* %301, i64 2
%303 = load double, double* %302
%304 = load double*, double** %18
%305 = getelementptr inbounds double, double* %304, i64 3
%306 = load double, double* %305
%307 = fmul double %303, %306
%308 = call double @sqrt(double %307)
store double %308, double* %45
%309 = load double*, double** %17
%310 = getelementptr inbounds double, double* %309, i64 0
%311 = load double, double* %310
%312 = load double*, double** %17
%313 = getelementptr inbounds double, double* %312, i64 1
%314 = load double, double* %313
%315 = fmul double %311, %314
%316 = call double @sqrt(double %315)
store double %316, double* %34
%317 = load double*, double** %17
%318 = getelementptr inbounds double, double* %317, i64 0
%319 = load double, double* %318
%320 = load double*, double** %17
%321 = getelementptr inbounds double, double* %320, i64 2
%322 = load double, double* %321
%323 = fmul double %319, %322
%324 = call double @sqrt(double %323)
store double %324, double* %35
%325 = load double*, double** %17
%326 = getelementptr inbounds double, double* %325, i64 0
%327 = load double, double* %326
%328 = load double*, double** %17
%329 = getelementptr inbounds double, double* %328, i64 3
%330 = load double, double* %329
%331 = fmul double %327, %330
%332 = call double @sqrt(double %331)
store double %332, double* %36
%333 = load double*, double** %17
%334 = getelementptr inbounds double, double* %333, i64 1
%335 = load double, double* %334
%336 = load double*, double** %17
%337 = getelementptr inbounds double, double* %336, i64 2
%338 = load double, double* %337
%339 = fmul double %335, %338
%340 = call double @sqrt(double %339)
store double %340, double* %37
%341 = load double*, double** %17
%342 = getelementptr inbounds double, double* %341, i64 1
%343 = load double, double* %342
%344 = load double*, double** %17
%345 = getelementptr inbounds double, double* %344, i64 3
%346 = load double, double* %345
%347 = fmul double %343, %346
%348 = call double @sqrt(double %347)
store double %348, double* %38
%349 = load double*, double** %17
%350 = getelementptr inbounds double, double* %349, i64 2
%351 = load double, double* %350
%352 = load double*, double** %17
%353 = getelementptr inbounds double, double* %352, i64 3
%354 = load double, double* %353
%355 = fmul double %351, %354
%356 = call double @sqrt(double %355)
store double %356, double* %39
%357 = load double, double* %14
%358 = load double, double* %14
%359 = fmul double %357, %358
%360 = load double*, double** %20
%361 = getelementptr inbounds double, double* %360, i64 0
%362 = load double, double* %361
%363 = fmul double %359, %362
%364 = load double*, double** %20
%365 = getelementptr inbounds double, double* %364, i64 0
%366 = load double, double* %365
%367 = fmul double %363, %366
%368 = load double*, double** %16
%369 = getelementptr inbounds double, double* %368, i64 0
%370 = load double, double* %369
%371 = fmul double %367, %370
%372 = fdiv double %371, 6.000000e+00
store double %372, double* %47
%373 = load double, double* %14
%374 = load double, double* %14
%375 = fmul double %373, %374
%376 = load double*, double** %20
%377 = getelementptr inbounds double, double* %376, i64 1
%378 = load double, double* %377
%379 = fmul double %375, %378
%380 = load double*, double** %20
%381 = getelementptr inbounds double, double* %380, i64 1
%382 = load double, double* %381
%383 = fmul double %379, %382
%384 = load double*, double** %16
%385 = getelementptr inbounds double, double* %384, i64 1
%386 = load double, double* %385
%387 = fmul double %383, %386
%388 = fdiv double %387, 6.000000e+00
store double %388, double* %48
%389 = load double, double* %14
%390 = load double, double* %14
%391 = fmul double %389, %390
%392 = load double*, double** %20
%393 = getelementptr inbounds double, double* %392, i64 2
%394 = load double, double* %393
%395 = fmul double %391, %394
%396 = load double*, double** %20
%397 = getelementptr inbounds double, double* %396, i64 2
%398 = load double, double* %397
%399 = fmul double %395, %398
%400 = load double*, double** %16
%401 = getelementptr inbounds double, double* %400, i64 2
%402 = load double, double* %401
%403 = fmul double %399, %402
%404 = fdiv double %403, 6.000000e+00
store double %404, double* %49
%405 = load double, double* %14
%406 = load double, double* %14
%407 = fmul double %405, %406
%408 = load double*, double** %20
%409 = getelementptr inbounds double, double* %408, i64 3
%410 = load double, double* %409
%411 = fmul double %407, %410
%412 = load double*, double** %20
%413 = getelementptr inbounds double, double* %412, i64 3
%414 = load double, double* %413
%415 = fmul double %411, %414
%416 = load double*, double** %16
%417 = getelementptr inbounds double, double* %416, i64 3
%418 = load double, double* %417
%419 = fmul double %415, %418
%420 = fdiv double %419, 6.000000e+00
store double %420, double* %50
%421 = load double, double* %47
%422 = fneg double %421
%423 = call double @exp(double %422)
%424 = fsub double %423, 1.000000e+00
%425 = load double, double* %47
%426 = fadd double %424, %425
%427 = fmul double 2.000000e+00, %426
%428 = load double, double* %47
%429 = load double, double* %47
%430 = fmul double %428, %429
%431 = fdiv double %427, %430
store double %431, double* %51
%432 = load double*, double** %16
%433 = getelementptr inbounds double, double* %432, i64 0
%434 = load double, double* %433
%435 = load double*, double** %17
%436 = getelementptr inbounds double, double* %435, i64 0
%437 = load double, double* %436
%438 = fmul double %434, %437
%439 = load double*, double** %18
%440 = getelementptr inbounds double, double* %439, i64 0
%441 = load double, double* %440
%442 = fmul double %438, %441
%443 = load double, double* %51
%444 = fmul double %442, %443
store double %444, double* %52
%445 = load double, double* %47
%446 = fneg double %445
%447 = call double @exp(double %446)
%448 = fsub double 1.000000e+00, %447
%449 = load double, double* %47
%450 = fdiv double %448, %449
%451 = load double, double* %48
%452 = fneg double %451
%453 = call double @exp(double %452)
%454 = fsub double 1.000000e+00, %453
%455 = load double, double* %48
%456 = fdiv double %454, %455
%457 = fmul double %450, %456
store double %457, double* %53
%458 = load double, double* %34
%459 = load double, double* %40
%460 = fmul double %458, %459
%461 = load double, double* %28
%462 = fmul double %460, %461
%463 = load double, double* %53
%464 = fmul double %462, %463
store double %464, double* %54
%465 = load double, double* %47
%466 = fneg double %465
%467 = call double @exp(double %466)
%468 = fsub double 1.000000e+00, %467
%469 = load double, double* %47
%470 = fdiv double %468, %469
%471 = load double, double* %48
%472 = fneg double %471
%473 = call double @exp(double %472)
%474 = fmul double %470, %473
%475 = load double, double* %49
%476 = fneg double %475
%477 = call double @exp(double %476)
%478 = fsub double 1.000000e+00, %477
%479 = load double, double* %49
%480 = fdiv double %478, %479
%481 = fmul double %474, %480
store double %481, double* %55
%482 = load double, double* %35
%483 = load double, double* %41
%484 = fmul double %482, %483
%485 = load double, double* %29
%486 = fmul double %484, %485
%487 = load double, double* %55
%488 = fmul double %486, %487
store double %488, double* %56
%489 = load double, double* %47
%490 = fneg double %489
%491 = call double @exp(double %490)
%492 = fsub double 1.000000e+00, %491
%493 = load double, double* %47
%494 = fdiv double %492, %493
%495 = load double, double* %48
%496 = fneg double %495
%497 = load double, double* %49
%498 = fsub double %496, %497
%499 = call double @exp(double %498)
%500 = fmul double %494, %499
%501 = load double, double* %50
%502 = fneg double %501
%503 = call double @exp(double %502)
%504 = fsub double 1.000000e+00, %503
%505 = load double, double* %50
%506 = fdiv double %504, %505
%507 = fmul double %500, %506
store double %507, double* %57
%508 = load double, double* %36
%509 = load double, double* %42
%510 = fmul double %508, %509
%511 = load double, double* %30
%512 = fmul double %510, %511
%513 = load double, double* %57
%514 = fmul double %512, %513
store double %514, double* %58
%515 = load double, double* %54
store double %515, double* %59
%516 = load double, double* %48
%517 = fneg double %516
%518 = call double @exp(double %517)
%519 = fsub double %518, 1.000000e+00
%520 = load double, double* %48
%521 = fadd double %519, %520
%522 = fmul double 2.000000e+00, %521
%523 = load double, double* %48
%524 = load double, double* %48
%525 = fmul double %523, %524
%526 = fdiv double %522, %525
store double %526, double* %60
%527 = load double*, double** %16
%528 = getelementptr inbounds double, double* %527, i64 1
%529 = load double, double* %528
%530 = load double*, double** %17
%531 = getelementptr inbounds double, double* %530, i64 1
%532 = load double, double* %531
%533 = fmul double %529, %532
%534 = load double*, double** %18
%535 = getelementptr inbounds double, double* %534, i64 1
%536 = load double, double* %535
%537 = fmul double %533, %536
%538 = load double, double* %60
%539 = fmul double %537, %538
store double %539, double* %61
%540 = load double, double* %48
%541 = fneg double %540
%542 = call double @exp(double %541)
%543 = fsub double 1.000000e+00, %542
%544 = load double, double* %48
%545 = fdiv double %543, %544
%546 = load double, double* %49
%547 = fneg double %546
%548 = call double @exp(double %547)
%549 = fsub double 1.000000e+00, %548
%550 = load double, double* %49
%551 = fdiv double %549, %550
%552 = fmul double %545, %551
store double %552, double* %62
%553 = load double, double* %37
%554 = load double, double* %43
%555 = fmul double %553, %554
%556 = load double, double* %31
%557 = fmul double %555, %556
%558 = load double, double* %62
%559 = fmul double %557, %558
store double %559, double* %63
%560 = load double, double* %48
%561 = fneg double %560
%562 = call double @exp(double %561)
%563 = fsub double 1.000000e+00, %562
%564 = load double, double* %48
%565 = fdiv double %563, %564
%566 = load double, double* %49
%567 = fneg double %566
%568 = call double @exp(double %567)
%569 = fmul double %565, %568
%570 = load double, double* %50
%571 = fneg double %570
%572 = call double @exp(double %571)
%573 = fsub double 1.000000e+00, %572
%574 = load double, double* %50
%575 = fdiv double %573, %574
%576 = fmul double %569, %575
store double %576, double* %64
%577 = load double, double* %38
%578 = load double, double* %44
%579 = fmul double %577, %578
%580 = load double, double* %32
%581 = fmul double %579, %580
%582 = load double, double* %64
%583 = fmul double %581, %582
store double %583, double* %65
%584 = load double, double* %56
store double %584, double* %66
%585 = load double, double* %63
store double %585, double* %67
%586 = load double, double* %49
%587 = fneg double %586
%588 = call double @exp(double %587)
%589 = fsub double %588, 1.000000e+00
%590 = load double, double* %49
%591 = fadd double %589, %590
%592 = fmul double 2.000000e+00, %591
%593 = load double, double* %49
%594 = load double, double* %49
%595 = fmul double %593, %594
%596 = fdiv double %592, %595
store double %596, double* %68
%597 = load double*, double** %16
%598 = getelementptr inbounds double, double* %597, i64 2
%599 = load double, double* %598
%600 = load double*, double** %17
%601 = getelementptr inbounds double, double* %600, i64 2
%602 = load double, double* %601
%603 = fmul double %599, %602
%604 = load double*, double** %18
%605 = getelementptr inbounds double, double* %604, i64 2
%606 = load double, double* %605
%607 = fmul double %603, %606
%608 = load double, double* %68
%609 = fmul double %607, %608
store double %609, double* %69
%610 = load double, double* %49
%611 = fneg double %610
%612 = call double @exp(double %611)
%613 = fsub double 1.000000e+00, %612
%614 = load double, double* %49
%615 = fdiv double %613, %614
%616 = load double, double* %50
%617 = fneg double %616
%618 = call double @exp(double %617)
%619 = fsub double 1.000000e+00, %618
%620 = load double, double* %50
%621 = fdiv double %619, %620
%622 = fmul double %615, %621
store double %622, double* %70
%623 = load double, double* %39
%624 = load double, double* %45
%625 = fmul double %623, %624
%626 = load double, double* %33
%627 = fmul double %625, %626
%628 = load double, double* %70
%629 = fmul double %627, %628
store double %629, double* %71
%630 = load double, double* %50
%631 = fneg double %630
%632 = call double @exp(double %631)
%633 = fsub double %632, 1.000000e+00
%634 = load double, double* %50
%635 = fadd double %633, %634
%636 = fmul double 2.000000e+00, %635
%637 = load double, double* %50
%638 = load double, double* %50
%639 = fmul double %637, %638
%640 = fdiv double %636, %639
store double %640, double* %72
%641 = load double*, double** %16
%642 = getelementptr inbounds double, double* %641, i64 3
%643 = load double, double* %642
%644 = load double*, double** %17
%645 = getelementptr inbounds double, double* %644, i64 3
%646 = load double, double* %645
%647 = fmul double %643, %646
%648 = load double*, double** %18
%649 = getelementptr inbounds double, double* %648, i64 3
%650 = load double, double* %649
%651 = fmul double %647, %650
%652 = load double, double* %72
%653 = fmul double %651, %652
store double %653, double* %73
%654 = load i32, i32* %27
switch i32 %654, label %664 [
i32 0, label %655
i32 1, label %656
i32 2, label %657
i32 3, label %658
i32 4, label %659
i32 5, label %660
i32 6, label %661
i32 7, label %662
i32 8, label %663
]
655: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %52
store double 2.000000e-06, double* %54
store double 3.000000e-06, double* %56
store double 4.000000e-06, double* %58
store double 5.000000e-06, double* %61
store double 6.000000e-06, double* %63
store double 0x3EDD5C31593E5FB7, double* %65
store double 0x3EE0C6F7A0B5ED8D, double* %71
br label %665
656: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %52
store double 2.000000e-06, double* %54
store double 3.000000e-06, double* %56
store double 4.000000e-06, double* %58
store double 5.000000e-06, double* %61
store double 6.000000e-06, double* %63
store double 0x3EDD5C31593E5FB7, double* %65
br label %665
657: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %52
store double 2.000000e-06, double* %54
store double 3.000000e-06, double* %56
store double 4.000000e-06, double* %58
store double 5.000000e-06, double* %63
store double 6.000000e-06, double* %65
store double 0x3EDD5C31593E5FB7, double* %71
br label %665
658: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %52
store double 2.000000e-06, double* %54
store double 3.000000e-06, double* %56
store double 4.000000e-06, double* %58
store double 5.000000e-06, double* %63
store double 6.000000e-06, double* %65
br label %665
659: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %52
store double 2.000000e-06, double* %54
store double 3.000000e-06, double* %56
store double 4.000000e-06, double* %58
br label %665
660: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %54
store double 2.000000e-06, double* %56
store double 3.000000e-06, double* %58
store double 4.000000e-06, double* %63
store double 5.000000e-06, double* %65
store double 6.000000e-06, double* %71
br label %665
661: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %54
store double 2.000000e-06, double* %56
store double 3.000000e-06, double* %58
store double 4.000000e-06, double* %63
store double 5.000000e-06, double* %65
br label %665
662: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %54
store double 2.000000e-06, double* %56
store double 3.000000e-06, double* %58
br label %665
663: ; preds = %198
store double 0x3EB0C6F7A0B5ED8D, double* %56
store double 2.000000e-06, double* %58
store double 3.000000e-06, double* %63
store double 4.000000e-06, double* %65
br label %665
664: ; preds = %198
br label %665
665: ; preds = %664, %663, %662, %661, %660, %659, %658, %657, %656, %655
%666 = load double, double* %54
store double %666, double* %59
%667 = load double, double* %56
store double %667, double* %66
%668 = load double, double* %63
store double %668, double* %67
store double 0.000000e+00, double* %74
store double 0.000000e+00, double* %75
store double 0.000000e+00, double* %76
%669 = load double, double* %21
store double %669, double* %77
%670 = load double, double* %22
store double %670, double* %78
%671 = load double, double* %24
store double %671, double* %79
%672 = load double, double* %74
%673 = load double, double* %23
%674 = fsub double %672, %673
%675 = load double, double* %23
%676 = fsub double %674, %675
store double %676, double* %80
%677 = load double, double* %21
%678 = load double, double* %23
%679 = fsub double %677, %678
%680 = load double, double* %25
%681 = fsub double %679, %680
store double %681, double* %81
%682 = load double, double* %22
%683 = load double, double* %23
%684 = fsub double %682, %683
%685 = load double, double* %26
%686 = fsub double %684, %685
store double %686, double* %82
%687 = load double, double* %77
%688 = load double, double* %25
%689 = fsub double %687, %688
%690 = load double, double* %23
%691 = fsub double %689, %690
store double %691, double* %83
%692 = load double, double* %75
%693 = load double, double* %25
%694 = fsub double %692, %693
%695 = load double, double* %25
%696 = fsub double %694, %695
store double %696, double* %84
%697 = load double, double* %24
%698 = load double, double* %25
%699 = fsub double %697, %698
%700 = load double, double* %26
%701 = fsub double %699, %700
store double %701, double* %85
%702 = load double, double* %78
%703 = load double, double* %26
%704 = fsub double %702, %703
%705 = load double, double* %23
%706 = fsub double %704, %705
store double %706, double* %86
%707 = load double, double* %79
%708 = load double, double* %26
%709 = fsub double %707, %708
%710 = load double, double* %25
%711 = fsub double %709, %710
store double %711, double* %87
%712 = load double, double* %76
%713 = load double, double* %26
%714 = fsub double %712, %713
%715 = load double, double* %26
%716 = fsub double %714, %715
store double %716, double* %88
%717 = load double, double* %56
%718 = load double, double* %61
%719 = fmul double %717, %718
%720 = load double, double* %66
%721 = fmul double %719, %720
%722 = fneg double %721
%723 = load double, double* %54
%724 = load double, double* %63
%725 = fmul double %723, %724
%726 = load double, double* %66
%727 = call double @llvm.fmuladd.f64(double %725, double %726, double %722)
%728 = load double, double* %56
%729 = load double, double* %59
%730 = fmul double %728, %729
%731 = load double, double* %67
%732 = call double @llvm.fmuladd.f64(double %730, double %731, double %727)
%733 = load double, double* %52
%734 = load double, double* %63
%735 = fmul double %733, %734
%736 = load double, double* %67
%737 = fneg double %735
%738 = call double @llvm.fmuladd.f64(double %737, double %736, double %732)
%739 = load double, double* %54
%740 = load double, double* %59
%741 = fmul double %739, %740
%742 = load double, double* %69
%743 = fneg double %741
%744 = call double @llvm.fmuladd.f64(double %743, double %742, double %738)
%745 = load double, double* %52
%746 = load double, double* %61
%747 = fmul double %745, %746
%748 = load double, double* %69
%749 = call double @llvm.fmuladd.f64(double %747, double %748, double %744)
store double %749, double* %89
%750 = load double, double* %63
%751 = load double, double* %67
%752 = fmul double %750, %751
%753 = fneg double %752
%754 = load double, double* %61
%755 = load double, double* %69
%756 = call double @llvm.fmuladd.f64(double %754, double %755, double %753)
%757 = load double, double* %89
%758 = fdiv double %756, %757
store double %758, double* %90
%759 = load double, double* %56
%760 = load double, double* %67
%761 = load double, double* %54
%762 = load double, double* %69
%763 = fmul double %761, %762
%764 = fneg double %763
%765 = call double @llvm.fmuladd.f64(double %759, double %760, double %764)
%766 = load double, double* %89
%767 = fdiv double %765, %766
store double %767, double* %91
%768 = load double, double* %56
%769 = load double, double* %61
%770 = fmul double %768, %769
%771 = fneg double %770
%772 = load double, double* %54
%773 = load double, double* %63
%774 = call double @llvm.fmuladd.f64(double %772, double %773, double %771)
%775 = load double, double* %89
%776 = fdiv double %774, %775
store double %776, double* %92
%777 = load double, double* %63
%778 = load double, double* %66
%779 = load double, double* %59
%780 = load double, double* %69
%781 = fmul double %779, %780
%782 = fneg double %781
%783 = call double @llvm.fmuladd.f64(double %777, double %778, double %782)
%784 = load double, double* %89
%785 = fdiv double %783, %784
store double %785, double* %93
%786 = load double, double* %56
%787 = load double, double* %66
%788 = fmul double %786, %787
%789 = fneg double %788
%790 = load double, double* %52
%791 = load double, double* %69
%792 = call double @llvm.fmuladd.f64(double %790, double %791, double %789)
%793 = load double, double* %89
%794 = fdiv double %792, %793
store double %794, double* %94
%795 = load double, double* %56
%796 = load double, double* %59
%797 = load double, double* %52
%798 = load double, double* %63
%799 = fmul double %797, %798
%800 = fneg double %799
%801 = call double @llvm.fmuladd.f64(double %795, double %796, double %800)
%802 = load double, double* %89
%803 = fdiv double %801, %802
store double %803, double* %95
%804 = load double, double* %61
%805 = load double, double* %66
%806 = fmul double %804, %805
%807 = fneg double %806
%808 = load double, double* %59
%809 = load double, double* %67
%810 = call double @llvm.fmuladd.f64(double %808, double %809, double %807)
%811 = load double, double* %89
%812 = fdiv double %810, %811
store double %812, double* %96
%813 = load double, double* %54
%814 = load double, double* %66
%815 = load double, double* %52
%816 = load double, double* %67
%817 = fmul double %815, %816
%818 = fneg double %817
%819 = call double @llvm.fmuladd.f64(double %813, double %814, double %818)
%820 = load double, double* %89
%821 = fdiv double %819, %820
store double %821, double* %97
%822 = load double, double* %54
%823 = load double, double* %59
%824 = fmul double %822, %823
%825 = fneg double %824
%826 = load double, double* %52
%827 = load double, double* %61
%828 = call double @llvm.fmuladd.f64(double %826, double %827, double %825)
%829 = load double, double* %89
%830 = fdiv double %828, %829
store double %830, double* %98
%831 = load double, double* %90
%832 = load double, double* %58
%833 = load double, double* %91
%834 = load double, double* %65
%835 = fmul double %833, %834
%836 = call double @llvm.fmuladd.f64(double %831, double %832, double %835)
%837 = load double, double* %92
%838 = load double, double* %71
%839 = call double @llvm.fmuladd.f64(double %837, double %838, double %836)
%840 = fadd double %839, 1.000000e+00
store double %840, double* %99
%841 = load double, double* %93
%842 = load double, double* %58
%843 = load double, double* %94
%844 = load double, double* %65
%845 = fmul double %843, %844
%846 = call double @llvm.fmuladd.f64(double %841, double %842, double %845)
%847 = load double, double* %95
%848 = load double, double* %71
%849 = call double @llvm.fmuladd.f64(double %847, double %848, double %846)
%850 = fadd double %849, 1.000000e+00
store double %850, double* %100
%851 = load double, double* %96
%852 = load double, double* %58
%853 = load double, double* %97
%854 = load double, double* %65
%855 = fmul double %853, %854
%856 = call double @llvm.fmuladd.f64(double %851, double %852, double %855)
%857 = load double, double* %98
%858 = load double, double* %71
%859 = call double @llvm.fmuladd.f64(double %857, double %858, double %856)
%860 = fadd double %859, 1.000000e+00
store double %860, double* %101
%861 = load double, double* %99
%862 = load double, double* %99
%863 = fmul double %861, %862
store double %863, double* %102
%864 = load double, double* %99
%865 = load double, double* %100
%866 = fmul double %864, %865
store double %866, double* %103
%867 = load double, double* %99
%868 = load double, double* %101
%869 = fmul double %867, %868
store double %869, double* %104
%870 = load double, double* %100
%871 = load double, double* %99
%872 = fmul double %870, %871
store double %872, double* %105
%873 = load double, double* %100
%874 = load double, double* %100
%875 = fmul double %873, %874
store double %875, double* %106
%876 = load double, double* %100
%877 = load double, double* %101
%878 = fmul double %876, %877
store double %878, double* %107
%879 = load double, double* %101
%880 = load double, double* %99
%881 = fmul double %879, %880
store double %881, double* %108
%882 = load double, double* %101
%883 = load double, double* %100
%884 = fmul double %882, %883
store double %884, double* %109
%885 = load double, double* %101
%886 = load double, double* %101
%887 = fmul double %885, %886
store double %887, double* %110
%888 = load double, double* %58
%889 = load double, double* %90
%890 = load double, double* %58
%891 = load double, double* %91
%892 = load double, double* %65
%893 = fmul double %891, %892
%894 = call double @llvm.fmuladd.f64(double %889, double %890, double %893)
%895 = load double, double* %92
%896 = load double, double* %71
%897 = call double @llvm.fmuladd.f64(double %895, double %896, double %894)
%898 = load double, double* %65
%899 = load double, double* %93
%900 = load double, double* %58
%901 = load double, double* %94
%902 = load double, double* %65
%903 = fmul double %901, %902
%904 = call double @llvm.fmuladd.f64(double %899, double %900, double %903)
%905 = load double, double* %95
%906 = load double, double* %71
%907 = call double @llvm.fmuladd.f64(double %905, double %906, double %904)
%908 = fmul double %898, %907
%909 = call double @llvm.fmuladd.f64(double %888, double %897, double %908)
%910 = load double, double* %71
%911 = load double, double* %96
%912 = load double, double* %58
%913 = load double, double* %97
%914 = load double, double* %65
%915 = fmul double %913, %914
%916 = call double @llvm.fmuladd.f64(double %911, double %912, double %915)
%917 = load double, double* %98
%918 = load double, double* %71
%919 = call double @llvm.fmuladd.f64(double %917, double %918, double %916)
%920 = call double @llvm.fmuladd.f64(double %910, double %919, double %909)
store double %920, double* %111
%921 = load double, double* %73
%922 = load double, double* %111
%923 = fsub double %921, %922
%924 = fdiv double 1.000000e+00, %923
store double %924, double* %46
%925 = load double, double* %46
%926 = load double, double* %102
%927 = load double, double* %80
%928 = call double @llvm.fmuladd.f64(double %925, double %926, double %927)
store double %928, double* %125
%929 = load double, double* %46
%930 = load double, double* %103
%931 = load double, double* %81
%932 = call double @llvm.fmuladd.f64(double %929, double %930, double %931)
store double %932, double* %126
%933 = load double, double* %46
%934 = load double, double* %104
%935 = load double, double* %82
%936 = call double @llvm.fmuladd.f64(double %933, double %934, double %935)
store double %936, double* %127
%937 = load double, double* %46
%938 = load double, double* %105
%939 = load double, double* %83
%940 = call double @llvm.fmuladd.f64(double %937, double %938, double %939)
store double %940, double* %128
%941 = load double, double* %46
%942 = load double, double* %106
%943 = load double, double* %84
%944 = call double @llvm.fmuladd.f64(double %941, double %942, double %943)
store double %944, double* %129
%945 = load double, double* %46
%946 = load double, double* %107
%947 = load double, double* %85
%948 = call double @llvm.fmuladd.f64(double %945, double %946, double %947)
store double %948, double* %130
%949 = load double, double* %46
%950 = load double, double* %108
%951 = load double, double* %86
%952 = call double @llvm.fmuladd.f64(double %949, double %950, double %951)
store double %952, double* %131
%953 = load double, double* %46
%954 = load double, double* %109
%955 = load double, double* %87
%956 = call double @llvm.fmuladd.f64(double %953, double %954, double %955)
store double %956, double* %132
%957 = load double, double* %46
%958 = load double, double* %110
%959 = load double, double* %88
%960 = call double @llvm.fmuladd.f64(double %957, double %958, double %959)
store double %960, double* %133
%961 = load double, double* %125
%962 = load double, double* %52
%963 = load double, double* %126
%964 = load double, double* %54
%965 = fmul double %963, %964
%966 = call double @llvm.fmuladd.f64(double %961, double %962, double %965)
%967 = load double, double* %127
%968 = load double, double* %56
%969 = call double @llvm.fmuladd.f64(double %967, double %968, double %966)
store double %969, double* %134
%970 = load double, double* %125
%971 = load double, double* %54
%972 = load double, double* %126
%973 = load double, double* %61
%974 = fmul double %972, %973
%975 = call double @llvm.fmuladd.f64(double %970, double %971, double %974)
%976 = load double, double* %127
%977 = load double, double* %63
%978 = call double @llvm.fmuladd.f64(double %976, double %977, double %975)
store double %978, double* %135
%979 = load double, double* %125
%980 = load double, double* %56
%981 = load double, double* %126
%982 = load double, double* %63
%983 = fmul double %981, %982
%984 = call double @llvm.fmuladd.f64(double %979, double %980, double %983)
%985 = load double, double* %127
%986 = load double, double* %69
%987 = call double @llvm.fmuladd.f64(double %985, double %986, double %984)
store double %987, double* %136
%988 = load double, double* %128
%989 = load double, double* %52
%990 = load double, double* %129
%991 = load double, double* %54
%992 = fmul double %990, %991
%993 = call double @llvm.fmuladd.f64(double %988, double %989, double %992)
%994 = load double, double* %130
%995 = load double, double* %56
%996 = call double @llvm.fmuladd.f64(double %994, double %995, double %993)
store double %996, double* %137
%997 = load double, double* %128
%998 = load double, double* %54
%999 = load double, double* %129
%1000 = load double, double* %61
%1001 = fmul double %999, %1000
%1002 = call double @llvm.fmuladd.f64(double %997, double %998, double %1001)
%1003 = load double, double* %130
%1004 = load double, double* %63
%1005 = call double @llvm.fmuladd.f64(double %1003, double %1004, double %1002)
store double %1005, double* %138
%1006 = load double, double* %128
%1007 = load double, double* %56
%1008 = load double, double* %129
%1009 = load double, double* %63
%1010 = fmul double %1008, %1009
%1011 = call double @llvm.fmuladd.f64(double %1006, double %1007, double %1010)
%1012 = load double, double* %130
%1013 = load double, double* %69
%1014 = call double @llvm.fmuladd.f64(double %1012, double %1013, double %1011)
store double %1014, double* %139
%1015 = load double, double* %131
%1016 = load double, double* %52
%1017 = load double, double* %132
%1018 = load double, double* %54
%1019 = fmul double %1017, %1018
%1020 = call double @llvm.fmuladd.f64(double %1015, double %1016, double %1019)
%1021 = load double, double* %133
%1022 = load double, double* %56
%1023 = call double @llvm.fmuladd.f64(double %1021, double %1022, double %1020)
store double %1023, double* %140
%1024 = load double, double* %131
%1025 = load double, double* %54
%1026 = load double, double* %132
%1027 = load double, double* %61
%1028 = fmul double %1026, %1027
%1029 = call double @llvm.fmuladd.f64(double %1024, double %1025, double %1028)
%1030 = load double, double* %133
%1031 = load double, double* %63
%1032 = call double @llvm.fmuladd.f64(double %1030, double %1031, double %1029)
store double %1032, double* %141
%1033 = load double, double* %131
%1034 = load double, double* %56
%1035 = load double, double* %132
%1036 = load double, double* %63
%1037 = fmul double %1035, %1036
%1038 = call double @llvm.fmuladd.f64(double %1033, double %1034, double %1037)
%1039 = load double, double* %133
%1040 = load double, double* %69
%1041 = call double @llvm.fmuladd.f64(double %1039, double %1040, double %1038)
store double %1041, double* %142
%1042 = load double, double* %134
%1043 = fadd double 1.000000e+00, %1042
%1044 = load double, double* %135
%1045 = load double, double* %137
%1046 = fneg double %1044
%1047 = call double @llvm.fmuladd.f64(double %1046, double %1045, double %1043)
%1048 = load double, double* %138
%1049 = fadd double %1047, %1048
%1050 = load double, double* %134
%1051 = load double, double* %138
%1052 = call double @llvm.fmuladd.f64(double %1050, double %1051, double %1049)
%1053 = load double, double* %136
%1054 = load double, double* %140
%1055 = fneg double %1053
%1056 = call double @llvm.fmuladd.f64(double %1055, double %1054, double %1052)
%1057 = load double, double* %136
%1058 = load double, double* %138
%1059 = fmul double %1057, %1058
%1060 = load double, double* %140
%1061 = fneg double %1059
%1062 = call double @llvm.fmuladd.f64(double %1061, double %1060, double %1056)
store double %1062, double* %112
%1063 = load double, double* %135
%1064 = load double, double* %139
%1065 = fmul double %1063, %1064
%1066 = load double, double* %140
%1067 = load double, double* %136
%1068 = load double, double* %137
%1069 = fmul double %1067, %1068
%1070 = load double, double* %141
%1071 = fmul double %1069, %1070
%1072 = call double @llvm.fmuladd.f64(double %1065, double %1066, double %1071)
%1073 = load double, double* %139
%1074 = load double, double* %141
%1075 = fneg double %1073
%1076 = call double @llvm.fmuladd.f64(double %1075, double %1074, double %1072)
%1077 = load double, double* %134
%1078 = load double, double* %139
%1079 = fmul double %1077, %1078
%1080 = load double, double* %141
%1081 = fneg double %1079
%1082 = call double @llvm.fmuladd.f64(double %1081, double %1080, double %1076)
%1083 = load double, double* %142
%1084 = fadd double %1082, %1083
%1085 = load double, double* %134
%1086 = load double, double* %142
%1087 = call double @llvm.fmuladd.f64(double %1085, double %1086, double %1084)
store double %1087, double* %113
%1088 = load double, double* %135
%1089 = fneg double %1088
%1090 = load double, double* %137
%1091 = fmul double %1089, %1090
%1092 = load double, double* %142
%1093 = load double, double* %138
%1094 = load double, double* %142
%1095 = fmul double %1093, %1094
%1096 = call double @llvm.fmuladd.f64(double %1091, double %1092, double %1095)
%1097 = load double, double* %134
%1098 = load double, double* %138
%1099 = fmul double %1097, %1098
%1100 = load double, double* %142
%1101 = call double @llvm.fmuladd.f64(double %1099, double %1100, double %1096)
store double %1101, double* %114
%1102 = load double, double* %112
%1103 = load double, double* %113
%1104 = fadd double %1102, %1103
%1105 = load double, double* %114
%1106 = fadd double %1104, %1105
store double %1106, double* %115
%1107 = load double, double* %138
%1108 = fadd double 1.000000e+00, %1107
%1109 = load double, double* %139
%1110 = load double, double* %141
%1111 = fneg double %1109
%1112 = call double @llvm.fmuladd.f64(double %1111, double %1110, double %1108)
%1113 = load double, double* %142
%1114 = fadd double %1112, %1113
%1115 = load double, double* %138
%1116 = load double, double* %142
%1117 = call double @llvm.fmuladd.f64(double %1115, double %1116, double %1114)
%1118 = load double, double* %115
%1119 = fdiv double %1117, %1118
store double %1119, double* %116
%1120 = load double, double* %135
%1121 = fneg double %1120
%1122 = load double, double* %136
%1123 = load double, double* %141
%1124 = call double @llvm.fmuladd.f64(double %1122, double %1123, double %1121)
%1125 = load double, double* %135
%1126 = load double, double* %142
%1127 = fneg double %1125
%1128 = call double @llvm.fmuladd.f64(double %1127, double %1126, double %1124)
%1129 = load double, double* %115
%1130 = fdiv double %1128, %1129
store double %1130, double* %117
%1131 = load double, double* %136
%1132 = fneg double %1131
%1133 = load double, double* %136
%1134 = load double, double* %138
%1135 = fneg double %1133
%1136 = call double @llvm.fmuladd.f64(double %1135, double %1134, double %1132)
%1137 = load double, double* %135
%1138 = load double, double* %139
%1139 = call double @llvm.fmuladd.f64(double %1137, double %1138, double %1136)
%1140 = load double, double* %115
%1141 = fdiv double %1139, %1140
store double %1141, double* %118
%1142 = load double, double* %137
%1143 = fneg double %1142
%1144 = load double, double* %139
%1145 = load double, double* %140
%1146 = call double @llvm.fmuladd.f64(double %1144, double %1145, double %1143)
%1147 = load double, double* %137
%1148 = load double, double* %142
%1149 = fneg double %1147
%1150 = call double @llvm.fmuladd.f64(double %1149, double %1148, double %1146)
%1151 = load double, double* %115
%1152 = fdiv double %1150, %1151
store double %1152, double* %119
%1153 = load double, double* %134
%1154 = fadd double 1.000000e+00, %1153
%1155 = load double, double* %136
%1156 = load double, double* %140
%1157 = fneg double %1155
%1158 = call double @llvm.fmuladd.f64(double %1157, double %1156, double %1154)
%1159 = load double, double* %142
%1160 = fadd double %1158, %1159
%1161 = load double, double* %134
%1162 = load double, double* %142
%1163 = call double @llvm.fmuladd.f64(double %1161, double %1162, double %1160)
%1164 = load double, double* %115
%1165 = fdiv double %1163, %1164
store double %1165, double* %120
%1166 = load double, double* %136
%1167 = load double, double* %137
%1168 = load double, double* %139
%1169 = fneg double %1168
%1170 = call double @llvm.fmuladd.f64(double %1166, double %1167, double %1169)
%1171 = load double, double* %134
%1172 = load double, double* %139
%1173 = fneg double %1171
%1174 = call double @llvm.fmuladd.f64(double %1173, double %1172, double %1170)
%1175 = load double, double* %115
%1176 = fdiv double %1174, %1175
store double %1176, double* %121
%1177 = load double, double* %140
%1178 = fneg double %1177
%1179 = load double, double* %138
%1180 = load double, double* %140
%1181 = fneg double %1179
%1182 = call double @llvm.fmuladd.f64(double %1181, double %1180, double %1178)
%1183 = load double, double* %137
%1184 = load double, double* %141
%1185 = call double @llvm.fmuladd.f64(double %1183, double %1184, double %1182)
%1186 = load double, double* %115
%1187 = fdiv double %1185, %1186
store double %1187, double* %122
%1188 = load double, double* %135
%1189 = load double, double* %140
%1190 = load double, double* %141
%1191 = fneg double %1190
%1192 = call double @llvm.fmuladd.f64(double %1188, double %1189, double %1191)
%1193 = load double, double* %134
%1194 = load double, double* %141
%1195 = fneg double %1193
%1196 = call double @llvm.fmuladd.f64(double %1195, double %1194, double %1192)
%1197 = load double, double* %115
%1198 = fdiv double %1196, %1197
store double %1198, double* %123
%1199 = load double, double* %134
%1200 = fadd double 1.000000e+00, %1199
%1201 = load double, double* %135
%1202 = load double, double* %137
%1203 = fneg double %1201
%1204 = call double @llvm.fmuladd.f64(double %1203, double %1202, double %1200)
%1205 = load double, double* %138
%1206 = fadd double %1204, %1205
%1207 = load double, double* %134
%1208 = load double, double* %138
%1209 = call double @llvm.fmuladd.f64(double %1207, double %1208, double %1206)
%1210 = load double, double* %115
%1211 = fdiv double %1209, %1210
store double %1211, double* %124
%1212 = load double, double* %116
%1213 = load double, double* %52
%1214 = load double, double* %119
%1215 = load double, double* %54
%1216 = fmul double %1214, %1215
%1217 = call double @llvm.fmuladd.f64(double %1212, double %1213, double %1216)
%1218 = load double, double* %122
%1219 = load double, double* %56
%1220 = call double @llvm.fmuladd.f64(double %1218, double %1219, double %1217)
store double %1220, double* %143
%1221 = load double, double* %117
%1222 = load double, double* %52
%1223 = load double, double* %120
%1224 = load double, double* %54
%1225 = fmul double %1223, %1224
%1226 = call double @llvm.fmuladd.f64(double %1221, double %1222, double %1225)
%1227 = load double, double* %123
%1228 = load double, double* %56
%1229 = call double @llvm.fmuladd.f64(double %1227, double %1228, double %1226)
store double %1229, double* %144
%1230 = load double, double* %118
%1231 = load double, double* %52
%1232 = load double, double* %121
%1233 = load double, double* %54
%1234 = fmul double %1232, %1233
%1235 = call double @llvm.fmuladd.f64(double %1230, double %1231, double %1234)
%1236 = load double, double* %124
%1237 = load double, double* %56
%1238 = call double @llvm.fmuladd.f64(double %1236, double %1237, double %1235)
store double %1238, double* %147
%1239 = load double, double* %117
%1240 = load double, double* %59
%1241 = load double, double* %120
%1242 = load double, double* %61
%1243 = fmul double %1241, %1242
%1244 = call double @llvm.fmuladd.f64(double %1239, double %1240, double %1243)
%1245 = load double, double* %123
%1246 = load double, double* %63
%1247 = call double @llvm.fmuladd.f64(double %1245, double %1246, double %1244)
store double %1247, double* %145
%1248 = load double, double* %118
%1249 = load double, double* %59
%1250 = load double, double* %121
%1251 = load double, double* %61
%1252 = fmul double %1250, %1251
%1253 = call double @llvm.fmuladd.f64(double %1248, double %1249, double %1252)
%1254 = load double, double* %124
%1255 = load double, double* %63
%1256 = call double @llvm.fmuladd.f64(double %1254, double %1255, double %1253)
store double %1256, double* %146
%1257 = load double, double* %118
%1258 = load double, double* %66
%1259 = load double, double* %121
%1260 = load double, double* %67
%1261 = fmul double %1259, %1260
%1262 = call double @llvm.fmuladd.f64(double %1257, double %1258, double %1261)
%1263 = load double, double* %124
%1264 = load double, double* %69
%1265 = call double @llvm.fmuladd.f64(double %1263, double %1264, double %1262)
store double %1265, double* %148
store double 0x44DFE1649125742F, double* %152
%1266 = load double*, double** %19
%1267 = getelementptr inbounds double, double* %1266, i64 0
%1268 = load double, double* %1267
%1269 = load double*, double** %18
%1270 = getelementptr inbounds double, double* %1269, i64 0
%1271 = load double, double* %1270
%1272 = fdiv double %1268, %1271
%1273 = load double*, double** %19
%1274 = getelementptr inbounds double, double* %1273, i64 3
%1275 = load double, double* %1274
%1276 = load double*, double** %18
%1277 = getelementptr inbounds double, double* %1276, i64 3
%1278 = load double, double* %1277
%1279 = fdiv double %1275, %1278
%1280 = fsub double %1272, %1279
%1281 = load double, double* %152
%1282 = call double @sqrt(double %1281)
%1283 = fmul double %1280, %1282
store double %1283, double* %149
%1284 = load double*, double** %19
%1285 = getelementptr inbounds double, double* %1284, i64 1
%1286 = load double, double* %1285
%1287 = load double*, double** %18
%1288 = getelementptr inbounds double, double* %1287, i64 1
%1289 = load double, double* %1288
%1290 = fdiv double %1286, %1289
%1291 = load double*, double** %19
%1292 = getelementptr inbounds double, double* %1291, i64 3
%1293 = load double, double* %1292
%1294 = load double*, double** %18
%1295 = getelementptr inbounds double, double* %1294, i64 3
%1296 = load double, double* %1295
%1297 = fdiv double %1293, %1296
%1298 = fsub double %1290, %1297
%1299 = load double, double* %152
%1300 = call double @sqrt(double %1299)
%1301 = fmul double %1298, %1300
store double %1301, double* %150
%1302 = load double*, double** %19
%1303 = getelementptr inbounds double, double* %1302, i64 2
%1304 = load double, double* %1303
%1305 = load double*, double** %18
%1306 = getelementptr inbounds double, double* %1305, i64 2
%1307 = load double, double* %1306
%1308 = fdiv double %1304, %1307
%1309 = load double*, double** %19
%1310 = getelementptr inbounds double, double* %1309, i64 3
%1311 = load double, double* %1310
%1312 = load double*, double** %18
%1313 = getelementptr inbounds double, double* %1312, i64 3
%1314 = load double, double* %1313
%1315 = fdiv double %1311, %1314
%1316 = fsub double %1308, %1315
%1317 = load double, double* %152
%1318 = call double @sqrt(double %1317)
%1319 = fmul double %1316, %1318
store double %1319, double* %151
%1320 = load double, double* %149
%1321 = load double, double* %149
%1322 = fmul double %1320, %1321
%1323 = load double, double* %143
%1324 = load double, double* %150
%1325 = load double, double* %150
%1326 = fmul double %1324, %1325
%1327 = load double, double* %145
%1328 = fmul double %1326, %1327
%1329 = call double @llvm.fmuladd.f64(double %1322, double %1323, double %1328)
%1330 = load double, double* %151
%1331 = load double, double* %151
%1332 = fmul double %1330, %1331
%1333 = load double, double* %148
%1334 = call double @llvm.fmuladd.f64(double %1332, double %1333, double %1329)
%1335 = load double, double* %149
%1336 = fmul double 2.000000e+00, %1335
%1337 = load double, double* %150
%1338 = fmul double %1336, %1337
%1339 = load double, double* %144
%1340 = call double @llvm.fmuladd.f64(double %1338, double %1339, double %1334)
%1341 = load double, double* %150
%1342 = fmul double 2.000000e+00, %1341
%1343 = load double, double* %151
%1344 = fmul double %1342, %1343
%1345 = load double, double* %146
%1346 = call double @llvm.fmuladd.f64(double %1344, double %1345, double %1340)
%1347 = load double, double* %149
%1348 = fmul double 2.000000e+00, %1347
%1349 = load double, double* %151
%1350 = fmul double %1348, %1349
%1351 = load double, double* %147
%1352 = call double @llvm.fmuladd.f64(double %1350, double %1351, double %1346)
store double %1352, double* %153
%1353 = load double, double* %153
%1354 = fmul double %1353, 1.000000e-26
store double %1354, double* %153
%1355 = load double, double* %153
ret double %1355
}

LLVM IR (-O2):
define double @Iq(double %0, double %1, double* nocapture %2, double* nocapture %3, double* nocapture %4, double* nocapture %5, double* nocapture %6, double %7, double %8, double %9, double %10, double %11, double %12) {
%14 = fadd double %1, 5.000000e-01
%15 = fptosi double %14 to i32
%16 = icmp slt i32 %15, 2
br i1 %16, label %17, label %23
17: ; preds = %13
%18 = bitcast double* %3 to <2 x double>*
store <2 x double> <double 0x3E7AD7F29ABCAF48, double 0x3E7AD7F29ABCAF48>, <2 x double>* %18
%19 = bitcast double* %2 to <2 x double>*
store <2 x double> <double 1.000000e+03, double 1.000000e+03>, <2 x double>* %19
%20 = bitcast double* %5 to <2 x double>*
store <2 x double> <double 0x3D719799812DEA11, double 0x3D719799812DEA11>, <2 x double>* %20
%21 = bitcast double* %4 to <2 x double>*
store <2 x double> <double 1.000000e+02, double 1.000000e+02>, <2 x double>* %21
%22 = getelementptr inbounds double, double* %6, i64 1
store double 5.000000e+00, double* %22
br label %30
23: ; preds = %13
%24 = icmp ult i32 %15, 5
%25 = insertelement <2 x double> poison, double %8, i64 0
%26 = insertelement <2 x double> %25, double %10, i64 1
%27 = insertelement <2 x double> poison, double %9, i64 0
%28 = insertelement <2 x double> %27, double %11, i64 1
br i1 %24, label %29, label %35
29: ; preds = %23
store double 0x3E7AD7F29ABCAF48, double* %3
store double 1.000000e+03, double* %2
store double 0x3D719799812DEA11, double* %5
store double 1.000000e+02, double* %4
br label %30
30: ; preds = %17, %29
%31 = phi double [ %11, %29 ], [ -4.000000e-04, %17 ]
%32 = phi double [ %10, %29 ], [ -4.000000e-04, %17 ]
store double 5.000000e+00, double* %6
%33 = insertelement <2 x double> <double -4.000000e-04, double poison>, double %32, i64 1
%34 = insertelement <2 x double> <double -4.000000e-04, double poison>, double %31, i64 1
br label %35
35: ; preds = %30, %23
%36 = phi double [ %7, %23 ], [ -4.000000e-04, %30 ]
%37 = phi <2 x double> [ %26, %23 ], [ %33, %30 ]
%38 = phi <2 x double> [ %28, %23 ], [ %34, %30 ]
%39 = load double, double* %3
%40 = fsub double 1.000000e+00, %39
%41 = getelementptr inbounds double, double* %3, i64 1
%42 = load double, double* %41
%43 = fsub double %40, %42
%44 = getelementptr inbounds double, double* %3, i64 2
%45 = load double, double* %44
%46 = fsub double %43, %45
%47 = getelementptr inbounds double, double* %3, i64 3
store double %46, double* %47
%48 = load double, double* %2
%49 = getelementptr inbounds double, double* %2, i64 1
%50 = load double, double* %49
%51 = fmul double %48, %50
%52 = tail call double @sqrt(double %51)
%53 = load double, double* %2
%54 = getelementptr inbounds double, double* %2, i64 2
%55 = load double, double* %54
%56 = fmul double %53, %55
%57 = tail call double @sqrt(double %56)
%58 = load double, double* %2
%59 = getelementptr inbounds double, double* %2, i64 3
%60 = load double, double* %59
%61 = fmul double %58, %60
%62 = tail call double @sqrt(double %61)
%63 = load double, double* %49
%64 = load double, double* %54
%65 = fmul double %63, %64
%66 = tail call double @sqrt(double %65)
%67 = load double, double* %49
%68 = load double, double* %59
%69 = fmul double %67, %68
%70 = tail call double @sqrt(double %69)
%71 = load double, double* %54
%72 = load double, double* %59
%73 = fmul double %71, %72
%74 = tail call double @sqrt(double %73)
%75 = load double, double* %4
%76 = getelementptr inbounds double, double* %4, i64 1
%77 = load double, double* %76
%78 = fmul double %75, %77
%79 = tail call double @sqrt(double %78)
%80 = load double, double* %4
%81 = getelementptr inbounds double, double* %4, i64 2
%82 = load double, double* %81
%83 = fmul double %80, %82
%84 = tail call double @sqrt(double %83)
%85 = load double, double* %4
%86 = getelementptr inbounds double, double* %4, i64 3
%87 = load double, double* %86
%88 = fmul double %85, %87
%89 = tail call double @sqrt(double %88)
%90 = load double, double* %76
%91 = load double, double* %81
%92 = fmul double %90, %91
%93 = tail call double @sqrt(double %92)
%94 = load double, double* %76
%95 = load double, double* %86
%96 = fmul double %94, %95
%97 = tail call double @sqrt(double %96)
%98 = load double, double* %81
%99 = load double, double* %86
%100 = fmul double %98, %99
%101 = tail call double @sqrt(double %100)
%102 = load double, double* %3
%103 = load double, double* %41
%104 = fmul double %102, %103
%105 = tail call double @sqrt(double %104)
%106 = load double, double* %3
%107 = load double, double* %44
%108 = fmul double %106, %107
%109 = tail call double @sqrt(double %108)
%110 = load double, double* %3
%111 = load double, double* %47
%112 = fmul double %110, %111
%113 = tail call double @sqrt(double %112)
%114 = load double, double* %41
%115 = load double, double* %44
%116 = fmul double %114, %115
%117 = tail call double @sqrt(double %116)
%118 = load double, double* %41
%119 = load double, double* %47
%120 = fmul double %118, %119
%121 = tail call double @sqrt(double %120)
%122 = load double, double* %44
%123 = load double, double* %47
%124 = fmul double %122, %123
%125 = tail call double @sqrt(double %124)
%126 = fmul double %0, %0
%127 = bitcast double* %6 to <2 x double>*
%128 = load <2 x double>, <2 x double>* %127
%129 = insertelement <2 x double> poison, double %126, i64 0
%130 = shufflevector <2 x double> %129, <2 x double> poison, <2 x i32> zeroinitializer
%131 = fmul <2 x double> %130, %128
%132 = fmul <2 x double> %128, %131
%133 = bitcast double* %2 to <2 x double>*
%134 = load <2 x double>, <2 x double>* %133
%135 = fmul <2 x double> %134, %132
%136 = fdiv <2 x double> %135, <double 6.000000e+00, double 6.000000e+00>
%137 = getelementptr inbounds double, double* %6, i64 2
%138 = bitcast double* %137 to <2 x double>*
%139 = load <2 x double>, <2 x double>* %138
%140 = fmul <2 x double> %130, %139
%141 = fmul <2 x double> %139, %140
%142 = bitcast double* %54 to <2 x double>*
%143 = load <2 x double>, <2 x double>* %142
%144 = fmul <2 x double> %143, %141
%145 = fdiv <2 x double> %144, <double 6.000000e+00, double 6.000000e+00>
%146 = extractelement <2 x double> %136, i64 0
%147 = fneg double %146
%148 = tail call double @exp(double %147)
%149 = load double, double* %2
%150 = load double, double* %3
%151 = load double, double* %4
%152 = tail call double @exp(double %147)
%153 = extractelement <2 x double> %136, i64 1
%154 = fneg double %153
%155 = tail call double @exp(double %154)
%156 = tail call double @exp(double %147)
%157 = tail call double @exp(double %154)
%158 = extractelement <2 x double> %145, i64 0
%159 = fneg double %158
%160 = tail call double @exp(double %159)
%161 = tail call double @exp(double %147)
%162 = insertelement <2 x double> poison, double %156, i64 0
%163 = insertelement <2 x double> %162, double %161, i64 1
%164 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %163
%165 = shufflevector <2 x double> %136, <2 x double> poison, <2 x i32> zeroinitializer
%166 = fdiv <2 x double> %164, %165
%167 = fsub double %154, %158
%168 = tail call double @exp(double %167)
%169 = insertelement <2 x double> poison, double %157, i64 0
%170 = insertelement <2 x double> %169, double %168, i64 1
%171 = fmul <2 x double> %170, %166
%172 = extractelement <2 x double> %145, i64 1
%173 = fneg double %172
%174 = tail call double @exp(double %173)
%175 = insertelement <2 x double> poison, double %160, i64 0
%176 = insertelement <2 x double> %175, double %174, i64 1
%177 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %176
%178 = fdiv <2 x double> %177, %145
%179 = fmul <2 x double> %171, %178
%180 = insertelement <2 x double> poison, double %84, i64 0
%181 = insertelement <2 x double> %180, double %89, i64 1
%182 = insertelement <2 x double> poison, double %109, i64 0
%183 = insertelement <2 x double> %182, double %113, i64 1
%184 = fmul <2 x double> %181, %183
%185 = insertelement <2 x double> poison, double %57, i64 0
%186 = insertelement <2 x double> %185, double %62, i64 1
%187 = fmul <2 x double> %186, %184
%188 = fmul <2 x double> %187, %179
%189 = tail call double @exp(double %154)
%190 = insertelement <2 x double> poison, double %148, i64 0
%191 = insertelement <2 x double> %190, double %189, i64 1
%192 = fadd <2 x double> %191, <double -1.000000e+00, double -1.000000e+00>
%193 = fadd <2 x double> %136, %192
%194 = fmul <2 x double> %193, <double 2.000000e+00, double 2.000000e+00>
%195 = fmul <2 x double> %136, %136
%196 = fdiv <2 x double> %194, %195
%197 = load double, double* %49
%198 = load double, double* %41
%199 = insertelement <2 x double> poison, double %149, i64 0
%200 = insertelement <2 x double> %199, double %197, i64 1
%201 = insertelement <2 x double> poison, double %150, i64 0
%202 = insertelement <2 x double> %201, double %198, i64 1
%203 = fmul <2 x double> %200, %202
%204 = load double, double* %76
%205 = insertelement <2 x double> poison, double %151, i64 0
%206 = insertelement <2 x double> %205, double %204, i64 1
%207 = fmul <2 x double> %203, %206
%208 = fmul <2 x double> %207, %196
%209 = tail call double @exp(double %154)
%210 = tail call double @exp(double %159)
%211 = insertelement <2 x double> poison, double %209, i64 0
%212 = insertelement <2 x double> %211, double %210, i64 1
%213 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %212
%214 = shufflevector <2 x double> %136, <2 x double> undef, <2 x i32> <i32 1, i32 undef>
%215 = shufflevector <2 x double> %214, <2 x double> %145, <2 x i32> <i32 0, i32 2>
%216 = fdiv <2 x double> %213, %215
%217 = shufflevector <2 x double> %216, <2 x double> poison, <2 x i32> <i32 1, i32 undef>
%218 = fmul <2 x double> %216, %217
%219 = extractelement <2 x double> %218, i64 0
%220 = fmul double %93, %117
%221 = fmul double %66, %220
%222 = fmul double %221, %219
%223 = tail call double @exp(double %154)
%224 = tail call double @exp(double %159)
%225 = tail call double @exp(double %173)
%226 = insertelement <2 x double> poison, double %223, i64 0
%227 = insertelement <2 x double> %226, double %225, i64 1
%228 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %227
%229 = shufflevector <2 x double> %214, <2 x double> %145, <2 x i32> <i32 0, i32 3>
%230 = fdiv <2 x double> %228, %229
%231 = extractelement <2 x double> %230, i64 0
%232 = fmul double %224, %231
%233 = extractelement <2 x double> %230, i64 1
%234 = fmul double %232, %233
%235 = fmul double %97, %121
%236 = fmul double %70, %235
%237 = fmul double %236, %234
%238 = tail call double @exp(double %159)
%239 = fadd double %238, -1.000000e+00
%240 = fadd double %158, %239
%241 = fmul double %240, 2.000000e+00
%242 = fmul <2 x double> %145, %145
%243 = extractelement <2 x double> %242, i64 0
%244 = fdiv double %241, %243
%245 = load double, double* %54
%246 = load double, double* %44
%247 = fmul double %245, %246
%248 = load double, double* %81
%249 = fmul double %247, %248
%250 = fmul double %249, %244
%251 = tail call double @exp(double %159)
%252 = insertelement <2 x double> poison, double %152, i64 0
%253 = insertelement <2 x double> %252, double %251, i64 1
%254 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %253
%255 = shufflevector <2 x double> %136, <2 x double> %145, <2 x i32> <i32 0, i32 2>
%256 = fdiv <2 x double> %254, %255
%257 = tail call double @exp(double %173)
%258 = insertelement <2 x double> poison, double %155, i64 0
%259 = insertelement <2 x double> %258, double %257, i64 1
%260 = fsub <2 x double> <double 1.000000e+00, double 1.000000e+00>, %259
%261 = fdiv <2 x double> %260, %229
%262 = fmul <2 x double> %256, %261
%263 = insertelement <2 x double> poison, double %79, i64 0
%264 = insertelement <2 x double> %263, double %101, i64 1
%265 = insertelement <2 x double> poison, double %105, i64 0
%266 = insertelement <2 x double> %265, double %125, i64 1
%267 = fmul <2 x double> %264, %266
%268 = insertelement <2 x double> poison, double %52, i64 0
%269 = insertelement <2 x double> %268, double %74, i64 1
%270 = fmul <2 x double> %269, %267
%271 = fmul <2 x double> %270, %262
%272 = tail call double @exp(double %173)
%273 = load double, double* %59
%274 = load double, double* %47
%275 = load double, double* %86
switch i32 %15, label %293 [
i32 0, label %276
i32 1, label %277
i32 2, label %279
i32 3, label %281
i32 4, label %284
i32 5, label %287
i32 6, label %288
i32 7, label %290
i32 8, label %292
]
276: ; preds = %35
br label %293
277: ; preds = %35
%278 = insertelement <2 x double> %271, double 2.000000e-06, i64 0
br label %293
279: ; preds = %35
%280 = insertelement <2 x double> %208, double 0x3EB0C6F7A0B5ED8D, i64 0
br label %293
281: ; preds = %35
%282 = insertelement <2 x double> %271, double 2.000000e-06, i64 0
%283 = insertelement <2 x double> %208, double 0x3EB0C6F7A0B5ED8D, i64 0
br label %293
284: ; preds = %35
%285 = insertelement <2 x double> %271, double 2.000000e-06, i64 0
%286 = insertelement <2 x double> %208, double 0x3EB0C6F7A0B5ED8D, i64 0
br label %293
287: ; preds = %35
br label %293
288: ; preds = %35
%289 = insertelement <2 x double> %271, double 0x3EB0C6F7A0B5ED8D, i64 0
br label %293
290: ; preds = %35
%291 = insertelement <2 x double> %271, double 0x3EB0C6F7A0B5ED8D, i64 0
br label %293
292: ; preds = %35
br label %293
293: ; preds = %35, %292, %290, %288, %287, %284, %281, %279, %277, %276
%294 = phi double [ %237, %35 ], [ 4.000000e-06, %292 ], [ %237, %290 ], [ 5.000000e-06, %288 ], [ 5.000000e-06, %287 ], [ %237, %284 ], [ 6.000000e-06, %281 ], [ 6.000000e-06, %279 ], [ 0x3EDD5C31593E5FB7, %277 ], [ 0x3EDD5C31593E5FB7, %276 ]
%295 = phi double [ %222, %35 ], [ 3.000000e-06, %292 ], [ %222, %290 ], [ 4.000000e-06, %288 ], [ 4.000000e-06, %287 ], [ %222, %284 ], [ 5.000000e-06, %281 ], [ 5.000000e-06, %279 ], [ 6.000000e-06, %277 ], [ 6.000000e-06, %276 ]
%296 = phi <2 x double> [ %188, %35 ], [ <double 0x3EB0C6F7A0B5ED8D, double 2.000000e-06>, %292 ], [ <double 2.000000e-06, double 3.000000e-06>, %290 ], [ <double 2.000000e-06, double 3.000000e-06>, %288 ], [ <double 2.000000e-06, double 3.000000e-06>, %287 ], [ <double 3.000000e-06, double 4.000000e-06>, %284 ], [ <double 3.000000e-06, double 4.000000e-06>, %281 ], [ <double 3.000000e-06, double 4.000000e-06>, %279 ], [ <double 3.000000e-06, double 4.000000e-06>, %277 ], [ <double 3.000000e-06, double 4.000000e-06>, %276 ]
%297 = phi <2 x double> [ %271, %35 ], [ %271, %292 ], [ %291, %290 ], [ %289, %288 ], [ <double 0x3EB0C6F7A0B5ED8D, double 6.000000e-06>, %287 ], [ %285, %284 ], [ %282, %281 ], [ <double 2.000000e-06, double 0x3EDD5C31593E5FB7>, %279 ], [ %278, %277 ], [ <double 2.000000e-06, double 0x3EE0C6F7A0B5ED8D>, %276 ]
%298 = phi <2 x double> [ %208, %35 ], [ %208, %292 ], [ %208, %290 ], [ %208, %288 ], [ %208, %287 ], [ %286, %284 ], [ %283, %281 ], [ %280, %279 ], [ <double 0x3EB0C6F7A0B5ED8D, double 5.000000e-06>, %277 ], [ <double 0x3EB0C6F7A0B5ED8D, double 5.000000e-06>, %276 ]
%299 = fmul double %273, %274
%300 = fmul double %299, %275
%301 = fadd double %272, -1.000000e+00
%302 = fadd double %172, %301
%303 = fmul double %302, 2.000000e+00
%304 = fmul double %172, %172
%305 = fdiv double %303, %304
%306 = fmul double %300, %305
%307 = insertelement <2 x double> <double 0.000000e+00, double poison>, double %36, i64 1
%308 = fsub <2 x double> %307, %38
%309 = extractelement <2 x double> %38, i64 0
%310 = shufflevector <2 x double> %38, <2 x double> undef, <2 x i32> zeroinitializer
%311 = fsub <2 x double> %308, %310
%312 = insertelement <2 x double> <double poison, double 0.000000e+00>, double %36, i64 0
%313 = fsub <2 x double> %312, %38
%314 = extractelement <2 x double> %38, i64 1
%315 = shufflevector <2 x double> %38, <2 x double> undef, <2 x i32> <i32 1, i32 1>
%316 = fsub <2 x double> %313, %315
%317 = fsub <2 x double> %37, %38
%318 = insertelement <2 x double> poison, double %12, i64 0
%319 = shufflevector <2 x double> %318, <2 x double> poison, <2 x i32> zeroinitializer
%320 = fsub <2 x double> %317, %319
%321 = extractelement <2 x double> %37, i64 0
%322 = fsub double %321, %12
%323 = fsub double %322, %309
%324 = extractelement <2 x double> %37, i64 1
%325 = fsub double %324, %12
%326 = fsub double %325, %314
%327 = fsub double 0.000000e+00, %12
%328 = fsub double %327, %12
%329 = extractelement <2 x double> %296, i64 0
%330 = extractelement <2 x double> %298, i64 1
%331 = extractelement <2 x double> %298, i64 0
%332 = shufflevector <2 x double> %296, <2 x double> %298, <2 x i32> <i32 0, i32 2>
%333 = fneg <2 x double> %332
%334 = shufflevector <2 x double> %298, <2 x double> undef, <2 x i32> <i32 1, i32 undef>
%335 = insertelement <2 x double> %334, double %295, i64 1
%336 = fmul <2 x double> %335, %333
%337 = fmul <2 x double> %296, %336
%338 = extractelement <2 x double> %337, i64 0
%339 = extractelement <2 x double> %297, i64 0
%340 = fmul double %295, %339
%341 = tail call double @llvm.fmuladd.f64(double %340, double %329, double %338)
%342 = fmul <2 x double> %296, %297
%343 = extractelement <2 x double> %342, i64 0
%344 = tail call double @llvm.fmuladd.f64(double %343, double %295, double %341)
%345 = extractelement <2 x double> %336, i64 1
%346 = tail call double @llvm.fmuladd.f64(double %345, double %295, double %344)
%347 = insertelement <2 x double> poison, double %295, i64 0
%348 = shufflevector <2 x double> %347, <2 x double> %297, <2 x i32> <i32 0, i32 2>
%349 = fneg <2 x double> %348
%350 = shufflevector <2 x double> %349, <2 x double> poison, <2 x i32> <i32 1, i32 undef>
%351 = fmul <2 x double> %297, %350
%352 = extractelement <2 x double> %351, i64 0
%353 = tail call double @llvm.fmuladd.f64(double %352, double %250, double %346)
%354 = fmul double %330, %331
%355 = tail call double @llvm.fmuladd.f64(double %354, double %250, double %353)
%356 = insertelement <2 x double> poison, double %250, i64 1
%357 = insertelement <2 x double> %356, double %295, i64 0
%358 = fmul <2 x double> %357, %349
%359 = shufflevector <2 x double> %334, <2 x double> %296, <2 x i32> <i32 0, i32 2>
%360 = insertelement <2 x double> poison, double %250, i64 0
%361 = insertelement <2 x double> %360, double %295, i64 1
%362 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %359, <2 x double> %361, <2 x double> %358)
%363 = insertelement <2 x double> poison, double %355, i64 0
%364 = shufflevector <2 x double> %363, <2 x double> poison, <2 x i32> zeroinitializer
%365 = fdiv <2 x double> %362, %364
%366 = fmul <2 x double> %296, %333
%367 = extractelement <2 x double> %366, i64 0
%368 = tail call double @llvm.fmuladd.f64(double %331, double %250, double %367)
%369 = fdiv double %368, %355
%370 = shufflevector <2 x double> %297, <2 x double> %296, <2 x i32> <i32 0, i32 2>
%371 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %370, <2 x double> %348, <2 x double> %336)
%372 = fdiv <2 x double> %371, %364
%373 = tail call double @llvm.fmuladd.f64(double %331, double %330, double %352)
%374 = fdiv double %373, %355
%375 = extractelement <2 x double> %296, i64 1
%376 = extractelement <2 x double> %297, i64 1
%377 = insertelement <2 x double> poison, double %294, i64 0
%378 = shufflevector <2 x double> %377, <2 x double> poison, <2 x i32> zeroinitializer
%379 = extractelement <2 x double> %365, i64 1
%380 = insertelement <2 x double> poison, double %379, i64 0
%381 = insertelement <2 x double> %380, double %369, i64 1
%382 = fmul <2 x double> %378, %381
%383 = shufflevector <2 x double> %296, <2 x double> undef, <2 x i32> <i32 1, i32 1>
%384 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %365, <2 x double> %383, <2 x double> %382)
%385 = shufflevector <2 x double> %297, <2 x double> undef, <2 x i32> <i32 1, i32 1>
%386 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %372, <2 x double> %385, <2 x double> %384)
%387 = fadd <2 x double> %386, <double 1.000000e+00, double 1.000000e+00>
%388 = extractelement <2 x double> %372, i64 1
%389 = fmul double %294, %388
%390 = extractelement <2 x double> %372, i64 0
%391 = tail call double @llvm.fmuladd.f64(double %390, double %375, double %389)
%392 = tail call double @llvm.fmuladd.f64(double %374, double %376, double %391)
%393 = fadd double %392, 1.000000e+00
%394 = shufflevector <2 x double> %387, <2 x double> undef, <2 x i32> zeroinitializer
%395 = fmul <2 x double> %394, %387
%396 = fmul <2 x double> %387, %387
%397 = insertelement <2 x double> poison, double %393, i64 0
%398 = shufflevector <2 x double> %397, <2 x double> poison, <2 x i32> zeroinitializer
%399 = fmul <2 x double> %387, %398
%400 = fmul double %393, %393
%401 = extractelement <2 x double> %386, i64 1
%402 = fmul double %294, %401
%403 = extractelement <2 x double> %386, i64 0
%404 = tail call double @llvm.fmuladd.f64(double %375, double %403, double %402)
%405 = tail call double @llvm.fmuladd.f64(double %376, double %392, double %404)
%406 = fsub double %306, %405
%407 = fdiv double 1.000000e+00, %406
%408 = insertelement <2 x double> poison, double %407, i64 0
%409 = shufflevector <2 x double> %408, <2 x double> poison, <2 x i32> zeroinitializer
%410 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %409, <2 x double> %395, <2 x double> %311)
%411 = shufflevector <2 x double> %395, <2 x double> %396, <2 x i32> <i32 1, i32 3>
%412 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %409, <2 x double> %411, <2 x double> %316)
%413 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %409, <2 x double> %399, <2 x double> %320)
%414 = extractelement <2 x double> %399, i64 0
%415 = tail call double @llvm.fmuladd.f64(double %407, double %414, double %323)
%416 = extractelement <2 x double> %399, i64 1
%417 = tail call double @llvm.fmuladd.f64(double %407, double %416, double %326)
%418 = tail call double @llvm.fmuladd.f64(double %407, double %400, double %328)
%419 = extractelement <2 x double> %412, i64 0
%420 = fmul double %295, %419
%421 = extractelement <2 x double> %410, i64 0
%422 = tail call double @llvm.fmuladd.f64(double %421, double %329, double %420)
%423 = extractelement <2 x double> %413, i64 0
%424 = tail call double @llvm.fmuladd.f64(double %423, double %250, double %422)
%425 = shufflevector <2 x double> %412, <2 x double> poison, <2 x i32> <i32 1, i32 undef>
%426 = fmul <2 x double> %297, %425
%427 = extractelement <2 x double> %426, i64 0
%428 = extractelement <2 x double> %410, i64 1
%429 = tail call double @llvm.fmuladd.f64(double %428, double %331, double %427)
%430 = extractelement <2 x double> %413, i64 1
%431 = tail call double @llvm.fmuladd.f64(double %430, double %329, double %429)
%432 = shufflevector <2 x double> %297, <2 x double> %298, <2 x i32> <i32 0, i32 3>
%433 = fmul <2 x double> %432, %412
%434 = shufflevector <2 x double> %298, <2 x double> %297, <2 x i32> <i32 0, i32 2>
%435 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %410, <2 x double> %434, <2 x double> %433)
%436 = insertelement <2 x double> %296, double %295, i64 1
%437 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %413, <2 x double> %436, <2 x double> %435)
%438 = fmul <2 x double> %335, %412
%439 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %410, <2 x double> %370, <2 x double> %438)
%440 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %413, <2 x double> %357, <2 x double> %439)
%441 = fmul double %330, %417
%442 = tail call double @llvm.fmuladd.f64(double %415, double %339, double %441)
%443 = tail call double @llvm.fmuladd.f64(double %418, double %295, double %442)
%444 = insertelement <2 x double> %297, double %295, i64 1
%445 = insertelement <2 x double> poison, double %417, i64 0
%446 = shufflevector <2 x double> %445, <2 x double> poison, <2 x i32> zeroinitializer
%447 = fmul <2 x double> %444, %446
%448 = insertelement <2 x double> poison, double %415, i64 0
%449 = shufflevector <2 x double> %448, <2 x double> poison, <2 x i32> zeroinitializer
%450 = shufflevector <2 x double> %298, <2 x double> %296, <2 x i32> <i32 0, i32 2>
%451 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %449, <2 x double> %450, <2 x double> %447)
%452 = insertelement <2 x double> poison, double %418, i64 0
%453 = shufflevector <2 x double> %452, <2 x double> poison, <2 x i32> zeroinitializer
%454 = insertelement <2 x double> %296, double %250, i64 1
%455 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %453, <2 x double> %454, <2 x double> %451)
%456 = extractelement <2 x double> %437, i64 0
%457 = fadd double %456, 1.000000e+00
%458 = extractelement <2 x double> %440, i64 0
%459 = fneg double %458
%460 = tail call double @llvm.fmuladd.f64(double %459, double %431, double %457)
%461 = extractelement <2 x double> %437, i64 1
%462 = fadd double %461, %460
%463 = tail call double @llvm.fmuladd.f64(double %456, double %461, double %462)
%464 = fneg double %424
%465 = extractelement <2 x double> %455, i64 0
%466 = tail call double @llvm.fmuladd.f64(double %464, double %465, double %463)
%467 = fmul double %461, %464
%468 = extractelement <2 x double> %440, i64 1
%469 = fmul double %458, %468
%470 = fmul double %424, %431
%471 = fmul double %443, %470
%472 = tail call double @llvm.fmuladd.f64(double %469, double %465, double %471)
%473 = fneg double %468
%474 = tail call double @llvm.fmuladd.f64(double %473, double %443, double %472)
%475 = fneg double %456
%476 = fmul double %468, %475
%477 = tail call double @llvm.fmuladd.f64(double %476, double %443, double %474)
%478 = extractelement <2 x double> %455, i64 1
%479 = fadd double %478, %477
%480 = insertelement <2 x double> poison, double %467, i64 0
%481 = shufflevector <2 x double> %480, <2 x double> %437, <2 x i32> <i32 0, i32 2>
%482 = insertelement <2 x double> poison, double %466, i64 0
%483 = insertelement <2 x double> %482, double %479, i64 1
%484 = call <2 x double> @llvm.fmuladd.v2f64(<2 x double> %481, <2 x double> %455, <2 x double> %483)
%485 = fmul double %431, %459
%486 = fmul double %461, %478
%487 = tail call double @llvm.fmuladd.f64(double %485, double %478, double %486)
%488 = fmul double %456, %461
%489 = tail call double @llvm.fmuladd.f64(double %488, double %478, double %487)
%490 = shufflevector <2 x double> %484, <2 x double> poison, <2 x i32> <i32 1, i32 undef>
%491 = fadd <2 x double> %484, %490
%492 = extractelement <2 x double> %491, i64 0
%493 = fadd double %489, %492
%494 = fadd double %461, 1.000000e+00
%495 = tail call double @llvm.fmuladd.f64(double %473, double %443, double %494)
%496 = fadd double %478, %495
%497 = tail call double @llvm.fmuladd.f64(double %461, double %478, double %496)
%498 = fdiv double %497, %493
%499 = tail call double @llvm.fmuladd.f64(double %424, double %443, double %459)
%500 = tail call double @llvm.fmuladd.f64(double %459, double %478, double %499)
%501 = fdiv double %500, %493
%502 = tail call double @llvm.fmuladd.f64(double %464, double %461, double %464)
%503 = tail call double @llvm.fmuladd.f64(double %458, double %468, double %502)
%504 = fdiv double %503, %493
%505 = fneg double %431
%506 = tail call double @llvm.fmuladd.f64(double %468, double %465, double %505)
%507 = tail call double @llvm.fmuladd.f64(double %505, double %478, double %506)
%508 = fdiv double %507, %493
%509 = tail call double @llvm.fmuladd.f64(double %464, double %465, double %457)
%510 = fadd double %478, %509
%511 = tail call double @llvm.fmuladd.f64(double %456, double %478, double %510)
%512 = fdiv double %511, %493
%513 = tail call double @llvm.fmuladd.f64(double %424, double %431, double %473)
%514 = tail call double @llvm.fmuladd.f64(double %475, double %468, double %513)
%515 = fdiv double %514, %493
%516 = fneg double %465
%517 = fneg double %461
%518 = tail call double @llvm.fmuladd.f64(double %517, double %465, double %516)
%519 = tail call double @llvm.fmuladd.f64(double %431, double %443, double %518)
%520 = fdiv double %519, %493
%521 = fneg double %443
%522 = tail call double @llvm.fmuladd.f64(double %458, double %465, double %521)
%523 = tail call double @llvm.fmuladd.f64(double %475, double %443, double %522)
%524 = fdiv double %523, %493
%525 = fdiv double %463, %493
%526 = fmul double %339, %508
%527 = tail call double @llvm.fmuladd.f64(double %498, double %331, double %526)
%528 = tail call double @llvm.fmuladd.f64(double %520, double %329, double %527)
%529 = fmul double %339, %512
%530 = tail call double @llvm.fmuladd.f64(double %501, double %331, double %529)
%531 = tail call double @llvm.fmuladd.f64(double %524, double %329, double %530)
%532 = fmul double %339, %515
%533 = tail call double @llvm.fmuladd.f64(double %504, double %331, double %532)
%534 = tail call double @llvm.fmuladd.f64(double %525, double %329, double %533)
%535 = fmul double %330, %512
%536 = tail call double @llvm.fmuladd.f64(double %501, double %339, double %535)
%537 = tail call double @llvm.fmuladd.f64(double %524, double %295, double %536)
%538 = fmul double %330, %515
%539 = tail call double @llvm.fmuladd.f64(double %504, double %339, double %538)
%540 = tail call double @llvm.fmuladd.f64(double %525, double %295, double %539)
%541 = fmul double %295, %515
%542 = tail call double @llvm.fmuladd.f64(double %504, double %329, double %541)
%543 = tail call double @llvm.fmuladd.f64(double %525, double %250, double %542)
%544 = load double, double* %5
%545 = load double, double* %4
%546 = getelementptr inbounds double, double* %5, i64 3
%547 = load double, double* %546
%548 = insertelement <2 x double> poison, double %544, i64 0
%549 = insertelement <2 x double> %548, double %547, i64 1
%550 = insertelement <2 x double> poison, double %275, i64 1
%551 = insertelement <2 x double> %550, double %545, i64 0
%552 = fdiv <2 x double> %549, %551
%553 = extractelement <2 x double> %552, i64 0
%554 = extractelement <2 x double> %552, i64 1
%555 = fsub double %553, %554
%556 = fmul double %555, 0x426695C990661944
%557 = getelementptr inbounds double, double* %5, i64 1
%558 = bitcast double* %557 to <2 x double>*
%559 = load <2 x double>, <2 x double>* %558
%560 = bitcast double* %76 to <2 x double>*
%561 = load <2 x double>, <2 x double>* %560
%562 = fdiv <2 x double> %559, %561
%563 = shufflevector <2 x double> %552, <2 x double> undef, <2 x i32> <i32 1, i32 1>
%564 = fsub <2 x double> %562, %563
%565 = fmul <2 x double> %564, <double 0x426695C990661944, double 0x426695C990661944>
%566 = fmul double %556, %556
%567 = extractelement <2 x double> %565, i64 0
%568 = fmul <2 x double> %565, %565
%569 = extractelement <2 x double> %568, i64 0
%570 = fmul double %569, %537
%571 = tail call double @llvm.fmuladd.f64(double %566, double %528, double %570)
%572 = extractelement <2 x double> %565, i64 1
%573 = fmul double %572, %572
%574 = tail call double @llvm.fmuladd.f64(double %573, double %543, double %571)
%575 = fmul double %556, 2.000000e+00
%576 = fmul double %575, %567
%577 = tail call double @llvm.fmuladd.f64(double %576, double %531, double %574)
%578 = fmul double %567, 2.000000e+00
%579 = fmul double %578, %572
%580 = tail call double @llvm.fmuladd.f64(double %579, double %540, double %577)
%581 = fmul double %575, %572
%582 = tail call double @llvm.fmuladd.f64(double %581, double %534, double %580)
%583 = fmul double %582, 1.000000e-26
ret double %583
}