user: 请从给定的汇编指令推导出C源代码：

```asm
<delta_t>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %edi,-0x14(%rbp)
  mov    %esi,-0x18(%rbp)
  mov    %rdx,-0x20(%rbp)
  mov    %rcx,-0x28(%rbp)
  cmpl   $0xfffff831,-0x14(%rbp)
  jl     L419
  cmpl   $0xbb8,-0x14(%rbp)
  jg     L419
  cmpl   $0x0,-0x18(%rbp)
  jle    L419
  cmpl   $0xc,-0x18(%rbp)
  jle    L428
L419:
  mov    $0xfffffffe,%eax
  jmp    L204
L428:
  pxor   %xmm1,%xmm1
  cvtsi2sdl -0x14(%rbp),%xmm1
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x18(%rbp),%xmm0
  movsd  D670(%rip),%xmm2
  subsd  %xmm2,%xmm0
  movsd  D437(%rip),%xmm2
  divsd  %xmm2,%xmm0
  addsd  %xmm1,%xmm0
  movsd  %xmm0,-0x10(%rbp)
  cmpl   $0xfffffe0c,-0x14(%rbp)
  jge    L483
  mov    -0x14(%rbp),%eax
  sub    $0x71c,%eax
  movslq %eax,%rdx
  imul   $0x51eb851f,%rdx,%rdx
  shr    $0x20,%rdx
  sar    $0x5,%edx
  sar    $0x1f,%eax
  mov    %eax,%ecx
  mov    %edx,%eax
  sub    %ecx,%eax
  pxor   %xmm0,%xmm0
  cvtsi2sd %eax,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D411(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D149(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L483:
  cmpl   $0xfffffe0c,-0x14(%rbp)
  jl     L439
  cmpl   $0x1f3,-0x14(%rbp)
  jg     L439
  movsd  -0x10(%rbp),%xmm0
  movsd  D588(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D764(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  D687(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D144(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D69(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D28(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D368(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D64(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L439:
  cmpl   $0x1f3,-0x14(%rbp)
  jle    L127
  cmpl   $0x63f,-0x14(%rbp)
  jg     L127
  movsd  -0x10(%rbp),%xmm0
  movsd  D544(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  D588(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D787(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  D816(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D723(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D803(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D548(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D603(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D831(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L127:
  cmpl   $0x63f,-0x14(%rbp)
  jle    L18
  cmpl   $0x6a3,-0x14(%rbp)
  jg     L18
  movsd  -0x10(%rbp),%xmm0
  movsd  D95(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movsd  D487(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  D56(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D836(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D30(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L18:
  cmpl   $0x6a3,-0x14(%rbp)
  jle    L373
  cmpl   $0x707,-0x14(%rbp)
  jg     L373
  movsd  -0x10(%rbp),%xmm0
  movsd  D624(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movsd  D126(%rip),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  movsd  D741(%rip),%xmm0
  subsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D6(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D835(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D753(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L373:
  cmpl   $0x707,-0x14(%rbp)
  jle    L171
  cmpl   $0x743,-0x14(%rbp)
  jg     L171
  movsd  -0x10(%rbp),%xmm0
  movsd  D100(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D1(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  D324(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D36(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D557(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D397(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D456(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D519(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D166(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L171:
  cmpl   $0x743,-0x14(%rbp)
  jle    L448
  cmpl   $0x76b,-0x14(%rbp)
  jg     L448
  movsd  -0x10(%rbp),%xmm0
  movsd  D547(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movsd  D500(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  D541(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D646(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D4(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D218(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D5(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L448:
  cmpl   $0x76b,-0x14(%rbp)
  jle    L287
  cmpl   $0x77f,-0x14(%rbp)
  jg     L287
  movsd  -0x10(%rbp),%xmm0
  movsd  D744(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D806(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  D529(%rip),%xmm0
  subsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D907(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D621(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D321(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L287:
  cmpl   $0x77f,-0x14(%rbp)
  jle    L13
  cmpl   $0x794,-0x14(%rbp)
  jg     L13
  movsd  -0x10(%rbp),%xmm0
  movsd  D554(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D833(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  movsd  D578(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D309(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D589(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L13:
  cmpl   $0x794,-0x14(%rbp)
  jle    L414
  cmpl   $0x7a8,-0x14(%rbp)
  jg     L414
  movsd  -0x10(%rbp),%xmm0
  movsd  D663(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movsd  D217(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  D889(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D724(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D294(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L414:
  cmpl   $0x7a8,-0x14(%rbp)
  jle    L486
  cmpl   $0x7c1,-0x14(%rbp)
  jg     L486
  movsd  -0x10(%rbp),%xmm0
  movsd  D749(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm0
  movsd  D137(%rip),%xmm2
  movapd %xmm0,%xmm1
  divsd  %xmm2,%xmm1
  movsd  D200(%rip),%xmm0
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D757(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D636(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L486:
  cmpl   $0x7c1,-0x14(%rbp)
  jle    L255
  cmpl   $0x7d4,-0x14(%rbp)
  jg     L255
  movsd  -0x10(%rbp),%xmm0
  movsd  D361(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D438(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  D363(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D596(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D551(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D853(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D425(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L255:
  cmpl   $0x7d4,-0x14(%rbp)
  jle    L466
  cmpl   $0x801,-0x14(%rbp)
  jg     L466
  movsd  -0x10(%rbp),%xmm0
  movsd  D361(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D585(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  D231(%rip),%xmm0
  addsd  %xmm1,%xmm0
  movapd %xmm0,%xmm1
  mulsd  -0x8(%rbp),%xmm1
  movsd  D206(%rip),%xmm0
  addsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L466:
  cmpl   $0x801,-0x14(%rbp)
  jle    L83
  cmpl   $0x865,-0x14(%rbp)
  jg     L83
  movsd  -0x10(%rbp),%xmm0
  movsd  D704(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  D588(%rip),%xmm1
  divsd  %xmm1,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D411(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D149(%rip),%xmm1
  subsd  %xmm1,%xmm0
  movsd  D329(%rip),%xmm1
  movapd %xmm1,%xmm2
  subsd  -0x10(%rbp),%xmm2
  movsd  D197(%rip),%xmm1
  mulsd  %xmm2,%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L351
L83:
  mov    -0x14(%rbp),%eax
  sub    $0x71c,%eax
  movslq %eax,%rdx
  imul   $0x51eb851f,%rdx,%rdx
  shr    $0x20,%rdx
  sar    $0x5,%edx
  sar    $0x1f,%eax
  mov    %eax,%ecx
  mov    %edx,%eax
  sub    %ecx,%eax
  pxor   %xmm0,%xmm0
  cvtsi2sd %eax,%xmm0
  movsd  %xmm0,-0x8(%rbp)
  movsd  -0x8(%rbp),%xmm1
  movsd  D411(%rip),%xmm0
  mulsd  %xmm1,%xmm0
  mulsd  -0x8(%rbp),%xmm0
  movsd  D149(%rip),%xmm1
  subsd  %xmm1,%xmm0
  mov    -0x20(%rbp),%rax
  movsd  %xmm0,(%rax)
L351:
  cmpl   $0x7a2,-0x14(%rbp)
  jle    L410
  cmpl   $0x7d5,-0x14(%rbp)
  jle    L273
L410:
  movsd  -0x10(%rbp),%xmm0
  movsd  D788(%rip),%xmm2
  movapd %xmm0,%xmm1
  subsd  %xmm2,%xmm1
  movsd  D489(%rip),%xmm0
  mulsd  %xmm0,%xmm1
  movsd  -0x10(%rbp),%xmm0
  movsd  D788(%rip),%xmm2
  subsd  %xmm2,%xmm0
  mulsd  %xmm1,%xmm0
  mov    -0x28(%rbp),%rax
  movsd  %xmm0,(%rax)
  jmp    L214
L273:
  mov    -0x28(%rbp),%rax
  pxor   %xmm0,%xmm0
  movsd  %xmm0,(%rax)
L214:
  mov    $0x0,%eax
L204:
  pop    %rbp
  ret
```

