user: 请显示与下面列出的汇编代码相匹配的C语言实现:

```asm
<gsw_cabbeling>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x470,%rsp
  movsd  %xmm0,-0x458(%rbp)
  movsd  %xmm1,-0x460(%rbp)
  movsd  %xmm2,-0x468(%rbp)
  movsd  D406(%rip),%xmm0
  movsd  %xmm0,-0x450(%rbp)
  movsd  D39(%rip),%xmm0
  movsd  %xmm0,-0x448(%rbp)
  movsd  D135(%rip),%xmm0
  movsd  %xmm0,-0x440(%rbp)
  movsd  D47(%rip),%xmm0
  movsd  %xmm0,-0x438(%rbp)
  movsd  D346(%rip),%xmm0
  movsd  %xmm0,-0x430(%rbp)
  movsd  D976(%rip),%xmm0
  movsd  %xmm0,-0x428(%rbp)
  movsd  D527(%rip),%xmm0
  movsd  %xmm0,-0x420(%rbp)
  movsd  D451(%rip),%xmm0
  movsd  %xmm0,-0x418(%rbp)
  movsd  D231(%rip),%xmm0
  movsd  %xmm0,-0x410(%rbp)
  movsd  D454(%rip),%xmm0
  movsd  %xmm0,-0x408(%rbp)
  movsd  D571(%rip),%xmm0
  movsd  %xmm0,-0x400(%rbp)
  movsd  D305(%rip),%xmm0
  movsd  %xmm0,-0x3f8(%rbp)
  movsd  D914(%rip),%xmm0
  movsd  %xmm0,-0x3f0(%rbp)
  movsd  D383(%rip),%xmm0
  movsd  %xmm0,-0x3e8(%rbp)
  movsd  D226(%rip),%xmm0
  movsd  %xmm0,-0x3e0(%rbp)
  movsd  D292(%rip),%xmm0
  movsd  %xmm0,-0x3d8(%rbp)
  movsd  D503(%rip),%xmm0
  movsd  %xmm0,-0x3d0(%rbp)
  movsd  D1086(%rip),%xmm0
  movsd  %xmm0,-0x3c8(%rbp)
  movsd  D165(%rip),%xmm0
  movsd  %xmm0,-0x3c0(%rbp)
  movsd  D203(%rip),%xmm0
  movsd  %xmm0,-0x3b8(%rbp)
  movsd  D922(%rip),%xmm0
  movsd  %xmm0,-0x3b0(%rbp)
  movsd  D96(%rip),%xmm0
  movsd  %xmm0,-0x3a8(%rbp)
  movsd  D826(%rip),%xmm0
  movsd  %xmm0,-0x3a0(%rbp)
  movsd  D302(%rip),%xmm0
  movsd  %xmm0,-0x398(%rbp)
  movsd  D643(%rip),%xmm0
  movsd  %xmm0,-0x390(%rbp)
  movsd  D197(%rip),%xmm0
  movsd  %xmm0,-0x388(%rbp)
  movsd  D617(%rip),%xmm0
  movsd  %xmm0,-0x380(%rbp)
  movsd  D462(%rip),%xmm0
  movsd  %xmm0,-0x378(%rbp)
  movsd  D93(%rip),%xmm0
  movsd  %xmm0,-0x370(%rbp)
  movsd  D170(%rip),%xmm0
  movsd  %xmm0,-0x368(%rbp)
  movsd  D1001(%rip),%xmm0
  movsd  %xmm0,-0x360(%rbp)
  movsd  D73(%rip),%xmm0
  movsd  %xmm0,-0x358(%rbp)
  movsd  D691(%rip),%xmm0
  movsd  %xmm0,-0x350(%rbp)
  movsd  D185(%rip),%xmm0
  movsd  %xmm0,-0x348(%rbp)
  movsd  D707(%rip),%xmm0
  movsd  %xmm0,-0x340(%rbp)
  movsd  D161(%rip),%xmm0
  movsd  %xmm0,-0x338(%rbp)
  movsd  D635(%rip),%xmm0
  movsd  %xmm0,-0x330(%rbp)
  movsd  D804(%rip),%xmm0
  movsd  %xmm0,-0x328(%rbp)
  movsd  D102(%rip),%xmm0
  movsd  %xmm0,-0x320(%rbp)
  movsd  D811(%rip),%xmm0
  movsd  %xmm0,-0x318(%rbp)
  movsd  D644(%rip),%xmm0
  movsd  %xmm0,-0x310(%rbp)
  movsd  D534(%rip),%xmm0
  movsd  %xmm0,-0x308(%rbp)
  movsd  D1097(%rip),%xmm0
  movsd  %xmm0,-0x300(%rbp)
  movsd  D9(%rip),%xmm0
  movsd  %xmm0,-0x2f8(%rbp)
  movsd  D1013(%rip),%xmm0
  movsd  %xmm0,-0x2f0(%rbp)
  movsd  D288(%rip),%xmm0
  movsd  %xmm0,-0x2e8(%rbp)
  movsd  D744(%rip),%xmm0
  movsd  %xmm0,-0x2e0(%rbp)
  movsd  D685(%rip),%xmm0
  movsd  %xmm0,-0x2d8(%rbp)
  movsd  D39(%rip),%xmm0
  movsd  %xmm0,-0x2d0(%rbp)
  movsd  D946(%rip),%xmm0
  movsd  %xmm0,-0x2c8(%rbp)
  movsd  D947(%rip),%xmm0
  movsd  %xmm0,-0x2c0(%rbp)
  movsd  D976(%rip),%xmm0
  movsd  %xmm0,-0x2b8(%rbp)
  movsd  D948(%rip),%xmm0
  movsd  %xmm0,-0x2b0(%rbp)
  movsd  D231(%rip),%xmm0
  movsd  %xmm0,-0x2a8(%rbp)
  movsd  D319(%rip),%xmm0
  movsd  %xmm0,-0x2a0(%rbp)
  movsd  D1079(%rip),%xmm0
  movsd  %xmm0,-0x298(%rbp)
  movsd  D914(%rip),%xmm0
  movsd  %xmm0,-0x290(%rbp)
  movsd  D871(%rip),%xmm0
  movsd  %xmm0,-0x288(%rbp)
  movsd  D292(%rip),%xmm0
  movsd  %xmm0,-0x280(%rbp)
  movsd  D1086(%rip),%xmm0
  movsd  %xmm0,-0x278(%rbp)
  movsd  D785(%rip),%xmm0
  movsd  %xmm0,-0x270(%rbp)
  movsd  D96(%rip),%xmm0
  movsd  %xmm0,-0x268(%rbp)
  movsd  D278(%rip),%xmm0
  movsd  %xmm0,-0x260(%rbp)
  movsd  D44(%rip),%xmm0
  movsd  %xmm0,-0x258(%rbp)
  movsd  D92(%rip),%xmm0
  movsd  %xmm0,-0x250(%rbp)
  movsd  D617(%rip),%xmm0
  movsd  %xmm0,-0x248(%rbp)
  movsd  D189(%rip),%xmm0
  movsd  %xmm0,-0x240(%rbp)
  movsd  D585(%rip),%xmm0
  movsd  %xmm0,-0x238(%rbp)
  movsd  D700(%rip),%xmm0
  movsd  %xmm0,-0x230(%rbp)
  movsd  D73(%rip),%xmm0
  movsd  %xmm0,-0x228(%rbp)
  movsd  D356(%rip),%xmm0
  movsd  %xmm0,-0x220(%rbp)
  movsd  D724(%rip),%xmm0
  movsd  %xmm0,-0x218(%rbp)
  movsd  D129(%rip),%xmm0
  movsd  %xmm0,-0x210(%rbp)
  movsd  D804(%rip),%xmm0
  movsd  %xmm0,-0x208(%rbp)
  movsd  D112(%rip),%xmm0
  movsd  %xmm0,-0x200(%rbp)
  movsd  D978(%rip),%xmm0
  movsd  %xmm0,-0x1f8(%rbp)
  movsd  D534(%rip),%xmm0
  movsd  %xmm0,-0x1f0(%rbp)
  movsd  D9(%rip),%xmm0
  movsd  %xmm0,-0x1e8(%rbp)
  movsd  D11(%rip),%xmm0
  movsd  %xmm0,-0x1e0(%rbp)
  movsd  D288(%rip),%xmm0
  movsd  %xmm0,-0x1d8(%rbp)
  movsd  D685(%rip),%xmm0
  movsd  %xmm0,-0x1d0(%rbp)
  movsd  D346(%rip),%xmm0
  movsd  %xmm0,-0x1c8(%rbp)
  movsd  D976(%rip),%xmm0
  movsd  %xmm0,-0x1c0(%rbp)
  movsd  D527(%rip),%xmm0
  movsd  %xmm0,-0x1b8(%rbp)
  movsd  D1095(%rip),%xmm0
  movsd  %xmm0,-0x1b0(%rbp)
  movsd  D89(%rip),%xmm0
  movsd  %xmm0,-0x1a8(%rbp)
  movsd  D687(%rip),%xmm0
  movsd  %xmm0,-0x1a0(%rbp)
  movsd  D425(%rip),%xmm0
  movsd  %xmm0,-0x198(%rbp)
  movsd  D226(%rip),%xmm0
  movsd  %xmm0,-0x190(%rbp)
  movsd  D292(%rip),%xmm0
  movsd  %xmm0,-0x188(%rbp)
  movsd  D203(%rip),%xmm0
  movsd  %xmm0,-0x180(%rbp)
  movsd  D197(%rip),%xmm0
  movsd  %xmm0,-0x178(%rbp)
  movsd  D617(%rip),%xmm0
  movsd  %xmm0,-0x170(%rbp)
  movsd  D462(%rip),%xmm0
  movsd  %xmm0,-0x168(%rbp)
  movsd  D93(%rip),%xmm0
  movsd  %xmm0,-0x160(%rbp)
  movsd  D170(%rip),%xmm0
  movsd  %xmm0,-0x158(%rbp)
  movsd  D196(%rip),%xmm0
  movsd  %xmm0,-0x150(%rbp)
  movsd  D183(%rip),%xmm0
  movsd  %xmm0,-0x148(%rbp)
  movsd  D339(%rip),%xmm0
  movsd  %xmm0,-0x140(%rbp)
  movsd  D414(%rip),%xmm0
  movsd  %xmm0,-0x138(%rbp)
  movsd  D1039(%rip),%xmm0
  movsd  %xmm0,-0x130(%rbp)
  movsd  D1046(%rip),%xmm0
  movsd  %xmm0,-0x128(%rbp)
  movsd  D644(%rip),%xmm0
  movsd  %xmm0,-0x120(%rbp)
  movsd  D534(%rip),%xmm0
  movsd  %xmm0,-0x118(%rbp)
  movsd  D288(%rip),%xmm0
  movsd  %xmm0,-0x110(%rbp)
  mov    -0x458(%rbp),%rax
  movq   %rax,%xmm0
  call   <sqrt@plt>
  movq   %xmm0,%rax
  mov    %rax,-0x108(%rbp)
  movsd  -0x438(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x440(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x448(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x450(%rbp),%xmm1
  movsd  -0x420(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x428(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x430(%rbp),%xmm2
  movsd  -0x400(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x408(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x410(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x418(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x3e8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x3f0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x3f8(%rbp),%xmm2
  movsd  -0x3d8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x3e0(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm2
  movsd  -0x3c0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x3c8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm3
  addsd  -0x3d0(%rbp),%xmm3
  movsd  -0x3b8(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm3,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x100(%rbp)
  movsd  -0x390(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x398(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x3a0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x3a8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x3b0(%rbp),%xmm1
  movsd  -0x368(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x370(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x378(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x380(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x388(%rbp),%xmm2
  movsd  -0x338(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm2
  movsd  -0x340(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x348(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x350(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x358(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x360(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x318(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x320(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x328(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x330(%rbp),%xmm2
  movsd  -0x308(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x310(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm2
  movsd  -0x2f0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm3
  addsd  -0x2f8(%rbp),%xmm3
  movsd  -0x2e8(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm3,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm3
  addsd  -0x300(%rbp),%xmm3
  movsd  -0x2d8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2e0(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm3,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xf8(%rbp)
  movsd  -0x2c0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2c8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x2d0(%rbp),%xmm1
  movsd  -0x2b0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x2b8(%rbp),%xmm2
  movsd  -0x298(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2a0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2a8(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x288(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x290(%rbp),%xmm2
  movsd  -0x280(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm2
  movsd  -0x270(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x278(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xf0(%rbp)
  movsd  -0x250(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x258(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x260(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x268(%rbp),%xmm1
  movsd  -0x230(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x238(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x240(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x248(%rbp),%xmm2
  movsd  -0x210(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x218(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x220(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x228(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x1f8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x200(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x208(%rbp),%xmm2
  movsd  -0x1f0(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm2
  movsd  -0x1e0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm3
  addsd  -0x1e8(%rbp),%xmm3
  movsd  -0x1d8(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm3
  movsd  -0x1d0(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm3,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xe8(%rbp)
  movsd  -0x2c0(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x2c8(%rbp),%xmm1
  movsd  -0x298(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2a0(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  -0x2b0(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x270(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  -0x288(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xe0(%rbp)
  movsd  -0x2b0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x2b8(%rbp),%xmm1
  movsd  -0x108(%rbp),%xmm2
  movsd  D574(%rip),%xmm0
  mulsd  %xmm0,%xmm2
  movsd  -0x298(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2a0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x2a8(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x280(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xd8(%rbp)
  movsd  -0x1b8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1c0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x1c8(%rbp),%xmm1
  movsd  -0x198(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1a0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1a8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1b0(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x188(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x190(%rbp),%xmm2
  movsd  -0x180(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xd0(%rbp)
  movsd  -0x158(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x160(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x168(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x170(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x178(%rbp),%xmm1
  movsd  -0x130(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x138(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x140(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x148(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x150(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x128(%rbp),%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x110(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  -0x118(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x120(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xc8(%rbp)
  movsd  -0x258(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  %xmm0,%xmm1
  movsd  -0x250(%rbp),%xmm2
  movsd  D1105(%rip),%xmm0
  mulsd  %xmm2,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x260(%rbp),%xmm1
  movsd  -0x238(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  %xmm0,%xmm2
  movsd  -0x230(%rbp),%xmm3
  movsd  D1105(%rip),%xmm0
  mulsd  %xmm3,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x240(%rbp),%xmm2
  movsd  -0x218(%rbp),%xmm0
  movapd %xmm0,%xmm3
  addsd  %xmm0,%xmm3
  movsd  -0x210(%rbp),%xmm4
  movsd  D1105(%rip),%xmm0
  mulsd  %xmm4,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  %xmm3,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x220(%rbp),%xmm0
  mulsd  -0x108(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x458(%rbp),%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x1f8(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  -0x200(%rbp),%xmm2
  movsd  -0x1e0(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm2,%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xc0(%rbp)
  movsd  -0x230(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x238(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x240(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  -0x248(%rbp),%xmm1
  movsd  -0x108(%rbp),%xmm2
  movsd  D574(%rip),%xmm0
  mulsd  %xmm0,%xmm2
  movsd  -0x210(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x218(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x220(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x228(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  movsd  -0x468(%rbp),%xmm0
  mulsd  -0x1d8(%rbp),%xmm0
  addsd  -0x1f0(%rbp),%xmm0
  mulsd  -0x468(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xb8(%rbp)
  movsd  -0x108(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  %xmm0,%xmm2
  movsd  D922(%rip),%xmm0
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  movsd  -0x130(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x138(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x140(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x148(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x150(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  -0x128(%rbp),%xmm1
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0xb0(%rbp)
  movsd  -0x108(%rbp),%xmm0
  movapd %xmm0,%xmm2
  addsd  %xmm0,%xmm2
  movsd  D922(%rip),%xmm0
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  movsd  -0x198(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1a0(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1a8(%rbp),%xmm0
  mulsd  -0x460(%rbp),%xmm0
  addsd  -0x1b0(%rbp),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0xa8(%rbp)
  movsd  -0xc0(%rbp),%xmm0
  divsd  -0xf8(%rbp),%xmm0
  movsd  %xmm0,-0xa0(%rbp)
  movsd  -0xe8(%rbp),%xmm0
  mulsd  -0xf0(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0x100(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x98(%rbp)
  movsd  -0xe0(%rbp),%xmm0
  divsd  -0x100(%rbp),%xmm0
  movsd  %xmm0,-0x90(%rbp)
  movsd  -0xf0(%rbp),%xmm0
  divsd  -0x100(%rbp),%xmm0
  movsd  %xmm0,-0x88(%rbp)
  movsd  -0x98(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  %xmm0,%xmm1
  movsd  -0xa0(%rbp),%xmm0
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  subsd  -0x90(%rbp),%xmm1
  movsd  -0x88(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  -0x88(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x80(%rbp)
  movsd  -0x100(%rbp),%xmm0
  mulsd  -0xe8(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0xf0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x78(%rbp)
  movsd  -0x100(%rbp),%xmm0
  mulsd  -0xc8(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0xd0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x70(%rbp)
  movsd  -0xb8(%rbp),%xmm0
  divsd  -0xf8(%rbp),%xmm0
  movsd  %xmm0,-0x68(%rbp)
  movsd  -0xe8(%rbp),%xmm0
  mulsd  -0xd0(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0x100(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x60(%rbp)
  movsd  -0xc8(%rbp),%xmm0
  mulsd  -0xf0(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0x100(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x58(%rbp)
  movsd  -0xd8(%rbp),%xmm0
  divsd  -0x100(%rbp),%xmm0
  movsd  %xmm0,-0x50(%rbp)
  movsd  -0xf0(%rbp),%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0xd0(%rbp),%xmm1
  movsd  -0x100(%rbp),%xmm0
  movapd %xmm0,%xmm2
  mulsd  %xmm0,%xmm2
  divsd  %xmm2,%xmm1
  movapd %xmm1,%xmm0
  movsd  %xmm0,-0x48(%rbp)
  movsd  -0x68(%rbp),%xmm0
  subsd  -0x60(%rbp),%xmm0
  subsd  -0x58(%rbp),%xmm0
  movapd %xmm0,%xmm1
  subsd  -0x50(%rbp),%xmm1
  movsd  -0x48(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x40(%rbp)
  movsd  -0x100(%rbp),%xmm0
  mulsd  -0xe8(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0xf0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  -0x100(%rbp),%xmm0
  mulsd  -0xc8(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0xd0(%rbp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  -0xb0(%rbp),%xmm0
  divsd  -0xf8(%rbp),%xmm0
  movsd  %xmm0,-0x28(%rbp)
  movsd  -0xc8(%rbp),%xmm0
  mulsd  -0xd0(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0x100(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x20(%rbp)
  movsd  -0xf8(%rbp),%xmm0
  mulsd  -0xa8(%rbp),%xmm0
  movsd  -0xf8(%rbp),%xmm1
  mulsd  -0x100(%rbp),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x18(%rbp)
  movsd  -0xd0(%rbp),%xmm0
  divsd  -0x100(%rbp),%xmm0
  movsd  %xmm0,-0x10(%rbp)
  movsd  -0x20(%rbp),%xmm0
  movapd %xmm0,%xmm1
  addsd  %xmm0,%xmm1
  movsd  -0x28(%rbp),%xmm0
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  subsd  -0x18(%rbp),%xmm1
  movsd  -0x10(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  mulsd  -0x10(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x78(%rbp),%xmm0
  divsd  -0x70(%rbp),%xmm0
  addsd  %xmm0,%xmm0
  movapd %xmm0,%xmm2
  mulsd  -0x40(%rbp),%xmm2
  movsd  -0x80(%rbp),%xmm0
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  movsd  -0x38(%rbp),%xmm0
  movapd %xmm0,%xmm2
  divsd  -0x30(%rbp),%xmm2
  movsd  -0x38(%rbp),%xmm0
  divsd  -0x30(%rbp),%xmm0
  mulsd  %xmm2,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  addsd  %xmm1,%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  leave
  ret
```

