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

```asm
<HO_deriv_94>:
  endbr64
  push   %r15
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  sub    $0x2c8,%rsp
  movsd  %xmm0,0x8(%rsp)
  movsd  %xmm1,(%rsp)
  movsd  D422(%rip),%xmm1
  call   <pow@plt>
  movsd  %xmm0,0x10(%rsp)
  mov    D213(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x18(%rsp)
  movsd  D397(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x20(%rsp)
  movsd  D281(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x28(%rsp)
  movsd  D782(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x30(%rsp)
  movsd  D42(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x38(%rsp)
  mov    D402(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x40(%rsp)
  movsd  D680(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x48(%rsp)
  movsd  D1009(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x50(%rsp)
  mov    D1356(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x58(%rsp)
  movsd  D1358(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x60(%rsp)
  movsd  D1113(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x68(%rsp)
  movsd  D416(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x70(%rsp)
  mov    D1398(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x78(%rsp)
  movsd  D1401(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x80(%rsp)
  mov    D474(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x88(%rsp)
  mov    D213(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x90(%rsp)
  mov    D1018(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x98(%rsp)
  movsd  D118(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xa0(%rsp)
  movsd  D624(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xa8(%rsp)
  movsd  D583(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xb0(%rsp)
  movsd  D265(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xb8(%rsp)
  movsd  D942(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xc0(%rsp)
  movsd  D1277(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xc8(%rsp)
  movsd  D240(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xd0(%rsp)
  movsd  D289(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xd8(%rsp)
  mov    D828(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xe0(%rsp)
  mov    D707(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xe8(%rsp)
  movsd  D211(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xf0(%rsp)
  movsd  D484(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0xf8(%rsp)
  movsd  D920(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x100(%rsp)
  movsd  D95(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x108(%rsp)
  movsd  D512(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x110(%rsp)
  movsd  D725(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x118(%rsp)
  mov    D901(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x120(%rsp)
  movsd  D17(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x128(%rsp)
  movsd  D208(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x130(%rsp)
  mov    D901(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x138(%rsp)
  movsd  D444(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x140(%rsp)
  mov    D131(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x148(%rsp)
  mov    D121(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x150(%rsp)
  movsd  D1070(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x158(%rsp)
  mov    D65(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x160(%rsp)
  mov    D871(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x168(%rsp)
  movsd  D301(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x170(%rsp)
  movsd  D748(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x178(%rsp)
  movsd  D580(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x180(%rsp)
  mov    D1378(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x188(%rsp)
  mov    D1289(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x190(%rsp)
  movsd  D216(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x198(%rsp)
  movsd  D843(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1a0(%rsp)
  mov    D685(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1a8(%rsp)
  mov    D1356(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1b0(%rsp)
  movsd  D718(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1b8(%rsp)
  mov    D546(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1c0(%rsp)
  mov    D1289(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1c8(%rsp)
  mov    D707(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1d0(%rsp)
  mov    D546(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1d8(%rsp)
  movsd  D1235(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1e0(%rsp)
  movsd  D1409(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1e8(%rsp)
  mov    D642(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1f0(%rsp)
  mov    D642(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x1f8(%rsp)
  movsd  D758(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x200(%rsp)
  mov    D65(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x208(%rsp)
  mov    D871(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x210(%rsp)
  mov    D402(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%r15
  movsd  D189(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x218(%rsp)
  movsd  D541(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%r14
  mov    D1398(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x220(%rsp)
  mov    D479(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%r13
  mov    D474(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x228(%rsp)
  mov    D828(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x230(%rsp)
  movsd  D1313(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x238(%rsp)
  mov    D121(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x240(%rsp)
  movsd  D1253(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x248(%rsp)
  movsd  D1005(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x250(%rsp)
  mov    D1262(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x258(%rsp)
  movsd  D277(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x260(%rsp)
  mov    D685(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x268(%rsp)
  mov    D1262(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x270(%rsp)
  mov    D1018(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x278(%rsp)
  movsd  D1168(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x280(%rsp)
  mov    D479(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x288(%rsp)
  mov    D1383(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x290(%rsp)
  mov    D1378(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x298(%rsp)
  movsd  D1291(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%r12
  mov    D671(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x2a0(%rsp)
  mov    D1383(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x2a8(%rsp)
  mov    D671(%rip),%rax
  movq   %rax,%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%rbp
  mov    D131(%rip),%rax
  movq   %rax,%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x2b0(%rsp)
  movsd  D519(%rip),%xmm1
  movsd  0x8(%rsp),%xmm0
  call   <pow@plt>
  movq   %xmm0,%rbx
  movsd  D601(%rip),%xmm1
  movsd  (%rsp),%xmm0
  call   <pow@plt>
  movsd  %xmm0,0x2b8(%rsp)
  movsd  0x8(%rsp),%xmm5
  xorpd  D1185(%rip),%xmm5
  movapd %xmm5,%xmm0
  movsd  (%rsp),%xmm3
  mulsd  %xmm3,%xmm0
  mulsd  %xmm3,%xmm0
  mulsd  D809(%rip),%xmm0
  call   <exp@plt>
  movapd %xmm0,%xmm2
  movsd  0x18(%rsp),%xmm1
  mulsd  D1115(%rip),%xmm1
  mulsd  0x20(%rsp),%xmm1
  movsd  0x28(%rsp),%xmm0
  mulsd  D1418(%rip),%xmm0
  mulsd  0x30(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x38(%rsp),%xmm0
  mulsd  D863(%rip),%xmm0
  mulsd  0x40(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x48(%rsp),%xmm0
  mulsd  D396(%rip),%xmm0
  mulsd  0x50(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x58(%rsp),%xmm0
  mulsd  D87(%rip),%xmm0
  mulsd  0x60(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x68(%rsp),%xmm0
  mulsd  D116(%rip),%xmm0
  mulsd  0x70(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x78(%rsp),%xmm0
  mulsd  D1341(%rip),%xmm0
  mulsd  0x80(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x88(%rsp),%xmm0
  mulsd  D667(%rip),%xmm0
  mulsd  0x90(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  subsd  D1385(%rip),%xmm1
  movsd  0x98(%rsp),%xmm0
  mulsd  D916(%rip),%xmm0
  mulsd  0xa0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0xa8(%rsp),%xmm0
  mulsd  D480(%rip),%xmm0
  mulsd  0xb0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0xb8(%rsp),%xmm0
  mulsd  D1264(%rip),%xmm0
  mulsd  0xc0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0xc8(%rsp),%xmm0
  mulsd  D478(%rip),%xmm0
  mulsd  0xd0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0xd8(%rsp),%xmm0
  mulsd  D1196(%rip),%xmm0
  mulsd  0xe0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0xe8(%rsp),%xmm0
  mulsd  D690(%rip),%xmm0
  mulsd  0xf0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0xf8(%rsp),%xmm0
  mulsd  D1127(%rip),%xmm0
  mulsd  0x100(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x108(%rsp),%xmm0
  mulsd  D32(%rip),%xmm0
  mulsd  0x110(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x118(%rsp),%xmm0
  mulsd  D557(%rip),%xmm0
  mulsd  0x120(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x128(%rsp),%xmm0
  mulsd  D1172(%rip),%xmm0
  mulsd  0x130(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x138(%rsp),%xmm0
  mulsd  D407(%rip),%xmm0
  mulsd  0x140(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x148(%rsp),%xmm0
  mulsd  D1050(%rip),%xmm0
  mulsd  0x150(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x158(%rsp),%xmm0
  mulsd  D1197(%rip),%xmm0
  mulsd  0x160(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x168(%rsp),%xmm0
  mulsd  D57(%rip),%xmm0
  mulsd  0x170(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x178(%rsp),%xmm0
  mulsd  D1343(%rip),%xmm0
  mulsd  0x180(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x188(%rsp),%xmm0
  mulsd  D486(%rip),%xmm0
  mulsd  0x190(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x198(%rsp),%xmm0
  mulsd  0x1a0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x1a8(%rsp),%xmm0
  mulsd  D741(%rip),%xmm0
  mulsd  0x1b0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x1b8(%rsp),%xmm0
  mulsd  D452(%rip),%xmm0
  mulsd  0x1c0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x1c8(%rsp),%xmm0
  mulsd  D365(%rip),%xmm0
  mulsd  0x1d0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x1d8(%rsp),%xmm0
  mulsd  D962(%rip),%xmm0
  mulsd  0x1e0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x1e8(%rsp),%xmm0
  mulsd  D239(%rip),%xmm0
  mulsd  0x1f0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x1f8(%rsp),%xmm0
  mulsd  D911(%rip),%xmm0
  mulsd  0x200(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x208(%rsp),%xmm0
  mulsd  D485(%rip),%xmm0
  mulsd  0x210(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movq   %r15,%xmm0
  mulsd  D804(%rip),%xmm0
  mulsd  0x218(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movq   %r14,%xmm0
  mulsd  D1399(%rip),%xmm0
  mulsd  0x220(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movq   %r13,%xmm0
  mulsd  D375(%rip),%xmm0
  mulsd  0x228(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x230(%rsp),%xmm0
  mulsd  D1015(%rip),%xmm0
  mulsd  0x238(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x240(%rsp),%xmm0
  mulsd  D225(%rip),%xmm0
  mulsd  0x248(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x250(%rsp),%xmm0
  mulsd  D850(%rip),%xmm0
  mulsd  0x258(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x260(%rsp),%xmm0
  mulsd  D971(%rip),%xmm0
  mulsd  0x268(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x270(%rsp),%xmm0
  mulsd  D700(%rip),%xmm0
  mulsd  0x278(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movsd  0x280(%rsp),%xmm0
  mulsd  D223(%rip),%xmm0
  mulsd  0x288(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x290(%rsp),%xmm0
  mulsd  D325(%rip),%xmm0
  mulsd  0x298(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movq   %r12,%xmm0
  mulsd  D585(%rip),%xmm0
  mulsd  0x2a0(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x8(%rsp),%xmm4
  movapd %xmm4,%xmm0
  mulsd  D450(%rip),%xmm0
  mulsd  %xmm4,%xmm0
  mulsd  0x2a8(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  mulsd  D643(%rip),%xmm4
  movapd %xmm4,%xmm0
  movsd  (%rsp),%xmm3
  mulsd  %xmm3,%xmm0
  mulsd  %xmm3,%xmm0
  addsd  %xmm0,%xmm1
  movq   %rbp,%xmm0
  mulsd  D456(%rip),%xmm0
  mulsd  0x2b0(%rsp),%xmm0
  subsd  %xmm0,%xmm1
  movq   %rbx,%xmm0
  mulsd  D1154(%rip),%xmm0
  mulsd  0x2b8(%rsp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  0x10(%rsp),%xmm0
  mulsd  D428(%rip),%xmm0
  mulsd  D1322(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  D991(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  mulsd  %xmm2,%xmm0
  add    $0x2c8,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
```

