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

```asm
<HO_99>:
  endbr64
  push   %r15
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  sub    $0x2e8,%rsp
  movsd  %xmm1,(%rsp)
  movsd  D1069(%rip),%xmm1
  movsd  %xmm0,0x8(%rsp)
  call   <pow@plt>
  movsd  D913(%rip),%xmm1
  movq   %xmm0,%rbx
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D135(%rip),%xmm1
  movq   %xmm0,%r14
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D768(%rip),%xmm15
  movsd  %xmm0,0x10(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm15,%xmm1
  call   <pow@plt>
  movsd  D1385(%rip),%xmm1
  movq   %xmm0,%r15
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D548(%rip),%xmm1
  movsd  %xmm0,0x18(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D482(%rip),%xmm1
  movq   %xmm0,%rbp
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D1419(%rip),%xmm14
  movsd  %xmm0,0x20(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm14,%xmm1
  call   <pow@plt>
  movsd  D1506(%rip),%xmm1
  movq   %xmm0,%r12
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D413(%rip),%xmm1
  movsd  %xmm0,0x28(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1364(%rip),%xmm1
  movq   %xmm0,%r13
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D398(%rip),%xmm13
  movsd  %xmm0,0x30(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm13,%xmm1
  call   <pow@plt>
  movsd  D30(%rip),%xmm1
  movsd  %xmm0,0x2d8(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D841(%rip),%xmm1
  movsd  %xmm0,0x38(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1493(%rip),%xmm1
  movsd  %xmm0,0x40(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D415(%rip),%xmm12
  movsd  %xmm0,0x48(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm12,%xmm1
  call   <pow@plt>
  movsd  D745(%rip),%xmm1
  movsd  %xmm0,0x50(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D888(%rip),%xmm1
  movsd  %xmm0,0x58(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1459(%rip),%xmm1
  movsd  %xmm0,0x60(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D951(%rip),%xmm11
  movsd  %xmm0,0x68(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm11,%xmm1
  call   <pow@plt>
  movsd  D711(%rip),%xmm1
  movsd  %xmm0,0x70(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D773(%rip),%xmm1
  movsd  %xmm0,0x78(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1505(%rip),%xmm1
  movsd  %xmm0,0x80(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D179(%rip),%xmm10
  movsd  %xmm0,0x88(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm10,%xmm1
  call   <pow@plt>
  movsd  D1376(%rip),%xmm1
  movsd  %xmm0,0x90(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D483(%rip),%xmm1
  movsd  %xmm0,0x98(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D156(%rip),%xmm1
  movsd  %xmm0,0xa0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D509(%rip),%xmm9
  movsd  %xmm0,0xa8(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm9,%xmm1
  call   <pow@plt>
  movsd  D508(%rip),%xmm1
  movsd  %xmm0,0xb0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D946(%rip),%xmm1
  movsd  %xmm0,0xb8(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D513(%rip),%xmm1
  movsd  %xmm0,0xc0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D760(%rip),%xmm8
  movsd  %xmm0,0xc8(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm8,%xmm1
  call   <pow@plt>
  movsd  D963(%rip),%xmm1
  movsd  %xmm0,0xd0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D832(%rip),%xmm1
  movsd  %xmm0,0xd8(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1044(%rip),%xmm1
  movsd  %xmm0,0xe0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D661(%rip),%xmm7
  movsd  %xmm0,0xe8(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm7,%xmm1
  call   <pow@plt>
  movsd  D183(%rip),%xmm1
  movsd  %xmm0,0xf0(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D855(%rip),%xmm1
  movsd  %xmm0,0xf8(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D342(%rip),%xmm1
  movsd  %xmm0,0x100(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D411(%rip),%xmm6
  movsd  %xmm0,0x108(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm6,%xmm1
  call   <pow@plt>
  movsd  D208(%rip),%xmm1
  movsd  %xmm0,0x110(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D762(%rip),%xmm1
  movsd  %xmm0,0x118(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D652(%rip),%xmm1
  movsd  %xmm0,0x120(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D361(%rip),%xmm5
  movsd  %xmm0,0x128(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm5,%xmm1
  call   <pow@plt>
  movsd  D933(%rip),%xmm1
  movsd  %xmm0,0x130(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D1090(%rip),%xmm1
  movsd  %xmm0,0x138(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D167(%rip),%xmm1
  movsd  %xmm0,0x140(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D774(%rip),%xmm4
  movsd  %xmm0,0x148(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm4,%xmm1
  call   <pow@plt>
  movsd  D71(%rip),%xmm1
  movsd  %xmm0,0x150(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D233(%rip),%xmm1
  movsd  %xmm0,0x158(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  D1247(%rip),%xmm1
  movsd  %xmm0,0x160(%rsp)
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  D1458(%rip),%xmm3
  movsd  %xmm0,0x168(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm3,%xmm1
  call   <pow@plt>
  mov    D768(%rip),%rax
  movsd  %xmm0,0x170(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D828(%rip),%xmm1
  movsd  %xmm0,0x178(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D1419(%rip),%rax
  movsd  %xmm0,0x2d0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1472(%rip),%xmm14
  movsd  %xmm0,0x180(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm14,%xmm1
  call   <pow@plt>
  mov    D398(%rip),%rax
  movsd  %xmm0,0x188(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1446(%rip),%xmm1
  movsd  %xmm0,0x190(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D415(%rip),%rax
  movsd  %xmm0,0x2c8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1077(%rip),%xmm12
  movsd  %xmm0,0x198(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm12,%xmm1
  call   <pow@plt>
  mov    D951(%rip),%rax
  movsd  %xmm0,0x1a0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D934(%rip),%xmm1
  movsd  %xmm0,0x1a8(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D179(%rip),%rax
  movsd  %xmm0,0x2c0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D168(%rip),%xmm10
  movsd  %xmm0,0x1b0(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm10,%xmm1
  call   <pow@plt>
  mov    D509(%rip),%rax
  movsd  %xmm0,0x1b8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1127(%rip),%xmm1
  movsd  %xmm0,0x1c0(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D760(%rip),%rax
  movsd  %xmm0,0x2b8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D630(%rip),%xmm8
  movsd  %xmm0,0x1c8(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm8,%xmm1
  call   <pow@plt>
  mov    D661(%rip),%rax
  movsd  %xmm0,0x1d0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1013(%rip),%xmm1
  movsd  %xmm0,0x1d8(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D411(%rip),%rax
  movsd  %xmm0,0x2b0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D638(%rip),%xmm6
  movsd  %xmm0,0x1e0(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm6,%xmm1
  call   <pow@plt>
  mov    D361(%rip),%rax
  movsd  %xmm0,0x1e8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D464(%rip),%xmm1
  movsd  %xmm0,0x1f0(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D774(%rip),%rax
  movsd  %xmm0,0x1f8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D748(%rip),%xmm4
  movsd  %xmm0,0x200(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm4,%xmm1
  call   <pow@plt>
  mov    D1458(%rip),%rax
  movsd  %xmm0,0x208(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D701(%rip),%xmm1
  movsd  %xmm0,0x210(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D1472(%rip),%rax
  movsd  %xmm0,0x218(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D316(%rip),%xmm3
  movsd  %xmm0,0x220(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm3,%xmm1
  call   <pow@plt>
  mov    D1077(%rip),%rax
  movsd  %xmm0,0x2a8(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D262(%rip),%xmm1
  movsd  %xmm0,0x228(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D168(%rip),%rax
  movsd  %xmm0,0x2a0(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D694(%rip),%xmm5
  movsd  %xmm0,0x230(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm5,%xmm1
  call   <pow@plt>
  mov    D630(%rip),%rax
  movsd  %xmm0,0x298(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D1461(%rip),%xmm1
  movsd  %xmm0,0x238(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D638(%rip),%rax
  movsd  %xmm0,0x290(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D758(%rip),%xmm6
  movsd  %xmm0,0x240(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm6,%xmm1
  call   <pow@plt>
  mov    D748(%rip),%rax
  movsd  %xmm0,0x248(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D914(%rip),%xmm1
  movsd  %xmm0,0x250(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D316(%rip),%rax
  movsd  %xmm0,0x288(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D823(%rip),%xmm3
  movsd  %xmm0,0x258(%rsp)
  movsd  0x8(%rsp),%xmm0
  movapd %xmm3,%xmm1
  call   <pow@plt>
  mov    D694(%rip),%rax
  movsd  %xmm0,0x260(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  D820(%rip),%xmm1
  movsd  %xmm0,0x268(%rsp)
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  mov    D758(%rip),%rax
  movsd  %xmm0,0x280(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  mov    D823(%rip),%rax
  movsd  %xmm0,0x270(%rsp)
  movsd  (%rsp),%xmm0
  movq   %rax,%xmm1
  call   <pow@plt>
  movsd  0x8(%rsp),%xmm6
  movsd  (%rsp),%xmm4
  xorpd  D1322(%rip),%xmm6
  movsd  %xmm0,0x278(%rsp)
  movapd %xmm6,%xmm0
  mulsd  %xmm4,%xmm0
  mulsd  %xmm4,%xmm0
  mulsd  D1301(%rip),%xmm0
  call   <exp@plt>
  movq   %r14,%xmm1
  movq   %r15,%xmm3
  movsd  0x2d8(%rsp),%xmm2
  mulsd  D1021(%rip),%xmm1
  mulsd  D1476(%rip),%xmm3
  mulsd  0x18(%rsp),%xmm3
  mulsd  0x10(%rsp),%xmm1
  mulsd  D1166(%rip),%xmm2
  mulsd  0x38(%rsp),%xmm2
  subsd  %xmm3,%xmm1
  movq   %rbp,%xmm3
  mulsd  D505(%rip),%xmm3
  mulsd  0x20(%rsp),%xmm3
  addsd  %xmm3,%xmm1
  movq   %r12,%xmm3
  mulsd  D891(%rip),%xmm3
  mulsd  0x28(%rsp),%xmm3
  subsd  %xmm3,%xmm1
  movq   %r13,%xmm3
  mulsd  D444(%rip),%xmm3
  mulsd  0x30(%rsp),%xmm3
  addsd  %xmm3,%xmm1
  subsd  %xmm2,%xmm1
  movsd  0x40(%rsp),%xmm2
  mulsd  D761(%rip),%xmm2
  mulsd  0x48(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x50(%rsp),%xmm2
  mulsd  D1183(%rip),%xmm2
  mulsd  0x58(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x60(%rsp),%xmm2
  mulsd  D1294(%rip),%xmm2
  mulsd  0x68(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x70(%rsp),%xmm2
  mulsd  D682(%rip),%xmm2
  mulsd  0x78(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x80(%rsp),%xmm2
  mulsd  D788(%rip),%xmm2
  mulsd  0x88(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x90(%rsp),%xmm2
  mulsd  D1169(%rip),%xmm2
  mulsd  0x98(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0xa0(%rsp),%xmm2
  mulsd  D676(%rip),%xmm2
  mulsd  0xa8(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0xb0(%rsp),%xmm2
  mulsd  D1043(%rip),%xmm2
  mulsd  0xb8(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0xc0(%rsp),%xmm2
  mulsd  D643(%rip),%xmm2
  mulsd  0xc8(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0xd0(%rsp),%xmm2
  mulsd  D511(%rip),%xmm2
  mulsd  0xd8(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0xe0(%rsp),%xmm2
  mulsd  D83(%rip),%xmm2
  mulsd  0xe8(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0xf0(%rsp),%xmm2
  mulsd  D1348(%rip),%xmm2
  mulsd  0xf8(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x100(%rsp),%xmm2
  mulsd  D945(%rip),%xmm2
  mulsd  0x108(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x110(%rsp),%xmm2
  mulsd  D797(%rip),%xmm2
  mulsd  0x118(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x120(%rsp),%xmm2
  mulsd  D481(%rip),%xmm2
  mulsd  0x128(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x130(%rsp),%xmm2
  mulsd  D496(%rip),%xmm2
  mulsd  0x138(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x140(%rsp),%xmm2
  mulsd  D882(%rip),%xmm2
  mulsd  0x148(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x150(%rsp),%xmm2
  mulsd  D1386(%rip),%xmm2
  mulsd  0x158(%rsp),%xmm2
  movsd  0x2d0(%rsp),%xmm15
  mulsd  D840(%rip),%xmm15
  movsd  0x2c8(%rsp),%xmm13
  mulsd  0x180(%rsp),%xmm15
  movsd  0x2c0(%rsp),%xmm11
  mulsd  D950(%rip),%xmm13
  movsd  0x2b8(%rsp),%xmm9
  mulsd  0x198(%rsp),%xmm13
  mulsd  D28(%rip),%xmm11
  subsd  %xmm2,%xmm1
  movsd  0x160(%rsp),%xmm2
  mulsd  D1402(%rip),%xmm2
  mulsd  0x168(%rsp),%xmm2
  mulsd  0x1b0(%rsp),%xmm11
  mulsd  D1384(%rip),%xmm9
  mulsd  0x1c8(%rsp),%xmm9
  addsd  %xmm2,%xmm1
  movsd  0x170(%rsp),%xmm2
  mulsd  D852(%rip),%xmm2
  mulsd  0x178(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x188(%rsp),%xmm2
  mulsd  D741(%rip),%xmm2
  mulsd  0x190(%rsp),%xmm2
  addsd  %xmm15,%xmm1
  subsd  %xmm2,%xmm1
  movsd  0x1a0(%rsp),%xmm2
  mulsd  D55(%rip),%xmm2
  mulsd  0x1a8(%rsp),%xmm2
  addsd  %xmm13,%xmm1
  subsd  %xmm2,%xmm1
  movsd  0x1b8(%rsp),%xmm2
  mulsd  D230(%rip),%xmm2
  mulsd  0x1c0(%rsp),%xmm2
  addsd  %xmm11,%xmm1
  subsd  %xmm2,%xmm1
  movsd  0x1d0(%rsp),%xmm2
  mulsd  D737(%rip),%xmm2
  mulsd  0x1d8(%rsp),%xmm2
  movsd  0x2b0(%rsp),%xmm7
  mulsd  D234(%rip),%xmm7
  movsd  0x2a8(%rsp),%xmm14
  mulsd  0x1e0(%rsp),%xmm7
  addsd  %xmm9,%xmm1
  movsd  0x2a0(%rsp),%xmm12
  mulsd  D1497(%rip),%xmm14
  movsd  0x298(%rsp),%xmm10
  mulsd  0x228(%rsp),%xmm14
  movsd  0x290(%rsp),%xmm8
  mulsd  D1500(%rip),%xmm12
  subsd  %xmm2,%xmm1
  movsd  0x1e8(%rsp),%xmm2
  mulsd  D1415(%rip),%xmm2
  movsd  0x288(%rsp),%xmm4
  mulsd  0x1f0(%rsp),%xmm2
  mulsd  0x230(%rsp),%xmm12
  addsd  %xmm7,%xmm1
  mulsd  D532(%rip),%xmm10
  mulsd  0x238(%rsp),%xmm10
  mulsd  D301(%rip),%xmm8
  mulsd  0x240(%rsp),%xmm8
  subsd  %xmm2,%xmm1
  movsd  0x1f8(%rsp),%xmm2
  mulsd  D94(%rip),%xmm2
  mulsd  0x200(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x208(%rsp),%xmm2
  mulsd  D909(%rip),%xmm2
  mulsd  0x210(%rsp),%xmm2
  subsd  %xmm2,%xmm1
  movsd  0x218(%rsp),%xmm2
  mulsd  D625(%rip),%xmm2
  mulsd  0x220(%rsp),%xmm2
  addsd  %xmm2,%xmm1
  movsd  0x248(%rsp),%xmm2
  mulsd  D424(%rip),%xmm2
  mulsd  0x250(%rsp),%xmm2
  mulsd  D821(%rip),%xmm4
  movsd  0x8(%rsp),%xmm7
  mulsd  0x258(%rsp),%xmm4
  subsd  %xmm14,%xmm1
  movsd  0x280(%rsp),%xmm5
  mulsd  D546(%rip),%xmm5
  mulsd  0x270(%rsp),%xmm5
  addsd  %xmm12,%xmm1
  subsd  %xmm10,%xmm1
  addsd  %xmm8,%xmm1
  subsd  %xmm2,%xmm1
  movsd  0x260(%rsp),%xmm2
  mulsd  D844(%rip),%xmm2
  mulsd  0x268(%rsp),%xmm2
  addsd  %xmm4,%xmm1
  movsd  (%rsp),%xmm4
  subsd  %xmm2,%xmm1
  movsd  D667(%rip),%xmm2
  mulsd  %xmm7,%xmm2
  addsd  %xmm1,%xmm5
  mulsd  %xmm7,%xmm2
  mulsd  D592(%rip),%xmm7
  mulsd  0x278(%rsp),%xmm2
  movapd %xmm7,%xmm1
  mulsd  %xmm4,%xmm1
  subsd  %xmm2,%xmm5
  movq   %rbx,%xmm2
  mulsd  D91(%rip),%xmm2
  mulsd  %xmm4,%xmm1
  mulsd  %xmm4,%xmm2
  addsd  %xmm5,%xmm1
  subsd  D1188(%rip),%xmm1
  mulsd  %xmm2,%xmm1
  mulsd  %xmm1,%xmm0
  mulsd  D1034(%rip),%xmm0
  divsd  D1146(%rip),%xmm0
  add    $0x2e8,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
```

