user: What is the c source code of the assembly code below?

```asm
<Init_Qmat_Blosum62>:
  endbr64
  mov    %rdi,%rcx
  mov    D1099(%rip),%rax
  mov    %rax,0xa0(%rdi)
  mov    D375(%rip),%rax
  mov    %rax,0x140(%rdi)
  mov    D2024(%rip),%rax
  mov    %rax,0x148(%rdi)
  mov    D307(%rip),%rax
  mov    %rax,0x1e0(%rdi)
  mov    D674(%rip),%rax
  mov    %rax,0x1e8(%rdi)
  mov    D1436(%rip),%rax
  mov    %rax,0x1f0(%rdi)
  mov    D297(%rip),%rax
  mov    %rax,0x280(%rdi)
  mov    D1982(%rip),%rax
  mov    %rax,0x288(%rdi)
  mov    D295(%rip),%rax
  mov    %rax,0x290(%rdi)
  mov    D1907(%rip),%rax
  mov    %rax,0x298(%rdi)
  mov    D1322(%rip),%rax
  mov    %rax,0x320(%rdi)
  mov    D1882(%rip),%rax
  mov    %rax,0x328(%rdi)
  mov    D430(%rip),%rax
  mov    %rax,0x330(%rdi)
  mov    D1716(%rip),%rax
  mov    %rax,0x338(%rdi)
  mov    D1724(%rip),%rax
  mov    %rax,0x340(%rdi)
  mov    D1965(%rip),%rax
  mov    %rax,0x3c0(%rdi)
  mov    D667(%rip),%rax
  mov    %rax,0x3c8(%rdi)
  mov    D1147(%rip),%rax
  mov    %rax,0x3d0(%rdi)
  mov    D508(%rip),%rax
  mov    %rax,0x3d8(%rdi)
  mov    D700(%rip),%rax
  mov    %rax,0x3e0(%rdi)
  mov    D825(%rip),%rax
  mov    %rax,0x3e8(%rdi)
  mov    D1527(%rip),%rax
  mov    %rax,0x460(%rdi)
  mov    D1542(%rip),%rax
  mov    %rax,0x468(%rdi)
  mov    D1171(%rip),%rax
  mov    %rax,0x470(%rdi)
  mov    D1320(%rip),%rax
  mov    %rax,0x478(%rdi)
  mov    D1645(%rip),%rax
  mov    %rax,0x480(%rdi)
  mov    D1807(%rip),%rax
  mov    %rax,0x488(%rdi)
  mov    D1509(%rip),%rax
  mov    %rax,0x490(%rdi)
  mov    D181(%rip),%rax
  mov    %rax,0x500(%rdi)
  mov    D1575(%rip),%rax
  mov    %rax,0x508(%rdi)
  mov    D1784(%rip),%rax
  mov    %rax,0x510(%rdi)
  mov    D1638(%rip),%rax
  mov    %rax,0x518(%rdi)
  mov    D903(%rip),%rax
  mov    %rax,0x520(%rdi)
  mov    D339(%rip),%rax
  mov    %rax,0x528(%rdi)
  mov    D1531(%rip),%rax
  mov    %rax,0x530(%rdi)
  mov    D912(%rip),%rax
  mov    %rax,0x538(%rdi)
  mov    D1450(%rip),%rax
  mov    %rax,0x5a0(%rdi)
  mov    D871(%rip),%rax
  mov    %rax,0x5a8(%rdi)
  mov    D329(%rip),%rax
  mov    %rax,0x5b0(%rdi)
  mov    D261(%rip),%rax
  mov    %rax,0x5b8(%rdi)
  mov    D2035(%rip),%rax
  mov    %rax,0x5c0(%rdi)
  mov    D1447(%rip),%rax
  mov    %rax,0x5c8(%rdi)
  mov    D1973(%rip),%rax
  mov    %rax,0x5d0(%rdi)
  mov    D1669(%rip),%rax
  mov    %rax,0x5d8(%rdi)
  mov    D2040(%rip),%rax
  mov    %rax,0x5e0(%rdi)
  mov    D97(%rip),%rax
  mov    %rax,0x640(%rdi)
  mov    D0(%rip),%rax
  mov    %rax,0x648(%rdi)
  mov    D1819(%rip),%rax
  mov    %rax,0x650(%rdi)
  mov    D195(%rip),%rax
  mov    %rax,0x658(%rdi)
  mov    D873(%rip),%rax
  mov    %rax,0x660(%rdi)
  mov    D1718(%rip),%rax
  mov    %rax,0x668(%rdi)
  mov    D576(%rip),%rax
  mov    %rax,0x670(%rdi)
  mov    D950(%rip),%rax
  mov    %rax,0x678(%rdi)
  mov    D1842(%rip),%rax
  mov    %rax,0x680(%rdi)
  mov    D1068(%rip),%rax
  mov    %rax,0x688(%rdi)
  mov    D1486(%rip),%rax
  mov    %rax,0x6e0(%rdi)
  mov    D1711(%rip),%rax
  mov    %rax,0x6e8(%rdi)
  mov    D1756(%rip),%rax
  mov    %rax,0x6f0(%rdi)
  mov    D1240(%rip),%rax
  mov    %rax,0x6f8(%rdi)
  mov    D343(%rip),%rax
  mov    %rax,0x700(%rdi)
  mov    D1543(%rip),%rax
  mov    %rax,0x708(%rdi)
  mov    D33(%rip),%rax
  mov    %rax,0x710(%rdi)
  mov    D490(%rip),%rax
  mov    %rax,0x718(%rdi)
  mov    D462(%rip),%rax
  mov    %rax,0x720(%rdi)
  mov    D714(%rip),%rax
  mov    %rax,0x728(%rdi)
  mov    D828(%rip),%rax
  mov    %rax,0x730(%rdi)
  mov    D1332(%rip),%rax
  mov    %rax,0x780(%rdi)
  mov    D795(%rip),%rax
  mov    %rax,0x788(%rdi)
  mov    D1360(%rip),%rax
  mov    %rax,0x790(%rdi)
  mov    D1206(%rip),%rax
  mov    %rax,0x798(%rdi)
  mov    D1358(%rip),%rax
  mov    %rax,0x7a0(%rdi)
  mov    D1580(%rip),%rax
  mov    %rax,0x7a8(%rdi)
  mov    D2064(%rip),%rax
  mov    %rax,0x7b0(%rdi)
  mov    D861(%rip),%rax
  mov    %rax,0x7b8(%rdi)
  mov    D184(%rip),%rax
  mov    %rax,0x7c0(%rdi)
  mov    D1236(%rip),%rax
  mov    %rax,0x7c8(%rdi)
  mov    D262(%rip),%rax
  mov    %rax,0x7d0(%rdi)
  mov    D478(%rip),%rax
  mov    %rax,0x7d8(%rdi)
  mov    D1416(%rip),%rax
  mov    %rax,0x820(%rdi)
  mov    D428(%rip),%rax
  mov    %rax,0x828(%rdi)
  mov    D1313(%rip),%rax
  mov    %rax,0x830(%rdi)
  mov    D394(%rip),%rax
  mov    %rax,0x838(%rdi)
  mov    D628(%rip),%rax
  mov    %rax,0x840(%rdi)
  mov    D290(%rip),%rax
  mov    %rax,0x848(%rdi)
  mov    D947(%rip),%rax
  mov    %rax,0x850(%rdi)
  mov    D1463(%rip),%rax
  mov    %rax,0x858(%rdi)
  mov    D1770(%rip),%rax
  mov    %rax,0x860(%rdi)
  mov    D2013(%rip),%rax
  mov    %rax,0x868(%rdi)
  mov    D167(%rip),%rax
  mov    %rax,0x870(%rdi)
  mov    D358(%rip),%rax
  mov    %rax,0x878(%rdi)
  mov    D1745(%rip),%rax
  mov    %rax,0x880(%rdi)
  mov    D1459(%rip),%rax
  mov    %rax,0x8c0(%rdi)
  mov    D2019(%rip),%rax
  mov    %rax,0x8c8(%rdi)
  mov    D1760(%rip),%rax
  mov    %rax,0x8d0(%rdi)
  mov    D1123(%rip),%rax
  mov    %rax,0x8d8(%rdi)
  mov    D948(%rip),%rax
  mov    %rax,0x8e0(%rdi)
  mov    D424(%rip),%rax
  mov    %rax,0x8e8(%rdi)
  mov    D619(%rip),%rax
  mov    %rax,0x8f0(%rdi)
  mov    D798(%rip),%rax
  mov    %rax,0x8f8(%rdi)
  mov    D650(%rip),%rax
  mov    %rax,0x900(%rdi)
  mov    D1755(%rip),%rax
  mov    %rax,0x908(%rdi)
  mov    D736(%rip),%rax
  mov    %rax,0x910(%rdi)
  mov    D330(%rip),%rax
  mov    %rax,0x918(%rdi)
  mov    D689(%rip),%rax
  mov    %rax,0x920(%rdi)
  mov    D1286(%rip),%rax
  mov    %rax,0x928(%rdi)
  mov    D283(%rip),%rax
  mov    %rax,0x960(%rdi)
  mov    D963(%rip),%rax
  mov    %rax,0x968(%rdi)
  mov    D461(%rip),%rax
  mov    %rax,0x970(%rdi)
  mov    D1290(%rip),%rax
  mov    %rax,0x978(%rdi)
  mov    D1146(%rip),%rax
  mov    %rax,0x980(%rdi)
  mov    D1339(%rip),%rax
  mov    %rax,0x988(%rdi)
  mov    D1120(%rip),%rax
  mov    %rax,0x990(%rdi)
  mov    D1470(%rip),%rax
  mov    %rax,0x998(%rdi)
  mov    D331(%rip),%rax
  mov    %rax,0x9a0(%rdi)
  mov    D1349(%rip),%rax
  mov    %rax,0x9a8(%rdi)
  mov    D692(%rip),%rax
  mov    %rax,0x9b0(%rdi)
  mov    D1464(%rip),%rax
  mov    %rax,0x9b8(%rdi)
  mov    D1537(%rip),%rax
  mov    %rax,0x9c0(%rdi)
  mov    D695(%rip),%rax
  mov    %rax,0x9c8(%rdi)
  mov    D29(%rip),%rax
  mov    %rax,0x9d0(%rdi)
  mov    D1265(%rip),%rax
  mov    %rax,0xa00(%rdi)
  mov    D930(%rip),%rax
  mov    %rax,0xa08(%rdi)
  mov    D1663(%rip),%rax
  mov    %rax,0xa10(%rdi)
  mov    D213(%rip),%rax
  mov    %rax,0xa18(%rdi)
  mov    D1960(%rip),%rax
  mov    %rax,0xa20(%rdi)
  mov    D1410(%rip),%rax
  mov    %rax,0xa28(%rdi)
  mov    D256(%rip),%rax
  mov    %rax,0xa30(%rdi)
  mov    D968(%rip),%rax
  mov    %rax,0xa38(%rdi)
  mov    D1536(%rip),%rax
  mov    %rax,0xa40(%rdi)
  mov    D1830(%rip),%rax
  mov    %rax,0xa48(%rdi)
  mov    D1588(%rip),%rax
  mov    %rax,0xa50(%rdi)
  mov    D1422(%rip),%rax
  mov    %rax,0xa58(%rdi)
  mov    D759(%rip),%rax
  mov    %rax,0xa60(%rdi)
  mov    D284(%rip),%rax
  mov    %rax,0xa68(%rdi)
  mov    D229(%rip),%rax
  mov    %rax,0xa70(%rdi)
  mov    D448(%rip),%rax
  mov    %rax,0xa78(%rdi)
  mov    D612(%rip),%rax
  mov    %rax,0xaa0(%rdi)
  mov    D1963(%rip),%rax
  mov    %rax,0xaa8(%rdi)
  mov    D1397(%rip),%rax
  mov    %rax,0xab0(%rdi)
  mov    D848(%rip),%rax
  mov    %rax,0xab8(%rdi)
  mov    D1897(%rip),%rax
  mov    %rax,0xac0(%rdi)
  mov    D1345(%rip),%rax
  mov    %rax,0xac8(%rdi)
  mov    D1449(%rip),%rax
  mov    %rax,0xad0(%rdi)
  mov    D2017(%rip),%rax
  mov    %rax,0xad8(%rdi)
  mov    D489(%rip),%rax
  mov    %rax,0xae0(%rdi)
  mov    D1834(%rip),%rax
  mov    %rax,0xae8(%rdi)
  mov    D1183(%rip),%rax
  mov    %rax,0xaf0(%rdi)
  mov    D125(%rip),%rax
  mov    %rax,0xaf8(%rdi)
  mov    D1653(%rip),%rax
  mov    %rax,0xb00(%rdi)
  mov    D569(%rip),%rax
  mov    %rax,0xb08(%rdi)
  mov    D1659(%rip),%rax
  mov    %rax,0xb10(%rdi)
  mov    D1955(%rip),%rax
  mov    %rax,0xb18(%rdi)
  mov    D1750(%rip),%rax
  mov    %rax,0xb20(%rdi)
  mov    D1197(%rip),%rax
  mov    %rax,0xb40(%rdi)
  mov    D1387(%rip),%rax
  mov    %rax,0xb48(%rdi)
  mov    D1968(%rip),%rax
  mov    %rax,0xb50(%rdi)
  mov    D1726(%rip),%rax
  mov    %rax,0xb58(%rdi)
  mov    D217(%rip),%rax
  mov    %rax,0xb60(%rdi)
  mov    D1658(%rip),%rax
  mov    %rax,0xb68(%rdi)
  mov    D438(%rip),%rax
  mov    %rax,0xb70(%rdi)
  mov    D1969(%rip),%rax
  mov    %rax,0xb78(%rdi)
  mov    D230(%rip),%rax
  mov    %rax,0xb80(%rdi)
  mov    D1079(%rip),%rax
  mov    %rax,0xb88(%rdi)
  mov    D1822(%rip),%rax
  mov    %rax,0xb90(%rdi)
  mov    D1789(%rip),%rax
  mov    %rax,0xb98(%rdi)
  mov    D611(%rip),%rax
  mov    %rax,0xba0(%rdi)
  mov    D874(%rip),%rax
  mov    %rax,0xba8(%rdi)
  mov    D1898(%rip),%rax
  mov    %rax,0xbb0(%rdi)
  mov    D827(%rip),%rax
  mov    %rax,0xbb8(%rdi)
  mov    D1935(%rip),%rax
  mov    %rax,0xbc0(%rdi)
  mov    D549(%rip),%rax
  mov    %rax,0xbc8(%rdi)
  mov    D1631(%rip),%rax
  mov    %rax,0xbe0(%rdi)
  mov    D2012(%rip),%rax
  mov    %rax,0xbe8(%rdi)
  mov    D875(%rip),%rax
  mov    %rax,0xbf0(%rdi)
  mov    D1241(%rip),%rax
  mov    %rax,0xbf8(%rdi)
  mov    D998(%rip),%rax
  mov    %rax,0xc00(%rdi)
  mov    D2057(%rip),%rax
  mov    %rax,0xc08(%rdi)
  mov    D632(%rip),%rax
  mov    %rax,0xc10(%rdi)
  mov    D119(%rip),%rax
  mov    %rax,0xc18(%rdi)
  mov    D568(%rip),%rax
  mov    %rax,0xc20(%rdi)
  mov    D849(%rip),%rax
  mov    %rax,0xc28(%rdi)
  mov    D1967(%rip),%rax
  mov    %rax,0xc30(%rdi)
  mov    D180(%rip),%rax
  mov    %rax,0xc38(%rdi)
  mov    D1160(%rip),%rax
  mov    %rax,0xc40(%rdi)
  mov    D561(%rip),%rax
  mov    %rax,0xc48(%rdi)
  mov    D1367(%rip),%rax
  mov    %rax,0xc50(%rdi)
  mov    D1262(%rip),%rax
  mov    %rax,0xc58(%rdi)
  mov    D955(%rip),%rax
  mov    %rax,0xc60(%rdi)
  mov    D604(%rip),%rax
  mov    %rax,0xc68(%rdi)
  mov    D1122(%rip),%rax
  mov    %rax,0xc70(%rdi)
  lea    0xa0(%rdi),%r9
  lea    0x8(%rdi),%r8
  add    $0xa8,%rcx
  mov    $0x0,%edi
  jmp    L25
L30:
  movsd  (%rax),%xmm0
  movsd  %xmm0,(%rdx)
  add    $0x8,%rax
  add    $0xa0,%rdx
  cmp    %rcx,%rax
  jne    L30
L39:
  add    $0xa0,%r9
  add    $0x8,%r8
  add    $0xa8,%rcx
L25:
  add    $0x1,%edi
  cmp    $0x14,%edi
  je     L38
  mov    %r8,%rdx
  mov    %r9,%rax
  test   %edi,%edi
  jg     L30
  jmp    L39
L38:
  movsd  D1414(%rip),%xmm1
  movsd  %xmm1,(%rsi)
  mov    D1519(%rip),%rax
  mov    %rax,0x8(%rsi)
  mov    D916(%rip),%rax
  mov    %rax,0x10(%rsi)
  movsd  D1649(%rip),%xmm2
  movsd  %xmm2,0x18(%rsi)
  movsd  D669(%rip),%xmm0
  movsd  %xmm0,0x20(%rsi)
  mov    D773(%rip),%rax
  mov    %rax,0x28(%rsi)
  movsd  %xmm2,0x30(%rsi)
  movsd  %xmm1,0x38(%rsi)
  mov    D1156(%rip),%rax
  mov    %rax,0x40(%rsi)
  mov    D1248(%rip),%rax
  mov    %rax,0x48(%rsi)
  mov    D1251(%rip),%rax
  mov    %rax,0x50(%rsi)
  mov    D1719(%rip),%rax
  mov    %rax,0x58(%rsi)
  movsd  %xmm0,0x60(%rsi)
  mov    D761(%rip),%rax
  mov    %rax,0x68(%rsi)
  mov    D157(%rip),%rax
  mov    %rax,0x70(%rsi)
  mov    D206(%rip),%rax
  mov    %rax,0x78(%rsi)
  mov    D634(%rip),%rax
  mov    %rax,0x80(%rsi)
  mov    D958(%rip),%rax
  mov    %rax,0x88(%rsi)
  mov    D1929(%rip),%rax
  mov    %rax,0x90(%rsi)
  mov    D2058(%rip),%rax
  mov    %rax,0x98(%rsi)
  mov    $0x1,%eax
  ret
```

