user: 请从给定的汇编指令推导出C源代码：

```asm
<calculate_answer_precise>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %edi,-0x14(%rbp)
  mov    %esi,-0x18(%rbp)
  mov    %edx,-0x1c(%rbp)
  mov    %ecx,-0x20(%rbp)
  mov    %r8d,-0x24(%rbp)
  mov    %r9d,%ecx
  mov    0x10(%rbp),%edx
  mov    0x18(%rbp),%eax
  mov    %cl,-0x28(%rbp)
  mov    %dl,-0x2c(%rbp)
  mov    %al,-0x30(%rbp)
  pxor   %xmm0,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  cmpl   $0x2,-0x14(%rbp)
  jne    L1335
  cmpb   $0x2b,-0x28(%rbp)
  jne    L82
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L82:
  cmpb   $0x2d,-0x28(%rbp)
  jne    L941
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L941:
  cmpb   $0x2a,-0x28(%rbp)
  jne    L1363
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1363:
  cmpb   $0x2f,-0x28(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1335:
  cmpl   $0x3,-0x14(%rbp)
  jne    L49
  cmpb   $0x2a,-0x28(%rbp)
  jne    L367
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L70
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L70:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L303
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L303:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L538
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L538:
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L367:
  cmpb   $0x2f,-0x28(%rbp)
  jne    L796
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L160
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L160:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L934
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L934:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L617
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L617:
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L796:
  cmpb   $0x2b,-0x28(%rbp)
  jne    L1834
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L1859
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1859:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L738
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L738:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L1004
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1004:
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1834:
  cmpb   $0x2d,-0x28(%rbp)
  jne    L1
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L287
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L287:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L1052
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1052:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L610
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L610:
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L49:
  cmpl   $0x4,-0x14(%rbp)
  jne    L1
  cmpb   $0x2a,-0x28(%rbp)
  jne    L1550
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L1829
  cmpb   $0x2a,-0x30(%rbp)
  jne    L764
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L764:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1286
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1286:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L338
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L338:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1829:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L1285
  cmpb   $0x2a,-0x30(%rbp)
  jne    L575
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L575:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L642
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L642:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L425
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L425:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1285:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L604
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1639
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1639:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1564
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1564:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1717
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1717:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L604:
  cmpb   $0x2d,-0x2c(%rbp)
  jne    L1
  cmpb   $0x2a,-0x30(%rbp)
  jne    L427
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L427:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1687
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1687:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1396
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1396:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1550:
  cmpb   $0x2f,-0x28(%rbp)
  jne    L1236
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L500
  cmpb   $0x2a,-0x30(%rbp)
  jne    L164
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L164:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1272
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1272:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L868
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L868:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L500:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L207
  cmpb   $0x2a,-0x30(%rbp)
  jne    L494
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L494:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1319
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1319:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L222
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L222:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L207:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L1652
  cmpb   $0x2a,-0x30(%rbp)
  jne    L296
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L296:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1888
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1888:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1455
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1455:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1652:
  cmpb   $0x2d,-0x2c(%rbp)
  jne    L1
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1067
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1067:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1113
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1113:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1035
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1035:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1236:
  cmpb   $0x2b,-0x28(%rbp)
  jne    L277
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L398
  cmpb   $0x2a,-0x30(%rbp)
  jne    L693
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm0,%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L693:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1584
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1584:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L937
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L937:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L398:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L636
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1046
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  pxor   %xmm3,%xmm3
  cvtsi2sdl -0x20(%rbp),%xmm3
  movapd %xmm0,%xmm2
  divsd  %xmm3,%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1046:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L429
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L429:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1161
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1161:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L636:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L176
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1398
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1398:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L903
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L903:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1557
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1557:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L176:
  cmpb   $0x2d,-0x2c(%rbp)
  jne    L1
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1488
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1488:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1818
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1818:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1610
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1610:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x18(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x1c(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L277:
  cmpb   $0x2d,-0x28(%rbp)
  jne    L1
  cmpb   $0x2a,-0x2c(%rbp)
  jne    L1279
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1119
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  mulsd  %xmm1,%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1119:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1248
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1248:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L104
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  mulsd  %xmm1,%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L104:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1279:
  cmpb   $0x2f,-0x2c(%rbp)
  jne    L1290
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1329
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  pxor   %xmm3,%xmm3
  cvtsi2sdl -0x20(%rbp),%xmm3
  movapd %xmm1,%xmm2
  divsd  %xmm3,%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1329:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L559
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L559:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L809
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  pxor   %xmm3,%xmm3
  cvtsi2sdl -0x20(%rbp),%xmm3
  movapd %xmm1,%xmm2
  divsd  %xmm3,%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L809:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1290:
  cmpb   $0x2b,-0x2c(%rbp)
  jne    L920
  cmpb   $0x2a,-0x30(%rbp)
  jne    L1825
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1825:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1066
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1066:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1525
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1525:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x1c(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x20(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L920:
  cmpb   $0x2d,-0x2c(%rbp)
  jne    L1
  cmpb   $0x2a,-0x30(%rbp)
  jne    L804
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L804:
  cmpb   $0x2f,-0x30(%rbp)
  jne    L1405
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x24(%rbp),%xmm2
  divsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1405:
  cmpb   $0x2b,-0x30(%rbp)
  jne    L1166
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm2,%xmm2
  cvtsi2sdl -0x20(%rbp),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x24(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  jmp    L1
L1166:
  cmpb   $0x2d,-0x30(%rbp)
  jne    L1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x1c(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x20(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x24(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
L1:
  movsd  -0x8(%rbp),%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  pop    %rbp
  ret
```

assistant: ```c
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;
}
```