tool_calls: name: retrieve_data
arguments: tag: D422
datatype: byte[8]
name: retrieve_data
arguments: tag: D213
datatype: f64
name: retrieve_data
arguments: tag: D397
datatype: f64
name: retrieve_data
arguments: tag: D281
datatype: f64
name: retrieve_data
arguments: tag: D782
datatype: f64
name: retrieve_data
arguments: tag: D42
datatype: f64
name: retrieve_data
arguments: tag: D402
datatype: f64
name: retrieve_data
arguments: tag: D680
datatype: f64
name: retrieve_data
arguments: tag: D1009
datatype: f64
name: retrieve_data
arguments: tag: D1356
datatype: f64
name: retrieve_data
arguments: tag: D1358
datatype: f64
name: retrieve_data
arguments: tag: D1113
datatype: f64
name: retrieve_data
arguments: tag: D416
datatype: f64
name: retrieve_data
arguments: tag: D1398
datatype: f64
name: retrieve_data
arguments: tag: D1401
datatype: f64
name: retrieve_data
arguments: tag: D474
datatype: f64
name: retrieve_data
arguments: tag: D1018
datatype: f64
name: retrieve_data
arguments: tag: D118
datatype: f64
name: retrieve_data
arguments: tag: D624
datatype: f64
name: retrieve_data
arguments: tag: D583
datatype: f64
name: retrieve_data
arguments: tag: D265
datatype: f64
name: retrieve_data
arguments: tag: D942
datatype: f64
name: retrieve_data
arguments: tag: D1277
datatype: f64
name: retrieve_data
arguments: tag: D240
datatype: f64
name: retrieve_data
arguments: tag: D289
datatype: f64
name: retrieve_data
arguments: tag: D828
datatype: f64
name: retrieve_data
arguments: tag: D707
datatype: f64
name: retrieve_data
arguments: tag: D211
datatype: f64
name: retrieve_data
arguments: tag: D484
datatype: f64
name: retrieve_data
arguments: tag: D920
datatype: f64
name: retrieve_data
arguments: tag: D95
datatype: f64
name: retrieve_data
arguments: tag: D512
datatype: f64
name: retrieve_data
arguments: tag: D725
datatype: f64
name: retrieve_data
arguments: tag: D901
datatype: f64
name: retrieve_data
arguments: tag: D17
datatype: f64
name: retrieve_data
arguments: tag: D208
datatype: f64
name: retrieve_data
arguments: tag: D444
datatype: f64
name: retrieve_data
arguments: tag: D131
datatype: f64
name: retrieve_data
arguments: tag: D121
datatype: f64
name: retrieve_data
arguments: tag: D1070
datatype: f64
name: retrieve_data
arguments: tag: D65
datatype: f64
name: retrieve_data
arguments: tag: D871
datatype: f64
name: retrieve_data
arguments: tag: D301
datatype: f64
name: retrieve_data
arguments: tag: D748
datatype: f64
name: retrieve_data
arguments: tag: D580
datatype: f64
name: retrieve_data
arguments: tag: D1378
datatype: f64
name: retrieve_data
arguments: tag: D1289
datatype: f64
name: retrieve_data
arguments: tag: D216
datatype: f64
name: retrieve_data
arguments: tag: D843
datatype: f64
name: retrieve_data
arguments: tag: D685
datatype: f64
name: retrieve_data
arguments: tag: D718
datatype: f64
name: retrieve_data
arguments: tag: D546
datatype: f64
name: retrieve_data
arguments: tag: D1235
datatype: f64
name: retrieve_data
arguments: tag: D1409
datatype: f64
name: retrieve_data
arguments: tag: D642
datatype: f64
name: retrieve_data
arguments: tag: D758
datatype: f64
name: retrieve_data
arguments: tag: D189
datatype: f64
name: retrieve_data
arguments: tag: D541
datatype: f64
name: retrieve_data
arguments: tag: D479
datatype: f64
name: retrieve_data
arguments: tag: D1313
datatype: f64
name: retrieve_data
arguments: tag: D1253
datatype: f64
name: retrieve_data
arguments: tag: D1005
datatype: f64
name: retrieve_data
arguments: tag: D1262
datatype: f64
name: retrieve_data
arguments: tag: D277
datatype: f64
name: retrieve_data
arguments: tag: D1168
datatype: f64
name: retrieve_data
arguments: tag: D1383
datatype: f64
name: retrieve_data
arguments: tag: D1291
datatype: f64
name: retrieve_data
arguments: tag: D671
datatype: f64
name: retrieve_data
arguments: tag: D519
datatype: f64
name: retrieve_data
arguments: tag: D601
datatype: f64
name: retrieve_data
arguments: tag: D1185
datatype: byte[16]
name: retrieve_data
arguments: tag: D809
datatype: byte[8]
name: retrieve_data
arguments: tag: D1115
datatype: byte[8]
name: retrieve_data
arguments: tag: D1418
datatype: byte[8]
name: retrieve_data
arguments: tag: D863
datatype: byte[8]
name: retrieve_data
arguments: tag: D396
datatype: byte[8]
name: retrieve_data
arguments: tag: D87
datatype: byte[8]
name: retrieve_data
arguments: tag: D116
datatype: byte[8]
name: retrieve_data
arguments: tag: D1341
datatype: byte[8]
name: retrieve_data
arguments: tag: D667
datatype: byte[8]
name: retrieve_data
arguments: tag: D1385
datatype: byte[8]
name: retrieve_data
arguments: tag: D916
datatype: byte[8]
name: retrieve_data
arguments: tag: D480
datatype: byte[8]
name: retrieve_data
arguments: tag: D1264
datatype: byte[8]
name: retrieve_data
arguments: tag: D478
datatype: byte[8]
name: retrieve_data
arguments: tag: D1196
datatype: byte[8]
name: retrieve_data
arguments: tag: D690
datatype: byte[8]
name: retrieve_data
arguments: tag: D1127
datatype: byte[8]
name: retrieve_data
arguments: tag: D32
datatype: byte[8]
name: retrieve_data
arguments: tag: D557
datatype: byte[8]
name: retrieve_data
arguments: tag: D1172
datatype: byte[8]
name: retrieve_data
arguments: tag: D407
datatype: byte[8]
name: retrieve_data
arguments: tag: D1050
datatype: byte[8]
name: retrieve_data
arguments: tag: D1197
datatype: byte[8]
name: retrieve_data
arguments: tag: D57
datatype: byte[8]
name: retrieve_data
arguments: tag: D1343
datatype: byte[8]
name: retrieve_data
arguments: tag: D486
datatype: byte[8]
name: retrieve_data
arguments: tag: D741
datatype: byte[8]
name: retrieve_data
arguments: tag: D452
datatype: byte[8]
name: retrieve_data
arguments: tag: D365
datatype: byte[8]
name: retrieve_data
arguments: tag: D962
datatype: byte[8]
name: retrieve_data
arguments: tag: D239
datatype: byte[8]
name: retrieve_data
arguments: tag: D911
datatype: byte[8]
name: retrieve_data
arguments: tag: D485
datatype: byte[8]
name: retrieve_data
arguments: tag: D804
datatype: byte[8]
name: retrieve_data
arguments: tag: D1399
datatype: byte[8]
name: retrieve_data
arguments: tag: D375
datatype: byte[8]
name: retrieve_data
arguments: tag: D1015
datatype: byte[8]
name: retrieve_data
arguments: tag: D225
datatype: byte[8]
name: retrieve_data
arguments: tag: D850
datatype: byte[8]
name: retrieve_data
arguments: tag: D971
datatype: byte[8]
name: retrieve_data
arguments: tag: D700
datatype: byte[8]
name: retrieve_data
arguments: tag: D223
datatype: byte[8]
name: retrieve_data
arguments: tag: D325
datatype: byte[8]
name: retrieve_data
arguments: tag: D585
datatype: byte[8]
name: retrieve_data
arguments: tag: D450
datatype: byte[8]
name: retrieve_data
arguments: tag: D643
datatype: byte[8]
name: retrieve_data
arguments: tag: D456
datatype: byte[8]
name: retrieve_data
arguments: tag: D1154
datatype: byte[8]
name: retrieve_data
arguments: tag: D428
datatype: byte[8]
name: retrieve_data
arguments: tag: D1322
datatype: byte[8]
name: retrieve_data
arguments: tag: D991
datatype: byte[8]