tool_calls: name: retrieve_data
arguments: label: D1099
type: f64
name: retrieve_data
arguments: label: D375
type: f64
name: retrieve_data
arguments: label: D2024
type: f64
name: retrieve_data
arguments: label: D307
type: f64
name: retrieve_data
arguments: label: D674
type: f64
name: retrieve_data
arguments: label: D1436
type: f64
name: retrieve_data
arguments: label: D297
type: f64
name: retrieve_data
arguments: label: D1982
type: f64
name: retrieve_data
arguments: label: D295
type: f64
name: retrieve_data
arguments: label: D1907
type: f64
name: retrieve_data
arguments: label: D1322
type: f64
name: retrieve_data
arguments: label: D1882
type: f64
name: retrieve_data
arguments: label: D430
type: f64
name: retrieve_data
arguments: label: D1716
type: f64
name: retrieve_data
arguments: label: D1724
type: f64
name: retrieve_data
arguments: label: D1965
type: f64
name: retrieve_data
arguments: label: D667
type: f64
name: retrieve_data
arguments: label: D1147
type: f64
name: retrieve_data
arguments: label: D508
type: f64
name: retrieve_data
arguments: label: D700
type: f64
name: retrieve_data
arguments: label: D825
type: f64
name: retrieve_data
arguments: label: D1527
type: f64
name: retrieve_data
arguments: label: D1542
type: f64
name: retrieve_data
arguments: label: D1171
type: f64
name: retrieve_data
arguments: label: D1320
type: f64
name: retrieve_data
arguments: label: D1645
type: f64
name: retrieve_data
arguments: label: D1807
type: f64
name: retrieve_data
arguments: label: D1509
type: f64
name: retrieve_data
arguments: label: D181
type: f64
name: retrieve_data
arguments: label: D1575
type: f64
name: retrieve_data
arguments: label: D1784
type: f64
name: retrieve_data
arguments: label: D1638
type: f64
name: retrieve_data
arguments: label: D903
type: f64
name: retrieve_data
arguments: label: D339
type: f64
name: retrieve_data
arguments: label: D1531
type: f64
name: retrieve_data
arguments: label: D912
type: f64
name: retrieve_data
arguments: label: D1450
type: f64
name: retrieve_data
arguments: label: D871
type: f64
name: retrieve_data
arguments: label: D329
type: f64
name: retrieve_data
arguments: label: D261
type: f64
name: retrieve_data
arguments: label: D2035
type: f64
name: retrieve_data
arguments: label: D1447
type: f64
name: retrieve_data
arguments: label: D1973
type: f64
name: retrieve_data
arguments: label: D1669
type: f64
name: retrieve_data
arguments: label: D2040
type: f64
name: retrieve_data
arguments: label: D97
type: f64
name: retrieve_data
arguments: label: D0
type: f64
name: retrieve_data
arguments: label: D1819
type: f64
name: retrieve_data
arguments: label: D195
type: f64
name: retrieve_data
arguments: label: D873
type: f64
name: retrieve_data
arguments: label: D1718
type: f64
name: retrieve_data
arguments: label: D576
type: f64
name: retrieve_data
arguments: label: D950
type: f64
name: retrieve_data
arguments: label: D1842
type: f64
name: retrieve_data
arguments: label: D1068
type: f64
name: retrieve_data
arguments: label: D1486
type: f64
name: retrieve_data
arguments: label: D1711
type: f64
name: retrieve_data
arguments: label: D1756
type: f64
name: retrieve_data
arguments: label: D1240
type: f64
name: retrieve_data
arguments: label: D343
type: f64
name: retrieve_data
arguments: label: D1543
type: f64
name: retrieve_data
arguments: label: D33
type: f64
name: retrieve_data
arguments: label: D490
type: f64
name: retrieve_data
arguments: label: D462
type: f64
name: retrieve_data
arguments: label: D714
type: f64
name: retrieve_data
arguments: label: D828
type: f64
name: retrieve_data
arguments: label: D1332
type: f64
name: retrieve_data
arguments: label: D795
type: f64
name: retrieve_data
arguments: label: D1360
type: f64
name: retrieve_data
arguments: label: D1206
type: f64
name: retrieve_data
arguments: label: D1358
type: f64
name: retrieve_data
arguments: label: D1580
type: f64
name: retrieve_data
arguments: label: D2064
type: f64
name: retrieve_data
arguments: label: D861
type: f64
name: retrieve_data
arguments: label: D184
type: f64
name: retrieve_data
arguments: label: D1236
type: f64
name: retrieve_data
arguments: label: D262
type: f64
name: retrieve_data
arguments: label: D478
type: f64
name: retrieve_data
arguments: label: D1416
type: f64
name: retrieve_data
arguments: label: D428
type: f64
name: retrieve_data
arguments: label: D1313
type: f64
name: retrieve_data
arguments: label: D394
type: f64
name: retrieve_data
arguments: label: D628
type: f64
name: retrieve_data
arguments: label: D290
type: f64
name: retrieve_data
arguments: label: D947
type: f64
name: retrieve_data
arguments: label: D1463
type: f64
name: retrieve_data
arguments: label: D1770
type: f64
name: retrieve_data
arguments: label: D2013
type: f64
name: retrieve_data
arguments: label: D167
type: f64
name: retrieve_data
arguments: label: D358
type: f64
name: retrieve_data
arguments: label: D1745
type: f64
name: retrieve_data
arguments: label: D1459
type: f64
name: retrieve_data
arguments: label: D2019
type: f64
name: retrieve_data
arguments: label: D1760
type: f64
name: retrieve_data
arguments: label: D1123
type: f64
name: retrieve_data
arguments: label: D948
type: f64
name: retrieve_data
arguments: label: D424
type: f64
name: retrieve_data
arguments: label: D619
type: f64
name: retrieve_data
arguments: label: D798
type: f64
name: retrieve_data
arguments: label: D650
type: f64
name: retrieve_data
arguments: label: D1755
type: f64
name: retrieve_data
arguments: label: D736
type: f64
name: retrieve_data
arguments: label: D330
type: f64
name: retrieve_data
arguments: label: D689
type: f64
name: retrieve_data
arguments: label: D1286
type: f64
name: retrieve_data
arguments: label: D283
type: f64
name: retrieve_data
arguments: label: D963
type: f64
name: retrieve_data
arguments: label: D461
type: f64
name: retrieve_data
arguments: label: D1290
type: f64
name: retrieve_data
arguments: label: D1146
type: f64
name: retrieve_data
arguments: label: D1339
type: f64
name: retrieve_data
arguments: label: D1120
type: f64
name: retrieve_data
arguments: label: D1470
type: f64
name: retrieve_data
arguments: label: D331
type: f64
name: retrieve_data
arguments: label: D1349
type: f64
name: retrieve_data
arguments: label: D692
type: f64
name: retrieve_data
arguments: label: D1464
type: f64
name: retrieve_data
arguments: label: D1537
type: f64
name: retrieve_data
arguments: label: D695
type: f64
name: retrieve_data
arguments: label: D29
type: f64
name: retrieve_data
arguments: label: D1265
type: f64
name: retrieve_data
arguments: label: D930
type: f64
name: retrieve_data
arguments: label: D1663
type: f64
name: retrieve_data
arguments: label: D213
type: f64
name: retrieve_data
arguments: label: D1960
type: f64
name: retrieve_data
arguments: label: D1410
type: f64
name: retrieve_data
arguments: label: D256
type: f64
name: retrieve_data
arguments: label: D968
type: f64
name: retrieve_data
arguments: label: D1536
type: f64
name: retrieve_data
arguments: label: D1830
type: f64
name: retrieve_data
arguments: label: D1588
type: f64
name: retrieve_data
arguments: label: D1422
type: f64
name: retrieve_data
arguments: label: D759
type: f64
name: retrieve_data
arguments: label: D284
type: f64
name: retrieve_data
arguments: label: D229
type: f64
name: retrieve_data
arguments: label: D448
type: f64
name: retrieve_data
arguments: label: D612
type: f64
name: retrieve_data
arguments: label: D1963
type: f64
name: retrieve_data
arguments: label: D1397
type: f64
name: retrieve_data
arguments: label: D848
type: f64
name: retrieve_data
arguments: label: D1897
type: f64
name: retrieve_data
arguments: label: D1345
type: f64
name: retrieve_data
arguments: label: D1449
type: f64
name: retrieve_data
arguments: label: D2017
type: f64
name: retrieve_data
arguments: label: D489
type: f64
name: retrieve_data
arguments: label: D1834
type: f64
name: retrieve_data
arguments: label: D1183
type: f64
name: retrieve_data
arguments: label: D125
type: f64
name: retrieve_data
arguments: label: D1653
type: f64
name: retrieve_data
arguments: label: D569
type: f64
name: retrieve_data
arguments: label: D1659
type: f64
name: retrieve_data
arguments: label: D1955
type: f64
name: retrieve_data
arguments: label: D1750
type: f64
name: retrieve_data
arguments: label: D1197
type: f64
name: retrieve_data
arguments: label: D1387
type: f64
name: retrieve_data
arguments: label: D1968
type: f64
name: retrieve_data
arguments: label: D1726
type: f64
name: retrieve_data
arguments: label: D217
type: f64
name: retrieve_data
arguments: label: D1658
type: f64
name: retrieve_data
arguments: label: D438
type: f64
name: retrieve_data
arguments: label: D1969
type: f64
name: retrieve_data
arguments: label: D230
type: f64
name: retrieve_data
arguments: label: D1079
type: f64
name: retrieve_data
arguments: label: D1822
type: f64
name: retrieve_data
arguments: label: D1789
type: f64
name: retrieve_data
arguments: label: D611
type: f64
name: retrieve_data
arguments: label: D874
type: f64
name: retrieve_data
arguments: label: D1898
type: f64
name: retrieve_data
arguments: label: D827
type: f64
name: retrieve_data
arguments: label: D1935
type: f64
name: retrieve_data
arguments: label: D549
type: f64
name: retrieve_data
arguments: label: D1631
type: f64
name: retrieve_data
arguments: label: D2012
type: f64
name: retrieve_data
arguments: label: D875
type: f64
name: retrieve_data
arguments: label: D1241
type: f64
name: retrieve_data
arguments: label: D998
type: f64
name: retrieve_data
arguments: label: D2057
type: f64
name: retrieve_data
arguments: label: D632
type: f64
name: retrieve_data
arguments: label: D119
type: f64
name: retrieve_data
arguments: label: D568
type: f64
name: retrieve_data
arguments: label: D849
type: f64
name: retrieve_data
arguments: label: D1967
type: f64
name: retrieve_data
arguments: label: D180
type: f64
name: retrieve_data
arguments: label: D1160
type: f64
name: retrieve_data
arguments: label: D561
type: f64
name: retrieve_data
arguments: label: D1367
type: f64
name: retrieve_data
arguments: label: D1262
type: f64
name: retrieve_data
arguments: label: D955
type: f64
name: retrieve_data
arguments: label: D604
type: f64
name: retrieve_data
arguments: label: D1122
type: byte[8]
name: retrieve_data
arguments: label: D1414
type: f64
name: retrieve_data
arguments: label: D1519
type: f64
name: retrieve_data
arguments: label: D916
type: f64
name: retrieve_data
arguments: label: D1649
type: f64
name: retrieve_data
arguments: label: D669
type: f64
name: retrieve_data
arguments: label: D773
type: f64
name: retrieve_data
arguments: label: D1156
type: f64
name: retrieve_data
arguments: label: D1248
type: f64
name: retrieve_data
arguments: label: D1251
type: f64
name: retrieve_data
arguments: label: D1719
type: f64
name: retrieve_data
arguments: label: D761
type: f64
name: retrieve_data
arguments: label: D157
type: f64
name: retrieve_data
arguments: label: D206
type: f64
name: retrieve_data
arguments: label: D634
type: f64
name: retrieve_data
arguments: label: D958
type: f64
name: retrieve_data
arguments: label: D1929
type: f64
name: retrieve_data
arguments: label: D2058
type: f64