tool_calls: name: extract_symbolic_data
arguments: data_tag: D406
data_type: f64
name: extract_symbolic_data
arguments: data_tag: D39
data_type: f64
name: extract_symbolic_data
arguments: data_tag: D135
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D47
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D346
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D976
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D527
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D451
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D231
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D454
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D571
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D305
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D914
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D383
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D226
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D292
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D503
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1086
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D165
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D203
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D922
data_type: f64
name: extract_symbolic_data
arguments: data_tag: D96
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D826
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D302
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D643
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D197
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D617
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D462
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D93
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D170
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1001
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D73
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D691
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D185
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D707
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D161
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D635
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D804
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D102
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D811
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D644
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D534
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1097
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D9
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1013
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D288
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D744
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D685
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D946
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D947
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D948
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D319
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1079
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D871
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D785
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D278
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D44
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D92
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D189
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D585
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D700
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D356
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D724
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D129
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D112
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D978
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D11
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1095
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D89
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D687
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D425
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D196
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D183
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D339
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D414
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1039
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1046
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D574
data_type: byte[8]
name: extract_symbolic_data
arguments: data_tag: D1105
data_type: f64

tool: D406: 999.8420897506056

tool: D39: 2.839940833161907

tool: {"D135": [0x8e,0x15,0x07,0xbe,0xd4,0x1d,0xa0,0xbf]}