tool: {"D422": [0x00,0x00,0x00,0x00,0x00,0x00,0xf4,0x3f]}

tool: D213: 40

tool: D397: 80

tool: D281: 31

tool: D782: 62

tool: D42: 21

tool: D402: 42

tool: D680: 33

tool: D1009: 66

tool: D1356: 44

tool: D1358: 88

tool: D1113: 25

tool: D416: 50

tool: D1398: 30

tool: D1401: 60

tool: D474: 20

tool: D1018: 28

tool: D118: 56

tool: D624: 35

tool: D583: 70

tool: D265: 43

tool: D942: 86

tool: D1277: 37

tool: D240: 74

tool: D289: 19

tool: D828: 38

tool: D707: 32

tool: D211: 64

tool: D484: 45

tool: D920: 90

tool: D95: 39

tool: D512: 78

tool: D725: 23

tool: D901: 46

tool: D17: 27

tool: D208: 54

tool: D444: 92

tool: D131: 12

tool: D121: 24

tool: D1070: 9

tool: D65: 18

tool: D871: 36

tool: D301: 72

tool: D748: 41

tool: D580: 82

tool: D1378: 8

tool: D1289: 16

tool: D216: 47

tool: D843: 94

tool: D685: 22

tool: D718: 13

tool: D546: 26

