user: Demonstrate the C code that generates the assembly output below:

```asm
<ls_cost_nm7_f0>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  mov    %rdi,-0x18(%rbp)
  mov    %rsi,-0x20(%rbp)
  mov    %rdx,-0x28(%rbp)
  mov    %rcx,-0x30(%rbp)
  mov    %r8d,-0x34(%rbp)
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L75
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  movsd  (%rax),%xmm0
  jmp    L216
L75:
  pxor   %xmm0,%xmm0
L216:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L649
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L649:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1453
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  (%rax),%xmm0
  jmp    L207
L1453:
  pxor   %xmm0,%xmm0
L207:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L194
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L194:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L429
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  (%rax),%xmm0
  jmp    L856
L429:
  pxor   %xmm0,%xmm0
L856:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1367
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1367:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L54
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  (%rax),%xmm0
  jmp    L700
L54:
  pxor   %xmm0,%xmm0
L700:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L951
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L951:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L784
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  (%rax),%xmm0
  jmp    L386
L784:
  pxor   %xmm0,%xmm0
L386:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L81
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L81:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L130
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  (%rax),%xmm0
  jmp    L1492
L130:
  pxor   %xmm0,%xmm0
L1492:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L68
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L68:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L727
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  (%rax),%xmm0
  jmp    L521
L727:
  pxor   %xmm0,%xmm0
L521:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L339
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L339:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L409
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  (%rax),%xmm0
  jmp    L1392
L409:
  pxor   %xmm0,%xmm0
L1392:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L545
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L545:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L455
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  (%rax),%xmm0
  jmp    L326
L455:
  pxor   %xmm0,%xmm0
L326:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L261
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L261:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L431
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  (%rax),%xmm0
  jmp    L1070
L431:
  pxor   %xmm0,%xmm0
L1070:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L753
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L753:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L661
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  (%rax),%xmm0
  jmp    L394
L661:
  pxor   %xmm0,%xmm0
L394:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1447
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1447:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L812
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  (%rax),%xmm0
  jmp    L1479
L812:
  pxor   %xmm0,%xmm0
L1479:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1536
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1536:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L957
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  (%rax),%xmm0
  jmp    L146
L957:
  pxor   %xmm0,%xmm0
L146:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L742
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L742:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1238
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  (%rax),%xmm0
  jmp    L209
L1238:
  pxor   %xmm0,%xmm0
L209:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L45
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L45:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L271
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  (%rax),%xmm0
  jmp    L1136
L271:
  pxor   %xmm0,%xmm0
L1136:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1036
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1036:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1281
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  (%rax),%xmm0
  jmp    L127
L1281:
  pxor   %xmm0,%xmm0
L127:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L681
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L681:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1146
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  (%rax),%xmm0
  jmp    L1338
L1146:
  pxor   %xmm0,%xmm0
L1338:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1162
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1162:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1475
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  (%rax),%xmm0
  jmp    L1526
L1475:
  pxor   %xmm0,%xmm0
L1526:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L169
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L169:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L747
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  (%rax),%xmm0
  jmp    L164
L747:
  pxor   %xmm0,%xmm0
L164:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1013
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1013:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L690
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  (%rax),%xmm0
  jmp    L1369
L690:
  pxor   %xmm0,%xmm0
L1369:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L305
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L305:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1053
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  (%rax),%xmm0
  jmp    L1121
L1053:
  pxor   %xmm0,%xmm0
L1121:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L505
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L505:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L867
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  (%rax),%xmm0
  jmp    L906
L867:
  pxor   %xmm0,%xmm0
L906:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L206
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L206:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L500
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  (%rax),%xmm0
  jmp    L144
L500:
  pxor   %xmm0,%xmm0
L144:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1321
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1321:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L293
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  (%rax),%xmm0
  jmp    L72
L293:
  pxor   %xmm0,%xmm0
L72:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1310
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1310:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1288
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc0,%rax
  movsd  (%rax),%xmm0
  jmp    L135
L1288:
  pxor   %xmm0,%xmm0
L135:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L702
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L702:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1002
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc8,%rax
  movsd  (%rax),%xmm0
  jmp    L197
L1002:
  pxor   %xmm0,%xmm0
L197:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L492
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xc8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L492:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L976
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xd0,%rax
  movsd  (%rax),%xmm0
  jmp    L1393
L976:
  pxor   %xmm0,%xmm0
L1393:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L298
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xd0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L298:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1500
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xd8,%rax
  movsd  (%rax),%xmm0
  jmp    L396
L1500:
  pxor   %xmm0,%xmm0
L396:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L844
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xd8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L844:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L877
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xe0,%rax
  movsd  (%rax),%xmm0
  jmp    L1283
L877:
  pxor   %xmm0,%xmm0
L1283:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1394
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xe0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1394:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L897
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xe8,%rax
  movsd  (%rax),%xmm0
  jmp    L1116
L897:
  pxor   %xmm0,%xmm0
L1116:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L980
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xe8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L980:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L416
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xf0,%rax
  movsd  (%rax),%xmm0
  jmp    L1361
L416:
  pxor   %xmm0,%xmm0
L1361:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L78
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xf0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L78:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L103
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0xf8,%rax
  movsd  (%rax),%xmm0
  jmp    L369
L103:
  pxor   %xmm0,%xmm0
L369:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L967
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0xf8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L967:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1352
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x100,%rax
  movsd  (%rax),%xmm0
  jmp    L986
L1352:
  pxor   %xmm0,%xmm0
L986:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L878
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x100,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L878:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1190
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x108,%rax
  movsd  (%rax),%xmm0
  jmp    L911
L1190:
  pxor   %xmm0,%xmm0
L911:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1506
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x108,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1506:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L509
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x110,%rax
  movsd  (%rax),%xmm0
  jmp    L435
L509:
  pxor   %xmm0,%xmm0
L435:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L349
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x110,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L349:
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L128
  mov    -0x18(%rbp),%rax
  mov    (%rax),%rax
  add    $0x118,%rax
  movsd  (%rax),%xmm0
  jmp    L478
L128:
  pxor   %xmm0,%xmm0
L478:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L381
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x118,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L381:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L865
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  movsd  (%rax),%xmm0
  jmp    L1357
L865:
  pxor   %xmm0,%xmm0
L1357:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L762
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x120,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L762:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L346
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  (%rax),%xmm0
  jmp    L1458
L346:
  pxor   %xmm0,%xmm0
L1458:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L663
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x128,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L663:
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1056
  mov    -0x18(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  (%rax),%xmm0
  jmp    L993
L1056:
  pxor   %xmm0,%xmm0
L993:
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L411
  mov    -0x20(%rbp),%rax
  mov    (%rax),%rax
  add    $0x130,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L411:
  movsd  D8(%rip),%xmm0
  movsd  %xmm0,-0x8(%rbp)
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L90
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L90:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L726
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L726:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L820
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x10,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L820:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1119
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x18,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1119:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L134
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x20,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L134:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L706
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x28,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L706:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1292
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x30,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1292:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1223
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x38,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1223:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1455
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x40,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1455:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L547
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x48,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L547:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1313
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x50,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1313:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L19
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x58,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L19:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1200
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x60,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1200:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L876
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x68,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L876:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L574
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x70,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L574:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1341
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x78,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1341:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L258
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  sub    $0xffffffffffffff80,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L258:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1120
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x88,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1120:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1325
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x90,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1325:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1391
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x98,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1391:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L480
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xa0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L480:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L798
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xa8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L798:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1153
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xb0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1153:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1414
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xb8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1414:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L477
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xc0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L477:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1257
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xc8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1257:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L879
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xd0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L879:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L265
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xd8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L265:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L276
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xe0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L276:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L320
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xe8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L320:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1088
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xf0,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1088:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L163
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0xf8,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L163:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L363
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x100,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L363:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L563
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x108,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L563:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L1192
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x110,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L1192:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L460
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x118,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L460:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L466
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x120,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L466:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L605
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x128,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L605:
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L447
  mov    -0x20(%rbp),%rax
  add    $0x8,%rax
  mov    (%rax),%rax
  add    $0x130,%rax
  movsd  -0x8(%rbp),%xmm0
  movsd  %xmm0,(%rax)
L447:
  mov    $0x0,%eax
  pop    %rbp
  ret
```