tool_calls: name: parse_data
arguments: data_tag: D1069
type_guessed: byte[8]
name: parse_data
arguments: data_tag: D913
type_guessed: f64
name: parse_data
arguments: data_tag: D135
type_guessed: f64
name: parse_data
arguments: data_tag: D768
type_guessed: f64
name: parse_data
arguments: data_tag: D1385
type_guessed: f64
name: parse_data
arguments: data_tag: D548
type_guessed: f64
name: parse_data
arguments: data_tag: D482
type_guessed: f64
name: parse_data
arguments: data_tag: D1419
type_guessed: f64
name: parse_data
arguments: data_tag: D1506
type_guessed: f64
name: parse_data
arguments: data_tag: D413
type_guessed: f64
name: parse_data
arguments: data_tag: D1364
type_guessed: f64
name: parse_data
arguments: data_tag: D398
type_guessed: f64
name: parse_data
arguments: data_tag: D30
type_guessed: f64
name: parse_data
arguments: data_tag: D841
type_guessed: f64
name: parse_data
arguments: data_tag: D1493
type_guessed: f64
name: parse_data
arguments: data_tag: D415
type_guessed: f64
name: parse_data
arguments: data_tag: D745
type_guessed: f64
name: parse_data
arguments: data_tag: D888
type_guessed: f64
name: parse_data
arguments: data_tag: D1459
type_guessed: f64
name: parse_data
arguments: data_tag: D951
type_guessed: f64
name: parse_data
arguments: data_tag: D711
type_guessed: f64
name: parse_data
arguments: data_tag: D773
type_guessed: f64
name: parse_data
arguments: data_tag: D1505
type_guessed: f64
name: parse_data
arguments: data_tag: D179
type_guessed: f64
name: parse_data
arguments: data_tag: D1376
type_guessed: f64
name: parse_data
arguments: data_tag: D483
type_guessed: f64
name: parse_data
arguments: data_tag: D156
type_guessed: f64
name: parse_data
arguments: data_tag: D509
type_guessed: f64
name: parse_data
arguments: data_tag: D508
type_guessed: f64
name: parse_data
arguments: data_tag: D946
type_guessed: f64
name: parse_data
arguments: data_tag: D513
type_guessed: f64
name: parse_data
arguments: data_tag: D760
type_guessed: f64
name: parse_data
arguments: data_tag: D963
type_guessed: f64
name: parse_data
arguments: data_tag: D832
type_guessed: f64
name: parse_data
arguments: data_tag: D1044
type_guessed: f64
name: parse_data
arguments: data_tag: D661
type_guessed: f64
name: parse_data
arguments: data_tag: D183
type_guessed: f64
name: parse_data
arguments: data_tag: D855
type_guessed: f64
name: parse_data
arguments: data_tag: D342
type_guessed: f64
name: parse_data
arguments: data_tag: D411
type_guessed: f64
name: parse_data
arguments: data_tag: D208
type_guessed: f64
name: parse_data
arguments: data_tag: D762
type_guessed: f64
name: parse_data
arguments: data_tag: D652
type_guessed: f64
name: parse_data
arguments: data_tag: D361
type_guessed: f64
name: parse_data
arguments: data_tag: D933
type_guessed: f64
name: parse_data
arguments: data_tag: D1090
type_guessed: f64
name: parse_data
arguments: data_tag: D167
type_guessed: f64
name: parse_data
arguments: data_tag: D774
type_guessed: f64
name: parse_data
arguments: data_tag: D71
type_guessed: f64
name: parse_data
arguments: data_tag: D233
type_guessed: f64
name: parse_data
arguments: data_tag: D1247
type_guessed: f64
name: parse_data
arguments: data_tag: D1458
type_guessed: f64
name: parse_data
arguments: data_tag: D828
type_guessed: f64
name: parse_data
arguments: data_tag: D1472
type_guessed: f64
name: parse_data
arguments: data_tag: D1446
type_guessed: f64
name: parse_data
arguments: data_tag: D1077
type_guessed: f64
name: parse_data
arguments: data_tag: D934
type_guessed: f64
name: parse_data
arguments: data_tag: D168
type_guessed: f64
name: parse_data
arguments: data_tag: D1127
type_guessed: f64
name: parse_data
arguments: data_tag: D630
type_guessed: f64
name: parse_data
arguments: data_tag: D1013
type_guessed: f64
name: parse_data
arguments: data_tag: D638
type_guessed: f64
name: parse_data
arguments: data_tag: D464
type_guessed: f64
name: parse_data
arguments: data_tag: D748
type_guessed: f64
name: parse_data
arguments: data_tag: D701
type_guessed: f64
name: parse_data
arguments: data_tag: D316
type_guessed: f64
name: parse_data
arguments: data_tag: D262
type_guessed: f64
name: parse_data
arguments: data_tag: D694
type_guessed: f64
name: parse_data
arguments: data_tag: D1461
type_guessed: f64
name: parse_data
arguments: data_tag: D758
type_guessed: f64
name: parse_data
arguments: data_tag: D914
type_guessed: f64
name: parse_data
arguments: data_tag: D823
type_guessed: f64
name: parse_data
arguments: data_tag: D820
type_guessed: f64
name: parse_data
arguments: data_tag: D1322
type_guessed: byte[16]
name: parse_data
arguments: data_tag: D1301
type_guessed: byte[8]
name: parse_data
arguments: data_tag: D1021
type_guessed: f64
name: parse_data
arguments: data_tag: D1476
type_guessed: f64
name: parse_data
arguments: data_tag: D1166
type_guessed: f64
name: parse_data
arguments: data_tag: D505
type_guessed: f64
name: parse_data
arguments: data_tag: D891
type_guessed: f64
name: parse_data
arguments: data_tag: D444
type_guessed: f64
name: parse_data
arguments: data_tag: D761
type_guessed: f64
name: parse_data
arguments: data_tag: D1183
type_guessed: f64
name: parse_data
arguments: data_tag: D1294
type_guessed: f64
name: parse_data
arguments: data_tag: D682
type_guessed: f64
name: parse_data
arguments: data_tag: D788
type_guessed: f64
name: parse_data
arguments: data_tag: D1169
type_guessed: f64
name: parse_data
arguments: data_tag: D676
type_guessed: f64
name: parse_data
arguments: data_tag: D1043
type_guessed: f64
name: parse_data
arguments: data_tag: D643
type_guessed: f64
name: parse_data
arguments: data_tag: D511
type_guessed: f64
name: parse_data
arguments: data_tag: D83
type_guessed: f64
name: parse_data
arguments: data_tag: D1348
type_guessed: f64
name: parse_data
arguments: data_tag: D945
type_guessed: f64
name: parse_data
arguments: data_tag: D797
type_guessed: f64
name: parse_data
arguments: data_tag: D481
type_guessed: f64
name: parse_data
arguments: data_tag: D496
type_guessed: f64
name: parse_data
arguments: data_tag: D882
type_guessed: f64
name: parse_data
arguments: data_tag: D1386
type_guessed: f64
name: parse_data
arguments: data_tag: D840
type_guessed: f64
name: parse_data
arguments: data_tag: D950
type_guessed: f64
name: parse_data
arguments: data_tag: D28
type_guessed: f64
name: parse_data
arguments: data_tag: D1402
type_guessed: f64
name: parse_data
arguments: data_tag: D1384
type_guessed: f64
name: parse_data
arguments: data_tag: D852
type_guessed: f64
name: parse_data
arguments: data_tag: D741
type_guessed: f64
name: parse_data
arguments: data_tag: D55
type_guessed: f64
name: parse_data
arguments: data_tag: D230
type_guessed: f64
name: parse_data
arguments: data_tag: D737
type_guessed: f64
name: parse_data
arguments: data_tag: D234
type_guessed: f64
name: parse_data
arguments: data_tag: D1497
type_guessed: f64
name: parse_data
arguments: data_tag: D1500
type_guessed: f64
name: parse_data
arguments: data_tag: D1415
type_guessed: f64
name: parse_data
arguments: data_tag: D532
type_guessed: f64
name: parse_data
arguments: data_tag: D301
type_guessed: f64
name: parse_data
arguments: data_tag: D94
type_guessed: f64
name: parse_data
arguments: data_tag: D909
type_guessed: f64
name: parse_data
arguments: data_tag: D625
type_guessed: f64
name: parse_data
arguments: data_tag: D424
type_guessed: f64
name: parse_data
arguments: data_tag: D821
type_guessed: f64
name: parse_data
arguments: data_tag: D546
type_guessed: f64
name: parse_data
arguments: data_tag: D844
type_guessed: f64
name: parse_data
arguments: data_tag: D667
type_guessed: f64
name: parse_data
arguments: data_tag: D592
type_guessed: f64
name: parse_data
arguments: data_tag: D91
type_guessed: byte[8]
name: parse_data
arguments: data_tag: D1188
type_guessed: f64
name: parse_data
arguments: data_tag: D1034
type_guessed: byte[8]
name: parse_data
arguments: data_tag: D1146
type_guessed: f64

