user: Please show me the C implementation that matches the assembly code listed below:

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  add    $0xffffffffffffff80,%rsp
  movsd  D295(%rip),%xmm0
  movsd  %xmm0,-0x78(%rbp)
  movsd  D147(%rip),%xmm0
  movsd  %xmm0,-0x70(%rbp)
  movsd  D785(%rip),%xmm0
  movsd  %xmm0,-0x68(%rbp)
  movsd  D868(%rip),%xmm0
  movsd  %xmm0,-0x60(%rbp)
  movsd  D219(%rip),%xmm0
  movsd  %xmm0,-0x58(%rbp)
  movsd  D592(%rip),%xmm0
  movsd  %xmm0,-0x50(%rbp)
  movsd  -0x78(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x48(%rbp)
  movsd  -0x70(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x40(%rbp)
  movsd  -0x68(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  -0x60(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  -0x28(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x28(%rbp)
  movsd  -0x48(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x40(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  addsd  -0x70(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D1110(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x70(%rbp),%rax
  movq   %rax,%xmm0
  lea    D745(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x40(%rbp),%rax
  movq   %rax,%xmm0
  lea    D866(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D976(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1012(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  movapd %xmm0,%xmm1
  subsd  -0x40(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  subsd  -0x70(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D32(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x70(%rbp),%rax
  movq   %rax,%xmm0
  lea    D527(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x40(%rbp),%rax
  movq   %rax,%xmm0
  lea    D701(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D761(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1123(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x40(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  mulsd  -0x70(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D554(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x70(%rbp),%rax
  movq   %rax,%xmm0
  lea    D527(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x40(%rbp),%rax
  movq   %rax,%xmm0
  lea    D701(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D777(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D151(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  movapd %xmm0,%xmm1
  divsd  -0x40(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  divsd  -0x70(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D148(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x70(%rbp),%rax
  movq   %rax,%xmm0
  lea    D527(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x40(%rbp),%rax
  movq   %rax,%xmm0
  lea    D701(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D904(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D186(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  movapd %xmm0,%xmm1
  subsd  -0x38(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  subsd  -0x68(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D90(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x68(%rbp),%rax
  movq   %rax,%xmm0
  lea    D47(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x38(%rbp),%rax
  movq   %rax,%xmm0
  lea    D757(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D420(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1104(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x38(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x30(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x68(%rbp),%xmm0
  addsd  -0x60(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D120(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x68(%rbp),%rax
  movq   %rax,%xmm0
  lea    D47(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x60(%rbp),%rax
  movq   %rax,%xmm0
  lea    D512(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x38(%rbp),%rax
  movq   %rax,%xmm0
  lea    D757(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x30(%rbp),%rax
  movq   %rax,%xmm0
  lea    D797(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D402(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D224(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  subsd  -0x38(%rbp),%xmm0
  movapd %xmm0,%xmm1
  divsd  -0x30(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  subsd  -0x68(%rbp),%xmm0
  divsd  -0x60(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D613(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x68(%rbp),%rax
  movq   %rax,%xmm0
  lea    D47(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x60(%rbp),%rax
  movq   %rax,%xmm0
  lea    D512(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x38(%rbp),%rax
  movq   %rax,%xmm0
  lea    D757(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x30(%rbp),%rax
  movq   %rax,%xmm0
  lea    D797(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D398(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D787(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  movsd  -0x48(%rbp),%xmm0
  subsd  -0x38(%rbp),%xmm0
  movapd %xmm0,%xmm1
  divsd  -0x28(%rbp),%xmm1
  movsd  D691(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movq   %xmm1,%rax
  movq   %rax,%xmm0
  call   <truncf@plt>
  pxor   %xmm1,%xmm1
  cvtsi2sd %eax,%xmm1
  movsd  D251(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0x78(%rbp),%xmm0
  subsd  -0x68(%rbp),%xmm0
  divsd  -0x58(%rbp),%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0x18(%rbp),%xmm0
  subsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x10(%rbp),%xmm0
  divsd  -0x18(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  lea    D1133(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  mov    -0x78(%rbp),%rax
  movq   %rax,%xmm0
  lea    D983(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x68(%rbp),%rax
  movq   %rax,%xmm0
  lea    D47(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x58(%rbp),%rax
  movq   %rax,%xmm0
  lea    D603(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x48(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1100(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x38(%rbp),%rax
  movq   %rax,%xmm0
  lea    D757(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x28(%rbp),%rax
  movq   %rax,%xmm0
  lea    D230(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x18(%rbp),%rax
  movq   %rax,%xmm0
  lea    D481(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x20(%rbp),%rax
  movq   %rax,%xmm0
  lea    D203(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x10(%rbp),%rax
  movq   %rax,%xmm0
  lea    D1120(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  mov    -0x8(%rbp),%rax
  movq   %rax,%xmm0
  lea    D22(%rip),%rax
  mov    %rax,%rdi
  mov    $0x1,%eax
  call   <printf@plt>
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  call   <puts@plt>
  nop
  leave
  ret
```

tool_calls: name: disassemble_data
arguments: tag: D295
type_infered: f64
name: disassemble_data
arguments: tag: D147
type_infered: f64
name: disassemble_data
arguments: tag: D785
type_infered: f64
name: disassemble_data
arguments: tag: D868
type_infered: f64
name: disassemble_data
arguments: tag: D219
type_infered: byte[8]
name: disassemble_data
arguments: tag: D592
type_infered: byte[8]
name: disassemble_data
arguments: tag: D691
type_infered: f64
name: disassemble_data
arguments: tag: D251
type_infered: byte[8]
name: disassemble_data
arguments: tag: D1110
type_infered: string
name: disassemble_data
arguments: tag: D983
type_infered: string
name: disassemble_data
arguments: tag: D745
type_infered: string
name: disassemble_data
arguments: tag: D1100
type_infered: string
name: disassemble_data
arguments: tag: D866
type_infered: string
name: disassemble_data
arguments: tag: D976
type_infered: string
name: disassemble_data
arguments: tag: D1012
type_infered: string
name: disassemble_data
arguments: tag: D1120
type_infered: string
name: disassemble_data
arguments: tag: D22
type_infered: string
name: disassemble_data
arguments: tag: D559
type_infered: string
name: disassemble_data
arguments: tag: D32
type_infered: string
name: disassemble_data
arguments: tag: D527
type_infered: string
name: disassemble_data
arguments: tag: D701
type_infered: string
name: disassemble_data
arguments: tag: D761
type_infered: string
name: disassemble_data
arguments: tag: D1123
type_infered: string
name: disassemble_data
arguments: tag: D554
type_infered: string
name: disassemble_data
arguments: tag: D777
type_infered: string
name: disassemble_data
arguments: tag: D151
type_infered: string
name: disassemble_data
arguments: tag: D148
type_infered: string
name: disassemble_data
arguments: tag: D904
type_infered: string
name: disassemble_data
arguments: tag: D186
type_infered: string
name: disassemble_data
arguments: tag: D90
type_infered: string
name: disassemble_data
arguments: tag: D47
type_infered: string
name: disassemble_data
arguments: tag: D757
type_infered: string
name: disassemble_data
arguments: tag: D420
type_infered: string
name: disassemble_data
arguments: tag: D1104
type_infered: string
name: disassemble_data
arguments: tag: D120
type_infered: string
name: disassemble_data
arguments: tag: D512
type_infered: string
name: disassemble_data
arguments: tag: D797
type_infered: string
name: disassemble_data
arguments: tag: D402
type_infered: string
name: disassemble_data
arguments: tag: D224
type_infered: string
name: disassemble_data
arguments: tag: D613
type_infered: string
name: disassemble_data
arguments: tag: D398
type_infered: string
name: disassemble_data
arguments: tag: D787
type_infered: string
name: disassemble_data
arguments: tag: D1133
type_infered: string
name: disassemble_data
arguments: tag: D603
type_infered: string
name: disassemble_data
arguments: tag: D230
type_infered: string
name: disassemble_data
arguments: tag: D481
type_infered: string
name: disassemble_data
arguments: tag: D203
type_infered: string

tool: D295: 0.71428571

tool: D147: 0.33333333

tool: D785: 0.714251

tool: D868: 98765.9

tool: {"D219": [0x46,0x5a,0xb7,0xf4,0x39,0x4d,0xe7,0x3e]}

tool: {"D592": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xc0]}

tool: D691: 100000

tool: {"D251": [0xf1,0x68,0xe3,0x88,0xb5,0xf8,0xe4,0x3e]}

tool: D1110: Ejercicio x+y--

tool: D983: Valor x_8: %0.7f


tool: D745: Valor y_8:: %0.7f


tool: D1100: Valor x_5: %0.5f


tool: D866: Valor y_5:: %0.5f


tool: D976: Valor a ocho de x+y: %0.7f


tool: D1012: Valor arit maquina de x+y: %0.5f


tool: D1120: ErrA: %0.7f


tool: D22: ErrR: %0.7f


tool: D559: Fin---

tool: D32: Ejercicio x-y--

tool: D527: Valor y_8: %0.7f


tool: D701: Valor y_5: %0.5f


tool: D761: Valor a ocho de x-y: %0.7f


tool: D1123: Valor arit maquina de x-y: %0.5f


tool: D554: Ejercicio x*y--

tool: D777: Valor a ocho de x*y: %0.7f


tool: D151: Valor arit maquina de x*y: %0.5f


tool: D148: Ejercicio x/y--

tool: D904: Valor a ocho de x/y: %0.7f


tool: D186: Valor arit maquina de x/y: %0.5f


tool: D90: Ejercicio x-u--

tool: D47: Valor u_8: %0.7f


tool: D757: Valor u_5: %0.5f


tool: D420: Valor a ocho de x-u: %0.7f


tool: D1104: Valor arit maquina de x-u: %0.5f


tool: D120: Ejercicio u+v --

tool: D512: Valor v_8: %0.7f


tool: D797: Valor v_5: %0.5f


tool: D402: Valor a ocho de u+v: %0.7f


tool: D224: Valor arit maquina de u+v: %0.5f


tool: D613: Ejercicio x-u/v --

tool: D398: Valor a ocho de x-u/v: %0.7f


tool: D787: Valor arit maquina de x-u/v: %0.5f


tool: D1133: Ejercicio x-u/w --

tool: D603: Valor w_8: %0.7f


tool: D230: Valor w_5: %0.5f


tool: D481: Valor a ocho de x-u/w: %0.7f


tool: D203: Valor arit maquina de x-u/w: %0.5f


assistant: ```c
void main() {
  double x_8 = 0.71428571;
  double y_8 = 0.33333333;
  double u_8 = 0.71425100;
  double v_8 = 98765.900;
  double w_8 = 0.111111e-4;
  double x_5;
  double y_5;
  double u_5;
  double v_5;
  double w_5;
  double variable_double = -3.0;
  double valmaq, valocho, ErrA, ErrR;
  x_5 = truncf(x_8 * 1e5) * 1e-5;
  y_5 = truncf(y_8 * 1e5) * 1e-5;
  u_5 = truncf(u_8 * 1e5) * 1e-5;
  v_5 = truncf(v_8 * 1e5) * 1e-5;
  w_5 = truncf(w_5 * 1e5) * 1e-5;
  valmaq = truncf((x_5 + y_5) * 1e5) * 1e-5;
  valocho = x_8 + y_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x+y--\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor y_8:: %0.7f\n", y_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor y_5:: %0.5f\n", y_5);
  printf("Valor a ocho de x+y: %0.7f\n", valocho);
  printf("Valor arit maquina de x+y: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf((x_5 - y_5) * 1e5) * 1e-5;
  valocho = x_8 - y_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x-y--\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor y_8: %0.7f\n", y_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor y_5: %0.5f\n", y_5);
  printf("Valor a ocho de x-y: %0.7f\n", valocho);
  printf("Valor arit maquina de x-y: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf((x_5 * y_5) * 1e5) * 1e-5;
  valocho = x_8 * y_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x*y--\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor y_8: %0.7f\n", y_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor y_5: %0.5f\n", y_5);
  printf("Valor a ocho de x*y: %0.7f\n", valocho);
  printf("Valor arit maquina de x*y: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf((x_5 / y_5) * 1e5) * 1e-5;
  valocho = x_8 / y_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x/y--\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor y_8: %0.7f\n", y_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor y_5: %0.5f\n", y_5);
  printf("Valor a ocho de x/y: %0.7f\n", valocho);
  printf("Valor arit maquina de x/y: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf((x_5 - u_5) * 1e5) * 1e-5;
  valocho = x_8 - u_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x-u--\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor u_8: %0.7f\n", u_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor u_5: %0.5f\n", u_5);
  printf("Valor a ocho de x-u: %0.7f\n", valocho);
  printf("Valor arit maquina de x-u: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf((u_5 + v_5) * 1e5) * 1e-5;
  valocho = u_8 + v_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio u+v --\n");
  printf("Valor u_8: %0.7f\n", u_8);
  printf("Valor v_8: %0.7f\n", v_8);
  printf("Valor u_5: %0.5f\n", u_5);
  printf("Valor v_5: %0.5f\n", v_5);
  printf("Valor a ocho de u+v: %0.7f\n", valocho);
  printf("Valor arit maquina de u+v: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf(((x_5 - u_5) / v_5) * 1e5) * 1e-5;
  valocho = (x_8 - u_8) / v_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x-u/v --\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor u_8: %0.7f\n", u_8);
  printf("Valor v_8: %0.7f\n", v_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor u_5: %0.5f\n", u_5);
  printf("Valor v_5: %0.5f\n", v_5);
  printf("Valor a ocho de x-u/v: %0.7f\n", valocho);
  printf("Valor arit maquina de x-u/v: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
  valmaq = truncf(((x_5 - u_5) / w_5) * 1e5) * 1e-5;
  valocho = (x_8 - u_8) / w_8;
  ErrA = valocho - valmaq;
  ErrR = ErrA / valocho;
  printf("Ejercicio x-u/w --\n");
  printf("Valor x_8: %0.7f\n", x_8);
  printf("Valor u_8: %0.7f\n", u_8);
  printf("Valor w_8: %0.7f\n", w_8);
  printf("Valor x_5: %0.5f\n", x_5);
  printf("Valor u_5: %0.5f\n", u_5);
  printf("Valor w_5: %0.5f\n", w_5);
  printf("Valor a ocho de x-u/w: %0.7f\n", valocho);
  printf("Valor arit maquina de x-u/w: %0.5f\n", valmaq);
  printf("ErrA: %0.7f\n", ErrA);
  printf("ErrR: %0.7f\n", ErrR);
  printf("Fin---\n");
}
```