tool: {"D47": [0x1f,0x14,0xa5,0x0a,0xda,0x5c,0x53,0x3f]}

tool: {"D346": [0xe4,0x32,0xf4,0xca,0xc0,0xca,0x1a,0xc0]}

tool: {"D976": [0xf2,0xa0,0x4f,0x84,0xed,0x94,0x9e,0xbf]}

tool: {"D527": [0xfc,0x2c,0x45,0x01,0x00,0x83,0x2e,0x3f]}

tool: {"D451": [0xfc,0x2d,0x58,0xb1,0x3a,0x6c,0xa4,0xbf]}

tool: {"D231": [0xbf,0xb2,0x6b,0xaa,0x59,0xb2,0x40,0x3f]}

tool: {"D454": [0xd6,0xa6,0x84,0xcc,0x10,0xed,0xed,0xbe]}

tool: {"D571": [0x73,0x33,0x84,0xef,0x4f,0x14,0x86,0x3e]}

tool: {"D305": [0xb8,0x52,0x81,0xe0,0x61,0xde,0x96,0xbf]}

tool: {"D914": [0xd1,0x33,0xb0,0x73,0xcd,0x84,0x36,0xbf]}

tool: {"D383": [0x6e,0xb3,0xdd,0x0b,0xa2,0x41,0xcf,0x3e]}

