void moon_fast(double mj, double *lam, double *bet, double *hp, double *msp,
               double *mdp) {
  double t, t2;
  double ld;
  double ms;
  double md;
  double de;
  double f;
  double n;
  double a, sa, sn, b, sb, c, sc, e, e2, l, g, w1, w2;
  double m1, m2, m3, m4, m5, m6;
  t = mj / 36525.;
  t2 = t * t;
  m1 = mj / 27.32158213;
  m1 = 360.0 * (m1 - (long)m1);
  m2 = mj / 365.2596407;
  m2 = 360.0 * (m2 - (long)m2);
  m3 = mj / 27.55455094;
  m3 = 360.0 * (m3 - (long)m3);
  m4 = mj / 29.53058868;
  m4 = 360.0 * (m4 - (long)m4);
  m5 = mj / 27.21222039;
  m5 = 360.0 * (m5 - (long)m5);
  m6 = mj / 6798.363307;
  m6 = 360.0 * (m6 - (long)m6);
  ld = 270.434164 + m1 - (.001133 - .0000019 * t) * t2;
  ms = 358.475833 + m2 - (.00015 + .0000033 * t) * t2;
  md = 296.104608 + m3 + (.009192 + .0000144 * t) * t2;
  de = 350.737486 + m4 - (.001436 - .0000019 * t) * t2;
  f = 11.250889 + m5 - (.003211 + .0000003 * t) * t2;
  n = 259.183275 - m6 + (.002078 + .000022 * t) * t2;
  a = ((51.2 + 20.2 * t) * 3.141592653589793 / 180.);
  sa = sin(a);
  sn = sin(((n)*3.141592653589793 / 180.));
  b = 346.56 + (132.87 - .0091731 * t) * t;
  sb = .003964 * sin(((b)*3.141592653589793 / 180.));
  c = ((n + 275.05 - 2.3 * t) * 3.141592653589793 / 180.);
  sc = sin(c);
  ld = ld + .000233 * sa + sb + .001964 * sn;
  ms = ms - .001778 * sa;
  md = md + .000817 * sa + sb + .002541 * sn;
  f = f + sb - .024691 * sn - .004328 * sc;
  de = de + .002011 * sa + sb + .001964 * sn;
  e = 1 - (.002495 + 7.52e-06 * t) * t;
  e2 = e * e;
  ld = ((ld)*3.141592653589793 / 180.);
  ms = ((ms)*3.141592653589793 / 180.);
  n = ((n)*3.141592653589793 / 180.);
  de = ((de)*3.141592653589793 / 180.);
  f = ((f)*3.141592653589793 / 180.);
  md = ((md)*3.141592653589793 / 180.);
  l = 6.28875 * sin(md) + 1.27402 * sin(2 * de - md) + .658309 * sin(2 * de) +
      .213616 * sin(2 * md) - e * .185596 * sin(ms) - .114336 * sin(2 * f) +
      .058793 * sin(2 * (de - md)) + .057212 * e * sin(2 * de - ms - md) +
      .05332 * sin(2 * de + md) + .045874 * e * sin(2 * de - ms) +
      .041024 * e * sin(md - ms);
  l = l - .034718 * sin(de) - e * .030465 * sin(ms + md) +
      .015326 * sin(2 * (de - f)) - .012528 * sin(2 * f + md) -
      .01098 * sin(2 * f - md) + .010674 * sin(4 * de - md) +
      .010034 * sin(3 * md) + .008548 * sin(4 * de - 2 * md) -
      e * .00791 * sin(ms - md + 2 * de) - e * .006783 * sin(2 * de + ms);
  l = l + .005162 * sin(md - de) + e * .005 * sin(ms + de) +
      .003862 * sin(4 * de) + e * .004049 * sin(md - ms + 2 * de) +
      .003996 * sin(2 * (md + de)) + .003665 * sin(2 * de - 3 * md) +
      e * .002695 * sin(2 * md - ms) + .002602 * sin(md - 2 * (f + de)) +
      e * .002396 * sin(2 * (de - md) - ms) - .002349 * sin(md + de);
  l = l + e2 * .002249 * sin(2 * (de - ms)) - e * .002125 * sin(2 * md + ms) -
      e2 * .002079 * sin(2 * ms) + e2 * .002059 * sin(2 * (de - ms) - md) -
      .001773 * sin(md + 2 * (de - f)) - .001595 * sin(2 * (f + de)) +
      e * .00122 * sin(4 * de - ms - md) - .00111 * sin(2 * (md + f)) +
      .000892 * sin(md - 3 * de);
  l = l - e * .000811 * sin(ms + md + 2 * de) +
      e * .000761 * sin(4 * de - ms - 2 * md) +
      e2 * .000704 * sin(md - 2 * (ms + de)) +
      e * .000693 * sin(ms - 2 * (md - de)) +
      e * .000598 * sin(2 * (de - f) - ms) + .00055 * sin(md + 4 * de) +
      .000538 * sin(4 * md) + e * .000521 * sin(4 * de - ms) +
      .000486 * sin(2 * md - de);
  l = l + e2 * .000717 * sin(md - 2 * ms);
  *lam = ld + ((l)*3.141592653589793 / 180.);
  range(lam, 2 * 3.141592653589793);
  g = 5.12819 * sin(f) + .280606 * sin(md + f) + .277693 * sin(md - f) +
      .173238 * sin(2 * de - f) + .055413 * sin(2 * de + f - md) +
      .046272 * sin(2 * de - f - md) + .032573 * sin(2 * de + f) +
      .017198 * sin(2 * md + f) + .009267 * sin(2 * de + md - f) +
      .008823 * sin(2 * md - f) + e * .008247 * sin(2 * de - ms - f);
  g = g + .004323 * sin(2 * (de - md) - f) + .0042 * sin(2 * de + f + md) +
      e * .003372 * sin(f - ms - 2 * de) +
      e * .002472 * sin(2 * de + f - ms - md) +
      e * .002222 * sin(2 * de + f - ms) +
      e * .002072 * sin(2 * de - f - ms - md) + e * .001877 * sin(f - ms + md) +
      .001828 * sin(4 * de - f - md) - e * .001803 * sin(f + ms) -
      .00175 * sin(3 * f);
  g = g + e * .00157 * sin(md - ms - f) - .001487 * sin(f + de) -
      e * .001481 * sin(f + ms + md) + e * .001417 * sin(f - ms - md) +
      e * .00135 * sin(f - ms) + .00133 * sin(f - de) +
      .001106 * sin(f + 3 * md) + .00102 * sin(4 * de - f) +
      .000833 * sin(f + 4 * de - md) + .000781 * sin(md - 3 * f) +
      .00067 * sin(f + 4 * de - 2 * md);
  g = g + .000606 * sin(2 * de - 3 * f) + .000597 * sin(2 * (de + md) - f) +
      e * .000492 * sin(2 * de + md - ms - f) +
      .00045 * sin(2 * (md - de) - f) + .000439 * sin(3 * md - f) +
      .000423 * sin(f + 2 * (de + md)) + .000422 * sin(2 * de - f - 3 * md) -
      e * .000367 * sin(ms + f + 2 * de - md) -
      e * .000353 * sin(ms + f + 2 * de) + .000331 * sin(f + 4 * de);
  g = g + e * .000317 * sin(2 * de + f - ms + md) +
      e2 * .000306 * sin(2 * (de - ms) - f) - .000283 * sin(md + 3 * f);
  w1 = .0004664 * cos(n);
  w2 = .0000754 * cos(c);
  *bet = ((g)*3.141592653589793 / 180.) * (1 - w1 - w2);
  *hp = .950724 + .051818 * cos(md) + .009531 * cos(2 * de - md) +
        .007843 * cos(2 * de) + .002824 * cos(2 * md) +
        .000857 * cos(2 * de + md) + e * .000533 * cos(2 * de - ms) +
        e * .000401 * cos(2 * de - md - ms) + e * .00032 * cos(md - ms) -
        .000271 * cos(de) - e * .000264 * cos(ms + md) -
        .000198 * cos(2 * f - md);
  *hp = *hp + .000173 * cos(3 * md) + .000167 * cos(4 * de - md) -
        e * .000111 * cos(ms) + .000103 * cos(4 * de - 2 * md) -
        .000084 * cos(2 * md - 2 * de) - e * .000083 * cos(2 * de + ms) +
        .000079 * cos(2 * de + 2 * md) + .000072 * cos(4 * de) +
        e * .000064 * cos(2 * de - ms + md) -
        e * .000063 * cos(2 * de + ms - md) + e * .000041 * cos(ms + de);
  *hp = *hp + e * .000035 * cos(2 * md - ms) - .000033 * cos(3 * md - 2 * de) -
        .00003 * cos(md + de) - .000029 * cos(2 * (f - de)) -
        e * .000029 * cos(2 * md + ms) + e2 * .000026 * cos(2 * (de - ms)) -
        .000023 * cos(2 * (f - de) + md) + e * .000019 * cos(4 * de - ms - md);
  *hp = ((*hp) * 3.141592653589793 / 180.);
  *msp = ms;
  *mdp = md;
}