tool_calls: name: parse_data
arguments: label: D670
data_type: f64
name: parse_data
arguments: label: D437
data_type: byte[8]
name: parse_data
arguments: label: D411
data_type: byte[8]
name: parse_data
arguments: label: D149
data_type: byte[8]
name: parse_data
arguments: label: D588
data_type: byte[8]
name: parse_data
arguments: label: D764
data_type: f64
name: parse_data
arguments: label: D687
data_type: f64
name: parse_data
arguments: label: D144
data_type: f64
name: parse_data
arguments: label: D69
data_type: f64
name: parse_data
arguments: label: D28
data_type: f64
name: parse_data
arguments: label: D368
data_type: f64
name: parse_data
arguments: label: D64
data_type: f64
name: parse_data
arguments: label: D544
data_type: byte[8]
name: parse_data
arguments: label: D787
data_type: f64
name: parse_data
arguments: label: D816
data_type: f64
name: parse_data
arguments: label: D723
data_type: f64
name: parse_data
arguments: label: D803
data_type: f64
name: parse_data
arguments: label: D548
data_type: f64
name: parse_data
arguments: label: D603
data_type: f64
name: parse_data
arguments: label: D831
data_type: f64
name: parse_data
arguments: label: D95
data_type: byte[8]
name: parse_data
arguments: label: D487
data_type: f64
name: parse_data
arguments: label: D56
data_type: f64
name: parse_data
arguments: label: D836
data_type: f64
name: parse_data
arguments: label: D30
data_type: byte[8]
name: parse_data
arguments: label: D624
data_type: byte[8]
name: parse_data
arguments: label: D126
data_type: f64
name: parse_data
arguments: label: D741
data_type: f64
name: parse_data
arguments: label: D6
data_type: f64
name: parse_data
arguments: label: D835
data_type: f64
name: parse_data
arguments: label: D753
data_type: f64
name: parse_data
arguments: label: D100
data_type: byte[8]
name: parse_data
arguments: label: D1
data_type: f64
name: parse_data
arguments: label: D324
data_type: f64
name: parse_data
arguments: label: D36
data_type: f64
name: parse_data
arguments: label: D557
data_type: f64
name: parse_data
arguments: label: D397
data_type: f64
name: parse_data
arguments: label: D456
data_type: f64
name: parse_data
arguments: label: D519
data_type: f64
name: parse_data
arguments: label: D166
data_type: f64
name: parse_data
arguments: label: D547
data_type: byte[8]
name: parse_data
arguments: label: D500
data_type: f64
name: parse_data
arguments: label: D541
data_type: f64
name: parse_data
arguments: label: D646
data_type: f64
name: parse_data
arguments: label: D4
data_type: f64
name: parse_data
arguments: label: D218
data_type: f64
name: parse_data
arguments: label: D5
data_type: f64
name: parse_data
arguments: label: D744
data_type: byte[8]
name: parse_data
arguments: label: D806
data_type: f64
name: parse_data
arguments: label: D529
data_type: f64
name: parse_data
arguments: label: D907
data_type: f64
name: parse_data
arguments: label: D621
data_type: f64
name: parse_data
arguments: label: D321
data_type: f64
name: parse_data
arguments: label: D554
data_type: byte[8]
name: parse_data
arguments: label: D833
data_type: f64
name: parse_data
arguments: label: D578
data_type: f64
name: parse_data
arguments: label: D309
data_type: f64
name: parse_data
arguments: label: D589
data_type: f64
name: parse_data
arguments: label: D663
data_type: byte[8]
name: parse_data
arguments: label: D217
data_type: f64
name: parse_data
arguments: label: D889
data_type: byte[8]
name: parse_data
arguments: label: D724
data_type: f64
name: parse_data
arguments: label: D294
data_type: f64
name: parse_data
arguments: label: D749
data_type: byte[8]
name: parse_data
arguments: label: D137
data_type: f64
name: parse_data
arguments: label: D200
data_type: byte[8]
name: parse_data
arguments: label: D757
data_type: f64
name: parse_data
arguments: label: D636
data_type: f64
name: parse_data
arguments: label: D361
data_type: byte[8]
name: parse_data
arguments: label: D438
data_type: f64
name: parse_data
arguments: label: D363
data_type: f64
name: parse_data
arguments: label: D596
data_type: f64
name: parse_data
arguments: label: D551
data_type: f64
name: parse_data
arguments: label: D853
data_type: f64
name: parse_data
arguments: label: D425
data_type: f64
name: parse_data
arguments: label: D585
data_type: f64
name: parse_data
arguments: label: D231
data_type: f64
name: parse_data
arguments: label: D206
data_type: f64
name: parse_data
arguments: label: D704
data_type: byte[8]
name: parse_data
arguments: label: D329
data_type: byte[8]
name: parse_data
arguments: label: D197
data_type: f64
name: parse_data
arguments: label: D788
data_type: byte[8]
name: parse_data
arguments: label: D489
data_type: byte[8]