tool: {"D226": [0xea,0x40,0xd6,0x96,0x94,0xae,0x27,0xbf]}

tool: {"D292": [0x0d,0x0d,0x3e,0x7f,0x28,0x13,0xa7,0x3e]}

tool: {"D503": [0xb4,0x8a,0x75,0x40,0x7b,0xb7,0x94,0xbe]}

tool: {"D1086": [0x40,0x72,0xfa,0x98,0x94,0x59,0x55,0xbe]}

tool: {"D165": [0x18,0xe6,0x61,0x34,0xd2,0x57,0xa7,0xbd]}

tool: {"D203": [0x3d,0xae,0x24,0x03,0xdc,0x50,0xe5,0x3d]}

tool: D922: 1

tool: {"D96": [0xb6,0xcd,0x91,0xdc,0x8a,0xbd,0x66,0x3f]}

tool: {"D826": [0x63,0xc6,0xe2,0xf0,0x2d,0xa3,0xf8,0xbe]}

tool: {"D302": [0x42,0xd1,0x39,0xf4,0x45,0xc8,0xb2,0x3e]}

tool: {"D643": [0x40,0x56,0x29,0xd6,0xcf,0x2b,0x07,0x3e]}

tool: {"D197": [0x0f,0x4d,0x4a,0x59,0xcf,0xce,0x7e,0xbf]}