tool: D1235: 52

tool: D1409: 17

tool: D642: 34

tool: D758: 68

tool: D189: 84

tool: D541: 15

tool: D479: 10

tool: D1313: 76

tool: D1253: 48

tool: D1005: 7

tool: D1262: 14

tool: D277: 11

tool: D1168: 5

tool: D1383: 4

tool: D1291: 3

tool: D671: 6

tool: D519: 29

tool: D601: 58

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

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

tool: {"D1115": [0x8a,0x65,0xd2,0xa0,0xad,0x79,0xf5,0xc3]}

tool: {"D1418": [0x99,0x2d,0x09,0xdc,0x08,0x28,0xcd,0x47]}

tool: {"D863": [0x02,0xf7,0x6b,0x5b,0x6e,0x55,0xf8,0x4a]}

tool: {"D396": [0xaa,0xd9,0x91,0x38,0xef,0x24,0x08,0x47]}

tool: {"D87": [0x00,0x00,0xe8,0x56,0xf4,0xd0,0xd9,0x41]}

tool: {"D116": [0xd6,0x5a,0x0c,0x12,0x55,0x94,0xd5,0x49]}

tool: {"D1341": [0x2f,0x46,0x17,0x25,0x9b,0x94,0x2a,0x48]}

tool: {"D667": [0xdd,0x99,0x73,0x57,0x33,0xc7,0x39,0x4b]}