tool: {"D1069": [0x00,0x00,0x00,0x00,0x00,0x00,0xe8,0x3f]}

tool: D913: 49

tool: D135: 98

tool: D768: 48

tool: D1385: 96

tool: D548: 47

tool: D482: 94

tool: D1419: 46

tool: D1506: 92

tool: D413: 45

tool: D1364: 90

tool: D398: 44

tool: D30: 88

tool: D841: 43

tool: D1493: 86

tool: D415: 42

tool: D745: 84

tool: D888: 41

tool: D1459: 82

tool: D951: 40

tool: D711: 80

tool: D773: 39

tool: D1505: 78

tool: D179: 38

tool: D1376: 76

tool: D483: 37

tool: D156: 74

tool: D509: 36

tool: D508: 72

tool: D946: 35

tool: D513: 70

tool: D760: 34

tool: D963: 68

tool: D832: 33

tool: D1044: 66

tool: D661: 32

tool: D183: 64

tool: D855: 31

tool: D342: 62

tool: D411: 30

tool: D208: 60

tool: D762: 29

tool: D652: 58

tool: D361: 28

tool: D933: 56

tool: D1090: 27

tool: D167: 54

tool: D774: 26

tool: D71: 52

tool: D233: 25

tool: D1247: 50

tool: D1458: 24