tool: {"D617": [0xbc,0xe6,0xbd,0x4a,0x61,0xfc,0xfc,0xbe]}

tool: {"D462": [0x9b,0x60,0x15,0x69,0x6b,0xf3,0x80,0x3e]}

tool: {"D93": [0xda,0x54,0xdf,0x5d,0x67,0x5e,0x10,0x3e]}

tool: {"D170": [0x25,0x50,0x24,0x19,0xed,0xe9,0xb3,0xbd]}

tool: {"D1001": [0xe4,0x53,0x23,0x49,0xa0,0x51,0x01,0xbf]}

tool: {"D73": [0x2d,0xaf,0xa5,0xc9,0x09,0x83,0x99,0x3e]}

tool: {"D691": [0x57,0x27,0x46,0x6b,0x35,0x7a,0x40,0xbe]}

tool: {"D185": [0x61,0xf7,0x2f,0x26,0x08,0x7a,0xc9,0xbd]}

tool: {"D707": [0x8b,0x87,0x54,0x54,0x4b,0x95,0x87,0x3d]}

tool: {"D161": [0xf6,0x68,0xb1,0x23,0xf5,0xba,0xd6,0x3e]}

tool: {"D635": [0x9b,0xcc,0x5a,0x74,0xff,0xc0,0xfc,0xbe]}

