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

```asm
<lt_dump_script>:
  endbr64
  push   %r15
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  sub    $0x8,%rsp
  mov    %rdi,%rbx
  mov    %rdi,%rcx
  mov    $0xb,%edx
  mov    $0x1,%esi
  lea    D439(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x43,%edx
  mov    $0x1,%esi
  lea    D1108(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2b,%edx
  mov    $0x1,%esi
  lea    D70(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  lea    D996(%rip),%r13
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4e,%edx
  mov    $0x1,%esi
  lea    D1268(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2e,%edx
  mov    $0x1,%esi
  lea    D697(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x48,%edx
  mov    $0x1,%esi
  lea    D874(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2b,%edx
  mov    $0x1,%esi
  lea    D20(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x47,%edx
  mov    $0x1,%esi
  lea    D910(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x45,%edx
  mov    $0x1,%esi
  lea    D1220(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D444(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x17,%edx
  mov    $0x1,%esi
  lea    D627(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x46,%edx
  mov    $0x1,%esi
  lea    D785(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D282(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xc,%edx
  mov    $0x1,%esi
  lea    D37(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x40,%edx
  mov    $0x1,%esi
  lea    D1146(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x35,%edx
  mov    $0x1,%esi
  lea    D96(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1e,%edx
  mov    $0x1,%esi
  lea    D751(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x17,%edx
  mov    $0x1,%esi
  lea    D1154(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  lea    D296(%rip),%rbp
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3e,%edx
  mov    $0x1,%esi
  lea    D1062(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D3(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D1602(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x29,%edx
  mov    $0x1,%esi
  lea    D1608(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x45,%edx
  mov    $0x1,%esi
  lea    D1382(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x14,%edx
  mov    $0x1,%esi
  lea    D913(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2f,%edx
  mov    $0x1,%esi
  lea    D77(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x12,%edx
  mov    $0x1,%esi
  lea    D790(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3b,%edx
  mov    $0x1,%esi
  lea    D1237(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x40,%edx
  mov    $0x1,%esi
  lea    D1482(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x30,%edx
  mov    $0x1,%esi
  lea    D1158(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D458(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x15,%edx
  mov    $0x1,%esi
  lea    D1491(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4a,%edx
  mov    $0x1,%esi
  lea    D395(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x43,%edx
  mov    $0x1,%esi
  lea    D1407(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xe,%edx
  mov    $0x1,%esi
  lea    D254(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x44,%edx
  mov    $0x1,%esi
  lea    D117(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x16,%edx
  mov    $0x1,%esi
  lea    D794(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  lea    D202(%rip),%r12
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1a,%edx
  mov    $0x1,%esi
  lea    D628(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D503(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D698(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  lea    D415(%rip),%rbp
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x18,%edx
  mov    $0x1,%esi
  lea    D642(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  lea    D617(%rip),%r14
  mov    %r14,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3f,%edx
  mov    $0x1,%esi
  lea    D664(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3d,%edx
  mov    $0x1,%esi
  lea    D1530(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3d,%edx
  mov    $0x1,%esi
  lea    D1309(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3d,%edx
  mov    $0x1,%esi
  lea    D661(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x40,%edx
  mov    $0x1,%esi
  lea    D870(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x11,%edx
  mov    $0x1,%esi
  lea    D607(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x37,%edx
  mov    $0x1,%esi
  lea    D881(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3a,%edx
  mov    $0x1,%esi
  lea    D5(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3c,%edx
  mov    $0x1,%esi
  lea    D1283(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2d,%edx
  mov    $0x1,%esi
  lea    D542(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x11,%edx
  mov    $0x1,%esi
  lea    D1486(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x19,%edx
  mov    $0x1,%esi
  lea    D1393(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x14,%edx
  mov    $0x1,%esi
  lea    D791(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x8,%edx
  mov    $0x1,%esi
  lea    D270(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D758(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  lea    D1144(%rip),%r15
  mov    %r15,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x16,%edx
  mov    $0x1,%esi
  lea    D582(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x25,%edx
  mov    $0x1,%esi
  lea    D74(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x16,%edx
  mov    $0x1,%esi
  lea    D78(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D994(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xa,%edx
  mov    $0x1,%esi
  lea    D629(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3f,%edx
  mov    $0x1,%esi
  lea    D796(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D1429(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D110(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x24,%edx
  mov    $0x1,%esi
  lea    D1547(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xf,%edx
  mov    $0x1,%esi
  lea    D975(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  lea    D1305(%rip),%r13
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xc,%edx
  mov    $0x1,%esi
  lea    D315(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3a,%edx
  mov    $0x1,%esi
  lea    D1555(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xf,%edx
  mov    $0x1,%esi
  lea    D1567(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  lea    D1600(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D954(%rip),%r13
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x28,%edx
  mov    $0x1,%esi
  lea    D168(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x26,%edx
  mov    $0x1,%esi
  lea    D691(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D1299(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xa,%edx
  mov    $0x1,%esi
  lea    D1242(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  mov    %r14,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x37,%edx
  mov    $0x1,%esi
  lea    D572(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x34,%edx
  mov    $0x1,%esi
  lea    D373(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x15,%edx
  mov    $0x1,%esi
  lea    D423(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x14,%edx
  mov    $0x1,%esi
  lea    D1432(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D792(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  mov    %r15,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D1185(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D391(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2e,%edx
  mov    $0x1,%esi
  lea    D898(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x35,%edx
  mov    $0x1,%esi
  lea    D1430(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1a,%edx
  mov    $0x1,%esi
  lea    D354(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x2a,%edx
  mov    $0x1,%esi
  lea    D1397(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D1124(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  lea    D379(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x29,%edx
  mov    $0x1,%esi
  lea    D209(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  lea    D366(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x29,%edx
  mov    $0x1,%esi
  lea    D1505(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x2f,%edx
  mov    $0x1,%esi
  lea    D1017(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D826(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3d,%edx
  mov    $0x1,%esi
  lea    D1605(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x35,%edx
  mov    $0x1,%esi
  lea    D1390(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3c,%edx
  mov    $0x1,%esi
  lea    D231(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x15,%edx
  mov    $0x1,%esi
  lea    D447(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x11,%edx
  mov    $0x1,%esi
  lea    D639(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xd,%edx
  mov    $0x1,%esi
  lea    D189(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x12,%edx
  mov    $0x1,%esi
  lea    D1561(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D343(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x19,%edx
  mov    $0x1,%esi
  lea    D499(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x11,%edx
  mov    $0x1,%esi
  lea    D1160(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2a,%edx
  mov    $0x1,%esi
  lea    D212(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xb,%edx
  mov    $0x1,%esi
  lea    D774(%rip),%r12
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xc,%edx
  mov    $0x1,%esi
  lea    D1261(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xc,%edx
  mov    $0x1,%esi
  lea    D527(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D749(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x23,%edx
  mov    $0x1,%esi
  lea    D1387(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2,%edx
  mov    $0x1,%esi
  mov    %rbp,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x12,%edx
  mov    $0x1,%esi
  lea    D822(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D970(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x32,%edx
  mov    $0x1,%esi
  lea    D1171(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x37,%edx
  mov    $0x1,%esi
  lea    D1344(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2b,%edx
  mov    $0x1,%esi
  lea    D782(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3c,%edx
  mov    $0x1,%esi
  lea    D1401(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x37,%edx
  mov    $0x1,%esi
  lea    D1306(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1c,%edx
  mov    $0x1,%esi
  lea    D250(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x39,%edx
  mov    $0x1,%esi
  lea    D1068(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3f,%edx
  mov    $0x1,%esi
  lea    D1106(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x2a,%edx
  mov    $0x1,%esi
  lea    D1200(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x19,%edx
  mov    $0x1,%esi
  lea    D723(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x36,%edx
  mov    $0x1,%esi
  lea    D1128(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x28,%edx
  mov    $0x1,%esi
  lea    D616(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xb,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D838(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x33,%edx
  mov    $0x1,%esi
  lea    D812(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x42,%edx
  mov    $0x1,%esi
  lea    D1421(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  mov    %r13,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x3c,%edx
  mov    $0x1,%esi
  lea    D141(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x12,%edx
  mov    $0x1,%esi
  lea    D519(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D1500(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3c,%edx
  mov    $0x1,%esi
  lea    D986(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1b,%edx
  mov    $0x1,%esi
  lea    D1234(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x23,%edx
  mov    $0x1,%esi
  lea    D36(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x14,%edx
  mov    $0x1,%esi
  lea    D911(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D838(%rip),%r12
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x20,%edx
  mov    $0x1,%esi
  lea    D543(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x17,%edx
  mov    $0x1,%esi
  lea    D1151(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4f,%edx
  mov    $0x1,%esi
  lea    D1515(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x4,%edx
  mov    $0x1,%esi
  lea    D1485(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1b,%edx
  mov    $0x1,%esi
  lea    D123(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x9,%edx
  mov    $0x1,%esi
  lea    D1600(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  mov    %r14,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x2c,%edx
  mov    $0x1,%esi
  lea    D1270(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x20,%edx
  mov    $0x1,%esi
  lea    D15(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x29,%edx
  mov    $0x1,%esi
  lea    D1412(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x1a,%edx
  mov    $0x1,%esi
  lea    D156(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x1b,%edx
  mov    $0x1,%esi
  lea    D884(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rsi
  mov    $0xa,%edi
  call   <fputc@plt>
  mov    %rbx,%rcx
  mov    $0x27,%edx
  mov    $0x1,%esi
  lea    D641(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x45,%edx
  mov    $0x1,%esi
  lea    D603(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x33,%edx
  mov    $0x1,%esi
  lea    D974(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x22,%edx
  mov    $0x1,%esi
  lea    D115(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  mov    %r12,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x7,%edx
  mov    $0x1,%esi
  lea    D793(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x21,%edx
  mov    $0x1,%esi
  lea    D1599(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3f,%edx
  mov    $0x1,%esi
  lea    D1569(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3d,%edx
  mov    $0x1,%esi
  lea    D1215(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x45,%edx
  mov    $0x1,%esi
  lea    D567(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0xb,%edx
  mov    $0x1,%esi
  lea    D1322(%rip),%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x5,%edx
  mov    $0x1,%esi
  mov    %r14,%rdi
  call   <fwrite@plt>
  mov    %rbx,%rcx
  mov    $0x3,%edx
  mov    $0x1,%esi
  lea    D3(%rip),%rdi
  call   <fwrite@plt>
  add    $0x8,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
```

