user: Translate the below assembly code into C programming language:

```asm
<HO_45>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x40,%rsp
  movsd  %xmm0,-0x18(%rbp)
  movsd  %xmm1,-0x20(%rbp)
  movsd  -0x20(%rbp),%xmm1
  movsd  D163(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  %xmm1,-0x28(%rbp)
  movsd  -0x20(%rbp),%xmm1
  movsd  D202(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D552(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movapd %xmm0,%xmm6
  mulsd  -0x30(%rbp),%xmm6
  movq   %xmm6,%rax
  movq   %rax,%xmm0
  call   <exp@plt>
  mulsd  -0x28(%rbp),%xmm0
  movsd  %xmm0,-0x28(%rbp)
  movsd  D256(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movapd %xmm0,%xmm5
  mulsd  -0x28(%rbp),%xmm5
  movsd  %xmm5,-0x28(%rbp)
  movsd  -0x20(%rbp),%xmm1
  movsd  D480(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  -0x20(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D598(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movapd %xmm0,%xmm6
  mulsd  -0x30(%rbp),%xmm6
  movsd  %xmm6,-0x30(%rbp)
  movsd  D32(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D207(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D319(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D113(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D410(%rip),%xmm1
  movapd %xmm0,%xmm4
  mulsd  %xmm1,%xmm4
  movsd  %xmm4,-0x38(%rbp)
  movsd  D318(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm3
  subsd  %xmm0,%xmm3
  movsd  %xmm3,-0x30(%rbp)
  movsd  D187(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D43(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D460(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D121(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D295(%rip),%xmm1
  movapd %xmm0,%xmm3
  mulsd  %xmm1,%xmm3
  movsd  %xmm3,-0x38(%rbp)
  movsd  D125(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm4
  subsd  %xmm0,%xmm4
  movsd  %xmm4,-0x30(%rbp)
  movsd  D225(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D340(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D376(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D265(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D622(%rip),%xmm1
  movapd %xmm0,%xmm2
  mulsd  %xmm1,%xmm2
  movsd  %xmm2,-0x38(%rbp)
  movsd  D265(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm5
  subsd  %xmm0,%xmm5
  movsd  %xmm5,-0x30(%rbp)
  movsd  D376(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D296(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D225(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D460(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D168(%rip),%xmm1
  movapd %xmm0,%xmm3
  mulsd  %xmm1,%xmm3
  movsd  %xmm3,-0x38(%rbp)
  movsd  D187(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movapd %xmm0,%xmm4
  addsd  -0x30(%rbp),%xmm4
  movsd  %xmm4,-0x30(%rbp)
  movsd  D390(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D85(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D167(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D72(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D374(%rip),%xmm1
  movapd %xmm0,%xmm7
  mulsd  %xmm1,%xmm7
  movsd  %xmm7,-0x38(%rbp)
  movsd  D154(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm6
  subsd  %xmm0,%xmm6
  movsd  %xmm6,-0x30(%rbp)
  movsd  D569(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D633(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D308(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D416(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D626(%rip),%xmm1
  movapd %xmm0,%xmm6
  mulsd  %xmm1,%xmm6
  movsd  %xmm6,-0x38(%rbp)
  movsd  D122(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm2
  subsd  %xmm0,%xmm2
  movsd  %xmm2,-0x30(%rbp)
  movsd  D125(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D442(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D121(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm2
  subsd  %xmm0,%xmm2
  movsd  %xmm2,-0x30(%rbp)
  movsd  D598(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D567(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  mulsd  -0x18(%rbp),%xmm0
  mulsd  -0x18(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm2
  subsd  %xmm0,%xmm2
  movsd  %xmm2,-0x30(%rbp)
  movsd  D319(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D97(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D32(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D318(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D419(%rip),%xmm1
  movapd %xmm0,%xmm2
  mulsd  %xmm1,%xmm2
  movsd  %xmm2,-0x38(%rbp)
  movsd  D113(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm7
  subsd  %xmm0,%xmm7
  movsd  %xmm7,-0x30(%rbp)
  movsd  D308(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D507(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D569(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D154(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D608(%rip),%xmm1
  movapd %xmm0,%xmm7
  mulsd  %xmm1,%xmm7
  movsd  %xmm7,-0x38(%rbp)
  movsd  D72(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm3
  subsd  %xmm0,%xmm3
  movsd  %xmm3,-0x30(%rbp)
  movsd  D167(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D332(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  movsd  %xmm0,-0x38(%rbp)
  movsd  D390(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D122(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D568(%rip),%xmm1
  movapd %xmm0,%xmm6
  mulsd  %xmm1,%xmm6
  movsd  %xmm6,-0x38(%rbp)
  movsd  D416(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  mulsd  -0x38(%rbp),%xmm0
  movsd  -0x30(%rbp),%xmm4
  subsd  %xmm0,%xmm4
  movsd  %xmm4,-0x30(%rbp)
  movsd  D342(%rip),%xmm0
  mov    -0x18(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  addsd  -0x30(%rbp),%xmm0
  movsd  %xmm0,-0x30(%rbp)
  movsd  D342(%rip),%xmm0
  mov    -0x20(%rbp),%rax
  movapd %xmm0,%xmm1
  movq   %rax,%xmm0
  call   <pow@plt>
  movsd  D586(%rip),%xmm1
  mulsd  %xmm1,%xmm0
  addsd  -0x30(%rbp),%xmm0
  mulsd  -0x28(%rbp),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movq   %xmm0,%rax
  movq   %rax,%xmm0
  leave
  ret
```