tool: D1099: 0.735790389698

tool: D375: 0.485391055466

tool: D2024: 1.297446705134

tool: D307: 0.543161820899

tool: D674: 0.500964408555

tool: D1436: 3.180100048216

tool: D297: 1.45999531047

tool: D1982: 0.227826574209

tool: D295: 0.397358949897

tool: D1907: 0.240836614802

tool: D1322: 1.199705704602

tool: D1882: 3.020833610064

tool: D430: 1.839216146992

tool: D1716: 1.190945703396

tool: D1724: 0.32980150463

tool: D1965: 1.1709490428

tool: D667: 1.36057419042

tool: D1147: 1.24048850864

tool: D508: 3.761625208368

tool: D700: 0.140748891814

tool: D825: 5.528919177928

tool: D1527: 1.95588357496

tool: D1542: 0.418763308518

tool: D1171: 1.355872344485

tool: D1320: 0.798473248968

tool: D1645: 0.418203192284

tool: D1807: 0.609846305383

tool: D1509: 0.423579992176

tool: D181: 0.716241444998

tool: D1575: 1.456141166336

tool: D1784: 2.414501434208

tool: D1638: 0.778142664022

tool: D903: 0.354058109831

tool: D339: 2.43534113114

tool: D1531: 1.626891056982