tool_calls: name: parse_data
arguments: data_label: D439
datatype: string
name: parse_data
arguments: data_label: D1108
datatype: string
name: parse_data
arguments: data_label: D70
datatype: string
name: parse_data
arguments: data_label: D996
datatype: string
name: parse_data
arguments: data_label: D1268
datatype: string
name: parse_data
arguments: data_label: D697
datatype: string
name: parse_data
arguments: data_label: D874
datatype: string
name: parse_data
arguments: data_label: D20
datatype: string
name: parse_data
arguments: data_label: D910
datatype: string
name: parse_data
arguments: data_label: D1220
datatype: string
name: parse_data
arguments: data_label: D444
datatype: string
name: parse_data
arguments: data_label: D627
datatype: string
name: parse_data
arguments: data_label: D785
datatype: string
name: parse_data
arguments: data_label: D282
datatype: string
name: parse_data
arguments: data_label: D37
datatype: string
name: parse_data
arguments: data_label: D1146
datatype: string
name: parse_data
arguments: data_label: D96
datatype: string
name: parse_data
arguments: data_label: D751
datatype: string
name: parse_data
arguments: data_label: D1154
datatype: string
name: parse_data
arguments: data_label: D296
datatype: string
name: parse_data
arguments: data_label: D1062
datatype: string
name: parse_data
arguments: data_label: D3
datatype: string
name: parse_data
arguments: data_label: D1602
datatype: string
name: parse_data
arguments: data_label: D1608
datatype: string
name: parse_data
arguments: data_label: D1382
datatype: string
name: parse_data
arguments: data_label: D913
datatype: string
name: parse_data
arguments: data_label: D77
datatype: string
name: parse_data
arguments: data_label: D790
datatype: string
name: parse_data
arguments: data_label: D1237
datatype: string
name: parse_data
arguments: data_label: D1482
datatype: string
name: parse_data
arguments: data_label: D1158
datatype: string
name: parse_data
arguments: data_label: D458
datatype: string
name: parse_data
arguments: data_label: D1491
datatype: string
name: parse_data
arguments: data_label: D395
datatype: string
name: parse_data
arguments: data_label: D1407
datatype: string
name: parse_data
arguments: data_label: D254
datatype: string
name: parse_data
arguments: data_label: D117
datatype: string
name: parse_data
arguments: data_label: D794
datatype: string
name: parse_data
arguments: data_label: D202
datatype: string
name: parse_data
arguments: data_label: D628
datatype: string
name: parse_data
arguments: data_label: D503
datatype: string
name: parse_data
arguments: data_label: D698
datatype: string
name: parse_data
arguments: data_label: D415
datatype: string
name: parse_data
arguments: data_label: D642
datatype: string
name: parse_data
arguments: data_label: D617
datatype: string
name: parse_data
arguments: data_label: D664
datatype: string
name: parse_data
arguments: data_label: D1530
datatype: string
name: parse_data
arguments: data_label: D1309
datatype: string
name: parse_data
arguments: data_label: D661
datatype: string
name: parse_data
arguments: data_label: D870
datatype: string
name: parse_data
arguments: data_label: D607
datatype: string
name: parse_data
arguments: data_label: D881
datatype: string
name: parse_data
arguments: data_label: D5
datatype: string
name: parse_data
arguments: data_label: D1283
datatype: string
name: parse_data
arguments: data_label: D542
datatype: string
name: parse_data
arguments: data_label: D1486
datatype: string
name: parse_data
arguments: data_label: D1393
datatype: string
name: parse_data
arguments: data_label: D791
datatype: string
name: parse_data
arguments: data_label: D270
datatype: string
name: parse_data
arguments: data_label: D758
datatype: string
name: parse_data
arguments: data_label: D1144
datatype: string
name: parse_data
arguments: data_label: D582
datatype: string
name: parse_data
arguments: data_label: D74
datatype: string
name: parse_data
arguments: data_label: D78
datatype: string
name: parse_data
arguments: data_label: D994
datatype: string
name: parse_data
arguments: data_label: D629
datatype: string
name: parse_data
arguments: data_label: D796
datatype: string
name: parse_data
arguments: data_label: D1429
datatype: string
name: parse_data
arguments: data_label: D110
datatype: string
name: parse_data
arguments: data_label: D1547
datatype: string
name: parse_data
arguments: data_label: D975
datatype: string
name: parse_data
arguments: data_label: D1305
datatype: string
name: parse_data
arguments: data_label: D315
datatype: string
name: parse_data
arguments: data_label: D1555
datatype: string
name: parse_data
arguments: data_label: D1567
datatype: string
name: parse_data
arguments: data_label: D1600
datatype: string
name: parse_data
arguments: data_label: D954
datatype: string
name: parse_data
arguments: data_label: D168
datatype: string
name: parse_data
arguments: data_label: D691
datatype: string
name: parse_data
arguments: data_label: D1299
datatype: string
name: parse_data
arguments: data_label: D1242
datatype: string
name: parse_data
arguments: data_label: D572
datatype: string
name: parse_data
arguments: data_label: D373
datatype: string
name: parse_data
arguments: data_label: D423
datatype: string
name: parse_data
arguments: data_label: D1432
datatype: string
name: parse_data
arguments: data_label: D792
datatype: string
name: parse_data
arguments: data_label: D1185
datatype: string
name: parse_data
arguments: data_label: D391
datatype: string
name: parse_data
arguments: data_label: D898
datatype: string
name: parse_data
arguments: data_label: D1430
datatype: string
name: parse_data
arguments: data_label: D354
datatype: string
name: parse_data
arguments: data_label: D1397
datatype: string
name: parse_data
arguments: data_label: D1124
datatype: string
name: parse_data
arguments: data_label: D379
datatype: string
name: parse_data
arguments: data_label: D209
datatype: string
name: parse_data
arguments: data_label: D366
datatype: string
name: parse_data
arguments: data_label: D1505
datatype: string
name: parse_data
arguments: data_label: D1017
datatype: string
name: parse_data
arguments: data_label: D826
datatype: string
name: parse_data
arguments: data_label: D1605
datatype: string
name: parse_data
arguments: data_label: D1390
datatype: string
name: parse_data
arguments: data_label: D231
datatype: string
name: parse_data
arguments: data_label: D447
datatype: string
name: parse_data
arguments: data_label: D639
datatype: string
name: parse_data
arguments: data_label: D189
datatype: string
name: parse_data
arguments: data_label: D1561
datatype: string
name: parse_data
arguments: data_label: D343
datatype: string
name: parse_data
arguments: data_label: D499
datatype: string
name: parse_data
arguments: data_label: D1160
datatype: string
name: parse_data
arguments: data_label: D212
datatype: string
name: parse_data
arguments: data_label: D774
datatype: string
name: parse_data
arguments: data_label: D1261
datatype: string
name: parse_data
arguments: data_label: D527
datatype: string
name: parse_data
arguments: data_label: D749
datatype: string
name: parse_data
arguments: data_label: D1387
datatype: string
name: parse_data
arguments: data_label: D822
datatype: string
name: parse_data
arguments: data_label: D970
datatype: string
name: parse_data
arguments: data_label: D1171
datatype: string
name: parse_data
arguments: data_label: D1344
datatype: string
name: parse_data
arguments: data_label: D782
datatype: string
name: parse_data
arguments: data_label: D1401
datatype: string
name: parse_data
arguments: data_label: D1306
datatype: string
name: parse_data
arguments: data_label: D250
datatype: string
name: parse_data
arguments: data_label: D1068
datatype: string
name: parse_data
arguments: data_label: D1106
datatype: string
name: parse_data
arguments: data_label: D1200
datatype: string
name: parse_data
arguments: data_label: D723
datatype: string
name: parse_data
arguments: data_label: D1128
datatype: string
name: parse_data
arguments: data_label: D616
datatype: string
name: parse_data
arguments: data_label: D838
datatype: string
name: parse_data
arguments: data_label: D812
datatype: string
name: parse_data
arguments: data_label: D1421
datatype: string
name: parse_data
arguments: data_label: D141
datatype: string
name: parse_data
arguments: data_label: D519
datatype: string
name: parse_data
arguments: data_label: D1500
datatype: string
name: parse_data
arguments: data_label: D986
datatype: string
name: parse_data
arguments: data_label: D1234
datatype: string
name: parse_data
arguments: data_label: D36
datatype: string
name: parse_data
arguments: data_label: D911
datatype: string
name: parse_data
arguments: data_label: D543
datatype: string
name: parse_data
arguments: data_label: D1151
datatype: string
name: parse_data
arguments: data_label: D1515
datatype: string
name: parse_data
arguments: data_label: D1485
datatype: string
name: parse_data
arguments: data_label: D123
datatype: string
name: parse_data
arguments: data_label: D1270
datatype: string
name: parse_data
arguments: data_label: D15
datatype: string
name: parse_data
arguments: data_label: D1412
datatype: string
name: parse_data
arguments: data_label: D156
datatype: string
name: parse_data
arguments: data_label: D884
datatype: string
name: parse_data
arguments: data_label: D641
datatype: string
name: parse_data
arguments: data_label: D603
datatype: string
name: parse_data
arguments: data_label: D974
datatype: string
name: parse_data
arguments: data_label: D115
datatype: string
name: parse_data
arguments: data_label: D793
datatype: string
name: parse_data
arguments: data_label: D1599
datatype: string
name: parse_data
arguments: data_label: D1569
datatype: string
name: parse_data
arguments: data_label: D1215
datatype: string
name: parse_data
arguments: data_label: D567
datatype: string
name: parse_data
arguments: data_label: D1322
datatype: string