tool_calls: name: retrieve_data
arguments: data_tag: D163
type_guessed: f64
name: retrieve_data
arguments: data_tag: D202
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D552
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D256
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D480
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D598
type_guessed: f64
name: retrieve_data
arguments: data_tag: D32
type_guessed: f64
name: retrieve_data
arguments: data_tag: D207
type_guessed: f64
name: retrieve_data
arguments: data_tag: D319
type_guessed: f64
name: retrieve_data
arguments: data_tag: D113
type_guessed: f64
name: retrieve_data
arguments: data_tag: D410
type_guessed: f64
name: retrieve_data
arguments: data_tag: D318
type_guessed: f64
name: retrieve_data
arguments: data_tag: D187
type_guessed: f64
name: retrieve_data
arguments: data_tag: D43
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D460
type_guessed: f64
name: retrieve_data
arguments: data_tag: D121
type_guessed: f64
name: retrieve_data
arguments: data_tag: D295
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D125
type_guessed: f64
name: retrieve_data
arguments: data_tag: D225
type_guessed: f64
name: retrieve_data
arguments: data_tag: D340
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D376
type_guessed: f64
name: retrieve_data
arguments: data_tag: D265
type_guessed: f64
name: retrieve_data
arguments: data_tag: D622
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D296
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D168
type_guessed: f64
name: retrieve_data
arguments: data_tag: D390
type_guessed: f64
name: retrieve_data
arguments: data_tag: D85
type_guessed: f64
name: retrieve_data
arguments: data_tag: D167
type_guessed: f64
name: retrieve_data
arguments: data_tag: D72
type_guessed: f64
name: retrieve_data
arguments: data_tag: D374
type_guessed: f64
name: retrieve_data
arguments: data_tag: D154
type_guessed: f64
name: retrieve_data
arguments: data_tag: D569
type_guessed: f64
name: retrieve_data
arguments: data_tag: D633
type_guessed: f64
name: retrieve_data
arguments: data_tag: D308
type_guessed: f64
name: retrieve_data
arguments: data_tag: D416
type_guessed: f64
name: retrieve_data
arguments: data_tag: D626
type_guessed: f64
name: retrieve_data
arguments: data_tag: D122
type_guessed: f64
name: retrieve_data
arguments: data_tag: D442
type_guessed: f64
name: retrieve_data
arguments: data_tag: D567
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D97
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D419
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D507
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D608
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D332
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D568
type_guessed: byte[8]
name: retrieve_data
arguments: data_tag: D342
type_guessed: f64
name: retrieve_data
arguments: data_tag: D586
type_guessed: byte[8]

tool: D163: 2.695335856e+28

tool: {"D202": [0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0xbf]}

tool: {"D552": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0]}

tool: {"D256": [0x00,0x00,0x00,0x00,0x00,0xc0,0x46,0xc0]}

tool: {"D480": [0xa5,0xdd,0xc7,0x55,0x55,0x55,0x2d,0xc0]}

tool: D598: 42

tool: D32: 4

tool: D207: 61.59999995

tool: D319: 40

tool: D113: 6

tool: D410: 117.3333333

tool: D318: 38

tool: D187: 28