tool: {"D1385": [0x0f,0x5d,0x58,0x93,0x10,0xf9,0x83,0x4c]}

tool: {"D916": [0x16,0xe7,0xf3,0xaf,0x9c,0xa0,0xde,0x48]}

tool: {"D480": [0xfc,0x15,0x18,0x17,0x58,0xe5,0x37,0x46]}

tool: {"D1264": [0x00,0xba,0xf0,0x20,0xa4,0x2b,0x69,0x42]}

tool: {"D478": [0xc0,0x84,0xc2,0x92,0x9a,0x64,0x5b,0x45]}

tool: {"D1196": [0xd3,0x4b,0x07,0x6a,0x83,0xe8,0x77,0x4b]}

tool: {"D690": [0x93,0xdd,0x18,0xc3,0x77,0x41,0x6c,0x47]}

tool: {"D1127": [0x00,0x00,0x00,0xe0,0xbf,0xfb,0x42,0x41]}

tool: {"D32": [0xee,0x65,0xe6,0xfe,0x8a,0x4c,0x71,0x44]}

tool: {"D557": [0x17,0x9a,0xae,0x90,0xe2,0x71,0x6d,0x4a]}

tool: {"D1172": [0x3c,0x58,0x58,0x27,0xa3,0x61,0x33,0x49]}