tool: D912: 0.539859124954

tool: D1450: 0.605899003687

tool: D871: 0.232036445142

tool: D329: 0.283017326278

tool: D261: 0.418555732462

tool: D2035: 0.774894022794

tool: D1447: 0.236202451204

tool: D1973: 0.186848046932

tool: D1669: 0.189296292376

tool: D2040: 0.252718447885

tool: D97: 0.800016530518

tool: D0: 0.622711669692

tool: D1819: 0.211888159615

tool: D195: 0.218131577594

tool: D873: 0.831842640142

tool: D1718: 0.580737093181

tool: D576: 0.372625175087

tool: D950: 0.217721159236

tool: D1842: 0.348072209797

tool: D1068: 3.890963773304

tool: D1486: 1.295201266783

tool: D1711: 5.411115141489

tool: D1756: 1.593137043457

tool: D1240: 1.032447924952

tool: D343: 0.285078800906

tool: D1543: 3.945277674515

tool: D33: 2.802427151679

tool: D490: 0.752042440303

tool: D462: 1.022507035889

tool: D714: 0.406193586642

tool: D828: 0.445570274261

tool: D1332: 1.253758266664

tool: D795: 0.983692987457

tool: D1360: 0.648441278787

tool: D1206: 0.222621897958

tool: D1358: 0.76768882348