tool: {"D43": [0x2f,0x3b,0xec,0x06,0x0b,0x66,0xac,0x3e]}

tool: D460: 16

tool: D121: 26

tool: {"D295": [0x5f,0x2e,0x12,0xe2,0x5e,0x04,0xf4,0x3e]}

tool: D125: 18

tool: D225: 24

tool: {"D340": [0x6e,0xad,0x15,0x46,0xcb,0xf4,0x35,0x3f]}

tool: D376: 20

tool: D265: 22

tool: {"D622": [0x0c,0xdf,0x49,0x10,0x73,0xb6,0x72,0x3f]}

tool: {"D296": [0x45,0x53,0x61,0x49,0x6a,0xa8,0xa8,0x3f]}

tool: D168: 2.37557997

tool: D390: 12

tool: D85: 35.33675205

tool: D167: 32

tool: D72: 10

tool: D374: 81.06666652

tool: D154: 34

tool: D569: 8

tool: D633: 123.8518517

tool: D308: 36

tool: D416: 14

tool: D626: 10.76929587

tool: D122: 30

tool: D442: 0.3889838547

tool: {"D567": [0xd1,0xcf,0xef,0xd0,0x6e,0x26,0xf8,0x3b]}

tool: {"D97": [0x6a,0x77,0xbc,0x38,0xe4,0x4b,0x75,0x3c]}

tool: {"D419": [0xaa,0x13,0x71,0xac,0x07,0xbd,0xe6,0x3c]}

tool: {"D507": [0x62,0x4d,0x9d,0xcd,0x49,0x74,0x50,0x3d]}

tool: {"D608": [0x75,0x8d,0xcf,0x99,0x69,0x1f,0xb1,0x3d]}

tool: {"D332": [0xa4,0x61,0x42,0xa0,0x01,0x88,0x0a,0x3e]}

tool: {"D568": [0x90,0x52,0x41,0x58,0xdd,0x44,0x5f,0x3e]}

tool: D342: 44

tool: {"D586": [0x7c,0x4c,0x19,0x44,0xc2,0xfa,0x68,0x3b]}

assistant: ```c
double HO_45(const double L, const double x) {
  double retval = 0.2695335856e29 * x * exp(-0.5000000000e0 * x * x * pow(L, -0.2e1)) * pow(L, -0.91e2 / 0.2e1) * (-0.1466666668e2 * x * x * pow(L, 0.42e2) + 0.6159999995e2 * pow(x, 0.4e1) * pow(L, 0.40e2) - 0.1173333333e3 * pow(x, 0.6e1) * pow(L, 0.38e2) + 0.8463444042e-6 * pow(x, 0.28e2) * pow(L, 0.16e2) - 0.1908976822e-4 * pow(x, 0.26e2) * pow(L, 0.18e2) + 0.3350254320e-3 * pow(x, 0.24e2) * pow(L, 0.20e2) - 0.4568528621e-2 * pow(x, 0.22e2) * pow(L, 0.22e2) + 0.4815990587e-1 * pow(x, 0.20e2) * pow(L, 0.24e2) + 0.2375579970e1 * pow(x, 0.16e2) * pow(L, 0.28e2) + 0.3533675205e2 * pow(x, 0.12e2) * pow(L, 0.32e2) - 0.8106666652e2 * pow(x, 0.10e2) * pow(L, 0.34e2) + 0.1238518517e3 * pow(x, 0.8e1) * pow(L, 0.36e2) - 0.1076929587e2 * pow(x, 0.14e2) * pow(L, 0.30e2) - 0.3889838547e0 * pow(x, 0.18e2) * pow(L, 0.26e2) - 0.8182381781e-19 * pow(x, 0.42e2) * L * L + 0.1847172687e-16 * pow(x, 0.40e2) * pow(L, 0.4e1) - 0.2524469338e-14 * pow(x, 0.38e2) * pow(L, 0.6e1) + 0.2338289725e-12 * pow(x, 0.36e2) * pow(L, 0.8e1) - 0.1557300956e-10 * pow(x, 0.34e2) * pow(L, 0.10e2) + 0.7721617239e-9 * pow(x, 0.32e2) * pow(L, 0.12e2) - 0.2912152787e-7 * pow(x, 0.30e2) * pow(L, 0.14e2) + 0.1000000000e1 * pow(L, 0.44e2) + 0.1653006420e-21 * pow(x, 0.44e2));
  return retval;
}
```