tool: D670: 0.5

tool: {"D437": [0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x40]}

tool: {"D411": [0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x40]}

tool: {"D149": [0x00,0x00,0x00,0x00,0x00,0x00,0x34,0x40]}

tool: {"D588": [0x00,0x00,0x00,0x00,0x00,0x00,0x59,0x40]}

tool: D764: 0.0090316521

tool: D687: 0.022174192

tool: D144: 0.1798452

tool: D69: 5.952053

tool: D28: 33.78311

tool: D368: 1014.41

tool: D64: 10583.6

tool: {"D544": [0x00,0x00,0x00,0x00,0x00,0x40,0x8f,0x40]}

tool: D787: 0.0083572073

tool: D816: 0.005050998

tool: D723: 0.8503463

tool: D803: 0.319781

tool: D548: 71.23472

tool: D603: 556.01

tool: D831: 1574.2

tool: {"D95": [0x00,0x00,0x00,0x00,0x00,0x00,0x99,0x40]}

tool: D487: 7129

tool: D56: 0.01532

tool: D836: 0.9808

tool: {"D30": [0x00,0x00,0x00,0x00,0x00,0x00,0x5e,0x40]}

tool: {"D624": [0x00,0x00,0x00,0x00,0x00,0x90,0x9a,0x40]}