tool: {"D407": [0x00,0x00,0x00,0x00,0x00,0xcf,0xa1,0x40]}

tool: {"D1050": [0x7b,0x3b,0xa9,0x2b,0x88,0x80,0xcd,0x4c]}

tool: {"D1197": [0x7e,0x12,0x9d,0x7f,0x05,0xce,0x22,0x4d]}

tool: {"D57": [0xf0,0x9d,0x36,0x72,0xaf,0x76,0xcb,0x45]}

tool: {"D1343": [0xb1,0x19,0x4f,0xbd,0xd9,0x33,0x76,0x43]}

tool: {"D486": [0xe5,0xfb,0xa5,0x5a,0xa0,0xda,0x34,0x4d]}

tool: {"D741": [0x9a,0xa3,0x24,0xe5,0x02,0x2c,0xb4,0x4a]}

tool: {"D452": [0x5b,0x7d,0xb7,0xa4,0xc8,0x3f,0xa7,0x4c]}

tool: {"D365": [0xa1,0x4a,0x40,0x99,0xd1,0x84,0x20,0x4c]}

tool: {"D962": [0xfc,0xc5,0xd4,0x2d,0x62,0xbb,0x85,0x49]}

tool: {"D239": [0xe4,0x69,0x6f,0x18,0x96,0x30,0xeb,0x4b]}

tool: {"D911": [0xeb,0xde,0xfe,0xdb,0x8e,0x24,0xa2,0x46]}

tool: {"D485": [0x15,0x45,0x04,0x70,0xe8,0x57,0xb3,0x4b]}

tool: {"D804": [0x1e,0x62,0xb3,0xa0,0x8e,0xbf,0xf2,0x42]}

tool: {"D1399": [0x8c,0x23,0x90,0xe8,0x85,0x40,0x51,0x4c]}

tool: {"D375": [0xc4,0x07,0x7d,0xa8,0x5c,0xe7,0x0a,0x4d]}

tool: {"D1015": [0xc3,0xe9,0x43,0xde,0xb9,0x8c,0xe7,0x44]}

tool: {"D225": [0x62,0x14,0x92,0xf9,0xd9,0xf5,0x22,0x4a]}

tool: {"D850": [0x40,0xfa,0x8d,0xfc,0x4a,0xee,0x41,0x4d]}

tool: {"D971": [0x46,0xf7,0x40,0xbc,0x94,0x1a,0xef,0x4c]}