tool: D1580: 2.494896077113

tool: D2064: 0.55541539747

tool: D861: 0.459436173579

tool: D184: 0.984311525359

tool: D1236: 3.364797763104

tool: D262: 6.030559379572

tool: D478: 1.073061184332

tool: D1416: 0.492964679748

tool: D428: 0.371644693209

tool: D1313: 0.354861249223

tool: D394: 0.281730694207

tool: D628: 0.441337471187

tool: D290: 0.14435695975

tool: D947: 0.291409084165

tool: D1463: 0.368166464453

tool: D1770: 0.714533703928

tool: D2013: 1.517359325954

tool: D167: 2.064839703237

tool: D358: 0.266924750511

tool: D1745: 1.77385516883

tool: D1459: 1.173275900924

tool: D2019: 0.448133661718

tool: D1760: 0.494887043702

tool: D1123: 0.730628272998

tool: D948: 0.356008498769

tool: D424: 0.858570575674

tool: D619: 0.926563934846

tool: D798: 0.504086599527

tool: D650: 0.527007339151

tool: D1755: 0.388355409206

tool: D736: 0.374555687471

tool: D330: 1.047383450722

tool: D689: 0.454123625103

tool: D1286: 0.233597909629

tool: D283: 4.325092687057

tool: D963: 1.12278310421