tool: D439: #! /bin/sh


tool: D1108: # CppUTestTests - temporary wrapper script for .libs/CppUTestTests


tool: D70: # Generated by libtool (GNU libtool) 2.4.6


tool: D996: #


tool: D1268: # The CppUTestTests program cannot be directly executed until all the libtool


tool: D697: # libraries that it depends on are installed.


tool: D874: # This wrapper script should never be moved out of the build directory.


tool: D20: # If it is, it will not operate correctly.


tool: D910: # Sed substitution that helps us do robust quoting.  It backslashifies


tool: D1220: # metacharacters that are still active within double-quoted strings.


tool: D444: sed_quote_subst='s|\([`"$\\]\)|\\\1|g'


tool: D627: # Be Bourne compatible


tool: D785: if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then


tool: D282:   emulate sh


tool: D37:   NULLCMD=:


tool: D1146:   # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which


tool: D96:   # is contrary to our usage.  Disable this feature.


tool: D751:   alias -g '${1+"$@"}'='"$@"'


tool: D1154:   setopt NO_GLOB_SUBST


tool: D296: else


tool: D1062:   case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac


tool: D3: fi


tool: D1602: BIN_SH=xpg4; export BIN_SH # for Tru64


tool: D1608: DUALCASE=1; export DUALCASE # for MKS sh