x86 assembly (clang, -O0):
<moon_fast>:
push   %rbp
mov    %rsp,%rbp
sub    $0x680,%rsp
movsd  %xmm0,-0x8(%rbp)
mov    %rdi,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
mov    %rdx,-0x20(%rbp)
mov    %rcx,-0x28(%rbp)
mov    %r8,-0x30(%rbp)
movsd  -0x8(%rbp),%xmm0
movsd  0x442f(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x38(%rbp)
movsd  -0x38(%rbp),%xmm0
mulsd  -0x38(%rbp),%xmm0
movsd  %xmm0,-0x40(%rbp)
movsd  -0x8(%rbp),%xmm0
movsd  0x4402(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  -0xe0(%rbp),%xmm1
ff
cvttsd2si -0xe0(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x43a4(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xe0(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
movsd  0x43b3(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  -0xe8(%rbp),%xmm1
ff
cvttsd2si -0xe8(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x435d(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xe8(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
movsd  0x4364(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  -0xf0(%rbp),%xmm1
ff
cvttsd2si -0xf0(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x4316(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xf0(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
movsd  0x4315(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  -0xf8(%rbp),%xmm1
ff
cvttsd2si -0xf8(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x42cf(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xf8(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
movsd  0x42c6(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
movsd  -0x100(%rbp),%xmm1
ff
cvttsd2si -0x100(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x4288(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x100(%rbp)
ff
movsd  -0x8(%rbp),%xmm0
movsd  0x4277(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  -0x108(%rbp),%xmm1
ff
cvttsd2si -0x108(%rbp),%rax
ff ff
cvtsi2sd %rax,%xmm0
subsd  %xmm0,%xmm1
movsd  0x4241(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x108(%rbp)
ff
movsd  0x4225(%rip),%xmm1
addsd  -0xe0(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x41c0(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x41fc(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x41bf(%rip),%xmm1
addsd  -0xe8(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x419a(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x4196(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x4151(%rip),%xmm1
addsd  -0xf0(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x412c(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x4128(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  0x40fa(%rip),%xmm1
addsd  -0xf8(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x40d5(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x40d1(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  0x408c(%rip),%xmm1
addsd  -0x100(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x4067(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x4063(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  0x401e(%rip),%xmm1
subsd  -0x108(%rbp),%xmm1
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x3ff9(%rip),%xmm2
mulsd  %xmm2,%xmm0
movsd  0x3ff5(%rip),%xmm2
addsd  %xmm2,%xmm0
movsd  -0x40(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  -0x38(%rbp),%xmm0
movsd  0x3fba(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x3fb6(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  0x3aea(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x3ad6(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x78(%rbp)
movsd  -0x78(%rbp),%xmm0
call   1030 <sin@plt>
movsd  %xmm0,-0x80(%rbp)
movsd  0x3abe(%rip),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  0x3aa9(%rip),%xmm1
divsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  %xmm0,-0x88(%rbp)
ff
movsd  -0x38(%rbp),%xmm0
movsd  0x3f3b(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x3f37(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x38(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x3f12(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x90(%rbp)
ff
movsd  0x3a5e(%rip),%xmm0
mulsd  -0x90(%rbp),%xmm0
ff
movsd  0x3a46(%rip),%xmm1
divsd  %xmm1,%xmm0
call   1030 <sin@plt>
movaps %xmm0,%xmm1
movsd  0x3ed2(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x98(%rbp)
ff
movsd  0x3eb6(%rip),%xmm1
addsd  -0x70(%rbp),%xmm1
movsd  -0x38(%rbp),%xmm0
movsd  0x3e9c(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  0x3a04(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x39f0(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0xa0(%rbp)
ff
movsd  -0xa0(%rbp),%xmm0
ff
call   1030 <sin@plt>
movsd  %xmm0,-0xa8(%rbp)
ff
movsd  -0x48(%rbp),%xmm0
movsd  -0x80(%rbp),%xmm1
movsd  0x3e45(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x98(%rbp),%xmm1
ff
movsd  -0x88(%rbp),%xmm0
ff
movsd  0x3ded(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  -0x50(%rbp),%xmm1
movsd  -0x80(%rbp),%xmm0
movsd  0x3dfe(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  -0x58(%rbp),%xmm0
movsd  -0x80(%rbp),%xmm1
movsd  0x3dd7(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x98(%rbp),%xmm1
ff
movsd  -0x88(%rbp),%xmm0
ff
movsd  0x3daf(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x68(%rbp),%xmm0
addsd  -0x98(%rbp),%xmm0
ff
movsd  -0x88(%rbp),%xmm1
ff
movsd  0x3d7d(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
movsd  -0xa8(%rbp),%xmm0
ff
movsd  0x3d5d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  -0x60(%rbp),%xmm0
movsd  -0x80(%rbp),%xmm1
movsd  0x3d36(%rip),%xmm2
mulsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
addsd  -0x98(%rbp),%xmm1
ff
movsd  -0x88(%rbp),%xmm0
ff
movsd  0x3d0e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  -0x38(%rbp),%xmm0
movsd  0x3ce4(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x3ce0(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  -0x38(%rbp),%xmm1
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm1,%xmm0
movsd  0x398c(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xb0(%rbp)
ff
movsd  -0xb0(%rbp),%xmm0
ff
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0xb8(%rbp)
ff
movsd  0x3848(%rip),%xmm0
mulsd  -0x48(%rbp),%xmm0
movsd  0x3833(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x48(%rbp)
movsd  0x382a(%rip),%xmm0
mulsd  -0x50(%rbp),%xmm0
movsd  0x3815(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x50(%rbp)
movsd  0x380c(%rip),%xmm0
mulsd  -0x70(%rbp),%xmm0
movsd  0x37f7(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x70(%rbp)
movsd  0x37ee(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
movsd  0x37d9(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x60(%rbp)
movsd  0x37d0(%rip),%xmm0
mulsd  -0x68(%rbp),%xmm0
movsd  0x37bb(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x68(%rbp)
movsd  0x37b2(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
movsd  0x379d(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x58(%rbp)
movsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  %xmm0,-0x678(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movaps %xmm0,%xmm2
movsd  -0x678(%rbp),%xmm0
ff
movsd  0x3b79(%rip),%xmm1
mulsd  %xmm2,%xmm1
movsd  0x3b65(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x670(%rbp)
ff
movsd  0x3745(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x670(%rbp),%xmm1
ff
movsd  0x3b2b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x668(%rbp)
ff
movsd  0x3713(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x668(%rbp),%xmm1
ff
movsd  0x3af1(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x660(%rbp)
ff
movsd  0x3ad1(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x658(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x660(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x658(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x650(%rbp)
ff
movsd  0x3685(%rip),%xmm0
mulsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x650(%rbp),%xmm1
ff
movsd  0x3a53(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x648(%rbp)
ff
movsd  -0x60(%rbp),%xmm1
subsd  -0x58(%rbp),%xmm1
movsd  0x3649(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x648(%rbp),%xmm1
ff
movsd  0x3a10(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x640(%rbp)
ff
movsd  0x39f0(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x638(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x640(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x638(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x630(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x630(%rbp),%xmm1
ff
movsd  0x395b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x628(%rbp)
ff
movsd  0x393b(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x620(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x628(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x620(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x618(%rbp)
ff
movsd  0x38ca(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x610(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x618(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x610(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x608(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x608(%rbp),%xmm1
ff
movsd  0x3856(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x600(%rbp)
ff
movsd  0x3836(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x5f8(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x600(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x5f8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5f0(%rbp)
ff
movsd  -0x60(%rbp),%xmm1
subsd  -0x68(%rbp),%xmm1
movsd  0x341b(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5f0(%rbp),%xmm1
ff
movsd  0x37aa(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5e8(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5e8(%rbp),%xmm1
ff
movsd  0x376b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5e0(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5e0(%rbp),%xmm1
ff
movsd  0x3715(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5d8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x332c(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5d8(%rbp),%xmm1
ff
movsd  0x36b7(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5d0(%rbp)
ff
movsd  0x333f(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x5d0(%rbp),%xmm1
ff
movsd  0x367d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5c8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  0x32d8(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x329c(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5c8(%rbp),%xmm1
ff
movsd  0x3617(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5c0(%rbp)
ff
movsd  0x35f7(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x5b8(%rbp)
ff
movsd  -0x50(%rbp),%xmm1
subsd  -0x58(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5c0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x5b8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x5b0(%rbp)
ff
movsd  0x3581(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x5a8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x5b0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x5a8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x5a0(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x5a0(%rbp),%xmm1
ff
movsd  0x34e9(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x598(%rbp)
ff
movsd  0x34c9(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x590(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
addsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x598(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x590(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x588(%rbp)
movsd  0x3107(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x588(%rbp),%xmm1
ff
movsd  0x345d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x580(%rbp)
ff
movsd  0x343d(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x578(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
subsd  -0x50(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x580(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x578(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x570(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
addsd  -0x60(%rbp),%xmm1
movsd  0x308c(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x570(%rbp),%xmm1
ff
movsd  0x33bb(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x568(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  0x3086(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x568(%rbp),%xmm1
movsd  0x335d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x560(%rbp)
ff
movsd  0x333d(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x558(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x560(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x558(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x550(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  -0x60(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x550(%rbp),%xmm1
ff
movsd  0x32a8(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x548(%rbp)
ff
movsd  0x3288(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x540(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
subsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x548(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x540(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x538(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
addsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x538(%rbp),%xmm1
ff
movsd  0x31fb(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x530(%rbp)
ff
movsd  0x31cb(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x528(%rbp)
ff
movsd  -0x60(%rbp),%xmm1
subsd  -0x50(%rbp),%xmm1
movsd  0x2e91(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x530(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x528(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x520(%rbp)
ff
movsd  0x316d(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x518(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x520(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x518(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x510(%rbp)
ff
movsd  0x30fc(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x508(%rbp)
ff
movsd  0x2ddc(%rip),%xmm0
mulsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x510(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x508(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x500(%rbp)
ff
movsd  0x3090(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x4f8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x500(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4f8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4f0(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4f0(%rbp),%xmm1
ff
movsd  0x2ff6(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4e8(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
addsd  -0x60(%rbp),%xmm1
movsd  0x2cdc(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4e8(%rbp),%xmm1
ff
movsd  0x2fb3(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4e0(%rbp)
ff
movsd  0x2f93(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4d8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x2c5a(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x4e0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4d8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4d0(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
addsd  -0x68(%rbp),%xmm1
movsd  0x2c2b(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4d0(%rbp),%xmm1
ff
movsd  0x2ef2(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4c8(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
movsd  0x2d38(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4c8(%rbp),%xmm1
ff
movsd  0x2eab(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4c0(%rbp)
ff
movsd  0x2e7b(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4b8(%rbp)
ff
movsd  -0x50(%rbp),%xmm1
addsd  -0x58(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4c0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4b8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4b0(%rbp)
ff
movsd  0x2e05(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x4a8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x2aec(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4b0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x4a8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x4a0(%rbp)
ff
movsd  0x2d7f(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x498(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  -0x60(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x4a0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x498(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x490(%rbp)
ff
movsd  0x2d20(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x488(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
subsd  -0x60(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x490(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x488(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x480(%rbp)
ff
movsd  0x2cc1(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x478(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x480(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x478(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x470(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
movsd  0x2981(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x470(%rbp),%xmm1
ff
movsd  0x2c24(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x468(%rbp)
ff
movsd  0x294c(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x468(%rbp),%xmm1
ff
movsd  0x2bea(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x460(%rbp)
ff
movsd  0x2bca(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x458(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x28e1(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x460(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x458(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x450(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x60(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x450(%rbp),%xmm1
ff
movsd  0x2b1b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0xc0(%rbp),%xmm0
ff
movsd  %xmm0,-0x448(%rbp)
ff
movsd  0x2aeb(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x440(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x448(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x440(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc0(%rbp)
ff
movsd  -0x48(%rbp),%xmm0
movsd  0x27ec(%rip),%xmm1
mulsd  -0xc0(%rbp),%xmm1
ff
movsd  0x27d4(%rip),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
mov    -0x10(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x10(%rbp),%rdi
movsd  0x2a60(%rip),%xmm0
mov    $0x1,%al
call   1040 <range@plt>
movsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  %xmm0,-0x438(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
addsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movaps %xmm0,%xmm2
movsd  -0x438(%rbp),%xmm0
ff
movsd  0x2a1d(%rip),%xmm1
mulsd  %xmm2,%xmm1
movsd  0x2a09(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x430(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x430(%rbp),%xmm1
ff
movsd  0x29d2(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x428(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x428(%rbp),%xmm1
ff
movsd  0x297c(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x420(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x420(%rbp),%xmm1
ff
movsd  0x2938(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x418(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x418(%rbp),%xmm1
ff
movsd  0x28dd(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x410(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x410(%rbp),%xmm1
ff
movsd  0x289e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x408(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x408(%rbp),%xmm1
movsd  0x285f(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x400(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x400(%rbp),%xmm1
ff
movsd  0x281b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f8(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x3f8(%rbp),%xmm1
ff
movsd  0x27c5(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3f0(%rbp)
ff
movsd  0x27a5(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x3e8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x3f0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x3e8(%rbp),%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0xc8(%rbp),%xmm0
ff
movsd  %xmm0,-0x3e0(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
subsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x3e0(%rbp),%xmm1
ff
movsd  0x26e4(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3d8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
addsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x3d8(%rbp),%xmm1
ff
movsd  0x26a0(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3d0(%rbp)
ff
movsd  0x2680(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x3c8(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  -0x60(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x3d0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x3c8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3c0(%rbp)
ff
movsd  0x2621(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x3b8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x3c0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x3b8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3b0(%rbp)
ff
movsd  0x25bd(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x3a8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x3b0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x3a8(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x3a0(%rbp)
ff
movsd  0x255e(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x398(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x3a0(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x398(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x390(%rbp)
ff
movsd  0x24e3(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x388(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x390(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x388(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x380(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x226b(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x380(%rbp),%xmm1
ff
movsd  0x2449(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x378(%rbp)
ff
movsd  0x2429(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x370(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
addsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x378(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x370(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x368(%rbp)
ff
movsd  0x2218(%rip),%xmm0
mulsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x368(%rbp),%xmm1
ff
movsd  0x23a6(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0xc8(%rbp),%xmm0
ff
movsd  %xmm0,-0x360(%rbp)
ff
movsd  0x2376(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x358(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x360(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x358(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x350(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
addsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x350(%rbp),%xmm1
ff
movsd  0x2308(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x348(%rbp)
ff
movsd  0x22e8(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x340(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
addsd  -0x50(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x348(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x340(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x338(%rbp)
ff
movsd  0x227a(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x330(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x338(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x330(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x328(%rbp)
ff
movsd  0x2223(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x320(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x328(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x320(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x318(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x318(%rbp),%xmm1
movsd  0x21ba(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x310(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
movsd  -0x58(%rbp),%xmm0
movsd  0x2020(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x310(%rbp),%xmm1
ff
movsd  0x2173(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x308(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x1f82(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x308(%rbp),%xmm1
ff
movsd  0x2115(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x300(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
movsd  0x1f43(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x300(%rbp),%xmm1
ff
movsd  0x20c9(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2f8(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm0
movsd  0x205f(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2f8(%rbp),%xmm1
ff
movsd  0x2082(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2f0(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
movsd  0x1ec0(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm1,%xmm1
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2f0(%rbp),%xmm1
ff
movsd  0x202e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0xc8(%rbp),%xmm0
ff
movsd  %xmm0,-0x2e8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  0x1eb1(%rip),%xmm1
mulsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2e8(%rbp),%xmm1
ff
movsd  0x1fc0(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2e0(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2e0(%rbp),%xmm1
ff
movsd  0x1f65(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2d8(%rbp)
ff
movsd  0x1f45(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2d0(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
subsd  -0x68(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x2d8(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x2d0(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2c8(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2c8(%rbp),%xmm1
ff
movsd  0x1ea6(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2c0(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x1d3d(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2c0(%rbp),%xmm1
ff
movsd  0x1e48(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b8(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2b8(%rbp),%xmm1
ff
movsd  0x1e04(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2b0(%rbp)
ff
movsd  -0x60(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm0
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
addsd  %xmm1,%xmm1
addsd  %xmm0,%xmm1
movsd  -0x58(%rbp),%xmm0
movsd  0x1db6(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x2b0(%rbp),%xmm1
ff
movsd  0x1d91(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x2a8(%rbp)
ff
movsd  0x1d71(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x2a0(%rbp)
ff
movsd  -0x50(%rbp),%xmm1
addsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x2a8(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x2a0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x298(%rbp)
ff
movsd  0x1cf6(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x290(%rbp)
ff
movsd  -0x50(%rbp),%xmm1
addsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x298(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x290(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x288(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
movsd  -0x60(%rbp),%xmm0
movsd  0x1b36(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x288(%rbp),%xmm1
ff
movsd  0x1c59(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0xc8(%rbp),%xmm0
ff
movsd  %xmm0,-0x280(%rbp)
ff
movsd  0x1c29(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x278(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
call   1030 <sin@plt>
movsd  -0x280(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x278(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x270(%rbp)
ff
movsd  0x1bc5(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x268(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
movsd  -0x68(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x270(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x268(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x260(%rbp)
ff
movsd  -0x58(%rbp),%xmm1
movsd  -0x68(%rbp),%xmm0
movsd  0x1a65(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1030 <sin@plt>
movsd  -0x260(%rbp),%xmm1
ff
movsd  0x1b28(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0xc8(%rbp)
ff
movsd  -0x70(%rbp),%xmm0
call   1050 <cos@plt>
movaps %xmm0,%xmm1
movsd  0x1afb(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xd0(%rbp)
ff
movsd  -0xa0(%rbp),%xmm0
ff
call   1050 <cos@plt>
movaps %xmm0,%xmm1
movsd  0x1acf(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0xd8(%rbp)
ff
movsd  0x199b(%rip),%xmm0
mulsd  -0xc8(%rbp),%xmm0
ff
movsd  0x1983(%rip),%xmm1
divsd  %xmm1,%xmm0
movsd  0x1a97(%rip),%xmm1
subsd  -0xd0(%rbp),%xmm1
ff
subsd  -0xd8(%rbp),%xmm1
ff
mulsd  %xmm1,%xmm0
mov    -0x18(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  0x1a59(%rip),%xmm1
mulsd  %xmm1,%xmm0
movsd  0x1a55(%rip),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x258(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x258(%rbp),%xmm1
ff
movsd  0x19fb(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x250(%rbp)
ff
movsd  0x1903(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x250(%rbp),%xmm1
ff
movsd  0x19c1(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x248(%rbp)
ff
movsd  0x18d1(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x248(%rbp),%xmm1
ff
movsd  0x1987(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x240(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x240(%rbp),%xmm1
ff
movsd  0x1948(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x238(%rbp)
ff
movsd  0x1928(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x230(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x238(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x230(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x228(%rbp)
ff
movsd  0x18b7(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x220(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x50(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x228(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x220(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x218(%rbp)
ff
movsd  0x1841(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x210(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
subsd  -0x50(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x218(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x210(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x208(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x208(%rbp),%xmm1
ff
movsd  0x17dd(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x200(%rbp)
ff
movsd  0x17bd(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x1f8(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
addsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x200(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x1f8(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1f0(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1f0(%rbp),%xmm1
ff
movsd  0x171e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x1e8(%rbp)
ff
movsd  0x168e(%rip),%xmm0
mulsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x1e8(%rbp),%xmm1
ff
movsd  0x16d4(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1e0(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x15f3(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1e0(%rbp),%xmm1
ff
movsd  0x1676(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1d8(%rbp)
ff
movsd  0x1656(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x1d0(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x1d8(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x1d0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  0x1575(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x1539(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1c8(%rbp),%xmm1
ff
movsd  0x15ac(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1c0(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  0x1517(%rip),%xmm1
mulsd  -0x60(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1c0(%rbp),%xmm1
ff
movsd  0x154e(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1b8(%rbp)
ff
movsd  0x152e(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x1b0(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1b8(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x1b0(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a8(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  0x1458(%rip),%xmm1
mulsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x1a8(%rbp),%xmm1
ff
movsd  0x1496(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x1a0(%rbp)
ff
movsd  0x1406(%rip),%xmm0
mulsd  -0x60(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x1a0(%rbp),%xmm1
ff
movsd  0x145c(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x198(%rbp)
ff
movsd  0x143c(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x190(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
addsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x198(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x190(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x188(%rbp)
ff
movsd  0x13c6(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x180(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x188(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x180(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x178(%rbp)
ff
movsd  0x1350(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x170(%rbp)
ff
movsd  -0x50(%rbp),%xmm0
addsd  -0x60(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x178(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x170(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  (%rax),%xmm0
movsd  %xmm0,-0x168(%rbp)
ff
movsd  0x12ee(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x160(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x168(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x160(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x158(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  0x1248(%rip),%xmm1
mulsd  -0x60(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x1254(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x158(%rbp),%xmm1
ff
movsd  0x122f(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x150(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
addsd  -0x60(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x150(%rbp),%xmm1
ff
movsd  0x11f8(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x148(%rbp)
ff
movsd  -0x68(%rbp),%xmm1
subsd  -0x60(%rbp),%xmm1
movsd  0x11b6(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x148(%rbp),%xmm1
ff
movsd  0x11b5(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x140(%rbp)
ff
movsd  0x1195(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x138(%rbp)
ff
movsd  -0x58(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x140(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x138(%rbp),%xmm0
ff
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x130(%rbp)
ff
movsd  0x1124(%rip),%xmm0
mulsd  -0xb8(%rbp),%xmm0
ff
movsd  %xmm0,-0x128(%rbp)
ff
movsd  -0x60(%rbp),%xmm1
subsd  -0x50(%rbp),%xmm1
movsd  0x10fa(%rip),%xmm0
mulsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x130(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x128(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x120(%rbp)
ff
movsd  -0x68(%rbp),%xmm0
subsd  -0x60(%rbp),%xmm0
movsd  -0x58(%rbp),%xmm1
addsd  %xmm0,%xmm0
addsd  %xmm1,%xmm0
call   1050 <cos@plt>
movsd  -0x120(%rbp),%xmm1
ff
movsd  0x109a(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x118(%rbp)
ff
movsd  0x107a(%rip),%xmm0
mulsd  -0xb0(%rbp),%xmm0
ff
movsd  %xmm0,-0x110(%rbp)
ff
movsd  -0x60(%rbp),%xmm0
movsd  -0x50(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
movsd  0x1039(%rip),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
subsd  -0x58(%rbp),%xmm0
call   1050 <cos@plt>
movsd  -0x118(%rbp),%xmm1
ff
movaps %xmm0,%xmm2
movsd  -0x110(%rbp),%xmm0
ff
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
mov    -0x20(%rbp),%rax
movsd  0xff0(%rip),%xmm0
mulsd  (%rax),%xmm0
movsd  0xfdc(%rip),%xmm1
divsd  %xmm1,%xmm0
mov    -0x20(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x50(%rbp),%xmm0
mov    -0x28(%rbp),%rax
movsd  %xmm0,(%rax)
movsd  -0x58(%rbp),%xmm0
mov    -0x30(%rbp),%rax
movsd  %xmm0,(%rax)
add    $0x680,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<moon_fast>:
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x140,%rsp
mov    %r8,%r14
mov    %rcx,%r15
mov    %rdx,%r12
mov    %rsi,%r13
mov    %rdi,%rbx
movapd %xmm0,%xmm2
divsd  0x1ea5(%rip),%xmm2
movapd %xmm2,%xmm1
movapd %xmm2,%xmm9
movapd %xmm0,%xmm4
divsd  0x1e98(%rip),%xmm4
cvttsd2si %xmm4,%rax
mulsd  %xmm2,%xmm1
xorps  %xmm2,%xmm2
cvtsi2sd %rax,%xmm2
subsd  %xmm2,%xmm4
movsd  0x1e83(%rip),%xmm3
mulsd  %xmm3,%xmm4
movapd %xmm4,%xmm7
movapd %xmm0,%xmm4
divsd  0x1e77(%rip),%xmm4
cvttsd2si %xmm4,%rax
xorps  %xmm2,%xmm2
cvtsi2sd %rax,%xmm2
subsd  %xmm2,%xmm4
mulsd  %xmm3,%xmm4
movapd %xmm4,%xmm8
movapd %xmm0,%xmm2
divsd  0x1e59(%rip),%xmm2
cvttsd2si %xmm2,%rax
xorps  %xmm4,%xmm4
cvtsi2sd %rax,%xmm4
subsd  %xmm4,%xmm2
mulsd  %xmm3,%xmm2
movapd %xmm0,%xmm5
divsd  0x1e40(%rip),%xmm5
cvttsd2si %xmm5,%rax
xorps  %xmm4,%xmm4
cvtsi2sd %rax,%xmm4
subsd  %xmm4,%xmm5
mulsd  %xmm3,%xmm5
movapd %xmm0,%xmm6
divsd  0x1e27(%rip),%xmm6
cvttsd2si %xmm6,%rax
xorps  %xmm4,%xmm4
cvtsi2sd %rax,%xmm4
subsd  %xmm4,%xmm6
mulsd  %xmm3,%xmm6
divsd  0x1e12(%rip),%xmm0
cvttsd2si %xmm0,%rax
xorps  %xmm4,%xmm4
cvtsi2sd %rax,%xmm4
subsd  %xmm4,%xmm0
mulsd  %xmm3,%xmm0
addsd  0x1dfd(%rip),%xmm7
movsd  0x1dfd(%rip),%xmm3
mulsd  %xmm9,%xmm3
movsd  0x1df8(%rip),%xmm4
addsd  %xmm3,%xmm4
mulsd  %xmm1,%xmm4
subsd  %xmm4,%xmm7
movsd  %xmm7,0x70(%rsp)
addsd  0x1de5(%rip),%xmm8
movsd  0x1de5(%rip),%xmm4
mulsd  %xmm9,%xmm4
addsd  0x1de0(%rip),%xmm4
mulsd  %xmm1,%xmm4
subsd  %xmm4,%xmm8
movsd  %xmm8,0x48(%rsp)
addsd  0x1dd0(%rip),%xmm2
movsd  0x1dd0(%rip),%xmm4
mulsd  %xmm9,%xmm4
addsd  0x1dcb(%rip),%xmm4
mulsd  %xmm1,%xmm4
addsd  %xmm2,%xmm4
movsd  %xmm4,0x88(%rsp)
addsd  0x1dba(%rip),%xmm5
addsd  0x1dba(%rip),%xmm3
mulsd  %xmm1,%xmm3
subsd  %xmm3,%xmm5
movsd  %xmm5,0x8(%rsp)
addsd  0x1dac(%rip),%xmm6
movsd  0x1dac(%rip),%xmm2
mulsd  %xmm9,%xmm2
addsd  0x1da7(%rip),%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm2,%xmm6
movsd  %xmm6,0x98(%rsp)
movsd  0x1d96(%rip),%xmm2
subsd  %xmm0,%xmm2
movsd  0x1d92(%rip),%xmm0
movsd  %xmm9,0x10(%rsp)
mulsd  %xmm9,%xmm0
addsd  0x1d86(%rip),%xmm0
mulsd  %xmm1,%xmm0
addsd  %xmm2,%xmm0
movsd  %xmm0,0x18(%rsp)
movsd  0x1d78(%rip),%xmm0
mulsd  %xmm9,%xmm0
addsd  0x1d73(%rip),%xmm0
mulsd  0x1d73(%rip),%xmm0
divsd  0x1d73(%rip),%xmm0
call   1030 <sin@plt>
movsd  %xmm0,0x58(%rsp)
movsd  0x18(%rsp),%xmm0
mulsd  0x1d52(%rip),%xmm0
divsd  0x1d52(%rip),%xmm0
movsd  %xmm0,0x138(%rsp)
call   1030 <sin@plt>
movsd  %xmm0,0x30(%rsp)
movsd  0x1d3e(%rip),%xmm0
movsd  0x10(%rsp),%xmm1
mulsd  %xmm1,%xmm0
addsd  0x1d34(%rip),%xmm0
mulsd  %xmm1,%xmm0
addsd  0x1d30(%rip),%xmm0
mulsd  0x1d08(%rip),%xmm0
divsd  0x1d08(%rip),%xmm0
call   1030 <sin@plt>
mulsd  0x1d1b(%rip),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x18(%rsp),%xmm1
addsd  0x1d0f(%rip),%xmm1
movsd  0x1d0f(%rip),%xmm0
mulsd  0x10(%rsp),%xmm0
addsd  %xmm1,%xmm0
mulsd  0x1cc5(%rip),%xmm0
divsd  0x1cc5(%rip),%xmm0
movsd  %xmm0,0x130(%rsp)
call   1030 <sin@plt>
movsd  0x1ce7(%rip),%xmm1
movsd  0x58(%rsp),%xmm5
mulsd  %xmm5,%xmm1
addsd  0x70(%rsp),%xmm1
movsd  0x20(%rsp),%xmm6
addsd  %xmm6,%xmm1
movsd  0x1ccd(%rip),%xmm4
movsd  0x30(%rsp),%xmm7
mulsd  %xmm7,%xmm4
addsd  %xmm4,%xmm1
movapd %xmm1,%xmm8
movsd  0x1cba(%rip),%xmm1
mulsd  %xmm5,%xmm1
addsd  0x48(%rsp),%xmm1
movapd %xmm1,%xmm2
movsd  0x1cac(%rip),%xmm1
mulsd  %xmm5,%xmm1
addsd  0x88(%rsp),%xmm1
addsd  %xmm6,%xmm1
movsd  0x1c9b(%rip),%xmm3
mulsd  %xmm7,%xmm3
addsd  %xmm1,%xmm3
mulsd  0x1c93(%rip),%xmm7
movsd  0x98(%rsp),%xmm1
addsd  %xmm6,%xmm1
addsd  %xmm1,%xmm7
mulsd  0x1c82(%rip),%xmm0
addsd  %xmm7,%xmm0
movapd %xmm5,%xmm1
mulsd  0x1c7a(%rip),%xmm1
addsd  0x8(%rsp),%xmm1
addsd  %xmm6,%xmm1
addsd  %xmm4,%xmm1
movapd %xmm1,%xmm5
movsd  0x1c68(%rip),%xmm4
movsd  0x10(%rsp),%xmm1
mulsd  %xmm1,%xmm4
addsd  0x1c5e(%rip),%xmm4
mulsd  %xmm1,%xmm4
movsd  0x1c5a(%rip),%xmm1
subsd  %xmm4,%xmm1
movsd  %xmm1,0x18(%rsp)
mulsd  %xmm1,%xmm1
movsd  %xmm1,0x98(%rsp)
movsd  0x1bab(%rip),%xmm4
movapd %xmm8,%xmm6
mulsd  %xmm4,%xmm6
movsd  0x1ba2(%rip),%xmm1
divsd  %xmm1,%xmm6
movsd  %xmm6,0xb8(%rsp)
mulsd  %xmm4,%xmm2
divsd  %xmm1,%xmm2
movsd  %xmm2,0x48(%rsp)
mulsd  %xmm4,%xmm5
divsd  %xmm1,%xmm5
movsd  %xmm5,0x58(%rsp)
mulsd  %xmm4,%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,0x8(%rsp)
movapd %xmm3,%xmm0
mulsd  %xmm4,%xmm0
divsd  %xmm1,%xmm0
movsd  %xmm0,0x10(%rsp)
call   1030 <sin@plt>
movsd  %xmm0,0x88(%rsp)
movsd  0x58(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x70(%rsp)
subsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x110(%rsp)
call   1030 <sin@plt>
mulsd  0x1baf(%rip),%xmm0
movsd  0x88(%rsp),%xmm1
mulsd  0x1ba6(%rip),%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,0x88(%rsp)
movsd  0x70(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1b8e(%rip),%xmm0
addsd  0x88(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x88(%rsp)
call   1030 <sin@plt>
mulsd  0x1b67(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x48(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0x1b50(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x30(%rsp),%xmm1
movsd  %xmm1,0x30(%rsp)
movsd  0x8(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0xc0(%rsp)
call   1030 <sin@plt>
mulsd  0x1b22(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x58(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x40(%rsp)
call   1030 <sin@plt>
mulsd  0x1afb(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x1aef(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x70(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0xc8(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x70(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
movsd  %xmm0,0xd8(%rsp)
call   1030 <sin@plt>
mulsd  0x1a97(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x1a8b(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xc8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x1a5f(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0xe0(%rsp)
call   1030 <sin@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x58(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1a1c(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0x48(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
movsd  %xmm0,0xf0(%rsp)
call   1030 <sin@plt>
movsd  0x19f6(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x30(%rsp),%xmm1
movsd  %xmm1,0x30(%rsp)
movsd  0x58(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x20(%rsp)
call   1030 <sin@plt>
mulsd  0x19c5(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0xc0(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x19a5(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0x30(%rsp)
movsd  0xc0(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
movsd  %xmm0,0xc0(%rsp)
call   1030 <sin@plt>
mulsd  0x197c(%rip),%xmm0
addsd  0x30(%rsp),%xmm0
movsd  %xmm0,0xb0(%rsp)
movsd  0x58(%rsp),%xmm0
mulsd  0x1967(%rip),%xmm0
movsd  %xmm0,0x30(%rsp)
subsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x128(%rsp)
call   1030 <sin@plt>
mulsd  0x194d(%rip),%xmm0
addsd  0xb0(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x10(%rsp),%xmm0
mulsd  0x1938(%rip),%xmm0
movsd  %xmm0,0xb0(%rsp)
call   1030 <sin@plt>
mulsd  0x192a(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x30(%rsp),%xmm0
subsd  0x88(%rsp),%xmm0
movsd  %xmm0,0x120(%rsp)
call   1030 <sin@plt>
mulsd  0x1901(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x48(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
addsd  0x70(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0x18de(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x38(%rsp),%xmm1
movsd  %xmm1,0x38(%rsp)
movsd  0x70(%rsp),%xmm0
addsd  0x48(%rsp),%xmm0
movsd  %xmm0,0x108(%rsp)
call   1030 <sin@plt>
movsd  0x18ae(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x38(%rsp),%xmm1
movsd  %xmm1,0x38(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  0x58(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
call   1030 <sin@plt>
mulsd  0x187e(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x1872(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x48(%rsp),%xmm0
addsd  0x58(%rsp),%xmm0
movsd  %xmm0,0x100(%rsp)
call   1030 <sin@plt>
mulsd  0x28(%rsp),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x30(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x182f(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x1823(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x70(%rsp),%xmm0
addsd  0xe0(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x28(%rsp),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  0x58(%rsp),%xmm0
movsd  %xmm0,0xf8(%rsp)
addsd  %xmm0,%xmm0
movsd  %xmm0,0xe8(%rsp)
call   1030 <sin@plt>
mulsd  0x17ca(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x70(%rsp),%xmm0
subsd  0xb0(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x17aa(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x179e(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x88(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0x118(%rsp)
call   1030 <sin@plt>
mulsd  0x28(%rsp),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x58(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movapd %xmm0,%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,0x28(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
mulsd  0x1734(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0x1728(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x40(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x38(%rsp)
movsd  0xf8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x16eb(%rip),%xmm0
addsd  0x38(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x16df(%rip),%xmm0
mulsd  0x98(%rsp),%xmm0
movsd  %xmm0,0xd0(%rsp)
movsd  0x58(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x38(%rsp)
call   1030 <sin@plt>
mulsd  0xd0(%rsp),%xmm0
addsd  0x50(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x88(%rsp),%xmm0
addsd  0x48(%rsp),%xmm0
movsd  %xmm0,0xd0(%rsp)
call   1030 <sin@plt>
movsd  0x1680(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x50(%rsp),%xmm1
movsd  %xmm1,0xa8(%rsp)
movsd  0x48(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x50(%rsp)
call   1030 <sin@plt>
movsd  0x1652(%rip),%xmm2
movsd  0x98(%rsp),%xmm1
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
addsd  0xa8(%rsp),%xmm2
movsd  %xmm2,0xa8(%rsp)
movsd  0x162f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x38(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x68(%rsp),%xmm0
addsd  0xa8(%rsp),%xmm0
movsd  %xmm0,0xa8(%rsp)
movsd  0x20(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x15eb(%rip),%xmm0
addsd  0xa8(%rsp),%xmm0
movsd  %xmm0,0xa8(%rsp)
movsd  0x28(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x15ce(%rip),%xmm0
addsd  0xa8(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x15bf(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
movsd  0x30(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
subsd  0x10(%rsp),%xmm0
movsd  %xmm0,0xa8(%rsp)
call   1030 <sin@plt>
mulsd  0x90(%rsp),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
addsd  %xmm0,%xmm0
call   1030 <sin@plt>
mulsd  0x1557(%rip),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x58(%rsp),%xmm0
mulsd  0x1545(%rip),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x153a(%rip),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x70(%rsp),%xmm0
addsd  0xf0(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0x151a(%rip),%xmm2
movsd  0x18(%rsp),%xmm1
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
addsd  0x68(%rsp),%xmm2
movsd  %xmm2,0x60(%rsp)
movsd  0x1500(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,0xa0(%rsp)
movsd  0x14f3(%rip),%xmm0
mulsd  0x10(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
addsd  0x28(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xa0(%rsp),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x14c7(%rip),%xmm0
mulsd  0x98(%rsp),%xmm0
movsd  %xmm0,0xa0(%rsp)
movsd  0x100(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  0x10(%rsp),%xmm0
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
mulsd  0xa0(%rsp),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x1484(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0xa0(%rsp)
movsd  0x80(%rsp),%xmm1
addsd  %xmm1,%xmm1
movsd  %xmm1,0x80(%rsp)
movsd  0x48(%rsp),%xmm0
subsd  %xmm1,%xmm0
call   1030 <sin@plt>
mulsd  0xa0(%rsp),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x143b(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0xa0(%rsp)
movsd  0x20(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xa0(%rsp),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x30(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x13f5(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x12d9(%rip),%xmm0
mulsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x13d6(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x13ca(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x28(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x60(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x88(%rsp),%xmm0
subsd  0x58(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x138d(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x1381(%rip),%xmm0
mulsd  0x98(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  0x50(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x28(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
mulsd  0x110d(%rip),%xmm0
divsd  0x110d(%rip),%xmm0
addsd  0xb8(%rsp),%xmm0
movsd  %xmm0,(%rbx)
movsd  0x1338(%rip),%xmm0
mov    %rbx,%rdi
mov    $0x1,%al
call   1040 <range@plt>
movsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
movsd  %xmm0,0x20(%rsp)
movsd  0x90(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x130f(%rip),%xmm0
movsd  0x20(%rsp),%xmm1
mulsd  0x1309(%rip),%xmm1
addsd  %xmm0,%xmm1
movsd  %xmm1,0x20(%rsp)
movsd  0x10(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x12ee(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x70(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
movsd  %xmm0,0xb8(%rsp)
call   1030 <sin@plt>
mulsd  0x12c8(%rip),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x70(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x129f(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0xb8(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x127f(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x20(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1268(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x88(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1248(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0xd8(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1228(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x88(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x1208(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x11fc(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0xc8(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
movsd  0x40(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x11b9(%rip),%xmm0
addsd  0x28(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x119c(%rip),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x1190(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x8(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
subsd  0x70(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x1155(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x20(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x111a(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x20(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x10f1(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0xb8(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x10b9(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  0x28(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x50(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x30(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x106a(%rip),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
movsd  0x48(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
call   1030 <sin@plt>
movsd  0x1047(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x50(%rsp),%xmm1
movsd  %xmm1,0x60(%rsp)
movsd  0xe69(%rip),%xmm0
mulsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x50(%rsp)
call   1030 <sin@plt>
mulsd  0x1018(%rip),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x100c(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0xa0(%rsp)
movsd  0xe0(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xa0(%rsp),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x78(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xfc9(%rip),%xmm0
addsd  0x60(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movsd  0x10(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0xfac(%rip),%xmm2
movsd  0x18(%rsp),%xmm1
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
addsd  0x78(%rsp),%xmm2
movsd  %xmm2,0x78(%rsp)
movsd  0xf92(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x28(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x60(%rsp),%xmm0
addsd  0x78(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movsd  0xf65(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x60(%rsp)
movsd  0x28(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x60(%rsp),%xmm0
addsd  0x78(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movsd  0x8(%rsp),%xmm0
subsd  0x58(%rsp),%xmm0
movsd  %xmm0,0x28(%rsp)
call   1030 <sin@plt>
mulsd  0xf25(%rip),%xmm0
addsd  0x78(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movsd  0xb0(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xf05(%rip),%xmm0
addsd  0x78(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
movsd  0x90(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xeeb(%rip),%xmm0
addsd  0x78(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
movsd  0x30(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x78(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xebf(%rip),%xmm0
addsd  0x90(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
movsd  0x8(%rsp),%xmm0
mulsd  0xd47(%rip),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xe94(%rip),%xmm0
addsd  0x90(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
movsd  0x68(%rsp),%xmm0
addsd  0x78(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xe71(%rip),%xmm0
addsd  0x90(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x70(%rsp),%xmm0
subsd  0x50(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xe51(%rip),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0xe8(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xe31(%rip),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0xe25(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x90(%rsp)
movsd  0xd8(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x90(%rsp),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x68(%rsp)
movsd  0x80(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xdd3(%rip),%xmm0
addsd  0x68(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
movsd  0xb0(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xdb0(%rip),%xmm0
addsd  0x80(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
movsd  0xe8(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xd8a(%rip),%xmm0
addsd  0x80(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
movsd  0xbd8(%rip),%xmm0
mulsd  0x10(%rsp),%xmm0
addsd  0xb8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xd5c(%rip),%xmm0
addsd  0x80(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
movsd  0x40(%rsp),%xmm0
addsd  0x70(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
subsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0xd2d(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x80(%rsp),%xmm1
movsd  %xmm1,0x80(%rsp)
movsd  0x40(%rsp),%xmm0
call   1030 <sin@plt>
movsd  0xd06(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x80(%rsp),%xmm1
movsd  %xmm1,0x40(%rsp)
movsd  0x78(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xce2(%rip),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0xcd6(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x80(%rsp)
movsd  0x20(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x80(%rsp),%xmm0
addsd  0x40(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xca1(%rip),%xmm0
mulsd  0x98(%rsp),%xmm0
movsd  %xmm0,0x40(%rsp)
movsd  0x38(%rsp),%xmm0
subsd  0x8(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0x40(%rsp),%xmm0
addsd  0x20(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x50(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1030 <sin@plt>
mulsd  0xc5e(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x138(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xc44(%rip),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x130(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xc30(%rip),%xmm0
movsd  0x8(%rsp),%xmm1
mulsd  0x862(%rip),%xmm1
divsd  0x862(%rip),%xmm1
movsd  0x20(%rsp),%xmm2
addsd  0x8dc(%rip),%xmm2
addsd  %xmm0,%xmm2
mulsd  %xmm1,%xmm2
movsd  %xmm2,0x0(%r13)
movsd  0x10(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xbf3(%rip),%xmm0
addsd  0xbf3(%rip),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x110(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xbdf(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x70(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xbc8(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x88(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xbae(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xd8(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xb94(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xb88(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xc8(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xb5c(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0x110(%rsp),%xmm0
subsd  0x48(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xb2a(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x20(%rsp)
movsd  0xe0(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x20(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x58(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xaf3(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xf0(%rsp),%xmm0
call   1050 <cos@plt>
movsd  0xad9(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x8(%rsp),%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  0xc0(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xab5(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xb0(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xa9b(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x128(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xa81(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x48(%rsp),%xmm0
call   1050 <cos@plt>
movsd  0xa6a(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x8(%rsp),%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  0x120(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xa46(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x88(%rsp),%xmm0
subsd  0x70(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0xa26(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x108(%rsp),%xmm0
call   1050 <cos@plt>
movsd  0xa0c(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x8(%rsp),%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  0x88(%rsp),%xmm0
addsd  0x70(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x9e2(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x30(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x9cb(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x9bf(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x58(%rsp)
movsd  0xc8(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x58(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x108(%rsp),%xmm0
subsd  0x10(%rsp),%xmm0
call   1050 <cos@plt>
movsd  0x979(%rip),%xmm2
movsd  0x18(%rsp),%xmm1
mulsd  %xmm1,%xmm2
mulsd  %xmm0,%xmm2
addsd  0x8(%rsp),%xmm2
movsd  %xmm2,0x8(%rsp)
movsd  0x95f(%rip),%xmm0
mulsd  %xmm1,%xmm0
movsd  %xmm0,0x58(%rsp)
movsd  0x100(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x58(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x935(%rip),%xmm0
mulsd  0x18(%rsp),%xmm0
movsd  %xmm0,0x58(%rsp)
movsd  0x118(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x58(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xb0(%rsp),%xmm0
subsd  0x70(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x8f5(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xf8(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x8db(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x28(%rsp),%xmm0
addsd  %xmm0,%xmm0
movsd  %xmm0,0x28(%rsp)
call   1050 <cos@plt>
mulsd  0x8ba(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0xd0(%rsp),%xmm0
call   1050 <cos@plt>
movsd  0x898(%rip),%xmm1
mulsd  0x18(%rsp),%xmm1
mulsd  %xmm0,%xmm1
addsd  0x8(%rsp),%xmm1
movsd  %xmm1,0x8(%rsp)
movsd  0x98(%rsp),%xmm0
mulsd  0x879(%rip),%xmm0
movsd  %xmm0,0x98(%rsp)
movsd  0x38(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x98(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x28(%rsp),%xmm0
addsd  0x10(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x83f(%rip),%xmm0
addsd  0x8(%rsp),%xmm0
movsd  %xmm0,0x8(%rsp)
movsd  0x18(%rsp),%xmm0
mulsd  0x82d(%rip),%xmm0
movsd  %xmm0,0x18(%rsp)
movsd  0xa8(%rsp),%xmm0
call   1050 <cos@plt>
mulsd  0x18(%rsp),%xmm0
addsd  0x8(%rsp),%xmm0
mulsd  0x355(%rip),%xmm0
divsd  0x355(%rip),%xmm0
movsd  %xmm0,(%r12)
movsd  0x48(%rsp),%xmm0
movsd  %xmm0,(%r15)
movsd  0x10(%rsp),%xmm0
movsd  %xmm0,(%r14)
add    $0x140,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
define void @moon_fast(double %0, double* %1, double* %2, double* %3, double* %4, double* %5) {
%7 = alloca double
%8 = alloca double*
%9 = alloca double*
%10 = alloca double*
%11 = alloca double*
%12 = alloca double*
%13 = alloca double
%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 double
%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
store double %0, double* %7
store double* %1, double** %8
store double* %2, double** %9
store double* %3, double** %10
store double* %4, double** %11
store double* %5, double** %12
%40 = load double, double* %7
%41 = fdiv double %40, 3.652500e+04
store double %41, double* %13
%42 = load double, double* %13
%43 = load double, double* %13
%44 = fmul double %42, %43
store double %44, double* %14
%45 = load double, double* %7
%46 = fdiv double %45, 0x403B525334DB53F9
store double %46, double* %34
%47 = load double, double* %34
%48 = load double, double* %34
%49 = fptosi double %48 to i64
%50 = sitofp i64 %49 to double
%51 = fsub double %47, %50
%52 = fmul double 3.600000e+02, %51
store double %52, double* %34
%53 = load double, double* %7
%54 = fdiv double %53, 0x4076D4277D01B35E
store double %54, double* %35
%55 = load double, double* %35
%56 = load double, double* %35
%57 = fptosi double %56 to i64
%58 = sitofp i64 %57 to double
%59 = fsub double %55, %58
%60 = fmul double 3.600000e+02, %59
store double %60, double* %35
%61 = load double, double* %7
%62 = fdiv double %61, 0x403B8DF70CE7441C
store double %62, double* %36
%63 = load double, double* %36
%64 = load double, double* %36
%65 = fptosi double %64 to i64
%66 = sitofp i64 %65 to double
%67 = fsub double %63, %66
%68 = fmul double 3.600000e+02, %67
store double %68, double* %36
%69 = load double, double* %7
%70 = fdiv double %69, 0x403D87D4A8E43A52
store double %70, double* %37
%71 = load double, double* %37
%72 = load double, double* %37
%73 = fptosi double %72 to i64
%74 = sitofp i64 %73 to double
%75 = fsub double %71, %74
%76 = fmul double 3.600000e+02, %75
store double %76, double* %37
%77 = load double, double* %7
%78 = fdiv double %77, 0x403B365413529828
store double %78, double* %38
%79 = load double, double* %38
%80 = load double, double* %38
%81 = fptosi double %80 to i64
%82 = sitofp i64 %81 to double
%83 = fsub double %79, %82
%84 = fmul double 3.600000e+02, %83
store double %84, double* %38
%85 = load double, double* %7
%86 = fdiv double %85, 0x40BA8E5D01B00368
store double %86, double* %39
%87 = load double, double* %39
%88 = load double, double* %39
%89 = fptosi double %88 to i64
%90 = sitofp i64 %89 to double
%91 = fsub double %87, %90
%92 = fmul double 3.600000e+02, %91
store double %92, double* %39
%93 = load double, double* %34
%94 = fadd double 0x4070E6F255F3519C, %93
%95 = load double, double* %13
%96 = call double @llvm.fmuladd.f64(double -1.900000e-06, double %95, double 1.133000e-03)
%97 = load double, double* %14
%98 = fneg double %96
%99 = call double @llvm.fmuladd.f64(double %98, double %97, double %94)
store double %99, double* %15
%100 = load double, double* %35
%101 = fadd double 0x4076679D031055B9, %100
%102 = load double, double* %13
%103 = call double @llvm.fmuladd.f64(double 3.300000e-06, double %102, double 1.500000e-04)
%104 = load double, double* %14
%105 = fneg double %103
%106 = call double @llvm.fmuladd.f64(double %105, double %104, double %101)
store double %106, double* %16
%107 = load double, double* %36
%108 = fadd double 0x407281AC79702E66, %107
%109 = load double, double* %13
%110 = call double @llvm.fmuladd.f64(double 1.440000e-05, double %109, double 9.192000e-03)
%111 = load double, double* %14
%112 = call double @llvm.fmuladd.f64(double %110, double %111, double %108)
store double %112, double* %17
%113 = load double, double* %37
%114 = fadd double 0x4075EBCCBE1EB420, %113
%115 = load double, double* %13
%116 = call double @llvm.fmuladd.f64(double -1.900000e-06, double %115, double 1.436000e-03)
%117 = load double, double* %14
%118 = fneg double %116
%119 = call double @llvm.fmuladd.f64(double %118, double %117, double %114)
store double %119, double* %18
%120 = load double, double* %38
%121 = fadd double 0x4026807485E3DA30, %120
%122 = load double, double* %13
%123 = call double @llvm.fmuladd.f64(double 3.000000e-07, double %122, double 3.211000e-03)
%124 = load double, double* %14
%125 = fneg double %123
%126 = call double @llvm.fmuladd.f64(double %125, double %124, double %121)
store double %126, double* %19
%127 = load double, double* %39
%128 = fsub double 0x407032EEB1C432CA, %127
%129 = load double, double* %13
%130 = call double @llvm.fmuladd.f64(double 2.200000e-05, double %129, double 2.078000e-03)
%131 = load double, double* %14
%132 = call double @llvm.fmuladd.f64(double %130, double %131, double %128)
store double %132, double* %20
%133 = load double, double* %13
%134 = call double @llvm.fmuladd.f64(double 2.020000e+01, double %133, double 5.120000e+01)
%135 = fmul double %134, 0x400921FB54442D18
%136 = fdiv double %135, 1.800000e+02
store double %136, double* %21
%137 = load double, double* %21
%138 = call double @sin(double %137)
store double %138, double* %22
%139 = load double, double* %20
%140 = fmul double %139, 0x400921FB54442D18
%141 = fdiv double %140, 1.800000e+02
%142 = call double @sin(double %141)
store double %142, double* %23
%143 = load double, double* %13
%144 = call double @llvm.fmuladd.f64(double -9.173100e-03, double %143, double 1.328700e+02)
%145 = load double, double* %13
%146 = call double @llvm.fmuladd.f64(double %144, double %145, double 3.465600e+02)
store double %146, double* %24
%147 = load double, double* %24
%148 = fmul double %147, 0x400921FB54442D18
%149 = fdiv double %148, 1.800000e+02
%150 = call double @sin(double %149)
%151 = fmul double 3.964000e-03, %150
store double %151, double* %25
%152 = load double, double* %20
%153 = fadd double %152, 2.750500e+02
%154 = load double, double* %13
%155 = call double @llvm.fmuladd.f64(double -2.300000e+00, double %154, double %153)
%156 = fmul double %155, 0x400921FB54442D18
%157 = fdiv double %156, 1.800000e+02
store double %157, double* %26
%158 = load double, double* %26
%159 = call double @sin(double %158)
store double %159, double* %27
%160 = load double, double* %15
%161 = load double, double* %22
%162 = call double @llvm.fmuladd.f64(double 2.330000e-04, double %161, double %160)
%163 = load double, double* %25
%164 = fadd double %162, %163
%165 = load double, double* %23
%166 = call double @llvm.fmuladd.f64(double 1.964000e-03, double %165, double %164)
store double %166, double* %15
%167 = load double, double* %16
%168 = load double, double* %22
%169 = call double @llvm.fmuladd.f64(double -1.778000e-03, double %168, double %167)
store double %169, double* %16
%170 = load double, double* %17
%171 = load double, double* %22
%172 = call double @llvm.fmuladd.f64(double 8.170000e-04, double %171, double %170)
%173 = load double, double* %25
%174 = fadd double %172, %173
%175 = load double, double* %23
%176 = call double @llvm.fmuladd.f64(double 2.541000e-03, double %175, double %174)
store double %176, double* %17
%177 = load double, double* %19
%178 = load double, double* %25
%179 = fadd double %177, %178
%180 = load double, double* %23
%181 = call double @llvm.fmuladd.f64(double -2.469100e-02, double %180, double %179)
%182 = load double, double* %27
%183 = call double @llvm.fmuladd.f64(double -4.328000e-03, double %182, double %181)
store double %183, double* %19
%184 = load double, double* %18
%185 = load double, double* %22
%186 = call double @llvm.fmuladd.f64(double 2.011000e-03, double %185, double %184)
%187 = load double, double* %25
%188 = fadd double %186, %187
%189 = load double, double* %23
%190 = call double @llvm.fmuladd.f64(double 1.964000e-03, double %189, double %188)
store double %190, double* %18
%191 = load double, double* %13
%192 = call double @llvm.fmuladd.f64(double 0x3EDF8A89DC374DF5, double %191, double 2.495000e-03)
%193 = load double, double* %13
%194 = fneg double %192
%195 = call double @llvm.fmuladd.f64(double %194, double %193, double 1.000000e+00)
store double %195, double* %28
%196 = load double, double* %28
%197 = load double, double* %28
%198 = fmul double %196, %197
store double %198, double* %29
%199 = load double, double* %15
%200 = fmul double %199, 0x400921FB54442D18
%201 = fdiv double %200, 1.800000e+02
store double %201, double* %15
%202 = load double, double* %16
%203 = fmul double %202, 0x400921FB54442D18
%204 = fdiv double %203, 1.800000e+02
store double %204, double* %16
%205 = load double, double* %20
%206 = fmul double %205, 0x400921FB54442D18
%207 = fdiv double %206, 1.800000e+02
store double %207, double* %20
%208 = load double, double* %18
%209 = fmul double %208, 0x400921FB54442D18
%210 = fdiv double %209, 1.800000e+02
store double %210, double* %18
%211 = load double, double* %19
%212 = fmul double %211, 0x400921FB54442D18
%213 = fdiv double %212, 1.800000e+02
store double %213, double* %19
%214 = load double, double* %17
%215 = fmul double %214, 0x400921FB54442D18
%216 = fdiv double %215, 1.800000e+02
store double %216, double* %17
%217 = load double, double* %17
%218 = call double @sin(double %217)
%219 = load double, double* %18
%220 = load double, double* %17
%221 = fneg double %220
%222 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %219, double %221)
%223 = call double @sin(double %222)
%224 = fmul double 1.274020e+00, %223
%225 = call double @llvm.fmuladd.f64(double 6.288750e+00, double %218, double %224)
%226 = load double, double* %18
%227 = fmul double 2.000000e+00, %226
%228 = call double @sin(double %227)
%229 = call double @llvm.fmuladd.f64(double 6.583090e-01, double %228, double %225)
%230 = load double, double* %17
%231 = fmul double 2.000000e+00, %230
%232 = call double @sin(double %231)
%233 = call double @llvm.fmuladd.f64(double 2.136160e-01, double %232, double %229)
%234 = load double, double* %28
%235 = fmul double %234, 1.855960e-01
%236 = load double, double* %16
%237 = call double @sin(double %236)
%238 = fneg double %235
%239 = call double @llvm.fmuladd.f64(double %238, double %237, double %233)
%240 = load double, double* %19
%241 = fmul double 2.000000e+00, %240
%242 = call double @sin(double %241)
%243 = call double @llvm.fmuladd.f64(double -1.143360e-01, double %242, double %239)
%244 = load double, double* %18
%245 = load double, double* %17
%246 = fsub double %244, %245
%247 = fmul double 2.000000e+00, %246
%248 = call double @sin(double %247)
%249 = call double @llvm.fmuladd.f64(double 5.879300e-02, double %248, double %243)
%250 = load double, double* %28
%251 = fmul double 5.721200e-02, %250
%252 = load double, double* %18
%253 = load double, double* %16
%254 = fneg double %253
%255 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %252, double %254)
%256 = load double, double* %17
%257 = fsub double %255, %256
%258 = call double @sin(double %257)
%259 = call double @llvm.fmuladd.f64(double %251, double %258, double %249)
%260 = load double, double* %18
%261 = load double, double* %17
%262 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %260, double %261)
%263 = call double @sin(double %262)
%264 = call double @llvm.fmuladd.f64(double 5.332000e-02, double %263, double %259)
%265 = load double, double* %28
%266 = fmul double 4.587400e-02, %265
%267 = load double, double* %18
%268 = load double, double* %16
%269 = fneg double %268
%270 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %267, double %269)
%271 = call double @sin(double %270)
%272 = call double @llvm.fmuladd.f64(double %266, double %271, double %264)
%273 = load double, double* %28
%274 = fmul double 4.102400e-02, %273
%275 = load double, double* %17
%276 = load double, double* %16
%277 = fsub double %275, %276
%278 = call double @sin(double %277)
%279 = call double @llvm.fmuladd.f64(double %274, double %278, double %272)
store double %279, double* %30
%280 = load double, double* %30
%281 = load double, double* %18
%282 = call double @sin(double %281)
%283 = call double @llvm.fmuladd.f64(double -3.471800e-02, double %282, double %280)
%284 = load double, double* %28
%285 = fmul double %284, 3.046500e-02
%286 = load double, double* %16
%287 = load double, double* %17
%288 = fadd double %286, %287
%289 = call double @sin(double %288)
%290 = fneg double %285
%291 = call double @llvm.fmuladd.f64(double %290, double %289, double %283)
%292 = load double, double* %18
%293 = load double, double* %19
%294 = fsub double %292, %293
%295 = fmul double 2.000000e+00, %294
%296 = call double @sin(double %295)
%297 = call double @llvm.fmuladd.f64(double 1.532600e-02, double %296, double %291)
%298 = load double, double* %19
%299 = load double, double* %17
%300 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %298, double %299)
%301 = call double @sin(double %300)
%302 = call double @llvm.fmuladd.f64(double -1.252800e-02, double %301, double %297)
%303 = load double, double* %19
%304 = load double, double* %17
%305 = fneg double %304
%306 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %303, double %305)
%307 = call double @sin(double %306)
%308 = call double @llvm.fmuladd.f64(double -1.098000e-02, double %307, double %302)
%309 = load double, double* %18
%310 = load double, double* %17
%311 = fneg double %310
%312 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %309, double %311)
%313 = call double @sin(double %312)
%314 = call double @llvm.fmuladd.f64(double 1.067400e-02, double %313, double %308)
%315 = load double, double* %17
%316 = fmul double 3.000000e+00, %315
%317 = call double @sin(double %316)
%318 = call double @llvm.fmuladd.f64(double 1.003400e-02, double %317, double %314)
%319 = load double, double* %18
%320 = load double, double* %17
%321 = fmul double 2.000000e+00, %320
%322 = fneg double %321
%323 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %319, double %322)
%324 = call double @sin(double %323)
%325 = call double @llvm.fmuladd.f64(double 8.548000e-03, double %324, double %318)
%326 = load double, double* %28
%327 = fmul double %326, 7.910000e-03
%328 = load double, double* %16
%329 = load double, double* %17
%330 = fsub double %328, %329
%331 = load double, double* %18
%332 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %331, double %330)
%333 = call double @sin(double %332)
%334 = fneg double %327
%335 = call double @llvm.fmuladd.f64(double %334, double %333, double %325)
%336 = load double, double* %28
%337 = fmul double %336, 0x3F7BC87DB2B34613
%338 = load double, double* %18
%339 = load double, double* %16
%340 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %338, double %339)
%341 = call double @sin(double %340)
%342 = fneg double %337
%343 = call double @llvm.fmuladd.f64(double %342, double %341, double %335)
store double %343, double* %30
%344 = load double, double* %30
%345 = load double, double* %17
%346 = load double, double* %18
%347 = fsub double %345, %346
%348 = call double @sin(double %347)
%349 = call double @llvm.fmuladd.f64(double 5.162000e-03, double %348, double %344)
%350 = load double, double* %28
%351 = fmul double %350, 5.000000e-03
%352 = load double, double* %16
%353 = load double, double* %18
%354 = fadd double %352, %353
%355 = call double @sin(double %354)
%356 = call double @llvm.fmuladd.f64(double %351, double %355, double %349)
%357 = load double, double* %18
%358 = fmul double 4.000000e+00, %357
%359 = call double @sin(double %358)
%360 = call double @llvm.fmuladd.f64(double 3.862000e-03, double %359, double %356)
%361 = load double, double* %28
%362 = fmul double %361, 4.049000e-03
%363 = load double, double* %17
%364 = load double, double* %16
%365 = fsub double %363, %364
%366 = load double, double* %18
%367 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %366, double %365)
%368 = call double @sin(double %367)
%369 = call double @llvm.fmuladd.f64(double %362, double %368, double %360)
%370 = load double, double* %17
%371 = load double, double* %18
%372 = fadd double %370, %371
%373 = fmul double 2.000000e+00, %372
%374 = call double @sin(double %373)
%375 = call double @llvm.fmuladd.f64(double 3.996000e-03, double %374, double %369)
%376 = load double, double* %18
%377 = load double, double* %17
%378 = fmul double 3.000000e+00, %377
%379 = fneg double %378
%380 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %376, double %379)
%381 = call double @sin(double %380)
%382 = call double @llvm.fmuladd.f64(double 3.665000e-03, double %381, double %375)
%383 = load double, double* %28
%384 = fmul double %383, 2.695000e-03
%385 = load double, double* %17
%386 = load double, double* %16
%387 = fneg double %386
%388 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %385, double %387)
%389 = call double @sin(double %388)
%390 = call double @llvm.fmuladd.f64(double %384, double %389, double %382)
%391 = load double, double* %17
%392 = load double, double* %19
%393 = load double, double* %18
%394 = fadd double %392, %393
%395 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %394, double %391)
%396 = call double @sin(double %395)
%397 = call double @llvm.fmuladd.f64(double 2.602000e-03, double %396, double %390)
%398 = load double, double* %28
%399 = fmul double %398, 2.396000e-03
%400 = load double, double* %18
%401 = load double, double* %17
%402 = fsub double %400, %401
%403 = load double, double* %16
%404 = fneg double %403
%405 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %402, double %404)
%406 = call double @sin(double %405)
%407 = call double @llvm.fmuladd.f64(double %399, double %406, double %397)
%408 = load double, double* %17
%409 = load double, double* %18
%410 = fadd double %408, %409
%411 = call double @sin(double %410)
%412 = call double @llvm.fmuladd.f64(double -2.349000e-03, double %411, double %407)
store double %412, double* %30
%413 = load double, double* %30
%414 = load double, double* %29
%415 = fmul double %414, 2.249000e-03
%416 = load double, double* %18
%417 = load double, double* %16
%418 = fsub double %416, %417
%419 = fmul double 2.000000e+00, %418
%420 = call double @sin(double %419)
%421 = call double @llvm.fmuladd.f64(double %415, double %420, double %413)
%422 = load double, double* %28
%423 = fmul double %422, 2.125000e-03
%424 = load double, double* %17
%425 = load double, double* %16
%426 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %424, double %425)
%427 = call double @sin(double %426)
%428 = fneg double %423
%429 = call double @llvm.fmuladd.f64(double %428, double %427, double %421)
%430 = load double, double* %29
%431 = fmul double %430, 2.079000e-03
%432 = load double, double* %16
%433 = fmul double 2.000000e+00, %432
%434 = call double @sin(double %433)
%435 = fneg double %431
%436 = call double @llvm.fmuladd.f64(double %435, double %434, double %429)
%437 = load double, double* %29
%438 = fmul double %437, 2.059000e-03
%439 = load double, double* %18
%440 = load double, double* %16
%441 = fsub double %439, %440
%442 = load double, double* %17
%443 = fneg double %442
%444 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %441, double %443)
%445 = call double @sin(double %444)
%446 = call double @llvm.fmuladd.f64(double %438, double %445, double %436)
%447 = load double, double* %17
%448 = load double, double* %18
%449 = load double, double* %19
%450 = fsub double %448, %449
%451 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %450, double %447)
%452 = call double @sin(double %451)
%453 = call double @llvm.fmuladd.f64(double -1.773000e-03, double %452, double %446)
%454 = load double, double* %19
%455 = load double, double* %18
%456 = fadd double %454, %455
%457 = fmul double 2.000000e+00, %456
%458 = call double @sin(double %457)
%459 = call double @llvm.fmuladd.f64(double -1.595000e-03, double %458, double %453)
%460 = load double, double* %28
%461 = fmul double %460, 1.220000e-03
%462 = load double, double* %18
%463 = load double, double* %16
%464 = fneg double %463
%465 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %462, double %464)
%466 = load double, double* %17
%467 = fsub double %465, %466
%468 = call double @sin(double %467)
%469 = call double @llvm.fmuladd.f64(double %461, double %468, double %459)
%470 = load double, double* %17
%471 = load double, double* %19
%472 = fadd double %470, %471
%473 = fmul double 2.000000e+00, %472
%474 = call double @sin(double %473)
%475 = call double @llvm.fmuladd.f64(double -1.110000e-03, double %474, double %469)
%476 = load double, double* %17
%477 = load double, double* %18
%478 = call double @llvm.fmuladd.f64(double -3.000000e+00, double %477, double %476)
%479 = call double @sin(double %478)
%480 = call double @llvm.fmuladd.f64(double 0x3F4D3AA369FCF3DC, double %479, double %475)
store double %480, double* %30
%481 = load double, double* %30
%482 = load double, double* %28
%483 = fmul double %482, 0x3F4A93293D102BC7
%484 = load double, double* %16
%485 = load double, double* %17
%486 = fadd double %484, %485
%487 = load double, double* %18
%488 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %487, double %486)
%489 = call double @sin(double %488)
%490 = fneg double %483
%491 = call double @llvm.fmuladd.f64(double %490, double %489, double %481)
%492 = load double, double* %28
%493 = fmul double %492, 0x3F48EFBB0E5E6794
%494 = load double, double* %18
%495 = load double, double* %16
%496 = fneg double %495
%497 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %494, double %496)
%498 = load double, double* %17
%499 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %498, double %497)
%500 = call double @sin(double %499)
%501 = call double @llvm.fmuladd.f64(double %493, double %500, double %491)
%502 = load double, double* %29
%503 = fmul double %502, 7.040000e-04
%504 = load double, double* %17
%505 = load double, double* %16
%506 = load double, double* %18
%507 = fadd double %505, %506
%508 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %507, double %504)
%509 = call double @sin(double %508)
%510 = call double @llvm.fmuladd.f64(double %503, double %509, double %501)
%511 = load double, double* %28
%512 = fmul double %511, 6.930000e-04
%513 = load double, double* %16
%514 = load double, double* %17
%515 = load double, double* %18
%516 = fsub double %514, %515
%517 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %516, double %513)
%518 = call double @sin(double %517)
%519 = call double @llvm.fmuladd.f64(double %512, double %518, double %510)
%520 = load double, double* %28
%521 = fmul double %520, 5.980000e-04
%522 = load double, double* %18
%523 = load double, double* %19
%524 = fsub double %522, %523
%525 = load double, double* %16
%526 = fneg double %525
%527 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %524, double %526)
%528 = call double @sin(double %527)
%529 = call double @llvm.fmuladd.f64(double %521, double %528, double %519)
%530 = load double, double* %17
%531 = load double, double* %18
%532 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %531, double %530)
%533 = call double @sin(double %532)
%534 = call double @llvm.fmuladd.f64(double 5.500000e-04, double %533, double %529)
%535 = load double, double* %17
%536 = fmul double 4.000000e+00, %535
%537 = call double @sin(double %536)
%538 = call double @llvm.fmuladd.f64(double 5.380000e-04, double %537, double %534)
%539 = load double, double* %28
%540 = fmul double %539, 5.210000e-04
%541 = load double, double* %18
%542 = load double, double* %16
%543 = fneg double %542
%544 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %541, double %543)
%545 = call double @sin(double %544)
%546 = call double @llvm.fmuladd.f64(double %540, double %545, double %538)
%547 = load double, double* %17
%548 = load double, double* %18
%549 = fneg double %548
%550 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %547, double %549)
%551 = call double @sin(double %550)
%552 = call double @llvm.fmuladd.f64(double 4.860000e-04, double %551, double %546)
store double %552, double* %30
%553 = load double, double* %30
%554 = load double, double* %29
%555 = fmul double %554, 7.170000e-04
%556 = load double, double* %17
%557 = load double, double* %16
%558 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %557, double %556)
%559 = call double @sin(double %558)
%560 = call double @llvm.fmuladd.f64(double %555, double %559, double %553)
store double %560, double* %30
%561 = load double, double* %15
%562 = load double, double* %30
%563 = fmul double %562, 0x400921FB54442D18
%564 = fdiv double %563, 1.800000e+02
%565 = fadd double %561, %564
%566 = load double*, double** %8
store double %565, double* %566
%567 = load double*, double** %8
%568 = call i32 (double*, double, ...) bitcast (i32 (...)* @range to i32 (double*, double, ...)*)(double* %567, double 0x401921FB54442D18)
%569 = load double, double* %19
%570 = call double @sin(double %569)
%571 = load double, double* %17
%572 = load double, double* %19
%573 = fadd double %571, %572
%574 = call double @sin(double %573)
%575 = fmul double 2.806060e-01, %574
%576 = call double @llvm.fmuladd.f64(double 5.128190e+00, double %570, double %575)
%577 = load double, double* %17
%578 = load double, double* %19
%579 = fsub double %577, %578
%580 = call double @sin(double %579)
%581 = call double @llvm.fmuladd.f64(double 2.776930e-01, double %580, double %576)
%582 = load double, double* %18
%583 = load double, double* %19
%584 = fneg double %583
%585 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %582, double %584)
%586 = call double @sin(double %585)
%587 = call double @llvm.fmuladd.f64(double 1.732380e-01, double %586, double %581)
%588 = load double, double* %18
%589 = load double, double* %19
%590 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %588, double %589)
%591 = load double, double* %17
%592 = fsub double %590, %591
%593 = call double @sin(double %592)
%594 = call double @llvm.fmuladd.f64(double 5.541300e-02, double %593, double %587)
%595 = load double, double* %18
%596 = load double, double* %19
%597 = fneg double %596
%598 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %595, double %597)
%599 = load double, double* %17
%600 = fsub double %598, %599
%601 = call double @sin(double %600)
%602 = call double @llvm.fmuladd.f64(double 4.627200e-02, double %601, double %594)
%603 = load double, double* %18
%604 = load double, double* %19
%605 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %603, double %604)
%606 = call double @sin(double %605)
%607 = call double @llvm.fmuladd.f64(double 3.257300e-02, double %606, double %602)
%608 = load double, double* %17
%609 = load double, double* %19
%610 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %608, double %609)
%611 = call double @sin(double %610)
%612 = call double @llvm.fmuladd.f64(double 1.719800e-02, double %611, double %607)
%613 = load double, double* %18
%614 = load double, double* %17
%615 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %613, double %614)
%616 = load double, double* %19
%617 = fsub double %615, %616
%618 = call double @sin(double %617)
%619 = call double @llvm.fmuladd.f64(double 0x3F82FA93AF74CD31, double %618, double %612)
%620 = load double, double* %17
%621 = load double, double* %19
%622 = fneg double %621
%623 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %620, double %622)
%624 = call double @sin(double %623)
%625 = call double @llvm.fmuladd.f64(double 0x3F8211CB039EF0F1, double %624, double %619)
%626 = load double, double* %28
%627 = fmul double %626, 8.247000e-03
%628 = load double, double* %18
%629 = load double, double* %16
%630 = fneg double %629
%631 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %628, double %630)
%632 = load double, double* %19
%633 = fsub double %631, %632
%634 = call double @sin(double %633)
%635 = call double @llvm.fmuladd.f64(double %627, double %634, double %625)
store double %635, double* %31
%636 = load double, double* %31
%637 = load double, double* %18
%638 = load double, double* %17
%639 = fsub double %637, %638
%640 = load double, double* %19
%641 = fneg double %640
%642 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %639, double %641)
%643 = call double @sin(double %642)
%644 = call double @llvm.fmuladd.f64(double 4.323000e-03, double %643, double %636)
%645 = load double, double* %18
%646 = load double, double* %19
%647 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %645, double %646)
%648 = load double, double* %17
%649 = fadd double %647, %648
%650 = call double @sin(double %649)
%651 = call double @llvm.fmuladd.f64(double 4.200000e-03, double %650, double %644)
%652 = load double, double* %28
%653 = fmul double %652, 3.372000e-03
%654 = load double, double* %19
%655 = load double, double* %16
%656 = fsub double %654, %655
%657 = load double, double* %18
%658 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %657, double %656)
%659 = call double @sin(double %658)
%660 = call double @llvm.fmuladd.f64(double %653, double %659, double %651)
%661 = load double, double* %28
%662 = fmul double %661, 2.472000e-03
%663 = load double, double* %18
%664 = load double, double* %19
%665 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %663, double %664)
%666 = load double, double* %16
%667 = fsub double %665, %666
%668 = load double, double* %17
%669 = fsub double %667, %668
%670 = call double @sin(double %669)
%671 = call double @llvm.fmuladd.f64(double %662, double %670, double %660)
%672 = load double, double* %28
%673 = fmul double %672, 2.222000e-03
%674 = load double, double* %18
%675 = load double, double* %19
%676 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %674, double %675)
%677 = load double, double* %16
%678 = fsub double %676, %677
%679 = call double @sin(double %678)
%680 = call double @llvm.fmuladd.f64(double %673, double %679, double %671)
%681 = load double, double* %28
%682 = fmul double %681, 2.072000e-03
%683 = load double, double* %18
%684 = load double, double* %19
%685 = fneg double %684
%686 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %683, double %685)
%687 = load double, double* %16
%688 = fsub double %686, %687
%689 = load double, double* %17
%690 = fsub double %688, %689
%691 = call double @sin(double %690)
%692 = call double @llvm.fmuladd.f64(double %682, double %691, double %680)
%693 = load double, double* %28
%694 = fmul double %693, 1.877000e-03
%695 = load double, double* %19
%696 = load double, double* %16
%697 = fsub double %695, %696
%698 = load double, double* %17
%699 = fadd double %697, %698
%700 = call double @sin(double %699)
%701 = call double @llvm.fmuladd.f64(double %694, double %700, double %692)
%702 = load double, double* %18
%703 = load double, double* %19
%704 = fneg double %703
%705 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %702, double %704)
%706 = load double, double* %17
%707 = fsub double %705, %706
%708 = call double @sin(double %707)
%709 = call double @llvm.fmuladd.f64(double 1.828000e-03, double %708, double %701)
%710 = load double, double* %28
%711 = fmul double %710, 1.803000e-03
%712 = load double, double* %19
%713 = load double, double* %16
%714 = fadd double %712, %713
%715 = call double @sin(double %714)
%716 = fneg double %711
%717 = call double @llvm.fmuladd.f64(double %716, double %715, double %709)
%718 = load double, double* %19
%719 = fmul double 3.000000e+00, %718
%720 = call double @sin(double %719)
%721 = call double @llvm.fmuladd.f64(double -1.750000e-03, double %720, double %717)
store double %721, double* %31
%722 = load double, double* %31
%723 = load double, double* %28
%724 = fmul double %723, 1.570000e-03
%725 = load double, double* %17
%726 = load double, double* %16
%727 = fsub double %725, %726
%728 = load double, double* %19
%729 = fsub double %727, %728
%730 = call double @sin(double %729)
%731 = call double @llvm.fmuladd.f64(double %724, double %730, double %722)
%732 = load double, double* %19
%733 = load double, double* %18
%734 = fadd double %732, %733
%735 = call double @sin(double %734)
%736 = call double @llvm.fmuladd.f64(double -1.487000e-03, double %735, double %731)
%737 = load double, double* %28
%738 = fmul double %737, 1.481000e-03
%739 = load double, double* %19
%740 = load double, double* %16
%741 = fadd double %739, %740
%742 = load double, double* %17
%743 = fadd double %741, %742
%744 = call double @sin(double %743)
%745 = fneg double %738
%746 = call double @llvm.fmuladd.f64(double %745, double %744, double %736)
%747 = load double, double* %28
%748 = fmul double %747, 1.417000e-03
%749 = load double, double* %19
%750 = load double, double* %16
%751 = fsub double %749, %750
%752 = load double, double* %17
%753 = fsub double %751, %752
%754 = call double @sin(double %753)
%755 = call double @llvm.fmuladd.f64(double %748, double %754, double %746)
%756 = load double, double* %28
%757 = fmul double %756, 1.350000e-03
%758 = load double, double* %19
%759 = load double, double* %16
%760 = fsub double %758, %759
%761 = call double @sin(double %760)
%762 = call double @llvm.fmuladd.f64(double %757, double %761, double %755)
%763 = load double, double* %19
%764 = load double, double* %18
%765 = fsub double %763, %764
%766 = call double @sin(double %765)
%767 = call double @llvm.fmuladd.f64(double 1.330000e-03, double %766, double %762)
%768 = load double, double* %19
%769 = load double, double* %17
%770 = call double @llvm.fmuladd.f64(double 3.000000e+00, double %769, double %768)
%771 = call double @sin(double %770)
%772 = call double @llvm.fmuladd.f64(double 1.106000e-03, double %771, double %767)
%773 = load double, double* %18
%774 = load double, double* %19
%775 = fneg double %774
%776 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %773, double %775)
%777 = call double @sin(double %776)
%778 = call double @llvm.fmuladd.f64(double 1.020000e-03, double %777, double %772)
%779 = load double, double* %19
%780 = load double, double* %18
%781 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %780, double %779)
%782 = load double, double* %17
%783 = fsub double %781, %782
%784 = call double @sin(double %783)
%785 = call double @llvm.fmuladd.f64(double 0x3F4B4BB5E0F7FCFC, double %784, double %778)
%786 = load double, double* %17
%787 = load double, double* %19
%788 = call double @llvm.fmuladd.f64(double -3.000000e+00, double %787, double %786)
%789 = call double @sin(double %788)
%790 = call double @llvm.fmuladd.f64(double 7.810000e-04, double %789, double %785)
%791 = load double, double* %19
%792 = load double, double* %18
%793 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %792, double %791)
%794 = load double, double* %17
%795 = call double @llvm.fmuladd.f64(double -2.000000e+00, double %794, double %793)
%796 = call double @sin(double %795)
%797 = call double @llvm.fmuladd.f64(double 6.700000e-04, double %796, double %790)
store double %797, double* %31
%798 = load double, double* %31
%799 = load double, double* %18
%800 = load double, double* %19
%801 = fmul double 3.000000e+00, %800
%802 = fneg double %801
%803 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %799, double %802)
%804 = call double @sin(double %803)
%805 = call double @llvm.fmuladd.f64(double 6.060000e-04, double %804, double %798)
%806 = load double, double* %18
%807 = load double, double* %17
%808 = fadd double %806, %807
%809 = load double, double* %19
%810 = fneg double %809
%811 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %808, double %810)
%812 = call double @sin(double %811)
%813 = call double @llvm.fmuladd.f64(double 5.970000e-04, double %812, double %805)
%814 = load double, double* %28
%815 = fmul double %814, 4.920000e-04
%816 = load double, double* %18
%817 = load double, double* %17
%818 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %816, double %817)
%819 = load double, double* %16
%820 = fsub double %818, %819
%821 = load double, double* %19
%822 = fsub double %820, %821
%823 = call double @sin(double %822)
%824 = call double @llvm.fmuladd.f64(double %815, double %823, double %813)
%825 = load double, double* %17
%826 = load double, double* %18
%827 = fsub double %825, %826
%828 = load double, double* %19
%829 = fneg double %828
%830 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %827, double %829)
%831 = call double @sin(double %830)
%832 = call double @llvm.fmuladd.f64(double 4.500000e-04, double %831, double %824)
%833 = load double, double* %17
%834 = load double, double* %19
%835 = fneg double %834
%836 = call double @llvm.fmuladd.f64(double 3.000000e+00, double %833, double %835)
%837 = call double @sin(double %836)
%838 = call double @llvm.fmuladd.f64(double 4.390000e-04, double %837, double %832)
%839 = load double, double* %19
%840 = load double, double* %18
%841 = load double, double* %17
%842 = fadd double %840, %841
%843 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %842, double %839)
%844 = call double @sin(double %843)
%845 = call double @llvm.fmuladd.f64(double 4.230000e-04, double %844, double %838)
%846 = load double, double* %18
%847 = load double, double* %19
%848 = fneg double %847
%849 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %846, double %848)
%850 = load double, double* %17
%851 = call double @llvm.fmuladd.f64(double -3.000000e+00, double %850, double %849)
%852 = call double @sin(double %851)
%853 = call double @llvm.fmuladd.f64(double 4.220000e-04, double %852, double %845)
%854 = load double, double* %28
%855 = fmul double %854, 3.670000e-04
%856 = load double, double* %16
%857 = load double, double* %19
%858 = fadd double %856, %857
%859 = load double, double* %18
%860 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %859, double %858)
%861 = load double, double* %17
%862 = fsub double %860, %861
%863 = call double @sin(double %862)
%864 = fneg double %855
%865 = call double @llvm.fmuladd.f64(double %864, double %863, double %853)
%866 = load double, double* %28
%867 = fmul double %866, 3.530000e-04
%868 = load double, double* %16
%869 = load double, double* %19
%870 = fadd double %868, %869
%871 = load double, double* %18
%872 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %871, double %870)
%873 = call double @sin(double %872)
%874 = fneg double %867
%875 = call double @llvm.fmuladd.f64(double %874, double %873, double %865)
%876 = load double, double* %19
%877 = load double, double* %18
%878 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %877, double %876)
%879 = call double @sin(double %878)
%880 = call double @llvm.fmuladd.f64(double 3.310000e-04, double %879, double %875)
store double %880, double* %31
%881 = load double, double* %31
%882 = load double, double* %28
%883 = fmul double %882, 3.170000e-04
%884 = load double, double* %18
%885 = load double, double* %19
%886 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %884, double %885)
%887 = load double, double* %16
%888 = fsub double %886, %887
%889 = load double, double* %17
%890 = fadd double %888, %889
%891 = call double @sin(double %890)
%892 = call double @llvm.fmuladd.f64(double %883, double %891, double %881)
%893 = load double, double* %29
%894 = fmul double %893, 3.060000e-04
%895 = load double, double* %18
%896 = load double, double* %16
%897 = fsub double %895, %896
%898 = load double, double* %19
%899 = fneg double %898
%900 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %897, double %899)
%901 = call double @sin(double %900)
%902 = call double @llvm.fmuladd.f64(double %894, double %901, double %892)
%903 = load double, double* %17
%904 = load double, double* %19
%905 = call double @llvm.fmuladd.f64(double 3.000000e+00, double %904, double %903)
%906 = call double @sin(double %905)
%907 = call double @llvm.fmuladd.f64(double -2.830000e-04, double %906, double %902)
store double %907, double* %31
%908 = load double, double* %20
%909 = call double @cos(double %908)
%910 = fmul double 4.664000e-04, %909
store double %910, double* %32
%911 = load double, double* %26
%912 = call double @cos(double %911)
%913 = fmul double 7.540000e-05, %912
store double %913, double* %33
%914 = load double, double* %31
%915 = fmul double %914, 0x400921FB54442D18
%916 = fdiv double %915, 1.800000e+02
%917 = load double, double* %32
%918 = fsub double 1.000000e+00, %917
%919 = load double, double* %33
%920 = fsub double %918, %919
%921 = fmul double %916, %920
%922 = load double*, double** %9
store double %921, double* %922
%923 = load double, double* %17
%924 = call double @cos(double %923)
%925 = call double @llvm.fmuladd.f64(double 5.181800e-02, double %924, double 9.507240e-01)
%926 = load double, double* %18
%927 = load double, double* %17
%928 = fneg double %927
%929 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %926, double %928)
%930 = call double @cos(double %929)
%931 = call double @llvm.fmuladd.f64(double 0x3F8384FD2A62AA19, double %930, double %925)
%932 = load double, double* %18
%933 = fmul double 2.000000e+00, %932
%934 = call double @cos(double %933)
%935 = call double @llvm.fmuladd.f64(double 7.843000e-03, double %934, double %931)
%936 = load double, double* %17
%937 = fmul double 2.000000e+00, %936
%938 = call double @cos(double %937)
%939 = call double @llvm.fmuladd.f64(double 2.824000e-03, double %938, double %935)
%940 = load double, double* %18
%941 = load double, double* %17
%942 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %940, double %941)
%943 = call double @cos(double %942)
%944 = call double @llvm.fmuladd.f64(double 8.570000e-04, double %943, double %939)
%945 = load double, double* %28
%946 = fmul double %945, 5.330000e-04
%947 = load double, double* %18
%948 = load double, double* %16
%949 = fneg double %948
%950 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %947, double %949)
%951 = call double @cos(double %950)
%952 = call double @llvm.fmuladd.f64(double %946, double %951, double %944)
%953 = load double, double* %28
%954 = fmul double %953, 4.010000e-04
%955 = load double, double* %18
%956 = load double, double* %17
%957 = fneg double %956
%958 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %955, double %957)
%959 = load double, double* %16
%960 = fsub double %958, %959
%961 = call double @cos(double %960)
%962 = call double @llvm.fmuladd.f64(double %954, double %961, double %952)
%963 = load double, double* %28
%964 = fmul double %963, 3.200000e-04
%965 = load double, double* %17
%966 = load double, double* %16
%967 = fsub double %965, %966
%968 = call double @cos(double %967)
%969 = call double @llvm.fmuladd.f64(double %964, double %968, double %962)
%970 = load double, double* %18
%971 = call double @cos(double %970)
%972 = call double @llvm.fmuladd.f64(double -2.710000e-04, double %971, double %969)
%973 = load double, double* %28
%974 = fmul double %973, 2.640000e-04
%975 = load double, double* %16
%976 = load double, double* %17
%977 = fadd double %975, %976
%978 = call double @cos(double %977)
%979 = fneg double %974
%980 = call double @llvm.fmuladd.f64(double %979, double %978, double %972)
%981 = load double, double* %19
%982 = load double, double* %17
%983 = fneg double %982
%984 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %981, double %983)
%985 = call double @cos(double %984)
%986 = call double @llvm.fmuladd.f64(double -1.980000e-04, double %985, double %980)
%987 = load double*, double** %10
store double %986, double* %987
%988 = load double*, double** %10
%989 = load double, double* %988
%990 = load double, double* %17
%991 = fmul double 3.000000e+00, %990
%992 = call double @cos(double %991)
%993 = call double @llvm.fmuladd.f64(double 1.730000e-04, double %992, double %989)
%994 = load double, double* %18
%995 = load double, double* %17
%996 = fneg double %995
%997 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %994, double %996)
%998 = call double @cos(double %997)
%999 = call double @llvm.fmuladd.f64(double 1.670000e-04, double %998, double %993)
%1000 = load double, double* %28
%1001 = fmul double %1000, 1.110000e-04
%1002 = load double, double* %16
%1003 = call double @cos(double %1002)
%1004 = fneg double %1001
%1005 = call double @llvm.fmuladd.f64(double %1004, double %1003, double %999)
%1006 = load double, double* %18
%1007 = load double, double* %17
%1008 = fmul double 2.000000e+00, %1007
%1009 = fneg double %1008
%1010 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %1006, double %1009)
%1011 = call double @cos(double %1010)
%1012 = call double @llvm.fmuladd.f64(double 1.030000e-04, double %1011, double %1005)
%1013 = load double, double* %17
%1014 = load double, double* %18
%1015 = fmul double 2.000000e+00, %1014
%1016 = fneg double %1015
%1017 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1013, double %1016)
%1018 = call double @cos(double %1017)
%1019 = call double @llvm.fmuladd.f64(double -8.400000e-05, double %1018, double %1012)
%1020 = load double, double* %28
%1021 = fmul double %1020, 8.300000e-05
%1022 = load double, double* %18
%1023 = load double, double* %16
%1024 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1022, double %1023)
%1025 = call double @cos(double %1024)
%1026 = fneg double %1021
%1027 = call double @llvm.fmuladd.f64(double %1026, double %1025, double %1019)
%1028 = load double, double* %18
%1029 = load double, double* %17
%1030 = fmul double 2.000000e+00, %1029
%1031 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1028, double %1030)
%1032 = call double @cos(double %1031)
%1033 = call double @llvm.fmuladd.f64(double 0x3F14B599AA60913A, double %1032, double %1027)
%1034 = load double, double* %18
%1035 = fmul double 4.000000e+00, %1034
%1036 = call double @cos(double %1035)
%1037 = call double @llvm.fmuladd.f64(double 7.200000e-05, double %1036, double %1033)
%1038 = load double, double* %28
%1039 = fmul double %1038, 6.400000e-05
%1040 = load double, double* %18
%1041 = load double, double* %16
%1042 = fneg double %1041
%1043 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1040, double %1042)
%1044 = load double, double* %17
%1045 = fadd double %1043, %1044
%1046 = call double @cos(double %1045)
%1047 = call double @llvm.fmuladd.f64(double %1039, double %1046, double %1037)
%1048 = load double, double* %28
%1049 = fmul double %1048, 6.300000e-05
%1050 = load double, double* %18
%1051 = load double, double* %16
%1052 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1050, double %1051)
%1053 = load double, double* %17
%1054 = fsub double %1052, %1053
%1055 = call double @cos(double %1054)
%1056 = fneg double %1049
%1057 = call double @llvm.fmuladd.f64(double %1056, double %1055, double %1047)
%1058 = load double, double* %28
%1059 = fmul double %1058, 4.100000e-05
%1060 = load double, double* %16
%1061 = load double, double* %18
%1062 = fadd double %1060, %1061
%1063 = call double @cos(double %1062)
%1064 = call double @llvm.fmuladd.f64(double %1059, double %1063, double %1057)
%1065 = load double*, double** %10
store double %1064, double* %1065
%1066 = load double*, double** %10
%1067 = load double, double* %1066
%1068 = load double, double* %28
%1069 = fmul double %1068, 3.500000e-05
%1070 = load double, double* %17
%1071 = load double, double* %16
%1072 = fneg double %1071
%1073 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1070, double %1072)
%1074 = call double @cos(double %1073)
%1075 = call double @llvm.fmuladd.f64(double %1069, double %1074, double %1067)
%1076 = load double, double* %17
%1077 = load double, double* %18
%1078 = fmul double 2.000000e+00, %1077
%1079 = fneg double %1078
%1080 = call double @llvm.fmuladd.f64(double 3.000000e+00, double %1076, double %1079)
%1081 = call double @cos(double %1080)
%1082 = call double @llvm.fmuladd.f64(double -3.300000e-05, double %1081, double %1075)
%1083 = load double, double* %17
%1084 = load double, double* %18
%1085 = fadd double %1083, %1084
%1086 = call double @cos(double %1085)
%1087 = call double @llvm.fmuladd.f64(double -3.000000e-05, double %1086, double %1082)
%1088 = load double, double* %19
%1089 = load double, double* %18
%1090 = fsub double %1088, %1089
%1091 = fmul double 2.000000e+00, %1090
%1092 = call double @cos(double %1091)
%1093 = call double @llvm.fmuladd.f64(double -2.900000e-05, double %1092, double %1087)
%1094 = load double, double* %28
%1095 = fmul double %1094, 2.900000e-05
%1096 = load double, double* %17
%1097 = load double, double* %16
%1098 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1096, double %1097)
%1099 = call double @cos(double %1098)
%1100 = fneg double %1095
%1101 = call double @llvm.fmuladd.f64(double %1100, double %1099, double %1093)
%1102 = load double, double* %29
%1103 = fmul double %1102, 2.600000e-05
%1104 = load double, double* %18
%1105 = load double, double* %16
%1106 = fsub double %1104, %1105
%1107 = fmul double 2.000000e+00, %1106
%1108 = call double @cos(double %1107)
%1109 = call double @llvm.fmuladd.f64(double %1103, double %1108, double %1101)
%1110 = load double, double* %19
%1111 = load double, double* %18
%1112 = fsub double %1110, %1111
%1113 = load double, double* %17
%1114 = call double @llvm.fmuladd.f64(double 2.000000e+00, double %1112, double %1113)
%1115 = call double @cos(double %1114)
%1116 = call double @llvm.fmuladd.f64(double -2.300000e-05, double %1115, double %1109)
%1117 = load double, double* %28
%1118 = fmul double %1117, 1.900000e-05
%1119 = load double, double* %18
%1120 = load double, double* %16
%1121 = fneg double %1120
%1122 = call double @llvm.fmuladd.f64(double 4.000000e+00, double %1119, double %1121)
%1123 = load double, double* %17
%1124 = fsub double %1122, %1123
%1125 = call double @cos(double %1124)
%1126 = call double @llvm.fmuladd.f64(double %1118, double %1125, double %1116)
%1127 = load double*, double** %10
store double %1126, double* %1127
%1128 = load double*, double** %10
%1129 = load double, double* %1128
%1130 = fmul double %1129, 0x400921FB54442D18
%1131 = fdiv double %1130, 1.800000e+02
%1132 = load double*, double** %10
store double %1131, double* %1132
%1133 = load double, double* %16
%1134 = load double*, double** %11
store double %1133, double* %1134
%1135 = load double, double* %17
%1136 = load double*, double** %12
store double %1135, double* %1136
ret void
}

LLVM IR (-O2):
define void @moon_fast(double %0, double* %1, double* nocapture writeonly %2, double* nocapture writeonly %3, double* nocapture writeonly %4, double* nocapture writeonly %5) {
%7 = fdiv double %0, 3.652500e+04
%8 = fmul double %7, %7
%9 = fdiv double %0, 0x403B525334DB53F9
%10 = fptosi double %9 to i64
%11 = sitofp i64 %10 to double
%12 = fsub double %9, %11
%13 = fmul double %12, 3.600000e+02
%14 = fdiv double %0, 0x4076D4277D01B35E
%15 = fptosi double %14 to i64
%16 = sitofp i64 %15 to double
%17 = fsub double %14, %16
%18 = fmul double %17, 3.600000e+02
%19 = fdiv double %0, 0x403B8DF70CE7441C
%20 = fptosi double %19 to i64
%21 = sitofp i64 %20 to double
%22 = fsub double %19, %21
%23 = fmul double %22, 3.600000e+02
%24 = fdiv double %0, 0x403D87D4A8E43A52
%25 = fptosi double %24 to i64
%26 = sitofp i64 %25 to double
%27 = fsub double %24, %26
%28 = fmul double %27, 3.600000e+02
%29 = fdiv double %0, 0x403B365413529828
%30 = fptosi double %29 to i64
%31 = sitofp i64 %30 to double
%32 = fsub double %29, %31
%33 = fmul double %32, 3.600000e+02
%34 = fdiv double %0, 0x40BA8E5D01B00368
%35 = fptosi double %34 to i64
%36 = sitofp i64 %35 to double
%37 = fsub double %34, %36
%38 = fmul double %37, 3.600000e+02
%39 = fadd double %13, 0x4070E6F255F3519C
%40 = tail call double @llvm.fmuladd.f64(double %7, double -1.900000e-06, double 1.133000e-03)
%41 = fneg double %40
%42 = tail call double @llvm.fmuladd.f64(double %41, double %8, double %39)
%43 = fadd double %18, 0x4076679D031055B9
%44 = tail call double @llvm.fmuladd.f64(double %7, double 3.300000e-06, double 1.500000e-04)
%45 = fneg double %44
%46 = tail call double @llvm.fmuladd.f64(double %45, double %8, double %43)
%47 = fadd double %23, 0x407281AC79702E66
%48 = tail call double @llvm.fmuladd.f64(double %7, double 1.440000e-05, double 9.192000e-03)
%49 = tail call double @llvm.fmuladd.f64(double %48, double %8, double %47)
%50 = fadd double %28, 0x4075EBCCBE1EB420
%51 = tail call double @llvm.fmuladd.f64(double %7, double -1.900000e-06, double 1.436000e-03)
%52 = fneg double %51
%53 = tail call double @llvm.fmuladd.f64(double %52, double %8, double %50)
%54 = fadd double %33, 0x4026807485E3DA30
%55 = tail call double @llvm.fmuladd.f64(double %7, double 3.000000e-07, double 3.211000e-03)
%56 = fneg double %55
%57 = tail call double @llvm.fmuladd.f64(double %56, double %8, double %54)
%58 = fsub double 0x407032EEB1C432CA, %38
%59 = tail call double @llvm.fmuladd.f64(double %7, double 2.200000e-05, double 2.078000e-03)
%60 = tail call double @llvm.fmuladd.f64(double %59, double %8, double %58)
%61 = tail call double @llvm.fmuladd.f64(double %7, double 2.020000e+01, double 5.120000e+01)
%62 = fmul double %61, 0x400921FB54442D18
%63 = fdiv double %62, 1.800000e+02
%64 = tail call double @sin(double %63)
%65 = fmul double %60, 0x400921FB54442D18
%66 = fdiv double %65, 1.800000e+02
%67 = tail call double @sin(double %66)
%68 = tail call double @llvm.fmuladd.f64(double %7, double -9.173100e-03, double 1.328700e+02)
%69 = tail call double @llvm.fmuladd.f64(double %68, double %7, double 3.465600e+02)
%70 = fmul double %69, 0x400921FB54442D18
%71 = fdiv double %70, 1.800000e+02
%72 = tail call double @sin(double %71)
%73 = fmul double %72, 3.964000e-03
%74 = fadd double %60, 2.750500e+02
%75 = tail call double @llvm.fmuladd.f64(double %7, double -2.300000e+00, double %74)
%76 = fmul double %75, 0x400921FB54442D18
%77 = fdiv double %76, 1.800000e+02
%78 = tail call double @sin(double %77)
%79 = tail call double @llvm.fmuladd.f64(double %64, double 2.330000e-04, double %42)
%80 = fadd double %79, %73
%81 = tail call double @llvm.fmuladd.f64(double %67, double 1.964000e-03, double %80)
%82 = tail call double @llvm.fmuladd.f64(double %64, double -1.778000e-03, double %46)
%83 = tail call double @llvm.fmuladd.f64(double %64, double 8.170000e-04, double %49)
%84 = fadd double %83, %73
%85 = tail call double @llvm.fmuladd.f64(double %67, double 2.541000e-03, double %84)
%86 = fadd double %57, %73
%87 = tail call double @llvm.fmuladd.f64(double %67, double -2.469100e-02, double %86)
%88 = tail call double @llvm.fmuladd.f64(double %78, double -4.328000e-03, double %87)
%89 = tail call double @llvm.fmuladd.f64(double %64, double 2.011000e-03, double %53)
%90 = fadd double %89, %73
%91 = tail call double @llvm.fmuladd.f64(double %67, double 1.964000e-03, double %90)
%92 = tail call double @llvm.fmuladd.f64(double %7, double 0x3EDF8A89DC374DF5, double 2.495000e-03)
%93 = fneg double %92
%94 = tail call double @llvm.fmuladd.f64(double %93, double %7, double 1.000000e+00)
%95 = fmul double %94, %94
%96 = fmul double %81, 0x400921FB54442D18
%97 = fdiv double %96, 1.800000e+02
%98 = fmul double %82, 0x400921FB54442D18
%99 = fdiv double %98, 1.800000e+02
%100 = fmul double %91, 0x400921FB54442D18
%101 = fdiv double %100, 1.800000e+02
%102 = fmul double %88, 0x400921FB54442D18
%103 = fdiv double %102, 1.800000e+02
%104 = fmul double %85, 0x400921FB54442D18
%105 = fdiv double %104, 1.800000e+02
%106 = tail call double @sin(double %105)
%107 = fneg double %105
%108 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %107)
%109 = tail call double @sin(double %108)
%110 = fmul double %109, 1.274020e+00
%111 = tail call double @llvm.fmuladd.f64(double %106, double 6.288750e+00, double %110)
%112 = fmul double %101, 2.000000e+00
%113 = tail call double @sin(double %112)
%114 = tail call double @llvm.fmuladd.f64(double %113, double 6.583090e-01, double %111)
%115 = fmul double %105, 2.000000e+00
%116 = tail call double @sin(double %115)
%117 = tail call double @llvm.fmuladd.f64(double %116, double 2.136160e-01, double %114)
%118 = tail call double @sin(double %99)
%119 = fmul double %94, -1.855960e-01
%120 = tail call double @llvm.fmuladd.f64(double %119, double %118, double %117)
%121 = fmul double %103, 2.000000e+00
%122 = tail call double @sin(double %121)
%123 = tail call double @llvm.fmuladd.f64(double %122, double -1.143360e-01, double %120)
%124 = fsub double %101, %105
%125 = fmul double %124, 2.000000e+00
%126 = tail call double @sin(double %125)
%127 = tail call double @llvm.fmuladd.f64(double %126, double 5.879300e-02, double %123)
%128 = fmul double %94, 5.721200e-02
%129 = fneg double %99
%130 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %129)
%131 = fsub double %130, %105
%132 = tail call double @sin(double %131)
%133 = tail call double @llvm.fmuladd.f64(double %128, double %132, double %127)
%134 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %105)
%135 = tail call double @sin(double %134)
%136 = tail call double @llvm.fmuladd.f64(double %135, double 5.332000e-02, double %133)
%137 = fmul double %94, 4.587400e-02
%138 = tail call double @sin(double %130)
%139 = tail call double @llvm.fmuladd.f64(double %137, double %138, double %136)
%140 = fmul double %94, 4.102400e-02
%141 = fsub double %105, %99
%142 = tail call double @sin(double %141)
%143 = tail call double @llvm.fmuladd.f64(double %140, double %142, double %139)
%144 = tail call double @sin(double %101)
%145 = tail call double @llvm.fmuladd.f64(double %144, double -3.471800e-02, double %143)
%146 = fadd double %99, %105
%147 = tail call double @sin(double %146)
%148 = fmul double %94, -3.046500e-02
%149 = tail call double @llvm.fmuladd.f64(double %148, double %147, double %145)
%150 = fsub double %101, %103
%151 = fmul double %150, 2.000000e+00
%152 = tail call double @sin(double %151)
%153 = tail call double @llvm.fmuladd.f64(double %152, double 1.532600e-02, double %149)
%154 = tail call double @llvm.fmuladd.f64(double %103, double 2.000000e+00, double %105)
%155 = tail call double @sin(double %154)
%156 = tail call double @llvm.fmuladd.f64(double %155, double -1.252800e-02, double %153)
%157 = tail call double @llvm.fmuladd.f64(double %103, double 2.000000e+00, double %107)
%158 = tail call double @sin(double %157)
%159 = tail call double @llvm.fmuladd.f64(double %158, double -1.098000e-02, double %156)
%160 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %107)
%161 = tail call double @sin(double %160)
%162 = tail call double @llvm.fmuladd.f64(double %161, double 1.067400e-02, double %159)
%163 = fmul double %105, 3.000000e+00
%164 = tail call double @sin(double %163)
%165 = tail call double @llvm.fmuladd.f64(double %164, double 1.003400e-02, double %162)
%166 = fneg double %115
%167 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %166)
%168 = tail call double @sin(double %167)
%169 = tail call double @llvm.fmuladd.f64(double %168, double 8.548000e-03, double %165)
%170 = fsub double %99, %105
%171 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %170)
%172 = tail call double @sin(double %171)
%173 = fmul double %94, -7.910000e-03
%174 = tail call double @llvm.fmuladd.f64(double %173, double %172, double %169)
%175 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %99)
%176 = tail call double @sin(double %175)
%177 = fmul double %94, 0xBF7BC87DB2B34613
%178 = tail call double @llvm.fmuladd.f64(double %177, double %176, double %174)
%179 = fsub double %105, %101
%180 = tail call double @sin(double %179)
%181 = tail call double @llvm.fmuladd.f64(double %180, double 5.162000e-03, double %178)
%182 = fmul double %94, 5.000000e-03
%183 = fadd double %99, %101
%184 = tail call double @sin(double %183)
%185 = tail call double @llvm.fmuladd.f64(double %182, double %184, double %181)
%186 = fmul double %101, 4.000000e+00
%187 = tail call double @sin(double %186)
%188 = tail call double @llvm.fmuladd.f64(double %187, double 3.862000e-03, double %185)
%189 = fmul double %94, 4.049000e-03
%190 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %141)
%191 = tail call double @sin(double %190)
%192 = tail call double @llvm.fmuladd.f64(double %189, double %191, double %188)
%193 = fadd double %105, %101
%194 = fmul double %193, 2.000000e+00
%195 = tail call double @sin(double %194)
%196 = tail call double @llvm.fmuladd.f64(double %195, double 3.996000e-03, double %192)
%197 = fneg double %163
%198 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %197)
%199 = tail call double @sin(double %198)
%200 = tail call double @llvm.fmuladd.f64(double %199, double 3.665000e-03, double %196)
%201 = fmul double %94, 2.695000e-03
%202 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %129)
%203 = tail call double @sin(double %202)
%204 = tail call double @llvm.fmuladd.f64(double %201, double %203, double %200)
%205 = fadd double %101, %103
%206 = tail call double @llvm.fmuladd.f64(double %205, double -2.000000e+00, double %105)
%207 = tail call double @sin(double %206)
%208 = tail call double @llvm.fmuladd.f64(double %207, double 2.602000e-03, double %204)
%209 = fmul double %94, 2.396000e-03
%210 = tail call double @llvm.fmuladd.f64(double %124, double 2.000000e+00, double %129)
%211 = tail call double @sin(double %210)
%212 = tail call double @llvm.fmuladd.f64(double %209, double %211, double %208)
%213 = tail call double @sin(double %193)
%214 = tail call double @llvm.fmuladd.f64(double %213, double -2.349000e-03, double %212)
%215 = fmul double %95, 2.249000e-03
%216 = fsub double %101, %99
%217 = fmul double %216, 2.000000e+00
%218 = tail call double @sin(double %217)
%219 = tail call double @llvm.fmuladd.f64(double %215, double %218, double %214)
%220 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %99)
%221 = tail call double @sin(double %220)
%222 = fmul double %94, -2.125000e-03
%223 = tail call double @llvm.fmuladd.f64(double %222, double %221, double %219)
%224 = fmul double %99, 2.000000e+00
%225 = tail call double @sin(double %224)
%226 = fmul double %95, -2.079000e-03
%227 = tail call double @llvm.fmuladd.f64(double %226, double %225, double %223)
%228 = fmul double %95, 2.059000e-03
%229 = tail call double @llvm.fmuladd.f64(double %216, double 2.000000e+00, double %107)
%230 = tail call double @sin(double %229)
%231 = tail call double @llvm.fmuladd.f64(double %228, double %230, double %227)
%232 = tail call double @llvm.fmuladd.f64(double %150, double 2.000000e+00, double %105)
%233 = tail call double @sin(double %232)
%234 = tail call double @llvm.fmuladd.f64(double %233, double -1.773000e-03, double %231)
%235 = fmul double %205, 2.000000e+00
%236 = tail call double @sin(double %235)
%237 = tail call double @llvm.fmuladd.f64(double %236, double -1.595000e-03, double %234)
%238 = fmul double %94, 1.220000e-03
%239 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %129)
%240 = fsub double %239, %105
%241 = tail call double @sin(double %240)
%242 = tail call double @llvm.fmuladd.f64(double %238, double %241, double %237)
%243 = fadd double %105, %103
%244 = fmul double %243, 2.000000e+00
%245 = tail call double @sin(double %244)
%246 = tail call double @llvm.fmuladd.f64(double %245, double -1.110000e-03, double %242)
%247 = tail call double @llvm.fmuladd.f64(double %101, double -3.000000e+00, double %105)
%248 = tail call double @sin(double %247)
%249 = tail call double @llvm.fmuladd.f64(double %248, double 0x3F4D3AA369FCF3DC, double %246)
%250 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %146)
%251 = tail call double @sin(double %250)
%252 = fmul double %94, 0xBF4A93293D102BC7
%253 = tail call double @llvm.fmuladd.f64(double %252, double %251, double %249)
%254 = fmul double %94, 0x3F48EFBB0E5E6794
%255 = tail call double @llvm.fmuladd.f64(double %105, double -2.000000e+00, double %239)
%256 = tail call double @sin(double %255)
%257 = tail call double @llvm.fmuladd.f64(double %254, double %256, double %253)
%258 = fmul double %95, 7.040000e-04
%259 = tail call double @llvm.fmuladd.f64(double %183, double -2.000000e+00, double %105)
%260 = tail call double @sin(double %259)
%261 = tail call double @llvm.fmuladd.f64(double %258, double %260, double %257)
%262 = fmul double %94, 6.930000e-04
%263 = tail call double @llvm.fmuladd.f64(double %179, double -2.000000e+00, double %99)
%264 = tail call double @sin(double %263)
%265 = tail call double @llvm.fmuladd.f64(double %262, double %264, double %261)
%266 = fmul double %94, 5.980000e-04
%267 = tail call double @llvm.fmuladd.f64(double %150, double 2.000000e+00, double %129)
%268 = tail call double @sin(double %267)
%269 = tail call double @llvm.fmuladd.f64(double %266, double %268, double %265)
%270 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %105)
%271 = tail call double @sin(double %270)
%272 = tail call double @llvm.fmuladd.f64(double %271, double 5.500000e-04, double %269)
%273 = fmul double %105, 4.000000e+00
%274 = tail call double @sin(double %273)
%275 = tail call double @llvm.fmuladd.f64(double %274, double 5.380000e-04, double %272)
%276 = fmul double %94, 5.210000e-04
%277 = tail call double @sin(double %239)
%278 = tail call double @llvm.fmuladd.f64(double %276, double %277, double %275)
%279 = fneg double %101
%280 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %279)
%281 = tail call double @sin(double %280)
%282 = tail call double @llvm.fmuladd.f64(double %281, double 4.860000e-04, double %278)
%283 = fmul double %95, 7.170000e-04
%284 = tail call double @llvm.fmuladd.f64(double %99, double -2.000000e+00, double %105)
%285 = tail call double @sin(double %284)
%286 = tail call double @llvm.fmuladd.f64(double %283, double %285, double %282)
%287 = fmul double %286, 0x400921FB54442D18
%288 = fdiv double %287, 1.800000e+02
%289 = fadd double %97, %288
store double %289, double* %1
%290 = tail call i32 (double*, double, ...) bitcast (i32 (...)* @range to i32 (double*, double, ...)*)(double* %1, double 0x401921FB54442D18)
%291 = tail call double @sin(double %103)
%292 = tail call double @sin(double %243)
%293 = fmul double %292, 2.806060e-01
%294 = tail call double @llvm.fmuladd.f64(double %291, double 5.128190e+00, double %293)
%295 = fsub double %105, %103
%296 = tail call double @sin(double %295)
%297 = tail call double @llvm.fmuladd.f64(double %296, double 2.776930e-01, double %294)
%298 = fneg double %103
%299 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %298)
%300 = tail call double @sin(double %299)
%301 = tail call double @llvm.fmuladd.f64(double %300, double 1.732380e-01, double %297)
%302 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %103)
%303 = fsub double %302, %105
%304 = tail call double @sin(double %303)
%305 = tail call double @llvm.fmuladd.f64(double %304, double 5.541300e-02, double %301)
%306 = fsub double %299, %105
%307 = tail call double @sin(double %306)
%308 = tail call double @llvm.fmuladd.f64(double %307, double 4.627200e-02, double %305)
%309 = tail call double @sin(double %302)
%310 = tail call double @llvm.fmuladd.f64(double %309, double 3.257300e-02, double %308)
%311 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %103)
%312 = tail call double @sin(double %311)
%313 = tail call double @llvm.fmuladd.f64(double %312, double 1.719800e-02, double %310)
%314 = fsub double %134, %103
%315 = tail call double @sin(double %314)
%316 = tail call double @llvm.fmuladd.f64(double %315, double 0x3F82FA93AF74CD31, double %313)
%317 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %298)
%318 = tail call double @sin(double %317)
%319 = tail call double @llvm.fmuladd.f64(double %318, double 0x3F8211CB039EF0F1, double %316)
%320 = fmul double %94, 8.247000e-03
%321 = fsub double %130, %103
%322 = tail call double @sin(double %321)
%323 = tail call double @llvm.fmuladd.f64(double %320, double %322, double %319)
%324 = tail call double @llvm.fmuladd.f64(double %124, double 2.000000e+00, double %298)
%325 = tail call double @sin(double %324)
%326 = tail call double @llvm.fmuladd.f64(double %325, double 4.323000e-03, double %323)
%327 = fadd double %105, %302
%328 = tail call double @sin(double %327)
%329 = tail call double @llvm.fmuladd.f64(double %328, double 4.200000e-03, double %326)
%330 = fmul double %94, 3.372000e-03
%331 = fsub double %103, %99
%332 = tail call double @llvm.fmuladd.f64(double %101, double -2.000000e+00, double %331)
%333 = tail call double @sin(double %332)
%334 = tail call double @llvm.fmuladd.f64(double %330, double %333, double %329)
%335 = fmul double %94, 2.472000e-03
%336 = fsub double %302, %99
%337 = fsub double %336, %105
%338 = tail call double @sin(double %337)
%339 = tail call double @llvm.fmuladd.f64(double %335, double %338, double %334)
%340 = fmul double %94, 2.222000e-03
%341 = tail call double @sin(double %336)
%342 = tail call double @llvm.fmuladd.f64(double %340, double %341, double %339)
%343 = fmul double %94, 2.072000e-03
%344 = fsub double %299, %99
%345 = fsub double %344, %105
%346 = tail call double @sin(double %345)
%347 = tail call double @llvm.fmuladd.f64(double %343, double %346, double %342)
%348 = fmul double %94, 1.877000e-03
%349 = fadd double %105, %331
%350 = tail call double @sin(double %349)
%351 = tail call double @llvm.fmuladd.f64(double %348, double %350, double %347)
%352 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %298)
%353 = fsub double %352, %105
%354 = tail call double @sin(double %353)
%355 = tail call double @llvm.fmuladd.f64(double %354, double 1.828000e-03, double %351)
%356 = fadd double %99, %103
%357 = tail call double @sin(double %356)
%358 = fmul double %94, -1.803000e-03
%359 = tail call double @llvm.fmuladd.f64(double %358, double %357, double %355)
%360 = fmul double %103, 3.000000e+00
%361 = tail call double @sin(double %360)
%362 = tail call double @llvm.fmuladd.f64(double %361, double -1.750000e-03, double %359)
%363 = fmul double %94, 1.570000e-03
%364 = fsub double %141, %103
%365 = tail call double @sin(double %364)
%366 = tail call double @llvm.fmuladd.f64(double %363, double %365, double %362)
%367 = tail call double @sin(double %205)
%368 = tail call double @llvm.fmuladd.f64(double %367, double -1.487000e-03, double %366)
%369 = fadd double %105, %356
%370 = tail call double @sin(double %369)
%371 = fmul double %94, -1.481000e-03
%372 = tail call double @llvm.fmuladd.f64(double %371, double %370, double %368)
%373 = fmul double %94, 1.417000e-03
%374 = fsub double %331, %105
%375 = tail call double @sin(double %374)
%376 = tail call double @llvm.fmuladd.f64(double %373, double %375, double %372)
%377 = fmul double %94, 1.350000e-03
%378 = tail call double @sin(double %331)
%379 = tail call double @llvm.fmuladd.f64(double %377, double %378, double %376)
%380 = fsub double %103, %101
%381 = tail call double @sin(double %380)
%382 = tail call double @llvm.fmuladd.f64(double %381, double 1.330000e-03, double %379)
%383 = tail call double @llvm.fmuladd.f64(double %105, double 3.000000e+00, double %103)
%384 = tail call double @sin(double %383)
%385 = tail call double @llvm.fmuladd.f64(double %384, double 1.106000e-03, double %382)
%386 = tail call double @sin(double %352)
%387 = tail call double @llvm.fmuladd.f64(double %386, double 1.020000e-03, double %385)
%388 = tail call double @llvm.fmuladd.f64(double %101, double 4.000000e+00, double %103)
%389 = fsub double %388, %105
%390 = tail call double @sin(double %389)
%391 = tail call double @llvm.fmuladd.f64(double %390, double 0x3F4B4BB5E0F7FCFC, double %387)
%392 = tail call double @llvm.fmuladd.f64(double %103, double -3.000000e+00, double %105)
%393 = tail call double @sin(double %392)
%394 = tail call double @llvm.fmuladd.f64(double %393, double 7.810000e-04, double %391)
%395 = tail call double @llvm.fmuladd.f64(double %105, double -2.000000e+00, double %388)
%396 = tail call double @sin(double %395)
%397 = tail call double @llvm.fmuladd.f64(double %396, double 6.700000e-04, double %394)
%398 = fneg double %360
%399 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %398)
%400 = tail call double @sin(double %399)
%401 = tail call double @llvm.fmuladd.f64(double %400, double 6.060000e-04, double %397)
%402 = tail call double @llvm.fmuladd.f64(double %193, double 2.000000e+00, double %298)
%403 = tail call double @sin(double %402)
%404 = tail call double @llvm.fmuladd.f64(double %403, double 5.970000e-04, double %401)
%405 = fmul double %94, 4.920000e-04
%406 = fsub double %134, %99
%407 = fsub double %406, %103
%408 = tail call double @sin(double %407)
%409 = tail call double @llvm.fmuladd.f64(double %405, double %408, double %404)
%410 = tail call double @llvm.fmuladd.f64(double %179, double 2.000000e+00, double %298)
%411 = tail call double @sin(double %410)
%412 = tail call double @llvm.fmuladd.f64(double %411, double 4.500000e-04, double %409)
%413 = tail call double @llvm.fmuladd.f64(double %105, double 3.000000e+00, double %298)
%414 = tail call double @sin(double %413)
%415 = tail call double @llvm.fmuladd.f64(double %414, double 4.390000e-04, double %412)
%416 = tail call double @llvm.fmuladd.f64(double %193, double 2.000000e+00, double %103)
%417 = tail call double @sin(double %416)
%418 = tail call double @llvm.fmuladd.f64(double %417, double 4.230000e-04, double %415)
%419 = tail call double @llvm.fmuladd.f64(double %105, double -3.000000e+00, double %299)
%420 = tail call double @sin(double %419)
%421 = tail call double @llvm.fmuladd.f64(double %420, double 4.220000e-04, double %418)
%422 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %356)
%423 = fsub double %422, %105
%424 = tail call double @sin(double %423)
%425 = fmul double %94, -3.670000e-04
%426 = tail call double @llvm.fmuladd.f64(double %425, double %424, double %421)
%427 = tail call double @sin(double %422)
%428 = fmul double %94, -3.530000e-04
%429 = tail call double @llvm.fmuladd.f64(double %428, double %427, double %426)
%430 = tail call double @sin(double %388)
%431 = tail call double @llvm.fmuladd.f64(double %430, double 3.310000e-04, double %429)
%432 = fmul double %94, 3.170000e-04
%433 = fadd double %105, %336
%434 = tail call double @sin(double %433)
%435 = tail call double @llvm.fmuladd.f64(double %432, double %434, double %431)
%436 = fmul double %95, 3.060000e-04
%437 = tail call double @llvm.fmuladd.f64(double %216, double 2.000000e+00, double %298)
%438 = tail call double @sin(double %437)
%439 = tail call double @llvm.fmuladd.f64(double %436, double %438, double %435)
%440 = tail call double @llvm.fmuladd.f64(double %103, double 3.000000e+00, double %105)
%441 = tail call double @sin(double %440)
%442 = tail call double @llvm.fmuladd.f64(double %441, double -2.830000e-04, double %439)
%443 = tail call double @cos(double %66)
%444 = fmul double %443, 4.664000e-04
%445 = tail call double @cos(double %77)
%446 = fmul double %445, 7.540000e-05
%447 = fmul double %442, 0x400921FB54442D18
%448 = fdiv double %447, 1.800000e+02
%449 = fsub double 1.000000e+00, %444
%450 = fsub double %449, %446
%451 = fmul double %448, %450
store double %451, double* %2
%452 = tail call double @cos(double %105)
%453 = tail call double @llvm.fmuladd.f64(double %452, double 5.181800e-02, double 9.507240e-01)
%454 = tail call double @cos(double %108)
%455 = tail call double @llvm.fmuladd.f64(double %454, double 0x3F8384FD2A62AA19, double %453)
%456 = tail call double @cos(double %112)
%457 = tail call double @llvm.fmuladd.f64(double %456, double 7.843000e-03, double %455)
%458 = tail call double @cos(double %115)
%459 = tail call double @llvm.fmuladd.f64(double %458, double 2.824000e-03, double %457)
%460 = tail call double @cos(double %134)
%461 = tail call double @llvm.fmuladd.f64(double %460, double 8.570000e-04, double %459)
%462 = fmul double %94, 5.330000e-04
%463 = tail call double @cos(double %130)
%464 = tail call double @llvm.fmuladd.f64(double %462, double %463, double %461)
%465 = fmul double %94, 4.010000e-04
%466 = fsub double %108, %99
%467 = tail call double @cos(double %466)
%468 = tail call double @llvm.fmuladd.f64(double %465, double %467, double %464)
%469 = fmul double %94, 3.200000e-04
%470 = tail call double @cos(double %141)
%471 = tail call double @llvm.fmuladd.f64(double %469, double %470, double %468)
%472 = tail call double @cos(double %101)
%473 = tail call double @llvm.fmuladd.f64(double %472, double -2.710000e-04, double %471)
%474 = tail call double @cos(double %146)
%475 = fmul double %94, -2.640000e-04
%476 = tail call double @llvm.fmuladd.f64(double %475, double %474, double %473)
%477 = tail call double @cos(double %157)
%478 = tail call double @llvm.fmuladd.f64(double %477, double -1.980000e-04, double %476)
%479 = tail call double @cos(double %163)
%480 = tail call double @llvm.fmuladd.f64(double %479, double 1.730000e-04, double %478)
%481 = tail call double @cos(double %160)
%482 = tail call double @llvm.fmuladd.f64(double %481, double 1.670000e-04, double %480)
%483 = tail call double @cos(double %99)
%484 = fmul double %94, -1.110000e-04
%485 = tail call double @llvm.fmuladd.f64(double %484, double %483, double %482)
%486 = tail call double @cos(double %167)
%487 = tail call double @llvm.fmuladd.f64(double %486, double 1.030000e-04, double %485)
%488 = fneg double %112
%489 = tail call double @llvm.fmuladd.f64(double %105, double 2.000000e+00, double %488)
%490 = tail call double @cos(double %489)
%491 = tail call double @llvm.fmuladd.f64(double %490, double -8.400000e-05, double %487)
%492 = tail call double @cos(double %175)
%493 = fmul double %94, -8.300000e-05
%494 = tail call double @llvm.fmuladd.f64(double %493, double %492, double %491)
%495 = tail call double @llvm.fmuladd.f64(double %101, double 2.000000e+00, double %115)
%496 = tail call double @cos(double %495)
%497 = tail call double @llvm.fmuladd.f64(double %496, double 0x3F14B599AA60913A, double %494)
%498 = tail call double @cos(double %186)
%499 = tail call double @llvm.fmuladd.f64(double %498, double 7.200000e-05, double %497)
%500 = fmul double %94, 6.400000e-05
%501 = fadd double %105, %130
%502 = tail call double @cos(double %501)
%503 = tail call double @llvm.fmuladd.f64(double %500, double %502, double %499)
%504 = fsub double %175, %105
%505 = tail call double @cos(double %504)
%506 = fmul double %94, -6.300000e-05
%507 = tail call double @llvm.fmuladd.f64(double %506, double %505, double %503)
%508 = fmul double %94, 4.100000e-05
%509 = tail call double @cos(double %183)
%510 = tail call double @llvm.fmuladd.f64(double %508, double %509, double %507)
%511 = fmul double %94, 3.500000e-05
%512 = tail call double @cos(double %202)
%513 = tail call double @llvm.fmuladd.f64(double %511, double %512, double %510)
%514 = tail call double @llvm.fmuladd.f64(double %105, double 3.000000e+00, double %488)
%515 = tail call double @cos(double %514)
%516 = tail call double @llvm.fmuladd.f64(double %515, double -3.300000e-05, double %513)
%517 = tail call double @cos(double %193)
%518 = tail call double @llvm.fmuladd.f64(double %517, double -3.000000e-05, double %516)
%519 = fmul double %380, 2.000000e+00
%520 = tail call double @cos(double %519)
%521 = tail call double @llvm.fmuladd.f64(double %520, double -2.900000e-05, double %518)
%522 = tail call double @cos(double %220)
%523 = fmul double %94, -2.900000e-05
%524 = tail call double @llvm.fmuladd.f64(double %523, double %522, double %521)
%525 = fmul double %95, 2.600000e-05
%526 = tail call double @cos(double %217)
%527 = tail call double @llvm.fmuladd.f64(double %525, double %526, double %524)
%528 = tail call double @llvm.fmuladd.f64(double %380, double 2.000000e+00, double %105)
%529 = tail call double @cos(double %528)
%530 = tail call double @llvm.fmuladd.f64(double %529, double -2.300000e-05, double %527)
%531 = fmul double %94, 1.900000e-05
%532 = tail call double @cos(double %240)
%533 = tail call double @llvm.fmuladd.f64(double %531, double %532, double %530)
%534 = fmul double %533, 0x400921FB54442D18
%535 = fdiv double %534, 1.800000e+02
store double %535, double* %3
store double %99, double* %4
store double %105, double* %5
ret void
}