tool_calls: name: read_data
arguments: tag: D8
type_infered: f64

tool: D8: 1

assistant: ```c
int ls_cost_nm7_f0(const double **arg, double **res, int *iw, double *w, int mem) {
  double a0 = arg[0] ? arg[0][0] : 0;
  if (res[0] != 0)
    res[0][0] = a0;
  a0 = arg[0] ? arg[0][1] : 0;
  if (res[0] != 0)
    res[0][1] = a0;
  a0 = arg[0] ? arg[0][2] : 0;
  if (res[0] != 0)
    res[0][2] = a0;
  a0 = arg[0] ? arg[0][3] : 0;
  if (res[0] != 0)
    res[0][3] = a0;
  a0 = arg[0] ? arg[0][4] : 0;
  if (res[0] != 0)
    res[0][4] = a0;
  a0 = arg[0] ? arg[0][5] : 0;
  if (res[0] != 0)
    res[0][5] = a0;
  a0 = arg[0] ? arg[0][6] : 0;
  if (res[0] != 0)
    res[0][6] = a0;
  a0 = arg[0] ? arg[0][7] : 0;
  if (res[0] != 0)
    res[0][7] = a0;
  a0 = arg[0] ? arg[0][8] : 0;
  if (res[0] != 0)
    res[0][8] = a0;
  a0 = arg[0] ? arg[0][9] : 0;
  if (res[0] != 0)
    res[0][9] = a0;
  a0 = arg[0] ? arg[0][10] : 0;
  if (res[0] != 0)
    res[0][10] = a0;
  a0 = arg[0] ? arg[0][11] : 0;
  if (res[0] != 0)
    res[0][11] = a0;
  a0 = arg[0] ? arg[0][12] : 0;
  if (res[0] != 0)
    res[0][12] = a0;
  a0 = arg[0] ? arg[0][13] : 0;
  if (res[0] != 0)
    res[0][13] = a0;
  a0 = arg[0] ? arg[0][14] : 0;
  if (res[0] != 0)
    res[0][14] = a0;
  a0 = arg[0] ? arg[0][15] : 0;
  if (res[0] != 0)
    res[0][15] = a0;
  a0 = arg[0] ? arg[0][16] : 0;
  if (res[0] != 0)
    res[0][16] = a0;
  a0 = arg[0] ? arg[0][17] : 0;
  if (res[0] != 0)
    res[0][17] = a0;
  a0 = arg[0] ? arg[0][18] : 0;
  if (res[0] != 0)
    res[0][18] = a0;
  a0 = arg[0] ? arg[0][19] : 0;
  if (res[0] != 0)
    res[0][19] = a0;
  a0 = arg[0] ? arg[0][20] : 0;
  if (res[0] != 0)
    res[0][20] = a0;
  a0 = arg[0] ? arg[0][21] : 0;
  if (res[0] != 0)
    res[0][21] = a0;
  a0 = arg[0] ? arg[0][22] : 0;
  if (res[0] != 0)
    res[0][22] = a0;
  a0 = arg[0] ? arg[0][23] : 0;
  if (res[0] != 0)
    res[0][23] = a0;
  a0 = arg[0] ? arg[0][24] : 0;
  if (res[0] != 0)
    res[0][24] = a0;
  a0 = arg[0] ? arg[0][25] : 0;
  if (res[0] != 0)
    res[0][25] = a0;
  a0 = arg[0] ? arg[0][26] : 0;
  if (res[0] != 0)
    res[0][26] = a0;
  a0 = arg[0] ? arg[0][27] : 0;
  if (res[0] != 0)
    res[0][27] = a0;
  a0 = arg[0] ? arg[0][28] : 0;
  if (res[0] != 0)
    res[0][28] = a0;
  a0 = arg[0] ? arg[0][29] : 0;
  if (res[0] != 0)
    res[0][29] = a0;
  a0 = arg[0] ? arg[0][30] : 0;
  if (res[0] != 0)
    res[0][30] = a0;
  a0 = arg[0] ? arg[0][31] : 0;
  if (res[0] != 0)
    res[0][31] = a0;
  a0 = arg[0] ? arg[0][32] : 0;
  if (res[0] != 0)
    res[0][32] = a0;
  a0 = arg[0] ? arg[0][33] : 0;
  if (res[0] != 0)
    res[0][33] = a0;
  a0 = arg[0] ? arg[0][34] : 0;
  if (res[0] != 0)
    res[0][34] = a0;
  a0 = arg[0] ? arg[0][35] : 0;
  if (res[0] != 0)
    res[0][35] = a0;
  a0 = arg[1] ? arg[1][0] : 0;
  if (res[0] != 0)
    res[0][36] = a0;
  a0 = arg[1] ? arg[1][1] : 0;
  if (res[0] != 0)
    res[0][37] = a0;
  a0 = arg[1] ? arg[1][2] : 0;
  if (res[0] != 0)
    res[0][38] = a0;
  a0 = 1.;
  if (res[1] != 0)
    res[1][0] = a0;
  if (res[1] != 0)
    res[1][1] = a0;
  if (res[1] != 0)
    res[1][2] = a0;
  if (res[1] != 0)
    res[1][3] = a0;
  if (res[1] != 0)
    res[1][4] = a0;
  if (res[1] != 0)
    res[1][5] = a0;
  if (res[1] != 0)
    res[1][6] = a0;
  if (res[1] != 0)
    res[1][7] = a0;
  if (res[1] != 0)
    res[1][8] = a0;
  if (res[1] != 0)
    res[1][9] = a0;
  if (res[1] != 0)
    res[1][10] = a0;
  if (res[1] != 0)
    res[1][11] = a0;
  if (res[1] != 0)
    res[1][12] = a0;
  if (res[1] != 0)
    res[1][13] = a0;
  if (res[1] != 0)
    res[1][14] = a0;
  if (res[1] != 0)
    res[1][15] = a0;
  if (res[1] != 0)
    res[1][16] = a0;
  if (res[1] != 0)
    res[1][17] = a0;
  if (res[1] != 0)
    res[1][18] = a0;
  if (res[1] != 0)
    res[1][19] = a0;
  if (res[1] != 0)
    res[1][20] = a0;
  if (res[1] != 0)
    res[1][21] = a0;
  if (res[1] != 0)
    res[1][22] = a0;
  if (res[1] != 0)
    res[1][23] = a0;
  if (res[1] != 0)
    res[1][24] = a0;
  if (res[1] != 0)
    res[1][25] = a0;
  if (res[1] != 0)
    res[1][26] = a0;
  if (res[1] != 0)
    res[1][27] = a0;
  if (res[1] != 0)
    res[1][28] = a0;
  if (res[1] != 0)
    res[1][29] = a0;
  if (res[1] != 0)
    res[1][30] = a0;
  if (res[1] != 0)
    res[1][31] = a0;
  if (res[1] != 0)
    res[1][32] = a0;
  if (res[1] != 0)
    res[1][33] = a0;
  if (res[1] != 0)
    res[1][34] = a0;
  if (res[1] != 0)
    res[1][35] = a0;
  if (res[1] != 0)
    res[1][36] = a0;
  if (res[1] != 0)
    res[1][37] = a0;
  if (res[1] != 0)
    res[1][38] = a0;
  return 0;
}
```