tool: D1382: # The HP-UX ksh and POSIX shell print the target directory to stdout


tool: D913: # if CDPATH is set.


tool: D77: (unset CDPATH) >/dev/null 2>&1 && unset CDPATH


tool: D790: relink_command=""


tool: D1237: # This environment variable determines our operation mode.


tool: D1482: if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then


tool: D1158:   # install mode needs the following variables:


tool: D458:   generated_by_libtool_version='2.4.6'


tool: D1491:   notinst_deplibs=''


tool: D395:   # When we are sourced in execute mode, $file and $ECHO are already set.


tool: D1407:   if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then


tool: D254:     file="$0"


tool: D117: # A function that is used when there is no print builtin or printf.


tool: D794: func_fallback_echo ()


tool: D202: {


tool: D628:   eval 'cat <<_LTECHO_EOF


tool: D503: $1


tool: D698: _LTECHO_EOF'


tool: D415: }


tool: D642:     ECHO="printf %s\\n"


tool: D617:   fi


tool: D664: # Very basic option parsing. These options are (a) specific to


tool: D1530: # the libtool wrapper, (b) are identical between the wrapper


tool: D1309: # /script/ and the wrapper /executable/ that is used only on


tool: D661: # windows platforms, and (c) all begin with the string --lt-


tool: D870: # (application programs are unlikely to have options that match