tool: D461: 2.904101656456

tool: D1290: 1.582754142065

tool: D1146: 1.197188415094

tool: D1339: 1.934870924596

tool: D1120: 1.769893238937

tool: D1470: 1.509326253224

tool: D331: 1.11702976291

tool: D1349: 0.35754441246

tool: D692: 0.352969184527

tool: D1464: 1.752165917819

tool: D1537: 0.918723415746

tool: D695: 0.540027644824

tool: D29: 1.169129577716

tool: D1265: 1.729178019485

tool: D930: 0.914665954563

tool: D1663: 1.898173634533

tool: D213: 0.934187509431

tool: D1960: 1.119831358516

tool: D1410: 1.277480294596

tool: D256: 1.071097236007

tool: D968: 0.641436011405

tool: D1536: 0.585407090225

tool: D1830: 1.17909119726

tool: D1588: 0.915259857694

tool: D1422: 1.303875200799

tool: D759: 1.488548053722

tool: D284: 0.488206118793

tool: D229: 1.005451683149

tool: D448: 5.15155629227

tool: D612: 0.465839367725

tool: D1963: 0.426382310122

tool: D1397: 0.191482046247

tool: D848: 0.145345046279

tool: D1897: 0.527664418872

tool: D1345: 0.758653808642

tool: D1449: 0.407635648938

tool: D2017: 0.508358924638

tool: D489: 0.30124860078

tool: D1834: 0.34198578754

tool: D1183: 0.6914746346

tool: D125: 0.332243040634

tool: D1653: 0.888101098152

tool: D569: 2.074324893497

tool: D1659: 0.252214830027

tool: D1955: 0.387925622098

tool: D1750: 0.513128126891

tool: D1197: 0.718206697586

tool: D1387: 0.720517441216

tool: D1968: 0.538222519037

tool: D1726: 0.261422208965

tool: D217: 0.470237733696

tool: D1658: 0.95898974285

tool: D438: 0.596719300346

tool: D1969: 0.308055737035

tool: D230: 4.218953969389

tool: D1079: 0.674617093228

tool: D1822: 0.811245856323

tool: D1789: 0.7179934869

tool: D611: 0.951682162246

tool: D874: 6.747260430801

tool: D1898: 0.369405319355

tool: D827: 0.796751520761

tool: D1935: 0.801010243199

tool: D549: 4.054419006558

tool: D1631: 2.187774522005

tool: D2012: 0.438388343772

tool: D875: 0.312858797993

tool: D1241: 0.258129289418

tool: D998: 1.116352478606

tool: D2057: 0.530785790125

tool: D632: 0.524253846338

tool: D119: 0.25334079019

tool: D568: 0.20155597175

tool: D849: 8.311839405458

tool: D1967: 2.231405688913

tool: D180: 0.498138475304

tool: D1160: 2.575850755315

tool: D561: 0.838119610178

tool: D1367: 0.496908410676

tool: D1262: 0.561925457442

tool: D955: 2.253074051176

tool: D604: 0.266508731426

tool: {"D1122": [0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x3f]}

tool: D1414: 0.074

tool: D1519: 0.052

tool: D916: 0.045

tool: D1649: 0.054