tool: {"D804": [0xa4,0xa8,0x06,0xd8,0x74,0x8f,0x95,0xbe]}

tool: {"D102": [0x58,0xd0,0xf2,0x4f,0xfe,0x69,0x2b,0x3e]}

tool: {"D811": [0xb7,0x34,0xcf,0x2a,0x41,0xfc,0x80,0xbd]}

tool: {"D644": [0x8f,0x77,0xaa,0x37,0x2c,0xaa,0x7d,0xbe]}

tool: {"D534": [0xe8,0x94,0x78,0xf4,0xa0,0x57,0x05,0x3e]}

tool: {"D1097": [0x5a,0x66,0xbb,0x13,0x58,0xc2,0xde,0xbd]}

tool: {"D9": [0x61,0xf3,0x4c,0xa2,0x49,0x59,0xb5,0xbd]}

tool: {"D1013": [0x10,0xf7,0x4c,0x08,0xff,0xfe,0x14,0xbd]}

tool: {"D288": [0x3e,0xd3,0xdc,0x5f,0x9b,0x35,0x09,0x3d]}

tool: {"D744": [0xeb,0xc5,0x77,0x63,0x5d,0xa0,0xd5,0xbc]}

tool: {"D685": [0x2c,0x35,0x32,0x6d,0xf1,0x75,0x91,0x3c]}

tool: {"D946": [0x8f,0x15,0x07,0xbe,0xd4,0x1d,0xb0,0xbf]}

tool: {"D947": [0x2f,0x9e,0xf7,0x0f,0x47,0x0b,0x6d,0x3f]}

tool: {"D948": [0xfc,0x2c,0x45,0x01,0x00,0x83,0x3e,0x3f]}

tool: {"D319": [0xd3,0xa6,0x84,0xcc,0x10,0xed,0xfd,0xbe]}

tool: {"D1079": [0x98,0x26,0xa3,0xf3,0x3b,0x8f,0xa0,0x3e]}

tool: {"D871": [0x6f,0xb3,0xdd,0x0b,0xa2,0x41,0xdf,0x3e]}

tool: {"D785": [0x18,0xe6,0x61,0x34,0xd2,0x57,0xb7,0xbd]}

tool: {"D278": [0x63,0xc6,0xe2,0xf0,0x2d,0xa3,0x08,0xbf]}

tool: {"D44": [0xe6,0xb9,0x56,0xee,0x68,0x2c,0xcc,0x3e]}

tool: {"D92": [0x3f,0x56,0x29,0xd6,0xcf,0x2b,0x27,0x3e]}

tool: {"D189": [0x99,0x60,0x15,0x69,0x6b,0xf3,0x90,0x3e]}

tool: {"D585": [0x48,0xff,0xce,0x0c,0x9b,0x8d,0x28,0x3e]}

tool: {"D700": [0x25,0x50,0x24,0x19,0xed,0xe9,0xd3,0xbd]}

tool: {"D356": [0x58,0x27,0x46,0x6b,0x35,0x7a,0x50,0xbe]}

tool: {"D724": [0x88,0xf9,0xa3,0x1c,0x86,0x1b,0xe3,0xbd]}

tool: {"D129": [0x89,0x87,0x54,0x54,0x4b,0x95,0xa7,0x3d]}

tool: {"D112": [0x58,0xd0,0xf2,0x4f,0xfe,0x69,0x3b,0x3e]}

tool: {"D978": [0x14,0xcf,0x36,0xc0,0x61,0x7a,0x99,0xbd]}

tool: {"D11": [0x11,0xf7,0x4c,0x08,0xff,0xfe,0x24,0xbd]}

tool: {"D1095": [0xfa,0x44,0x04,0x0a,0x58,0xa2,0xae,0xbf]}

tool: {"D89": [0x1f,0x8c,0xa1,0x7f,0x86,0x0b,0x49,0x3f]}

tool: {"D687": [0x1f,0x7d,0x63,0x99,0xcc,0x71,0xf6,0xbe]}

tool: {"D425": [0x97,0x26,0xa3,0xf3,0x3b,0x8f,0x90,0x3e]}

tool: {"D196": [0xd7,0xfd,0xb4,0x6d,0x70,0xfa,0x09,0xbf]}

tool: {"D183": [0x61,0x43,0x3c,0x57,0x47,0x22,0xa3,0x3e]}

tool: {"D339": [0x06,0x3b,0xe9,0x20,0x50,0xb7,0x48,0xbe]}

tool: {"D414": [0x89,0xf9,0xa3,0x1c,0x86,0x1b,0xd3,0xbd]}

tool: {"D1039": [0xa9,0x65,0x3f,0x7f,0xf8,0xaf,0x91,0x3d]}

tool: {"D1046": [0xf6,0x68,0xb1,0x23,0xf5,0xba,0xe6,0x3e]}

tool: {"D574": [0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x3f]}

tool: D1105: 3