tool: D126: 1174000

tool: D741: 0.00013336

tool: D6: 0.0059285

tool: D835: 0.1603

tool: D753: 8.83

tool: {"D100": [0x00,0x00,0x00,0x00,0x00,0x20,0x9c,0x40]}

tool: D1: 8.75e-10

tool: D324: 1.699e-07

tool: D36: 1.21272e-05

tool: D557: 0.00037436

tool: D397: 0.0041116

tool: D456: 0.0068612

tool: D519: 0.332447

tool: D166: 13.72

tool: {"D547": [0x00,0x00,0x00,0x00,0x00,0x10,0x9d,0x40]}

tool: D500: 233174

tool: D541: 0.0004473624

tool: D646: 0.01680668

tool: D4: 0.251754

tool: D218: 0.5737

tool: D5: 7.62

tool: {"D744": [0x00,0x00,0x00,0x00,0x00,0xb0,0x9d,0x40]}

tool: D806: 0.000197

tool: D529: 0.0061966

tool: D907: 0.0598939

tool: D621: 1.494119

tool: D321: 2.79

tool: {"D554": [0x00,0x00,0x00,0x00,0x00,0x00,0x9e,0x40]}

tool: D833: 0.0020936

tool: D578: 0.0761

tool: D309: 0.84493

tool: D589: 21.2

tool: {"D663": [0x00,0x00,0x00,0x00,0x00,0x78,0x9e,0x40]}

tool: D217: 2547

tool: {"D889": [0x9c,0xa2,0x8c,0x80,0x53,0x94,0x71,0x3f]}

tool: D724: 0.407

tool: D294: 29.07

tool: {"D749": [0x00,0x00,0x00,0x00,0x00,0xdc,0x9e,0x40]}

tool: D137: 718

tool: {"D200": [0x20,0xf8,0x81,0x1f,0xf8,0x81,0x6f,0xbf]}

tool: D757: 1.067

tool: D636: 45.45

tool: {"D361": [0x00,0x00,0x00,0x00,0x00,0x40,0x9f,0x40]}

tool: D438: 2.373599e-05

tool: D363: 0.000651814

tool: D596: 0.0017275

tool: D551: 0.060374

tool: D853: 0.3345