tool: D828: 23

tool: D1472: 22

tool: D1446: 21

tool: D1077: 20

tool: D934: 19

tool: D168: 18

tool: D1127: 17

tool: D630: 16

tool: D1013: 15

tool: D638: 14

tool: D464: 13

tool: D748: 12

tool: D701: 11

tool: D316: 10

tool: D262: 9

tool: D694: 8

tool: D1461: 7

tool: D758: 6

tool: D914: 5

tool: D823: 4

tool: D820: 3

tool: {"D1322": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]}

tool: {"D1301": [0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0x3f]}

tool: D1021: 562949953421312

tool: D1476: 1.3654351120233923e+18

tool: D1166: 2.5899951986971222e+29

tool: D505: 1.5893664703952286e+21

tool: D891: 1.1827535483857826e+24

tool: D444: 6.324774599992972e+26

tool: D761: 8.45201766508161e+31

tool: D1183: 2.258499863219307e+34

tool: D1294: 5.039277819808079e+36

tool: D682: 9.527034678226052e+38

tool: D788: 1.5433796178726203e+41

tool: D1169: 2.1614330012116105e+43

tool: D676: 2.6351470673104885e+45

tool: D1043: 2.8125127353025407e+47

tool: D643: 2.6397440958482415e+49

tool: D511: 2.1865880260609603e+51