tool: D669: 0.025

tool: D773: 0.034

tool: D1156: 0.026

tool: D1248: 0.068

tool: D1251: 0.099

tool: D1719: 0.058

tool: D761: 0.047

tool: D157: 0.039

tool: D206: 0.057

tool: D634: 0.051

tool: D958: 0.013

tool: D1929: 0.032

tool: D2058: 0.073

assistant: ```c
int Init_Qmat_Blosum62(double *daa, double *pi) {
  int i, j, naa;
  naa = 20;
  daa[1 * 20 + 0] = 0.735790389698;
  daa[2 * 20 + 0] = 0.485391055466;
  daa[2 * 20 + 1] = 1.297446705134;
  daa[3 * 20 + 0] = 0.543161820899;
  daa[3 * 20 + 1] = 0.500964408555;
  daa[3 * 20 + 2] = 3.180100048216;
  daa[4 * 20 + 0] = 1.45999531047;
  daa[4 * 20 + 1] = 0.227826574209;
  daa[4 * 20 + 2] = 0.397358949897;
  daa[4 * 20 + 3] = 0.240836614802;
  daa[5 * 20 + 0] = 1.199705704602;
  daa[5 * 20 + 1] = 3.020833610064;
  daa[5 * 20 + 2] = 1.839216146992;
  daa[5 * 20 + 3] = 1.190945703396;
  daa[5 * 20 + 4] = 0.32980150463;
  daa[6 * 20 + 0] = 1.1709490428;
  daa[6 * 20 + 1] = 1.36057419042;
  daa[6 * 20 + 2] = 1.24048850864;
  daa[6 * 20 + 3] = 3.761625208368;
  daa[6 * 20 + 4] = 0.140748891814;
  daa[6 * 20 + 5] = 5.528919177928;
  daa[7 * 20 + 0] = 1.95588357496;
  daa[7 * 20 + 1] = 0.418763308518;
  daa[7 * 20 + 2] = 1.355872344485;
  daa[7 * 20 + 3] = 0.798473248968;
  daa[7 * 20 + 4] = 0.418203192284;
  daa[7 * 20 + 5] = 0.609846305383;
  daa[7 * 20 + 6] = 0.423579992176;
  daa[8 * 20 + 0] = 0.716241444998;
  daa[8 * 20 + 1] = 1.456141166336;
  daa[8 * 20 + 2] = 2.414501434208;
  daa[8 * 20 + 3] = 0.778142664022;
  daa[8 * 20 + 4] = 0.354058109831;
  daa[8 * 20 + 5] = 2.43534113114;
  daa[8 * 20 + 6] = 1.626891056982;
  daa[8 * 20 + 7] = 0.539859124954;
  daa[9 * 20 + 0] = 0.605899003687;
  daa[9 * 20 + 1] = 0.232036445142;
  daa[9 * 20 + 2] = 0.283017326278;
  daa[9 * 20 + 3] = 0.418555732462;
  daa[9 * 20 + 4] = 0.774894022794;
  daa[9 * 20 + 5] = 0.236202451204;
  daa[9 * 20 + 6] = 0.186848046932;
  daa[9 * 20 + 7] = 0.189296292376;
  daa[9 * 20 + 8] = 0.252718447885;
  daa[10 * 20 + 0] = 0.800016530518;
  daa[10 * 20 + 1] = 0.622711669692;
  daa[10 * 20 + 2] = 0.211888159615;
  daa[10 * 20 + 3] = 0.218131577594;
  daa[10 * 20 + 4] = 0.831842640142;
  daa[10 * 20 + 5] = 0.580737093181;
  daa[10 * 20 + 6] = 0.372625175087;
  daa[10 * 20 + 7] = 0.217721159236;
  daa[10 * 20 + 8] = 0.348072209797;
  daa[10 * 20 + 9] = 3.890963773304;
  daa[11 * 20 + 0] = 1.295201266783;
  daa[11 * 20 + 1] = 5.411115141489;
  daa[11 * 20 + 2] = 1.593137043457;
  daa[11 * 20 + 3] = 1.032447924952;
  daa[11 * 20 + 4] = 0.285078800906;
  daa[11 * 20 + 5] = 3.945277674515;
  daa[11 * 20 + 6] = 2.802427151679;
  daa[11 * 20 + 7] = 0.752042440303;
  daa[11 * 20 + 8] = 1.022507035889;
  daa[11 * 20 + 9] = 0.406193586642;
  daa[11 * 20 + 10] = 0.445570274261;
  daa[12 * 20 + 0] = 1.253758266664;
  daa[12 * 20 + 1] = 0.983692987457;
  daa[12 * 20 + 2] = 0.648441278787;
  daa[12 * 20 + 3] = 0.222621897958;
  daa[12 * 20 + 4] = 0.76768882348;
  daa[12 * 20 + 5] = 2.494896077113;
  daa[12 * 20 + 6] = 0.55541539747;
  daa[12 * 20 + 7] = 0.459436173579;
  daa[12 * 20 + 8] = 0.984311525359;
  daa[12 * 20 + 9] = 3.364797763104;
  daa[12 * 20 + 10] = 6.030559379572;
  daa[12 * 20 + 11] = 1.073061184332;
  daa[13 * 20 + 0] = 0.492964679748;
  daa[13 * 20 + 1] = 0.371644693209;
  daa[13 * 20 + 2] = 0.354861249223;
  daa[13 * 20 + 3] = 0.281730694207;
  daa[13 * 20 + 4] = 0.441337471187;
  daa[13 * 20 + 5] = 0.14435695975;
  daa[13 * 20 + 6] = 0.291409084165;
  daa[13 * 20 + 7] = 0.368166464453;
  daa[13 * 20 + 8] = 0.714533703928;
  daa[13 * 20 + 9] = 1.517359325954;
  daa[13 * 20 + 10] = 2.064839703237;
  daa[13 * 20 + 11] = 0.266924750511;
  daa[13 * 20 + 12] = 1.77385516883;
  daa[14 * 20 + 0] = 1.173275900924;
  daa[14 * 20 + 1] = 0.448133661718;
  daa[14 * 20 + 2] = 0.494887043702;
  daa[14 * 20 + 3] = 0.730628272998;
  daa[14 * 20 + 4] = 0.356008498769;
  daa[14 * 20 + 5] = 0.858570575674;
  daa[14 * 20 + 6] = 0.926563934846;
  daa[14 * 20 + 7] = 0.504086599527;
  daa[14 * 20 + 8] = 0.527007339151;
  daa[14 * 20 + 9] = 0.388355409206;
  daa[14 * 20 + 10] = 0.374555687471;
  daa[14 * 20 + 11] = 1.047383450722;
  daa[14 * 20 + 12] = 0.454123625103;
  daa[14 * 20 + 13] = 0.233597909629;
  daa[15 * 20 + 0] = 4.325092687057;
  daa[15 * 20 + 1] = 1.12278310421;
  daa[15 * 20 + 2] = 2.904101656456;
  daa[15 * 20 + 3] = 1.582754142065;
  daa[15 * 20 + 4] = 1.197188415094;
  daa[15 * 20 + 5] = 1.934870924596;
  daa[15 * 20 + 6] = 1.769893238937;
  daa[15 * 20 + 7] = 1.509326253224;
  daa[15 * 20 + 8] = 1.11702976291;
  daa[15 * 20 + 9] = 0.35754441246;
  daa[15 * 20 + 10] = 0.352969184527;
  daa[15 * 20 + 11] = 1.752165917819;
  daa[15 * 20 + 12] = 0.918723415746;
  daa[15 * 20 + 13] = 0.540027644824;
  daa[15 * 20 + 14] = 1.169129577716;
  daa[16 * 20 + 0] = 1.729178019485;
  daa[16 * 20 + 1] = 0.914665954563;
  daa[16 * 20 + 2] = 1.898173634533;
  daa[16 * 20 + 3] = 0.934187509431;
  daa[16 * 20 + 4] = 1.119831358516;
  daa[16 * 20 + 5] = 1.277480294596;
  daa[16 * 20 + 6] = 1.071097236007;
  daa[16 * 20 + 7] = 0.641436011405;
  daa[16 * 20 + 8] = 0.585407090225;
  daa[16 * 20 + 9] = 1.17909119726;
  daa[16 * 20 + 10] = 0.915259857694;
  daa[16 * 20 + 11] = 1.303875200799;
  daa[16 * 20 + 12] = 1.488548053722;
  daa[16 * 20 + 13] = 0.488206118793;
  daa[16 * 20 + 14] = 1.005451683149;
  daa[16 * 20 + 15] = 5.15155629227;
  daa[17 * 20 + 0] = 0.465839367725;
  daa[17 * 20 + 1] = 0.426382310122;
  daa[17 * 20 + 2] = 0.191482046247;
  daa[17 * 20 + 3] = 0.145345046279;
  daa[17 * 20 + 4] = 0.527664418872;
  daa[17 * 20 + 5] = 0.758653808642;
  daa[17 * 20 + 6] = 0.407635648938;
  daa[17 * 20 + 7] = 0.508358924638;
  daa[17 * 20 + 8] = 0.30124860078;
  daa[17 * 20 + 9] = 0.34198578754;
  daa[17 * 20 + 10] = 0.6914746346;
  daa[17 * 20 + 11] = 0.332243040634;
  daa[17 * 20 + 12] = 0.888101098152;
  daa[17 * 20 + 13] = 2.074324893497;
  daa[17 * 20 + 14] = 0.252214830027;
  daa[17 * 20 + 15] = 0.387925622098;
  daa[17 * 20 + 16] = 0.513128126891;
  daa[18 * 20 + 0] = 0.718206697586;
  daa[18 * 20 + 1] = 0.720517441216;
  daa[18 * 20 + 2] = 0.538222519037;
  daa[18 * 20 + 3] = 0.261422208965;
  daa[18 * 20 + 4] = 0.470237733696;
  daa[18 * 20 + 5] = 0.95898974285;
  daa[18 * 20 + 6] = 0.596719300346;
  daa[18 * 20 + 7] = 0.308055737035;
  daa[18 * 20 + 8] = 4.218953969389;
  daa[18 * 20 + 9] = 0.674617093228;
  daa[18 * 20 + 10] = 0.811245856323;
  daa[18 * 20 + 11] = 0.7179934869;
  daa[18 * 20 + 12] = 0.951682162246;
  daa[18 * 20 + 13] = 6.747260430801;
  daa[18 * 20 + 14] = 0.369405319355;
  daa[18 * 20 + 15] = 0.796751520761;
  daa[18 * 20 + 16] = 0.801010243199;
  daa[18 * 20 + 17] = 4.054419006558;
  daa[19 * 20 + 0] = 2.187774522005;
  daa[19 * 20 + 1] = 0.438388343772;
  daa[19 * 20 + 2] = 0.312858797993;
  daa[19 * 20 + 3] = 0.258129289418;
  daa[19 * 20 + 4] = 1.116352478606;
  daa[19 * 20 + 5] = 0.530785790125;
  daa[19 * 20 + 6] = 0.524253846338;
  daa[19 * 20 + 7] = 0.25334079019;
  daa[19 * 20 + 8] = 0.20155597175;
  daa[19 * 20 + 9] = 8.311839405458;
  daa[19 * 20 + 10] = 2.231405688913;
  daa[19 * 20 + 11] = 0.498138475304;
  daa[19 * 20 + 12] = 2.575850755315;
  daa[19 * 20 + 13] = 0.838119610178;
  daa[19 * 20 + 14] = 0.496908410676;
  daa[19 * 20 + 15] = 0.561925457442;
  daa[19 * 20 + 16] = 2.253074051176;
  daa[19 * 20 + 17] = 0.266508731426;
  daa[19 * 20 + 18] = 1;
  for (i = 0; i < naa; i++)
    for (j = 0; j < i; j++)
      daa[j * naa + i] = daa[i * naa + j];
  pi[0] = 0.074;
  pi[1] = 0.052;
  pi[2] = 0.045;
  pi[3] = 0.054;
  pi[4] = 0.025;
  pi[5] = 0.034;
  pi[6] = 0.054;
  pi[7] = 0.074;
  pi[8] = 0.026;
  pi[9] = 0.068;
  pi[10] = 0.099;
  pi[11] = 0.058;
  pi[12] = 0.025;
  pi[13] = 0.047;
  pi[14] = 0.039;
  pi[15] = 0.057;
  pi[16] = 0.051;
  pi[17] = 0.013;
  pi[18] = 0.032;
  pi[19] = 0.073;
  return 1;
}
```