tool: {"D700": [0xc2,0x12,0xfb,0x18,0xf4,0xc4,0x7e,0x4c]}

tool: {"D223": [0x47,0x40,0xa6,0x4d,0xb9,0xce,0x45,0x4d]}

tool: {"D325": [0x5e,0x34,0xdf,0x41,0x7a,0x34,0x3c,0x4d]}

tool: {"D585": [0xb2,0x92,0x0b,0x07,0xf1,0x54,0x27,0x4d]}

tool: {"D450": [0x68,0x91,0x77,0xed,0xab,0x03,0x06,0x4d]}

tool: {"D643": [0xc8,0x2c,0x18,0x33,0x90,0x59,0xd3,0x4c]}

tool: {"D456": [0x16,0xd8,0xda,0x36,0xfd,0x38,0x47,0x4d]}

tool: {"D1154": [0x45,0x07,0x9c,0x70,0x7e,0x70,0x85,0x48]}

tool: {"D428": [0x33,0x0f,0xcd,0x77,0x03,0xd7,0x48,0xb1]}

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

tool: {"D991": [0x09,0xc1,0x65,0xfa,0x8d,0xf0,0x5b,0x42]}

assistant: ```c
double HO_deriv_94(const double a, const double x) {
  double retval = -0.4e1 / 0.142258809564300708189337931176004085674500545362458703967788304638671875e72 * pow(a, 0.5e1 / 0.4e1) * pow(0.3141592654e1, -0.1e1 / 0.4e1) * (-0.3169195731383743606545e22 / 0.128e3 * pow(a, 0.40e2) * pow(x, 0.80e2) + 0.2539879363013314051202928202838864161513125e43 / 0.32768e5 * pow(a, 0.31e2) * pow(x, 0.62e2) + 0.4887846582292300467284100103076043336714064703825115361265625e61 / 0.33554432e8 * pow(a, 0.21e2) * pow(x, 0.42e2) + 0.256745972508448584919102660489617568125e39 / 0.16384e5 * pow(a, 0.33e2) * pow(x, 0.66e2) - 0.13859982045e11 / 0.8e1 * pow(a, 0.44e2) * pow(x, 0.88e2) + 0.1033449051049100654413398218346409260183098831367759375e55 / 0.2097152e7 * pow(a, 0.25e2) * pow(x, 0.50e2) - 0.296382393274425799961978750643175044121876875e45 / 0.65536e5 * pow(a, 0.30e2) * pow(x, 0.60e2) - 0.165695412977496132771900684446604283906492129933373090580046875e63 / 0.67108864e8 * pow(a, 0.20e2) * pow(x, 0.40e2) - 0.564625215160709510803482248837560216042092664543598596048151781110888671875e75 / 0.140737488355328e15 - 0.2797623867947230829132064461029092476877401540625e49 / 0.262144e6 * pow(a, 0.28e2) * pow(x, 0.56e2) + 0.7754654923194486755265581694805875e34 / 0.4096e4 * pow(a, 0.35e2) * pow(x, 0.70e2) + 0.13837613955165e14 / 0.16e2 * pow(a, 0.43e2) * pow(x, 0.86e2) + 0.135643484781077046823422398025e30 / 0.1024e4 * pow(a, 0.37e2) * pow(x, 0.74e2) + 0.4917642865501814755469017916629564341635152331819332712277421875e64 / 0.134217728e9 * pow(a, 0.19e2) * pow(x, 0.38e2) - 0.38459711735513538025483467638383769859375e41 / 0.32768e5 * pow(a, 0.32e2) * pow(x, 0.64e2) + 0.9952767e7 / 0.4e1 * pow(a, 0.45e2) * pow(x, 0.90e2) + 0.1307075175269322879194775e25 / 0.256e3 * pow(a, 0.39e2) * pow(x, 0.78e2) + 0.2887943795243614815133005529509053597053891531757025234375e58 / 0.8388608e7 * pow(a, 0.23e2) * pow(x, 0.46e2) + 0.226607533303725697159697221343356490627069524790625e51 / 0.524288e6 * pow(a, 0.27e2) * pow(x, 0.54e2) - 0.4559e4 / 0.2e1 * pow(a, 0.46e2) * pow(x, 0.92e2) - 0.3257853722609735023770226118853186615079493695636314134607443871481640625e73 / 0.34359738368e11 * pow(a, 0.12e2) * pow(x, 0.24e2) + 0.1063204964878717578703391361760871037218510442562391707442834722922724609375e76 / 0.274877906944e12 * pow(a, 0.9e1) * pow(x, 0.18e2) - 0.34814267526716355871458234844875e32 / 0.2048e4 * pow(a, 0.36e2) * pow(x, 0.72e2) + 0.6399446798983152915e19 / 0.64e2 * pow(a, 0.41e2) * pow(x, 0.82e2) - 0.4716268177538926695274018091913607421507751450340865779169497617067470703125e76 / 0.549755813888e12 * pow(a, 0.8e1) * pow(x, 0.16e2) + pow(a, 0.47e2) * pow(x, 0.94e2) - 0.126621188863065847328118308174236812886772651229441935765625e60 / 0.16777216e8 * pow(a, 0.22e2) * pow(x, 0.44e2) + 0.320919545670181098344282828421953373720599353079602385184070919223046875e72 / 0.17179869184e11 * pow(a, 0.13e2) * pow(x, 0.26e2) - 0.55668324131608129621148233913176717887943118111854003786872958359375e68 / 0.1073741824e10 * pow(a, 0.16e2) * pow(x, 0.32e2) - 0.16261788223272125029507795836401820541666370183784375e53 / 0.1048576e7 * pow(a, 0.26e2) * pow(x, 0.52e2) + 0.2863419123827833461752580034821111485859515950623117146024991328125e67 / 0.536870912e9 * pow(a, 0.17e2) * pow(x, 0.34e2) - 0.1507245258940358274083407519006273125e37 / 0.8192e4 * pow(a, 0.34e2) * pow(x, 0.68e2) - 0.127318548661917616869556740868244712971957553166328661244354453125e66 / 0.268435456e9 * pow(a, 0.18e2) * pow(x, 0.36e2) - 0.10554337766327355e17 / 0.32e2 * pow(a, 0.42e2) * pow(x, 0.84e2) + 0.1860456666997120102688947664601517444318710450528012470507786066953125e70 / 0.4294967296e10 * pow(a, 0.15e2) * pow(x, 0.30e2) - 0.190139300597357958519442476336071116708918798722798093711999013940677734375e75 / 0.137438953472e12 * pow(a, 0.10e2) * pow(x, 0.20e2) - 0.455517661156697265625924425e27 / 0.512e3 * pow(a, 0.38e2) * pow(x, 0.76e2) - 0.58113325978214598106715253269698381216583231907769453125e56 / 0.4194304e7 * pow(a, 0.24e2) * pow(x, 0.48e2) + 0.16220691130841973316115842570454314542179838803195463228935555388180029296875e77 / 0.1099511627776e13 * pow(a, 0.7e1) * pow(x, 0.14e2) + 0.27477857155344734796445846558004149733246234705619417195931471037244140625e74 / 0.68719476736e11 * pow(a, 0.11e2) * pow(x, 0.22e2) - 0.26545280803266513529218232687324681431088290047413694226141681704296875e71 / 0.8589934592e10 * pow(a, 0.14e2) * pow(x, 0.28e2) + 0.78910553856730185170595607654593428445266518944325804042647464923264658203125e77 / 0.4398046511104e13 * pow(a, 0.5e1) * pow(x, 0.10e2) - 0.102059836773255683171791512823369829826247654422601452415818567404326318359375e78 / 0.8796093022208e13 * pow(a, 0.4e1) * pow(x, 0.8e1) + 0.84426193453315976988418192677091968721160164155713004585059357365607958984375e77 / 0.17592186044416e14 * pow(a, 0.3e1) * pow(x, 0.6e1) - 0.39829479243003347978142644632726447903060988190035825478197401744430712890625e77 / 0.35184372088832e14 * a * a * pow(x, 0.4e1) + 0.8752188740824472469932637539741299362952297052334546844210239866285009765625e76 / 0.70368744177664e14 * a * x * x - 0.42015546295010184540768353194688980594621923924374590119828194688407783203125e77 / 0.2199023255552e13 * pow(a, 0.6e1) * pow(x, 0.12e2) + 0.30599376029146467280312302278935552681885246875e47 / 0.131072e6 * pow(a, 0.29e2) * pow(x, 0.58e2)) * sqrt(0.230399821477490114873670e24) * x * exp(-a * x * x / 0.2e1);
  return retval;
}
```