tool: D83: 1.6030423466059414e+53

tool: D1348: 1.0424490083369814e+55

tool: D945: 6.023038714835892e+56

tool: D797: 3.0955248973880257e+58

tool: D481: 1.4162026405550217e+60

tool: D496: 5.769339804737243e+61

tool: D882: 2.0926968928092363e+63

tool: D1386: 6.755771490916775e+64

tool: D840: 1.1184770833218175e+69

tool: D950: 3.9582770826725394e+71

tool: D28: 8.422258185734795e+73

tool: D1402: 1.9394693988506906e+66

tool: D1384: 1.0474886462220856e+76

tool: D852: 4.9456469670692607e+67

tool: D741: 2.2390254205016384e+70

tool: D55: 6.1626279407815565e+72

tool: D230: 1.0065956960692714e+75

tool: D737: 9.443268856093044e+76

tool: D234: 7.332420523554599e+77

tool: D1497: 1.668033590125834e+81

tool: D1500: 4.378588174080315e+81

tool: D1415: 4.8708222049326975e+78

tool: D532: 9.130958265460167e+81

tool: D301: 1.4783456239316462e+82

tool: D94: 2.7466025211148266e+79

tool: D909: 1.302780385015276e+80

tool: D625: 5.14255415137609e+80

tool: D424: 1.8049568664281727e+82