assistant: ```c
double gsw_cabbeling(double sa, double ct, double p) {
  double v01 = 9.998420897506056e2, v02 = 2.839940833161907e0, v03 = -3.147759265588511e-2, v04 = 1.181805545074306e-3, v05 = -6.698001071123802e0, v06 = -2.986498947203215e-2, v07 = 2.327859407479162e-4, v08 = -3.988822378968490e-2, v09 = 5.095422573880500e-4, v10 = -1.426984671633621e-5, v11 = 1.645039373682922e-7, v12 = -2.233269627352527e-2, v13 = -3.436090079851880e-4, v14 = 3.726050720345733e-6, v15 = -1.806789763745328e-4, v16 = 6.876837219536232e-7, v17 = -3.087032500374211e-7, v18 = -1.988366587925593e-8, v19 = -1.061519070296458e-11, v20 = 1.550932729220080e-10, v21 = 1.0e0, v22 = 2.775927747785646e-3, v23 = -2.349607444135925e-5, v24 = 1.119513357486743e-6, v25 = 6.743689325042773e-10, v26 = -7.521448093615448e-3, v27 = -2.764306979894411e-5, v28 = 1.262937315098546e-7, v29 = 9.527875081696435e-10, v30 = -1.811147201949891e-11, v31 = -3.303308871386421e-5, v32 = 3.801564588876298e-7, v33 = -7.672876869259043e-9, v34 = -4.634182341116144e-11, v35 = 2.681097235569143e-12, v36 = 5.419326551148740e-6, v37 = -2.742185394906099e-5, v38 = -3.212746477974189e-7, v39 = 3.191413910561627e-9, v40 = -1.931012931541776e-12, v41 = -1.105097577149576e-7, v42 = 6.211426728363857e-10, v43 = -1.119011592875110e-10, v44 = -1.941660213148725e-11, v45 = -1.864826425365600e-14, v46 = 1.119522344879478e-14, v47 = -1.200507748551599e-15, v48 = 6.057902487546866e-17, a01 = 2.839940833161907e0, a02 = -6.295518531177023e-2, a03 = 3.545416635222918e-3, a04 = -2.986498947203215e-2, a05 = 4.655718814958324e-4, a06 = 5.095422573880500e-4, a07 = -2.853969343267241e-5, a08 = 4.935118121048767e-7, a09 = -3.436090079851880e-4, a10 = 7.452101440691467e-6, a11 = 6.876837219536232e-7, a12 = -1.988366587925593e-8, a13 = -2.123038140592916e-11, a14 = 2.775927747785646e-3, a15 = -4.699214888271850e-5, a16 = 3.358540072460230e-6, a17 = 2.697475730017109e-9, a18 = -2.764306979894411e-5, a19 = 2.525874630197091e-7, a20 = 2.858362524508931e-9, a21 = -7.244588807799565e-11, a22 = 3.801564588876298e-7, a23 = -1.534575373851809e-8, a24 = -1.390254702334843e-10, a25 = 1.072438894227657e-11, a26 = -3.212746477974189e-7, a27 = 6.382827821123254e-9, a28 = -5.793038794625329e-12, a29 = 6.211426728363857e-10, a30 = -1.941660213148725e-11, a31 = -3.729652850731201e-14, a32 = 1.119522344879478e-14, a33 = 6.057902487546866e-17, b01 = -6.698001071123802e0, b02 = -2.986498947203215e-2, b03 = 2.327859407479162e-4, b04 = -5.983233568452735e-2, b05 = 7.643133860820750e-4, b06 = -2.140477007450431e-5, b07 = 2.467559060524383e-7, b08 = -1.806789763745328e-4, b09 = 6.876837219536232e-7, b10 = 1.550932729220080e-10, b11 = -7.521448093615448e-3, b12 = -2.764306979894411e-5, b13 = 1.262937315098546e-7, b14 = 9.527875081696435e-10, b15 = -1.811147201949891e-11, b16 = -4.954963307079632e-5, b17 = 5.702346883314446e-7, b18 = -1.150931530388857e-8, b19 = -6.951273511674217e-11, b20 = 4.021645853353715e-12, b21 = 1.083865310229748e-5, b22 = -1.105097577149576e-7, b23 = 6.211426728363857e-10, b24 = 1.119522344879478e-14;
  double sqrtsa, v_hat_denominator, v_hat_numerator;
  double dvhatden_dct, dvhatnum_dct, dvhatden_dctdct, dvhatden_dctdsa;
  double dvhatden_dsa, dvhatnum_dsa, dvhatnum_dsadsa, dvhatden_dsadsa;
  double dvhatnum_dctdct, dvhatnum_dsadct, dvhatnum_dctdsa;
  double p1a, p1b, p1c, p1d, part1, factor2a, factor2b;
  double p2a, p2b, p2c, p2d, p2e, part2;
  double factor3a, factor3b, p3a, p3b, p3c, p3d, part3;
  sqrtsa = sqrt(sa);
  v_hat_denominator = v01 + ct * (v02 + ct * (v03 + v04 * ct)) + sa * (v05 + ct * (v06 + v07 * ct) + sqrtsa * (v08 + ct * (v09 + ct * (v10 + v11 * ct)))) + p * (v12 + ct * (v13 + v14 * ct) + sa * (v15 + v16 * ct) + p * (v17 + ct * (v18 + v19 * ct) + v20 * sa));
  v_hat_numerator = v21 + ct * (v22 + ct * (v23 + ct * (v24 + v25 * ct))) + sa * (v26 + ct * (v27 + ct * (v28 + ct * (v29 + v30 * ct))) + v36 * sa + sqrtsa * (v31 + ct * (v32 + ct * (v33 + ct * (v34 + v35 * ct))))) + p * (v37 + ct * (v38 + ct * (v39 + v40 * ct)) + sa * (v41 + v42 * ct) + p * (v43 + ct * (v44 + v45 * ct + v46 * sa) + p * (v47 + v48 * ct)));
  dvhatden_dct = a01 + ct * (a02 + a03 * ct) + sa * (a04 + a05 * ct + sqrtsa * (a06 + ct * (a07 + a08 * ct))) + p * (a09 + a10 * ct + a11 * sa + p * (a12 + a13 * ct));
  dvhatnum_dct = a14 + ct * (a15 + ct * (a16 + a17 * ct)) + sa * (a18 + ct * (a19 + ct * (a20 + a21 * ct)) + sqrtsa * (a22 + ct * (a23 + ct * (a24 + a25 * ct)))) + p * (a26 + ct * (a27 + a28 * ct) + a29 * sa + p * (a30 + a31 * ct + a32 * sa + a33 * p));
  dvhatden_dctdct = a02 + 2e0 * a03 * ct + sa * (a05 + sqrtsa * (a07 + 2e0 * a08 * ct)) + p * (a10 + a13 * p);
  dvhatden_dctdsa = a04 + a05 * ct + (3e0 / 2e0) * sqrtsa * (a06 + ct * (a07 + a08 * ct)) + a11 * p;
  dvhatden_dsa = b01 + ct * (b02 + b03 * ct) + sqrtsa * (b04 + ct * (b05 + ct * (b06 + b07 * ct))) + p * (b08 + b09 * ct + b10 * p);
  dvhatnum_dsa = b11 + ct * (b12 + ct * (b13 + ct * (b14 + b15 * ct))) + sqrtsa * (b16 + ct * (b17 + ct * (b18 + ct * (b19 + b20 * ct)))) + b21 * sa + p * (b22 + ct * (b23 + b24 * p));
  dvhatnum_dctdct = a15 + ct * (2 * a16 + 3 * a17 * ct) + sa * (a19 + ct * (2 * a20 + 3 * a21 * ct) + sqrtsa * (a23 + ct * (2 * a24 + 3 * a25 * ct))) + p * (a27 + 2 * a28 * ct + a31 * p);
  dvhatnum_dctdsa = a18 + ct * (a19 + ct * (a20 + a21 * ct)) + (3e0 / 2e0) * sqrtsa * (a22 + ct * (a23 + ct * (a24 + a25 * ct))) + p * (a29 + p * a32);
  dvhatnum_dsadsa = (1e0 / (2e0 * sqrtsa)) * (b16 + ct * (b17 + ct * (b18 + ct * (b19 + b20 * ct)))) + b21;
  dvhatden_dsadsa = (1e0 / (2e0 * sqrtsa)) * (b04 + ct * (b05 + ct * (b06 + b07 * ct)));
  p1a = dvhatnum_dctdct / v_hat_numerator;
  p1b = (dvhatnum_dct * dvhatden_dct) / (v_hat_numerator * v_hat_denominator);
  p1c = dvhatden_dctdct / v_hat_denominator;
  p1d = dvhatden_dct / v_hat_denominator;
  part1 = p1a - 2e0 * p1b - p1c + 2e0 * p1d * p1d;
  factor2a = (v_hat_denominator * dvhatnum_dct - v_hat_numerator * dvhatden_dct);
  factor2b = (v_hat_denominator * dvhatnum_dsa - v_hat_numerator * dvhatden_dsa);
  p2a = dvhatnum_dctdsa / v_hat_numerator;
  p2b = (dvhatnum_dct * dvhatden_dsa) / (v_hat_numerator * v_hat_denominator);
  p2c = (dvhatnum_dsa * dvhatden_dct) / (v_hat_numerator * v_hat_denominator);
  p2d = dvhatden_dctdsa / v_hat_denominator;
  p2e = (dvhatden_dct * dvhatden_dsa) / (v_hat_denominator * v_hat_denominator);
  part2 = p2a - p2b - p2c - p2d + 2e0 * p2e;
  factor3a = (v_hat_denominator * dvhatnum_dct - v_hat_numerator * dvhatden_dct);
  factor3b = (v_hat_denominator * dvhatnum_dsa - v_hat_numerator * dvhatden_dsa);
  p3a = dvhatnum_dsadsa / v_hat_numerator;
  p3b = (dvhatnum_dsa * dvhatden_dsa) / (v_hat_numerator * v_hat_denominator);
  p3c = (v_hat_numerator * dvhatden_dsadsa) / (v_hat_numerator * v_hat_denominator);
  p3d = dvhatden_dsa / v_hat_denominator;
  part3 = p3a - 2e0 * p3b - p3c + 2e0 * p3d * p3d;
  return (part1 - 2e0 * (factor2a / factor2b) * part2 + (factor3a / factor3b) * (factor3a / factor3b) * part3);
}
```