tool: D425: 63.86

tool: D585: 0.005589

tool: D231: 0.32217

tool: D206: 62.92

tool: {"D704": [0x00,0x00,0x00,0x00,0x00,0x70,0x9c,0x40]}

tool: {"D329": [0x00,0x00,0x00,0x00,0x00,0xcc,0xa0,0x40]}

tool: D197: 0.5628

tool: {"D788": [0x00,0x00,0x00,0x00,0x00,0x8c,0x9e,0x40]}

tool: {"D489": [0x7d,0x4f,0xda,0x8b,0xd0,0x1e,0xeb,0xbe]}

assistant: ```c
int delta_t(int year, int month, double *delta_t, double *correction) {
  double u, y;
  if (year < -1999 || year > 3000 || month < 1 || month > 12)
    return -2;
  y = year + (month - 0.5) / 12;
  if (year < -500) {
    u = (year - 1820) / 100;
    *delta_t = -20 + 32 * u * u;
  } else if (year >= -500 && year < 500) {
    u = y / 100;
    *delta_t = 10583.6 + (-1014.41 + (33.78311 + (-5.952053 + (-0.1798452 + (0.022174192 + 0.0090316521 * u) * u) * u) * u) * u) * u;
  } else if (year >= 500 && year < 1600) {
    u = (y - 1000) / 100;
    *delta_t = 1574.2 + (-556.01 + (71.23472 + (0.319781 + (-0.8503463 + (-0.005050998 + 0.0083572073 * u) * u) * u) * u) * u) * u;
  } else if (year >= 1600 && year < 1700) {
    u = y - 1600;
    *delta_t = 120 + (-0.9808 + (-0.01532 + u / 7129.0) * u) * u;
  } else if (year >= 1700 && year < 1800) {
    u = y - 1700;
    *delta_t = 8.83 + (0.1603 + (-0.0059285 + (0.00013336 - u / 1174000.0) * u) * u) * u;
  } else if (year >= 1800 && year < 1860) {
    u = y - 1800;
    *delta_t = 13.72 + (-0.332447 + (0.0068612 + (0.0041116 + (-0.00037436 + (0.0000121272 + (-0.0000001699 + 0.000000000875 * u) * u) * u) * u) * u) * u) * u;
  } else if (year >= 1860 && year < 1900) {
    u = y - 1860;
    *delta_t = 7.62 + (0.5737 + (-0.251754 + (0.01680668 + (-0.0004473624 + u / 233174.0) * u) * u) * u) * u;
  } else if (year >= 1900 && year < 1920) {
    u = y - 1900;
    *delta_t = -2.79 + (1.494119 + (-0.0598939 + (0.0061966 - 0.000197 * u) * u) * u) * u;
  } else if (year >= 1920 && year < 1941) {
    u = y - 1920;
    *delta_t = 21.20 + (0.84493 + (-0.076100 + 0.0020936 * u) * u) * u;
  } else if (year >= 1941 && year < 1961) {
    u = y - 1950;
    *delta_t = 29.07 + (0.407 + (-1.0 / 233.0 + u / 2547.0) * u) * u;
  } else if (year >= 1961 && year < 1986) {
    u = y - 1975;
    *delta_t = 45.45 + (1.067 + (-1.0 / 260.0 - u / 718.0) * u) * u;
  } else if (year >= 1986 && year < 2005) {
    u = y - 2000;
    *delta_t = 63.86 + (0.3345 + (-0.060374 + (0.0017275 + (0.000651814 + 0.00002373599 * u) * u) * u) * u) * u;
  } else if (year >= 2005 && year < 2050) {
    u = y - 2000;
    *delta_t = 62.92 + (0.32217 + 0.005589 * u) * u;
  } else if (year >= 2050 && year < 2150) {
    u = (y - 1820) / 100;
    *delta_t = -20 + 32 * u * u - 0.5628 * (2150 - y);
  } else {
    u = (year - 1820) / 100;
    *delta_t = -20 + 32 * u * u;
  }
  if (year < 1955 || year > 2005)
    *correction = -0.000012932 * (y - 1955) * (y - 1955);
  else
    *correction = 0;
  return 0;
}
```