tool: D821: 1.5998481316067894e+82

tool: D546: 3.825723792972757e+81

tool: D844: 9.776849693152603e+81

tool: D667: 8.546829750258287e+80

tool: D592: 8.90294765651905e+79

tool: {"D91": [0xff,0xd6,0xa1,0x93,0x72,0xb2,0xa6,0x42]}

tool: D1188: 2.7253921397507295e+78

tool: {"D1034": [0x5f,0xfa,0x11,0x70,0x38,0x09,0xe8,0x3f]}

tool: D1146: 8.52366321181935e+90

assistant: ```c
double HO_99(const double a, const double x) {
  double retval = sqrt(0.155696519360438569961130397e27) * pow(a, 0.3e1 / 0.4e1) * x * (0.562949953421312e15 * pow(a, 0.49e2) * pow(x, 0.98e2) - 0.1365435112023392256e19 * pow(a, 0.48e2) * pow(x, 0.96e2) + 0.1589366470395228585984e22 * pow(a, 0.47e2) * pow(x, 0.94e2) - 0.1182753548385782606069760e25 * pow(a, 0.46e2) * pow(x, 0.92e2) + 0.632477459999297248595804160e27 * pow(a, 0.45e2) * pow(x, 0.90e2) - 0.258999519869712223299981803520e30 * pow(a, 0.44e2) * pow(x, 0.88e2) + 0.84520176650816088870227395215360e32 * pow(a, 0.43e2) * pow(x, 0.86e2) - 0.22584998632193070604537191821475840e35 * pow(a, 0.42e2) * pow(x, 0.84e2) + 0.5039277819808078878637360925166796800e37 * pow(a, 0.41e2) * pow(x, 0.82e2) - 0.952703467822605134666829957130144972800e39 * pow(a, 0.40e2) * pow(x, 0.80e2) + 0.154337961787262031816026453055083485593600e42 * pow(a, 0.39e2) * pow(x, 0.78e2) - 0.21614330012116105455689886448305100868812800e44 * pow(a, 0.38e2) * pow(x, 0.76e2) + 0.2635147067310488523472858656155863547589427200e46 * pow(a, 0.37e2) * pow(x, 0.74e2) - 0.281251273530254063562968568108943128636948480000e48 * pow(a, 0.36e2) * pow(x, 0.72e2) + 0.26397440958482417108695764178225090787782164480000e50 * pow(a, 0.35e2) * pow(x, 0.70e2) - 0.2186588026060960217170299132762978353587955957760000e52 * pow(a, 0.34e2) * pow(x, 0.68e2) + 0.160304234660594145921297555170685850547417021153280000e54 * pow(a, 0.33e2) * pow(x, 0.66e2) - 0.10424490083369813430352614543599600457657030404997120000e56 * pow(a, 0.32e2) * pow(x, 0.64e2) + 0.602303871483589220420373284741310248664628423399833600000e57 * pow(a, 0.31e2) * pow(x, 0.62e2) - 0.30955248973880256512657605923678392516895245023680921600000e59 * pow(a, 0.30e2) * pow(x, 0.60e2) + 0.1416202640555021735454085471008286457647957459833402163200000e61 * pow(a, 0.29e2) * pow(x, 0.58e2) - 0.57693398047372433080046196211789955453229886042260740505600000e62 * pow(a, 0.28e2) * pow(x, 0.56e2) + 0.2092696892809236436267130208045835656894429502805639587430400000e64 * pow(a, 0.27e2) * pow(x, 0.54e2) - 0.67557714909167741475145399107566651097570169818834234507264000000e65 * pow(a, 0.26e2) * pow(x, 0.52e2) + 0.1939469398850690578182299166046392608592743625215699482312704000000e67 * pow(a, 0.25e2) * pow(x, 0.50e2) - 0.49456469670692609743648628734183011519114962443000336798973952000000e68 * pow(a, 0.24e2) * pow(x, 0.48e2) + 0.1118477083321817481894822834449985029739984535249392232222949376000000e70 * pow(a, 0.23e2) * pow(x, 0.46e2) - 0.22390254205016383294968583037785811428683764492677648204314968064000000e71 * pow(a, 0.22e2) * pow(x, 0.44e2) + 0.395827708267253918964623164417999166328516550852694137897711042560000000e72 * pow(a, 0.21e2) * pow(x, 0.42e2) - 0.6162627940781556703880253749473331848183628369310048388304018472960000000e73 * pow(a, 0.20e2) * pow(x, 0.40e2) + 0.84222581857347941619696801242802201925176254380570661306821585797120000000e74 * pow(a, 0.19e2) * pow(x, 0.38e2) - 0.1006595696069271366777344027756716639137993620903271935941206372188160000000e76 * pow(a, 0.18e2) * pow(x, 0.36e2) + 0.10474886462220855160526736288843332526029746117524673583388178810583040000000e77 * pow(a, 0.17e2) * pow(x, 0.34e2) - 0.94432688560930436674445577149420952317995438483745163365393430186316800000000e77 * pow(a, 0.16e2) * pow(x, 0.32e2) + 0.733242052355459861236871540219033276822082228226727150837172516740812800000000e78 * pow(a, 0.15e2) * pow(x, 0.30e2) - 0.4870822204932697649644932374312149624603831944648973216275503146921113600000000e79 * pow(a, 0.14e2) * pow(x, 0.28e2) + 0.27466025211148267302164479777371288160960496798992821191775753856249612800000000e80 * pow(a, 0.13e2) * pow(x, 0.26e2) - 0.130278038501527592203509897322396245195907221303330814031260670318156947200000000e81 * pow(a, 0.12e2) * pow(x, 0.24e2) + 0.514255415137608916592802226272616757352265347249990055386555277571672160000000000e81 * pow(a, 0.11e2) * pow(x, 0.22e2) - 0.1668033590125834049974089272397077430899014523772403641189724169559398160000000000e82 * pow(a, 0.10e2) * pow(x, 0.20e2) + 0.4378588174080314381181984340042328256109913124902559558123025945093420170000000000e82 * pow(a, 0.9e1) * pow(x, 0.18e2) - 0.9130958265460167794903894172527294290180428589735825419988261422085059135000000000e82 * pow(a, 0.8e1) * pow(x, 0.16e2) + 0.14783456239316462144130114374568000279339741526238955441885756588137714790000000000e83 * pow(a, 0.7e1) * pow(x, 0.14e2) - 0.18049568664281727036437930341042325922449684421570817690674470252958837825000000000e83 * pow(a, 0.6e1) * pow(x, 0.12e2) + 0.15998481316067894418660892802287516158534947555483224771279644087849878981250000000e83 * pow(a, 0.5e1) * pow(x, 0.10e2) - 0.9776849693152602144737212268064593207993579061684192915782004720352703821875000000e82 * pow(a, 0.4e1) * pow(x, 0.8e1) + 0.3825723792972757360984126539677449516171400502398162445306001847094536278125000000e82 * pow(a, 0.3e1) * pow(x, 0.6e1) - 0.854682975025828772134751673757728083399993729259163950547085519031758104687500000e81 * a * a * pow(x, 0.4e1) + 0.89029476565190497097369966016430008687499346797829578181988074899141469238281250e80 * a * x * x - 0.2725392139750729502980713245400918633290796330545803413734328823443106201171875e79) * exp(-a * x * x / 0.2e1) * pow(0.3141592654e1, -0.1e1 / 0.4e1) / 0.8523663211819350103340917943137415942301277004679691554021630519394885996589875200000000000e91;
  return retval;
}
```