tool: D607: # this pattern).


tool: D881: # There are only two supported options: --lt-debug and


tool: D5: # --lt-dump-script. There is, deliberately, no --lt-help.


tool: D1283: # The first argument to this parsing function should be the


tool: D542: # script's ./libtool value, followed by yes.


tool: D1486: lt_option_debug=


tool: D1393: func_parse_lt_options ()


tool: D791:   lt_script_arg0=$0


tool: D270:   shift


tool: D758:   for lt_opt


tool: D1144:   do


tool: D582:     case "$lt_opt" in


tool: D74:     --lt-debug) lt_option_debug=1 ;;


tool: D78:     --lt-dump-script)


tool: D994:         lt_dump_D=`$ECHO "X$lt_script_arg0" | /usr/bin/sed -e 's/^X//' -e 's%/[

tool: D629: ^/]*$%%'`


tool: D796:         test "X$lt_dump_D" = "X$lt_script_arg0" && lt_dump_D=.


tool: D1429:         lt_dump_F=`$ECHO "X$lt_script_arg0" | /usr/bin/sed -e 's/^X//' -e 's%^.

tool: D110: */%%'`


tool: D1547:         cat "$lt_dump_D/$lt_dump_F"


tool: D975:         exit 0


tool: D1305:       ;;


tool: D315:     --lt-*)


tool: D1555:         $ECHO "Unrecognized --lt- option: '$lt_opt'" 1>&2


tool: D1567:         exit 1


tool: D1600:     esac


tool: D954:   done


tool: D168:   # Print the debug banner immediately:


tool: D691:   if test -n "$lt_option_debug"; then


tool: D1299:     echo "CppUTestTests:CppUTestTests:$LINENO: libtool wrapper (GNU libtool) 2.

tool: D1242: 4.6" 1>&2


tool: D572: # Used when --lt-debug. Prints its arguments to stdout


tool: D373: # (redirection is the responsibility of the caller)


tool: D423: func_lt_dump_args ()


tool: D1432:   lt_dump_args_N=1;


tool: D792:   for lt_arg


tool: D1185:     $ECHO "CppUTestTests:CppUTestTests:$LINENO: newargv[$lt_dump_args_N]: $lt_a

tool: D391: rg"


tool: D898:     lt_dump_args_N=`expr $lt_dump_args_N + 1`


tool: D1430: # Core function for launching the target application


tool: D354: func_exec_program_core ()


tool: D1397:       if test -n "$lt_option_debug"; then


tool: D1124:         $ECHO "CppUTestTests:CppUTestTests:$LINENO: newargv[0]: $progdir/$progr

tool: D379: am" 1>&2


tool: D209:         func_lt_dump_args ${1+"$@"} 1>&2


tool: D366:       fi


tool: D1505:       exec "$progdir/$program" ${1+"$@"}


tool: D1017:       $ECHO "$0: cannot exec $program $*" 1>&2


tool: D826:       exit 1


tool: D1605: # A function to encapsulate launching the target application


tool: D1390: # Strips options in the --lt-* namespace from $@ and


tool: D231: # launches target application with the remaining arguments.


tool: D447: func_exec_program ()


tool: D639:   case " $* " in


