double calculate_answer_precise(int terms, int term1, int term2, int term3,
                                int term4, char operand1, char operand2,
                                char operand3) {
  double answer = 0;
  if (terms == 2) {
    if (operand1 == '+') {
      answer = (double)term1 + (double)term2;
    } else if (operand1 == '-') {
      answer = (double)term1 - (double)term2;
    } else if (operand1 == '*') {
      answer = (double)term1 * (double)term2;
    } else if (operand1 == '/') {
      answer = (double)term1 / (double)term2;
    }
  } else if (terms == 3) {
    if (operand1 == '*') {
      if (operand2 == '*') {
        answer = (double)term1 * (double)term2 * (double)term3;
      } else if (operand2 == '/') {
        answer = (double)term1 * (double)term2 / (double)term3;
      } else if (operand2 == '+') {
        answer = (double)term1 * (double)term2 + (double)term3;
      } else {
        answer = (double)term1 * (double)term2 - (double)term3;
      }
    } else if (operand1 == '/') {
      if (operand2 == '*') {
        answer = (double)term1 / (double)term2 * (double)term3;
      } else if (operand2 == '/') {
        answer = (double)term1 / (double)term2 / (double)term3;
      } else if (operand2 == '+') {
        answer = (double)term1 / (double)term2 + (double)term3;
      } else {
        answer = (double)term1 / (double)term2 - (double)term3;
      }
    } else if (operand1 == '+') {
      if (operand2 == '*') {
        answer = (double)term1 + (double)term2 * (double)term3;
      } else if (operand2 == '/') {
        answer = (double)term1 + (double)term2 / (double)term3;
      } else if (operand2 == '+') {
        answer = (double)term1 + (double)term2 + (double)term3;
      } else {
        answer = (double)term1 + (double)term2 - (double)term3;
      }
    } else if (operand1 == '-') {
      if (operand2 == '*') {
        answer = (double)term1 - (double)term2 * (double)term3;
      } else if (operand2 == '/') {
        answer = (double)term1 - (double)term2 / (double)term3;
      } else if (operand2 == '+') {
        answer = (double)term1 - (double)term2 + (double)term3;
      } else {
        answer = (double)term1 - (double)term2 - (double)term3;
      }
    }
  } else if (terms == 4) {
    if (operand1 == '*') {
      if (operand2 == '*') {
        if (operand3 == '*') {
          answer =
              (double)term1 * (double)term2 * (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 * (double)term2 * (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 * (double)term2 * (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 * (double)term2 * (double)term3 - (double)term4;
        }
      } else if (operand2 == '/') {
        if (operand3 == '*') {
          answer =
              (double)term1 * (double)term2 / (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 * (double)term2 / (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 * (double)term2 / (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 * (double)term2 / (double)term3 - (double)term4;
        }
      } else if (operand2 == '+') {
        if (operand3 == '*') {
          answer =
              (double)term1 * (double)term2 + (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 * (double)term2 + (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 * (double)term2 + (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 * (double)term2 + (double)term3 - (double)term4;
        }
      } else if (operand2 == '-') {
        if (operand3 == '*') {
          answer =
              (double)term1 * (double)term2 - (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 * (double)term2 - (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 * (double)term2 - (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 * (double)term2 - (double)term3 - (double)term4;
        }
      }
    } else if (operand1 == '/') {
      if (operand2 == '*') {
        if (operand3 == '*') {
          answer =
              (double)term1 / (double)term2 * (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 / (double)term2 * (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 / (double)term2 * (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 / (double)term2 * (double)term3 - (double)term4;
        }
      } else if (operand2 == '/') {
        if (operand3 == '*') {
          answer =
              (double)term1 / (double)term2 / (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 / (double)term2 / (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 / (double)term2 / (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 / (double)term2 / (double)term3 - (double)term4;
        }
      } else if (operand2 == '+') {
        if (operand3 == '*') {
          answer =
              (double)term1 / (double)term2 + (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 / (double)term2 + (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 / (double)term2 + (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 / (double)term2 + (double)term3 - (double)term4;
        }
      } else if (operand2 == '-') {
        if (operand3 == '*') {
          answer =
              (double)term1 / (double)term2 - (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 / (double)term2 - (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 / (double)term2 - (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 / (double)term2 - (double)term3 - (double)term4;
        }
      }
    } else if (operand1 == '+') {
      if (operand2 == '*') {
        if (operand3 == '*') {
          answer =
              (double)term1 + (double)term2 * (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 + (double)term2 * (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 + (double)term2 * (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 + (double)term2 * (double)term3 - (double)term4;
        }
      } else if (operand2 == '/') {
        if (operand3 == '*') {
          answer =
              (double)term1 + (double)term2 / (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 + (double)term2 / (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 + (double)term2 / (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 + (double)term2 / (double)term3 - (double)term4;
        }
      } else if (operand2 == '+') {
        if (operand3 == '*') {
          answer =
              (double)term1 + (double)term2 + (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 + (double)term2 + (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 + (double)term2 + (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 + (double)term2 + (double)term3 - (double)term4;
        }
      } else if (operand2 == '-') {
        if (operand3 == '*') {
          answer =
              (double)term1 + (double)term2 - (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 + (double)term2 - (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 + (double)term2 - (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 + (double)term2 - (double)term3 - (double)term4;
        }
      }
    } else if (operand1 == '-') {
      if (operand2 == '*') {
        if (operand3 == '*') {
          answer =
              (double)term1 - (double)term2 * (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 - (double)term2 * (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 - (double)term2 * (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 - (double)term2 * (double)term3 - (double)term4;
        }
      } else if (operand2 == '/') {
        if (operand3 == '*') {
          answer =
              (double)term1 - (double)term2 / (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 - (double)term2 / (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 - (double)term2 / (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 - (double)term2 / (double)term3 - (double)term4;
        }
      } else if (operand2 == '+') {
        if (operand3 == '*') {
          answer =
              (double)term1 - (double)term2 + (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 - (double)term2 + (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 - (double)term2 + (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer = term1 - (double)term2 + (double)term3 - (double)term4;
        }
      } else if (operand2 == '-') {
        if (operand3 == '*') {
          answer =
              (double)term1 - (double)term2 - (double)term3 * (double)term4;
        } else if (operand3 == '/') {
          answer =
              (double)term1 - (double)term2 - (double)term3 / (double)term4;
        } else if (operand3 == '+') {
          answer =
              (double)term1 - (double)term2 - (double)term3 + (double)term4;
        } else if (operand3 == '-') {
          answer =
              (double)term1 - (double)term2 - (double)term3 - (double)term4;
        }
      }
    }
  }
  return answer;
}


x86 assembly (clang, -O0):
<calculate_answer_precise>:
push   %rbp
mov    %rsp,%rbp
mov    %r9b,%al
mov    0x18(%rbp),%r9b
mov    0x10(%rbp),%r9b
mov    %edi,-0x4(%rbp)
mov    %esi,-0x8(%rbp)
mov    %edx,-0xc(%rbp)
mov    %ecx,-0x10(%rbp)
mov    %r8d,-0x14(%rbp)
mov    %al,-0x15(%rbp)
xorps  %xmm0,%xmm0
movsd  %xmm0,-0x20(%rbp)
cmpl   $0x2,-0x4(%rbp)
jne    11d7 <calculate_answer_precise+0xd7>
movsbl -0x15(%rbp),%eax
cmp    $0x2b,%eax
jne    1159 <calculate_answer_precise+0x59>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    11d2 <calculate_answer_precise+0xd2>
movsbl -0x15(%rbp),%eax
cmp    $0x2d,%eax
jne    117e <calculate_answer_precise+0x7e>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    11cd <calculate_answer_precise+0xcd>
movsbl -0x15(%rbp),%eax
cmp    $0x2a,%eax
jne    11a3 <calculate_answer_precise+0xa3>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    11c8 <calculate_answer_precise+0xc8>
movsbl -0x15(%rbp),%eax
cmp    $0x2f,%eax
jne    11c3 <calculate_answer_precise+0xc3>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    11c8 <calculate_answer_precise+0xc8>
jmp    11cd <calculate_answer_precise+0xcd>
jmp    11d2 <calculate_answer_precise+0xd2>
jmp    2682 <calculate_answer_precise+0x1582>
cmpl   $0x3,-0x4(%rbp)
jne    152b <calculate_answer_precise+0x42b>
movsbl -0x15(%rbp),%eax
cmp    $0x2a,%eax
jne    12ba <calculate_answer_precise+0x1ba>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    121c <calculate_answer_precise+0x11c>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    12b5 <calculate_answer_precise+0x1b5>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    124a <calculate_answer_precise+0x14a>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    12b0 <calculate_answer_precise+0x1b0>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    1278 <calculate_answer_precise+0x178>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    12ab <calculate_answer_precise+0x1ab>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    12b0 <calculate_answer_precise+0x1b0>
jmp    12b5 <calculate_answer_precise+0x1b5>
jmp    1526 <calculate_answer_precise+0x426>
movsbl -0x15(%rbp),%eax
cmp    $0x2f,%eax
jne    137c <calculate_answer_precise+0x27c>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    12f5 <calculate_answer_precise+0x1f5>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1377 <calculate_answer_precise+0x277>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    1323 <calculate_answer_precise+0x223>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1372 <calculate_answer_precise+0x272>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    1351 <calculate_answer_precise+0x251>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    136d <calculate_answer_precise+0x26d>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1372 <calculate_answer_precise+0x272>
jmp    1377 <calculate_answer_precise+0x277>
jmp    1521 <calculate_answer_precise+0x421>
movsbl -0x15(%rbp),%eax
cmp    $0x2b,%eax
jne    143e <calculate_answer_precise+0x33e>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    13b7 <calculate_answer_precise+0x2b7>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1439 <calculate_answer_precise+0x339>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    13e5 <calculate_answer_precise+0x2e5>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1434 <calculate_answer_precise+0x334>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    1413 <calculate_answer_precise+0x313>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    142f <calculate_answer_precise+0x32f>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1434 <calculate_answer_precise+0x334>
jmp    1439 <calculate_answer_precise+0x339>
jmp    151c <calculate_answer_precise+0x41c>
movsbl -0x15(%rbp),%eax
cmp    $0x2d,%eax
jne    1517 <calculate_answer_precise+0x417>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    1490 <calculate_answer_precise+0x390>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1512 <calculate_answer_precise+0x412>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    14be <calculate_answer_precise+0x3be>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    150d <calculate_answer_precise+0x40d>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    14ec <calculate_answer_precise+0x3ec>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1508 <calculate_answer_precise+0x408>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    150d <calculate_answer_precise+0x40d>
jmp    1512 <calculate_answer_precise+0x412>
jmp    1517 <calculate_answer_precise+0x417>
jmp    151c <calculate_answer_precise+0x41c>
jmp    1521 <calculate_answer_precise+0x421>
jmp    1526 <calculate_answer_precise+0x426>
jmp    267d <calculate_answer_precise+0x157d>
cmpl   $0x4,-0x4(%rbp)
jne    2678 <calculate_answer_precise+0x1578>
movsbl -0x15(%rbp),%eax
cmp    $0x2a,%eax
jne    19a9 <calculate_answer_precise+0x8a9>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    1651 <calculate_answer_precise+0x551>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1586 <calculate_answer_precise+0x486>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    164c <calculate_answer_precise+0x54c>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    15bd <calculate_answer_precise+0x4bd>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1647 <calculate_answer_precise+0x547>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    15f4 <calculate_answer_precise+0x4f4>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1642 <calculate_answer_precise+0x542>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    163d <calculate_answer_precise+0x53d>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
cvtsi2sdl -0x14(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1642 <calculate_answer_precise+0x542>
jmp    1647 <calculate_answer_precise+0x547>
jmp    164c <calculate_answer_precise+0x54c>
jmp    19a4 <calculate_answer_precise+0x8a4>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    1749 <calculate_answer_precise+0x649>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1695 <calculate_answer_precise+0x595>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1744 <calculate_answer_precise+0x644>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    16cc <calculate_answer_precise+0x5cc>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    173f <calculate_answer_precise+0x63f>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1703 <calculate_answer_precise+0x603>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    173a <calculate_answer_precise+0x63a>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1735 <calculate_answer_precise+0x635>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    173a <calculate_answer_precise+0x63a>
jmp    173f <calculate_answer_precise+0x63f>
jmp    1744 <calculate_answer_precise+0x644>
jmp    199f <calculate_answer_precise+0x89f>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    1841 <calculate_answer_precise+0x741>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    178d <calculate_answer_precise+0x68d>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm3
mulsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    183c <calculate_answer_precise+0x73c>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    17c4 <calculate_answer_precise+0x6c4>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm3
divsd  %xmm3,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1837 <calculate_answer_precise+0x737>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    17fb <calculate_answer_precise+0x6fb>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1832 <calculate_answer_precise+0x732>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    182d <calculate_answer_precise+0x72d>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1832 <calculate_answer_precise+0x732>
jmp    1837 <calculate_answer_precise+0x737>
jmp    183c <calculate_answer_precise+0x73c>
jmp    199a <calculate_answer_precise+0x89a>
movsbl 0x10(%rbp),%eax
cmp    $0x2d,%eax
jne    1995 <calculate_answer_precise+0x895>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    189c <calculate_answer_precise+0x79c>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm3
mulsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1990 <calculate_answer_precise+0x890>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    18ea <calculate_answer_precise+0x7ea>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm3
divsd  %xmm3,%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    198b <calculate_answer_precise+0x88b>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1938 <calculate_answer_precise+0x838>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1986 <calculate_answer_precise+0x886>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1981 <calculate_answer_precise+0x881>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm2
cvtsi2sdl -0x10(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1986 <calculate_answer_precise+0x886>
jmp    198b <calculate_answer_precise+0x88b>
jmp    1990 <calculate_answer_precise+0x890>
jmp    1995 <calculate_answer_precise+0x895>
jmp    199a <calculate_answer_precise+0x89a>
jmp    199f <calculate_answer_precise+0x89f>
jmp    19a4 <calculate_answer_precise+0x8a4>
jmp    2673 <calculate_answer_precise+0x1573>
movsbl -0x15(%rbp),%eax
cmp    $0x2f,%eax
jne    1dd8 <calculate_answer_precise+0xcd8>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    1ac5 <calculate_answer_precise+0x9c5>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    19fa <calculate_answer_precise+0x8fa>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ac0 <calculate_answer_precise+0x9c0>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1a31 <calculate_answer_precise+0x931>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
mulsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1abb <calculate_answer_precise+0x9bb>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1a68 <calculate_answer_precise+0x968>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ab6 <calculate_answer_precise+0x9b6>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1ab1 <calculate_answer_precise+0x9b1>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
cvtsi2sdl -0x14(%rbp),%xmm1
movq   %xmm1,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm1
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ab6 <calculate_answer_precise+0x9b6>
jmp    1abb <calculate_answer_precise+0x9bb>
jmp    1ac0 <calculate_answer_precise+0x9c0>
jmp    1dd3 <calculate_answer_precise+0xcd3>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    1bbd <calculate_answer_precise+0xabd>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1b09 <calculate_answer_precise+0xa09>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
mulsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1bb8 <calculate_answer_precise+0xab8>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1b40 <calculate_answer_precise+0xa40>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
divsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1bb3 <calculate_answer_precise+0xab3>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1b77 <calculate_answer_precise+0xa77>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1bae <calculate_answer_precise+0xaae>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1ba9 <calculate_answer_precise+0xaa9>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1bae <calculate_answer_precise+0xaae>
jmp    1bb3 <calculate_answer_precise+0xab3>
jmp    1bb8 <calculate_answer_precise+0xab8>
jmp    1dce <calculate_answer_precise+0xcce>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    1cb5 <calculate_answer_precise+0xbb5>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1c01 <calculate_answer_precise+0xb01>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
divsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1cb0 <calculate_answer_precise+0xbb0>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1c38 <calculate_answer_precise+0xb38>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1cab <calculate_answer_precise+0xbab>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1c6f <calculate_answer_precise+0xb6f>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ca6 <calculate_answer_precise+0xba6>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1ca1 <calculate_answer_precise+0xba1>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ca6 <calculate_answer_precise+0xba6>
jmp    1cab <calculate_answer_precise+0xbab>
jmp    1cb0 <calculate_answer_precise+0xbb0>
jmp    1dc9 <calculate_answer_precise+0xcc9>
movsbl 0x10(%rbp),%eax
cmp    $0x2d,%eax
jne    1dc4 <calculate_answer_precise+0xcc4>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1d10 <calculate_answer_precise+0xc10>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
divsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1dbf <calculate_answer_precise+0xcbf>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1d47 <calculate_answer_precise+0xc47>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1dba <calculate_answer_precise+0xcba>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1d7e <calculate_answer_precise+0xc7e>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1db5 <calculate_answer_precise+0xcb5>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1db0 <calculate_answer_precise+0xcb0>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
divsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1db5 <calculate_answer_precise+0xcb5>
jmp    1dba <calculate_answer_precise+0xcba>
jmp    1dbf <calculate_answer_precise+0xcbf>
jmp    1dc4 <calculate_answer_precise+0xcc4>
jmp    1dc9 <calculate_answer_precise+0xcc9>
jmp    1dce <calculate_answer_precise+0xcce>
jmp    1dd3 <calculate_answer_precise+0xcd3>
jmp    266e <calculate_answer_precise+0x156e>
movsbl -0x15(%rbp),%eax
cmp    $0x2b,%eax
jne    21f0 <calculate_answer_precise+0x10f0>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    1edd <calculate_answer_precise+0xddd>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1e29 <calculate_answer_precise+0xd29>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ed8 <calculate_answer_precise+0xdd8>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1e60 <calculate_answer_precise+0xd60>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ed3 <calculate_answer_precise+0xdd3>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1e97 <calculate_answer_precise+0xd97>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ece <calculate_answer_precise+0xdce>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1ec9 <calculate_answer_precise+0xdc9>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1ece <calculate_answer_precise+0xdce>
jmp    1ed3 <calculate_answer_precise+0xdd3>
jmp    1ed8 <calculate_answer_precise+0xdd8>
jmp    21eb <calculate_answer_precise+0x10eb>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    1fd5 <calculate_answer_precise+0xed5>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    1f21 <calculate_answer_precise+0xe21>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1fd0 <calculate_answer_precise+0xed0>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    1f58 <calculate_answer_precise+0xe58>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1fcb <calculate_answer_precise+0xecb>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    1f8f <calculate_answer_precise+0xe8f>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1fc6 <calculate_answer_precise+0xec6>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    1fc1 <calculate_answer_precise+0xec1>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    1fc6 <calculate_answer_precise+0xec6>
jmp    1fcb <calculate_answer_precise+0xecb>
jmp    1fd0 <calculate_answer_precise+0xed0>
jmp    21e6 <calculate_answer_precise+0x10e6>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    20cd <calculate_answer_precise+0xfcd>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    2019 <calculate_answer_precise+0xf19>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
addsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    20c8 <calculate_answer_precise+0xfc8>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    2050 <calculate_answer_precise+0xf50>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    20c3 <calculate_answer_precise+0xfc3>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    2087 <calculate_answer_precise+0xf87>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    20be <calculate_answer_precise+0xfbe>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    20b9 <calculate_answer_precise+0xfb9>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    20be <calculate_answer_precise+0xfbe>
jmp    20c3 <calculate_answer_precise+0xfc3>
jmp    20c8 <calculate_answer_precise+0xfc8>
jmp    21e1 <calculate_answer_precise+0x10e1>
movsbl 0x10(%rbp),%eax
cmp    $0x2d,%eax
jne    21dc <calculate_answer_precise+0x10dc>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    2128 <calculate_answer_precise+0x1028>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
addsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    21d7 <calculate_answer_precise+0x10d7>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    215f <calculate_answer_precise+0x105f>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    21d2 <calculate_answer_precise+0x10d2>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    2196 <calculate_answer_precise+0x1096>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    21cd <calculate_answer_precise+0x10cd>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    21c8 <calculate_answer_precise+0x10c8>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    21cd <calculate_answer_precise+0x10cd>
jmp    21d2 <calculate_answer_precise+0x10d2>
jmp    21d7 <calculate_answer_precise+0x10d7>
jmp    21dc <calculate_answer_precise+0x10dc>
jmp    21e1 <calculate_answer_precise+0x10e1>
jmp    21e6 <calculate_answer_precise+0x10e6>
jmp    21eb <calculate_answer_precise+0x10eb>
jmp    2669 <calculate_answer_precise+0x1569>
movsbl -0x15(%rbp),%eax
cmp    $0x2d,%eax
jne    2664 <calculate_answer_precise+0x1564>
movsbl 0x10(%rbp),%eax
cmp    $0x2a,%eax
jne    233a <calculate_answer_precise+0x123a>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    2258 <calculate_answer_precise+0x1158>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2335 <calculate_answer_precise+0x1235>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    228f <calculate_answer_precise+0x118f>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
mulsd  %xmm2,%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2330 <calculate_answer_precise+0x1230>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    22dd <calculate_answer_precise+0x11dd>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    232b <calculate_answer_precise+0x122b>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    2326 <calculate_answer_precise+0x1226>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    232b <calculate_answer_precise+0x122b>
jmp    2330 <calculate_answer_precise+0x1230>
jmp    2335 <calculate_answer_precise+0x1235>
jmp    265f <calculate_answer_precise+0x155f>
movsbl 0x10(%rbp),%eax
cmp    $0x2f,%eax
jne    2449 <calculate_answer_precise+0x1349>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    2395 <calculate_answer_precise+0x1295>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2444 <calculate_answer_precise+0x1344>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    23cc <calculate_answer_precise+0x12cc>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    243f <calculate_answer_precise+0x133f>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    2403 <calculate_answer_precise+0x1303>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    243a <calculate_answer_precise+0x133a>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    2435 <calculate_answer_precise+0x1335>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
cvtsi2sdl -0x10(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    243a <calculate_answer_precise+0x133a>
jmp    243f <calculate_answer_precise+0x133f>
jmp    2444 <calculate_answer_precise+0x1344>
jmp    265a <calculate_answer_precise+0x155a>
movsbl 0x10(%rbp),%eax
cmp    $0x2b,%eax
jne    2541 <calculate_answer_precise+0x1441>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    248d <calculate_answer_precise+0x138d>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
subsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    253c <calculate_answer_precise+0x143c>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    24c4 <calculate_answer_precise+0x13c4>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2537 <calculate_answer_precise+0x1437>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    24fb <calculate_answer_precise+0x13fb>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2532 <calculate_answer_precise+0x1432>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    252d <calculate_answer_precise+0x142d>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
addsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2532 <calculate_answer_precise+0x1432>
jmp    2537 <calculate_answer_precise+0x1437>
jmp    253c <calculate_answer_precise+0x143c>
jmp    2655 <calculate_answer_precise+0x1555>
movsbl 0x10(%rbp),%eax
cmp    $0x2d,%eax
jne    2650 <calculate_answer_precise+0x1550>
movsbl 0x18(%rbp),%eax
cmp    $0x2a,%eax
jne    259c <calculate_answer_precise+0x149c>
cvtsi2sdl -0x8(%rbp),%xmm1
cvtsi2sdl -0xc(%rbp),%xmm0
subsd  %xmm0,%xmm1
cvtsi2sdl -0x10(%rbp),%xmm0
cvtsi2sdl -0x14(%rbp),%xmm2
movq   %xmm0,%rax
movabs $0x8000000000000000,%rcx
xor    %rcx,%rax
movq   %rax,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    264b <calculate_answer_precise+0x154b>
movsbl 0x18(%rbp),%eax
cmp    $0x2f,%eax
jne    25d3 <calculate_answer_precise+0x14d3>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
cvtsi2sdl -0x14(%rbp),%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2646 <calculate_answer_precise+0x1546>
movsbl 0x18(%rbp),%eax
cmp    $0x2b,%eax
jne    260a <calculate_answer_precise+0x150a>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
addsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2641 <calculate_answer_precise+0x1541>
movsbl 0x18(%rbp),%eax
cmp    $0x2d,%eax
jne    263c <calculate_answer_precise+0x153c>
cvtsi2sdl -0x8(%rbp),%xmm0
cvtsi2sdl -0xc(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x10(%rbp),%xmm1
subsd  %xmm1,%xmm0
cvtsi2sdl -0x14(%rbp),%xmm1
subsd  %xmm1,%xmm0
movsd  %xmm0,-0x20(%rbp)
jmp    2641 <calculate_answer_precise+0x1541>
jmp    2646 <calculate_answer_precise+0x1546>
jmp    264b <calculate_answer_precise+0x154b>
jmp    2650 <calculate_answer_precise+0x1550>
jmp    2655 <calculate_answer_precise+0x1555>
jmp    265a <calculate_answer_precise+0x155a>
jmp    265f <calculate_answer_precise+0x155f>
jmp    2664 <calculate_answer_precise+0x1564>
jmp    2669 <calculate_answer_precise+0x1569>
jmp    266e <calculate_answer_precise+0x156e>
jmp    2673 <calculate_answer_precise+0x1573>
jmp    2678 <calculate_answer_precise+0x1578>
jmp    267d <calculate_answer_precise+0x157d>
jmp    2682 <calculate_answer_precise+0x1582>
movsd  -0x20(%rbp),%xmm0
pop    %rbp
ret

x86 assembly (clang, -O2):
<calculate_answer_precise>:
xorpd  %xmm0,%xmm0
mov    0x8(%rsp),%al
cmp    $0x4,%edi
je     1151 <calculate_answer_precise+0x51>
cmp    $0x3,%edi
je     11db <calculate_answer_precise+0xdb>
cmp    $0x2,%edi
jne    1cbd <calculate_answer_precise+0xbbd>
add    $0xd6,%r9b
cmp    $0x5,%r9b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r9b,%eax
lea    0x10d8(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
ret
add    $0xd6,%r9b
cmp    $0x5,%r9b
ja     1cbd <calculate_answer_precise+0xbbd>
mov    0x10(%rsp),%r10b
movzbl %r9b,%edi
lea    0xe91(%rip),%r9
movslq (%r9,%rdi,4),%rdi
add    %r9,%rdi
jmp    *%rdi
add    $0xd6,%al
cmp    $0x5,%al
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %al,%eax
lea    0xff4(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x1032(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %r8d,%xmm0
mulsd  %xmm2,%xmm0
ret
add    $0xd6,%r9b
cmp    $0x5,%r9b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r9b,%edi
lea    0x1004(%rip),%r8
movslq (%r8,%rdi,4),%rdi
add    %r8,%rdi
jmp    *%rdi
cmp    $0x2f,%al
je     13fc <calculate_answer_precise+0x2fc>
cmp    $0x2b,%al
je     1410 <calculate_answer_precise+0x310>
cmp    $0x2a,%al
jne    1424 <calculate_answer_precise+0x324>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    13e0 <calculate_answer_precise+0x2e0>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
addsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
add    $0xd6,%al
cmp    $0x5,%al
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %al,%eax
lea    0xe33(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xe71(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
mulsd  %xmm0,%xmm2
jmp    1725 <calculate_answer_precise+0x625>
add    $0xd6,%al
cmp    $0x5,%al
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %al,%eax
lea    0xd64(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xda2(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtsi2sd %r8d,%xmm1
mulsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
ret
add    $0xd6,%al
cmp    $0x5,%al
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %al,%eax
lea    0xdf1(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xe2f(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
mulsd  %xmm0,%xmm1
jmp    17bb <calculate_answer_precise+0x6bb>
cmp    $0x2f,%al
je     143f <calculate_answer_precise+0x33f>
cmp    $0x2b,%al
je     1453 <calculate_answer_precise+0x353>
cvtsi2sd %esi,%xmm1
cmp    $0x2a,%al
jne    1464 <calculate_answer_precise+0x364>
cvtsi2sd %edx,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
jmp    172d <calculate_answer_precise+0x62d>
cmp    $0x2f,%al
je     147b <calculate_answer_precise+0x37b>
cmp    $0x2b,%al
je     1493 <calculate_answer_precise+0x393>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cmp    $0x2a,%al
jne    14a4 <calculate_answer_precise+0x3a4>
cvtsi2sd %ecx,%xmm2
jmp    1776 <calculate_answer_precise+0x676>
cmp    $0x2f,%al
je     14b4 <calculate_answer_precise+0x3b4>
cmp    $0x2b,%al
je     14cf <calculate_answer_precise+0x3cf>
cmp    $0x2a,%al
jne    14ea <calculate_answer_precise+0x3ea>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
jmp    14c3 <calculate_answer_precise+0x3c3>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    14de <calculate_answer_precise+0x3de>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
subsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
jmp    1afc <calculate_answer_precise+0x9fc>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
jmp    14de <calculate_answer_precise+0x3de>
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
addsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
subsd  %xmm0,%xmm1
jmp    14de <calculate_answer_precise+0x3de>
subsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
divsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
addsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xc92(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1721 <calculate_answer_precise+0x621>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xc44(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
jmp    1767 <calculate_answer_precise+0x667>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xc3e(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    17b0 <calculate_answer_precise+0x6b0>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xb00(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
jmp    1721 <calculate_answer_precise+0x621>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xab2(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
addsd  %xmm1,%xmm0
jmp    1767 <calculate_answer_precise+0x667>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xaac(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
cvtsi2sd %edx,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
divsd  %xmm0,%xmm2
jmp    1725 <calculate_answer_precise+0x625>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x9e2(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
subsd  %xmm0,%xmm1
jmp    1721 <calculate_answer_precise+0x621>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x994(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
subsd  %xmm1,%xmm0
jmp    1767 <calculate_answer_precise+0x667>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x98e(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm1
jmp    176e <calculate_answer_precise+0x66e>
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0xa2f(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
cvtsi2sd %ecx,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %r8d,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
ret
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x9d1(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
xorps  %xmm2,%xmm2
cvtsi2sd %r8d,%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm2,%xmm0
ret
add    $0xd6,%r10b
cmp    $0x5,%r10b
ja     1cbd <calculate_answer_precise+0xbbd>
movzbl %r10b,%eax
lea    0x9b8(%rip),%rdi
movslq (%rdi,%rax,4),%rax
add    %rdi,%rax
jmp    *%rax
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %r8d,%xmm0
mulsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
jmp    19f8 <calculate_answer_precise+0x8f8>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    18e6 <calculate_answer_precise+0x7e6>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    190d <calculate_answer_precise+0x80d>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
addsd  %xmm0,%xmm2
jmp    19f8 <calculate_answer_precise+0x8f8>
cvtsi2sd %esi,%xmm1
cvtsi2sd %edx,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
jmp    1cb1 <calculate_answer_precise+0xbb1>
cvtsi2sd %esi,%xmm1
cvtsi2sd %edx,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm2,%xmm0
jmp    1af4 <calculate_answer_precise+0x9f4>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
mulsd  %xmm0,%xmm2
subsd  %xmm2,%xmm1
jmp    1c8a <calculate_answer_precise+0xb8a>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
subsd  %xmm2,%xmm0
jmp    1cb1 <calculate_answer_precise+0xbb1>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
mulsd  %xmm1,%xmm2
xorps  %xmm1,%xmm1
cvtsi2sd %r8d,%xmm1
divsd  %xmm1,%xmm2
subsd  %xmm2,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1c8a <calculate_answer_precise+0xb8a>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %r8d,%xmm1
subsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
mulsd  %xmm1,%xmm0
jmp    1cd8 <calculate_answer_precise+0xbd8>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    19f0 <calculate_answer_precise+0x8f0>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1bc7 <calculate_answer_precise+0xac7>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1aed <calculate_answer_precise+0x9ed>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1c18 <calculate_answer_precise+0xb18>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
jmp    1c34 <calculate_answer_precise+0xb34>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
cvtsi2sd %r8d,%xmm2
divsd  %xmm2,%xmm1
subsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
mulsd  %xmm0,%xmm1
jmp    1c7f <calculate_answer_precise+0xb7f>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
jmp    1ca6 <calculate_answer_precise+0xba6>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
mulsd  %xmm1,%xmm0
jmp    1ccd <calculate_answer_precise+0xbcd>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
cvtsi2sd %ecx,%xmm2
addsd  %xmm1,%xmm2
xorps  %xmm0,%xmm0
cvtsi2sd %r8d,%xmm0
addsd  %xmm2,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
jmp    1bc7 <calculate_answer_precise+0xac7>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
jmp    1aed <calculate_answer_precise+0x9ed>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
addsd  %xmm0,%xmm1
jmp    1c18 <calculate_answer_precise+0xb18>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
addsd  %xmm1,%xmm0
jmp    1c34 <calculate_answer_precise+0xb34>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
addsd  %xmm1,%xmm0
jmp    1b3c <calculate_answer_precise+0xa3c>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm1
addsd  %xmm0,%xmm1
jmp    1c8a <calculate_answer_precise+0xb8a>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
jmp    1cb1 <calculate_answer_precise+0xbb1>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm0
jmp    1af4 <calculate_answer_precise+0x9f4>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
subsd  %xmm1,%xmm0
jmp    1ba8 <calculate_answer_precise+0xaa8>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
subsd  %xmm0,%xmm1
jmp    1bc7 <calculate_answer_precise+0xac7>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
subsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
xorps  %xmm2,%xmm2
cvtsi2sd %r8d,%xmm2
divsd  %xmm2,%xmm0
addsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
subsd  %xmm0,%xmm1
jmp    1c18 <calculate_answer_precise+0xb18>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
subsd  %xmm1,%xmm0
jmp    1c34 <calculate_answer_precise+0xb34>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
subsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
jmp    1b88 <calculate_answer_precise+0xa88>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm0
jmp    1c1f <calculate_answer_precise+0xb1f>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm1
jmp    1c3b <calculate_answer_precise+0xb3b>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
cvtsi2sd %ecx,%xmm2
divsd  %xmm2,%xmm1
xorps  %xmm2,%xmm2
cvtsi2sd %r8d,%xmm2
divsd  %xmm2,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
addsd  %xmm0,%xmm1
jmp    1c8a <calculate_answer_precise+0xb8a>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
addsd  %xmm1,%xmm0
jmp    1cb1 <calculate_answer_precise+0xbb1>
movd   %ecx,%xmm0
movd   %esi,%xmm1
punpckldq %xmm0,%xmm1
cvtdq2pd %xmm1,%xmm1
movd   %r8d,%xmm0
movd   %edx,%xmm2
punpckldq %xmm0,%xmm2
cvtdq2pd %xmm2,%xmm0
divpd  %xmm0,%xmm1
movapd %xmm1,%xmm0
unpckhpd %xmm1,%xmm0
addsd  %xmm1,%xmm0
ret
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
subsd  %xmm0,%xmm1
jmp    1c8a <calculate_answer_precise+0xb8a>
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
subsd  %xmm1,%xmm0
jmp    1cb1 <calculate_answer_precise+0xbb1>
movd   %ecx,%xmm0
movd   %esi,%xmm1
punpckldq %xmm0,%xmm1
cvtdq2pd %xmm1,%xmm0
movd   %r8d,%xmm1
movd   %edx,%xmm2
punpckldq %xmm1,%xmm2
cvtdq2pd %xmm2,%xmm1
divpd  %xmm1,%xmm0
movapd %xmm0,%xmm1
unpckhpd %xmm0,%xmm1
jmp    1cb9 <calculate_answer_precise+0xbb9>
cvtsi2sd %esi,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %edx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %ecx,%xmm0
divsd  %xmm0,%xmm1
xorps  %xmm0,%xmm0
cvtsi2sd %r8d,%xmm0
addsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %r8d,%xmm1
subsd  %xmm1,%xmm0
ret
xorps  %xmm0,%xmm0
cvtsi2sd %esi,%xmm0
cvtsi2sd %edx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %ecx,%xmm1
divsd  %xmm1,%xmm0
xorps  %xmm1,%xmm1
cvtsi2sd %r8d,%xmm1
divsd  %xmm1,%xmm0
ret

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

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