tool: D189:   *\ --lt-*)


tool: D1561:     for lt_wr_arg


tool: D343:     do


tool: D499:       case $lt_wr_arg in


tool: D1160:       --lt-*) ;;


tool: D212:       *) set x "$@" "$lt_wr_arg"; shift;;


tool: D774:       esac


tool: D1261:       shift


tool: D527:     done ;;


tool: D749:   esac


tool: D1387:   func_exec_program_core ${1+"$@"}


tool: D822:   # Parse options


tool: D970:   func_parse_lt_options "$0" ${1+"$@"}


tool: D1171:   # Find the directory that this script lives in.


tool: D1344:   thisdir=`$ECHO "$file" | /usr/bin/sed 's%/[^/]*$%%'`


tool: D782:   test "x$thisdir" = "x$file" && thisdir=.


tool: D1401:   # Follow symbolic links until we get to the real thisdir.


tool: D1306:   file=`ls -ld "$file" | /usr/bin/sed -n 's/.*-> //p'`


tool: D250:   while test -n "$file"; do


tool: D1068:     destdir=`$ECHO "$file" | /usr/bin/sed 's%/[^/]*$%%'`


tool: D1106:     # If there was a directory component, then change thisdir.


tool: D1200:     if test "x$destdir" != "x$file"; then


tool: D723:       case "$destdir" in


tool: D1128:       [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;;


tool: D616:       *) thisdir="$thisdir/$destdir" ;;


tool: D838:     fi


tool: D812:     file=`$ECHO "$file" | /usr/bin/sed 's%^.*/%%'`


tool: D1421:     file=`ls -ld "$thisdir/$file" | /usr/bin/sed -n 's/.*-> //p'`


tool: D141:   # Usually 'no', except on cygwin/mingw when embedded into


tool: D519:   # the cwrapper.


tool: D1500:   WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes


tool: D986:   if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then


tool: D1234:     # special case for '.'


tool: D36:     if test "$thisdir" = "."; then


tool: D911:       thisdir=`pwd`


tool: D543:     # remove .libs from thisdir


tool: D1151:     case "$thisdir" in


tool: D1515:     *[\\/].libs ) thisdir=`$ECHO "$thisdir" | /usr/bin/sed 's%[\\/][^\\/]*$%%'`

tool: D1485:  ;;


tool: D123:     .libs )   thisdir=. ;;


tool: D1270:   # Try to get the absolute directory name.


tool: D15:   absdir=`cd "$thisdir" && pwd`


tool: D1412:   test -n "$absdir" && thisdir="$absdir"


tool: D156:   program='CppUTestTests'


tool: D884:   progdir="$thisdir/.libs"


tool: D641:   if test -f "$progdir/$program"; then


tool: D603:     if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then


tool: D974:       # Run the actual program with our arguments.


tool: D115:       func_exec_program ${1+"$@"}


tool: D793:   else


tool: D1599:     # The program doesn't exist.


tool: D1569:     $ECHO "$0: error: '$progdir/$program' does not exist" 1>&2


tool: D1215:     $ECHO "This script is just a wrapper for $program." 1>&2


tool: D567:     $ECHO "See the libtool documentation for more information." 1>&2


tool: D1322:     exit 1


assistant: ```c
void lt_dump_script(FILE *f) {
  fputs("#! /bin/sh\n", f);
  fputs("\n", f);
  fputs("# CppUTestTests - temporary wrapper script for .libs/CppUTestTests\n", f);
  fputs("# Generated by libtool (GNU libtool) 2.4.6\n", f);
  fputs("#\n", f);
  fputs("# The CppUTestTests program cannot be directly executed until all the libtool\n", f);
  fputs("# libraries that it depends on are installed.\n", f);
  fputs("#\n", f);
  fputs("# This wrapper script should never be moved out of the build directory.\n", f);
  fputs("# If it is, it will not operate correctly.\n", f);
  fputs("\n", f);
  fputs("# Sed substitution that helps us do robust quoting.  It backslashifies\n", f);
  fputs("# metacharacters that are still active within double-quoted strings.\n", f);
  fputs("sed_quote_subst='s|\\([`\"$\\\\]\\)|\\\\\\1|g'\n", f);
  fputs("\n", f);
  fputs("# Be Bourne compatible\n", f);
  fputs("if test -n \"${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then\n", f);
  fputs("  emulate sh\n", f);
  fputs("  NULLCMD=:\n", f);
  fputs("  # Zsh 3.x and 4.x performs word splitting on ${1+\"$@\"}, which\n", f);
  fputs("  # is contrary to our usage.  Disable this feature.\n", f);
  fputs("  alias -g '${1+\"$@\"}'='\"$@\"'\n", f);
  fputs("  setopt NO_GLOB_SUBST\n", f);
  fputs("else\n", f);
  fputs("  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac\n", f);
  fputs("fi\n", f);
  fputs("BIN_SH=xpg4; export BIN_SH # for Tru64\n", f);
  fputs("DUALCASE=1; export DUALCASE # for MKS sh\n", f);
  fputs("\n", f);
  fputs("# The HP-UX ksh and POSIX shell print the target directory to stdout\n", f);
  fputs("# if CDPATH is set.\n", f);
  fputs("(unset CDPATH) >/dev/null 2>&1 && unset CDPATH\n", f);
  fputs("\n", f);
  fputs("relink_command=\"\"\n", f);
  fputs("\n", f);
  fputs("# This environment variable determines our operation mode.\n", f);
  fputs("if test \"$libtool_install_magic\" = \"%%%MAGIC variable%%%\"; then\n", f);
  fputs("  # install mode needs the following variables:\n", f);
  fputs("  generated_by_libtool_version='2.4.6'\n", f);
  fputs("  notinst_deplibs=''\n", f);
  fputs("else\n", f);
  fputs("  # When we are sourced in execute mode, $file and $ECHO are already set.\n", f);
  fputs("  if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f);
  fputs("    file=\"$0\"\n", f);
  fputs("\n", f);
  fputs("# A function that is used when there is no print builtin or printf.\n", f);
  fputs("func_fallback_echo ()\n", f);
  fputs("{\n", f);
  fputs("  eval 'cat <<_LTECHO_EOF\n", f);
  fputs("$1\n", f);
  fputs("_LTECHO_EOF'\n", f);
  fputs("}\n", f);
  fputs("    ECHO=\"printf %s\\\\n\"\n", f);
  fputs("  fi\n", f);
  fputs("\n", f);
  fputs("# Very basic option parsing. These options are (a) specific to\n", f);
  fputs("# the libtool wrapper, (b) are identical between the wrapper\n", f);
  fputs("# /script/ and the wrapper /executable/ that is used only on\n", f);
  fputs("# windows platforms, and (c) all begin with the string --lt-\n", f);
  fputs("# (application programs are unlikely to have options that match\n", f);
  fputs("# this pattern).\n", f);
  fputs("#\n", f);
  fputs("# There are only two supported options: --lt-debug and\n", f);
  fputs("# --lt-dump-script. There is, deliberately, no --lt-help.\n", f);
  fputs("#\n", f);
  fputs("# The first argument to this parsing function should be the\n", f);
  fputs("# script's ./libtool value, followed by yes.\n", f);
  fputs("lt_option_debug=\n", f);
  fputs("func_parse_lt_options ()\n", f);
  fputs("{\n", f);
  fputs("  lt_script_arg0=$0\n", f);
  fputs("  shift\n", f);
  fputs("  for lt_opt\n", f);
  fputs("  do\n", f);
  fputs("    case \"$lt_opt\" in\n", f);
  fputs("    --lt-debug) lt_option_debug=1 ;;\n", f);
  fputs("    --lt-dump-script)\n", f);
  fputs("        lt_dump_D=`$ECHO \"X$lt_script_arg0\" | /usr/bin/sed -e 's/^X//' -e 's%/[", f);
  fputs("^/]*$%%'`\n", f);
  fputs("        test \"X$lt_dump_D\" = \"X$lt_script_arg0\" && lt_dump_D=.\n", f);
  fputs("        lt_dump_F=`$ECHO \"X$lt_script_arg0\" | /usr/bin/sed -e 's/^X//' -e 's%^.", f);
  fputs("*/%%'`\n", f);
  fputs("        cat \"$lt_dump_D/$lt_dump_F\"\n", f);
  fputs("        exit 0\n", f);
  fputs("      ;;\n", f);
  fputs("    --lt-*)\n", f);
  fputs("        $ECHO \"Unrecognized --lt- option: '$lt_opt'\" 1>&2\n", f);
  fputs("        exit 1\n", f);
  fputs("      ;;\n", f);
  fputs("    esac\n", f);
  fputs("  done\n", f);
  fputs("\n", f);
  fputs("  # Print the debug banner immediately:\n", f);
  fputs("  if test -n \"$lt_option_debug\"; then\n", f);
  fputs("    echo \"CppUTestTests:CppUTestTests:$LINENO: libtool wrapper (GNU libtool) 2.", f);
  fputs("4.6\" 1>&2\n", f);
  fputs("  fi\n", f);
  fputs("}\n", f);
  fputs("\n", f);
  fputs("# Used when --lt-debug. Prints its arguments to stdout\n", f);
  fputs("# (redirection is the responsibility of the caller)\n", f);
  fputs("func_lt_dump_args ()\n", f);
  fputs("{\n", f);
  fputs("  lt_dump_args_N=1;\n", f);
  fputs("  for lt_arg\n", f);
  fputs("  do\n", f);
  fputs("    $ECHO \"CppUTestTests:CppUTestTests:$LINENO: newargv[$lt_dump_args_N]: $lt_a", f);
  fputs("rg\"\n", f);
  fputs("    lt_dump_args_N=`expr $lt_dump_args_N + 1`\n", f);
  fputs("  done\n", f);
  fputs("}\n", f);
  fputs("\n", f);
  fputs("# Core function for launching the target application\n", f);
  fputs("func_exec_program_core ()\n", f);
  fputs("{\n", f);
  fputs("\n", f);
  fputs("      if test -n \"$lt_option_debug\"; then\n", f);
  fputs("        $ECHO \"CppUTestTests:CppUTestTests:$LINENO: newargv[0]: $progdir/$progr", f);
  fputs("am\" 1>&2\n", f);
  fputs("        func_lt_dump_args ${1+\"$@\"} 1>&2\n", f);
  fputs("      fi\n", f);
  fputs("      exec \"$progdir/$program\" ${1+\"$@\"}\n", f);
  fputs("\n", f);
  fputs("      $ECHO \"$0: cannot exec $program $*\" 1>&2\n", f);
  fputs("      exit 1\n", f);
  fputs("}\n", f);
  fputs("\n", f);
  fputs("# A function to encapsulate launching the target application\n", f);
  fputs("# Strips options in the --lt-* namespace from $@ and\n", f);
  fputs("# launches target application with the remaining arguments.\n", f);
  fputs("func_exec_program ()\n", f);
  fputs("{\n", f);
  fputs("  case \" $* \" in\n", f);
  fputs("  *\\ --lt-*)\n", f);
  fputs("    for lt_wr_arg\n", f);
  fputs("    do\n", f);
  fputs("      case $lt_wr_arg in\n", f);
  fputs("      --lt-*) ;;\n", f);
  fputs("      *) set x \"$@\" \"$lt_wr_arg\"; shift;;\n", f);
  fputs("      esac\n", f);
  fputs("      shift\n", f);
  fputs("    done ;;\n", f);
  fputs("  esac\n", f);
  fputs("  func_exec_program_core ${1+\"$@\"}\n", f);
  fputs("}\n", f);
  fputs("\n", f);
  fputs("  # Parse options\n", f);
  fputs("  func_parse_lt_options \"$0\" ${1+\"$@\"}\n", f);
  fputs("\n", f);
  fputs("  # Find the directory that this script lives in.\n", f);
  fputs("  thisdir=`$ECHO \"$file\" | /usr/bin/sed 's%/[^/]*$%%'`\n", f);
  fputs("  test \"x$thisdir\" = \"x$file\" && thisdir=.\n", f);
  fputs("\n", f);
  fputs("  # Follow symbolic links until we get to the real thisdir.\n", f);
  fputs("  file=`ls -ld \"$file\" | /usr/bin/sed -n 's/.*-> //p'`\n", f);
  fputs("  while test -n \"$file\"; do\n", f);
  fputs("    destdir=`$ECHO \"$file\" | /usr/bin/sed 's%/[^/]*$%%'`\n", f);
  fputs("\n", f);
  fputs("    # If there was a directory component, then change thisdir.\n", f);
  fputs("    if test \"x$destdir\" != \"x$file\"; then\n", f);
  fputs("      case \"$destdir\" in\n", f);
  fputs("      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"$destdir\" ;;\n", f);
  fputs("      *) thisdir=\"$thisdir/$destdir\" ;;\n", f);
  fputs("      esac\n", f);
  fputs("    fi\n", f);
  fputs("\n", f);
  fputs("    file=`$ECHO \"$file\" | /usr/bin/sed 's%^.*/%%'`\n", f);
  fputs("    file=`ls -ld \"$thisdir/$file\" | /usr/bin/sed -n 's/.*-> //p'`\n", f);
  fputs("  done\n", f);
  fputs("\n", f);
  fputs("  # Usually 'no', except on cygwin/mingw when embedded into\n", f);
  fputs("  # the cwrapper.\n", f);
  fputs("  WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=yes\n", f);
  fputs("  if test \"$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then\n", f);
  fputs("    # special case for '.'\n", f);
  fputs("    if test \"$thisdir\" = \".\"; then\n", f);
  fputs("      thisdir=`pwd`\n", f);
  fputs("    fi\n", f);
  fputs("    # remove .libs from thisdir\n", f);
  fputs("    case \"$thisdir\" in\n", f);
  fputs("    *[\\\\/].libs ) thisdir=`$ECHO \"$thisdir\" | /usr/bin/sed 's%[\\\\/][^\\\\/]*$%%'`", f);
  fputs(" ;;\n", f);
  fputs("    .libs )   thisdir=. ;;\n", f);
  fputs("    esac\n", f);
  fputs("  fi\n", f);
  fputs("\n", f);
  fputs("  # Try to get the absolute directory name.\n", f);
  fputs("  absdir=`cd \"$thisdir\" && pwd`\n", f);
  fputs("  test -n \"$absdir\" && thisdir=\"$absdir\"\n", f);
  fputs("\n", f);
  fputs("  program='CppUTestTests'\n", f);
  fputs("  progdir=\"$thisdir/.libs\"\n", f);
  fputs("\n", f);
  fputs("\n", f);
  fputs("  if test -f \"$progdir/$program\"; then\n", f);
  fputs("    if test \"$libtool_execute_magic\" != \"%%%MAGIC variable%%%\"; then\n", f);
  fputs("      # Run the actual program with our arguments.\n", f);
  fputs("      func_exec_program ${1+\"$@\"}\n", f);
  fputs("    fi\n", f);
  fputs("  else\n", f);
  fputs("    # The program doesn't exist.\n", f);
  fputs("    $ECHO \"$0: error: '$progdir/$program' does not exist\" 1>&2\n", f);
  fputs("    $ECHO \"This script is just a wrapper for $program.\" 1>&2\n", f);
  fputs("    $ECHO \"See the libtool documentation for more information.\" 1>&2\n", f);
  fputs("    exit 1\n", f);
  fputs("  fi\n", f);
  fputs("fi\n", f);
}
```