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

```asm
<gui_keyboard_default_bindings>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x60,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  lea    D1576(%rip),%rax
  mov    %rax,%rsi
  lea    D1533(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1576(%rip),%rax
  mov    %rax,%rsi
  lea    D600(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D921(%rip),%rax
  mov    %rax,%rsi
  lea    D465(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1462(%rip),%rax
  mov    %rax,%rsi
  lea    D2085(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1215(%rip),%rax
  mov    %rax,%rsi
  lea    D1193(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D43(%rip),%rax
  mov    %rax,%rsi
  lea    D1809(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D43(%rip),%rax
  mov    %rax,%rsi
  lea    D79(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D242(%rip),%rax
  mov    %rax,%rsi
  lea    D1926(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D242(%rip),%rax
  mov    %rax,%rsi
  lea    D639(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1391(%rip),%rax
  mov    %rax,%rsi
  lea    D188(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D544(%rip),%rax
  mov    %rax,%rsi
  lea    D842(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1173(%rip),%rax
  mov    %rax,%rsi
  lea    D93(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D449(%rip),%rax
  mov    %rax,%rsi
  lea    D1040(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D515(%rip),%rax
  mov    %rax,%rsi
  lea    D758(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D295(%rip),%rax
  mov    %rax,%rsi
  lea    D1062(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1274(%rip),%rax
  mov    %rax,%rsi
  lea    D930(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D64(%rip),%rax
  mov    %rax,%rsi
  lea    D154(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D981(%rip),%rax
  mov    %rax,%rsi
  lea    D923(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D981(%rip),%rax
  mov    %rax,%rsi
  lea    D1878(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D981(%rip),%rax
  mov    %rax,%rsi
  lea    D370(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D981(%rip),%rax
  mov    %rax,%rsi
  lea    D317(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1866(%rip),%rax
  mov    %rax,%rsi
  lea    D85(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1866(%rip),%rax
  mov    %rax,%rsi
  lea    D1619(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1866(%rip),%rax
  mov    %rax,%rsi
  lea    D915(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1866(%rip),%rax
  mov    %rax,%rsi
  lea    D378(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1054(%rip),%rax
  mov    %rax,%rsi
  lea    D1668(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1054(%rip),%rax
  mov    %rax,%rsi
  lea    D957(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1191(%rip),%rax
  mov    %rax,%rsi
  lea    D2086(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1191(%rip),%rax
  mov    %rax,%rsi
  lea    D1472(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1699(%rip),%rax
  mov    %rax,%rsi
  lea    D235(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1699(%rip),%rax
  mov    %rax,%rsi
  lea    D743(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1650(%rip),%rax
  mov    %rax,%rsi
  lea    D1820(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1650(%rip),%rax
  mov    %rax,%rsi
  lea    D2077(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D181(%rip),%rax
  mov    %rax,%rsi
  lea    D916(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1133(%rip),%rax
  mov    %rax,%rsi
  lea    D1945(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1454(%rip),%rax
  mov    %rax,%rsi
  lea    D2011(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D298(%rip),%rax
  mov    %rax,%rsi
  lea    D732(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1124(%rip),%rax
  mov    %rax,%rsi
  lea    D270(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D395(%rip),%rax
  mov    %rax,%rsi
  lea    D1903(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D805(%rip),%rax
  mov    %rax,%rsi
  lea    D226(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D2049(%rip),%rax
  mov    %rax,%rsi
  lea    D215(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D142(%rip),%rax
  mov    %rax,%rsi
  lea    D1556(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D73(%rip),%rax
  mov    %rax,%rsi
  lea    D1265(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D922(%rip),%rax
  mov    %rax,%rsi
  lea    D97(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1488(%rip),%rax
  mov    %rax,%rsi
  lea    D2041(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1237(%rip),%rax
  mov    %rax,%rsi
  lea    D2067(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1242(%rip),%rax
  mov    %rax,%rsi
  lea    D1083(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D399(%rip),%rax
  mov    %rax,%rsi
  lea    D1749(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1012(%rip),%rax
  mov    %rax,%rsi
  lea    D1542(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1584(%rip),%rax
  mov    %rax,%rsi
  lea    D780(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1938(%rip),%rax
  mov    %rax,%rsi
  lea    D938(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D2078(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D91(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D960(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D224(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D559(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D77(%rip),%rax
  mov    %rax,%rsi
  lea    D1761(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D1425(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D1942(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D398(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D1582(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D1497(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1028(%rip),%rax
  mov    %rax,%rsi
  lea    D594(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D888(%rip),%rax
  mov    %rax,%rsi
  lea    D865(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D888(%rip),%rax
  mov    %rax,%rsi
  lea    D833(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1055(%rip),%rax
  mov    %rax,%rsi
  lea    D1797(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1055(%rip),%rax
  mov    %rax,%rsi
  lea    D1002(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1087(%rip),%rax
  mov    %rax,%rsi
  lea    D177(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1936(%rip),%rax
  mov    %rax,%rsi
  lea    D1644(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1432(%rip),%rax
  mov    %rax,%rsi
  lea    D108(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1432(%rip),%rax
  mov    %rax,%rsi
  lea    D967(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D493(%rip),%rax
  mov    %rax,%rsi
  lea    D1552(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D493(%rip),%rax
  mov    %rax,%rsi
  lea    D111(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D720(%rip),%rax
  mov    %rax,%rsi
  lea    D2130(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D2064(%rip),%rax
  mov    %rax,%rsi
  lea    D1770(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1567(%rip),%rax
  mov    %rax,%rsi
  lea    D653(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1000(%rip),%rax
  mov    %rax,%rsi
  lea    D1717(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D799(%rip),%rax
  mov    %rax,%rsi
  lea    D863(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D133(%rip),%rax
  mov    %rax,%rsi
  lea    D145(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D453(%rip),%rax
  mov    %rax,%rsi
  lea    D560(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D815(%rip),%rax
  mov    %rax,%rsi
  lea    D1592(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D454(%rip),%rax
  mov    %rax,%rsi
  lea    D910(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D321(%rip),%rax
  mov    %rax,%rsi
  lea    D1935(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D632(%rip),%rax
  mov    %rax,%rsi
  lea    D631(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D592(%rip),%rax
  mov    %rax,%rsi
  lea    D1928(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D592(%rip),%rax
  mov    %rax,%rsi
  lea    D584(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1286(%rip),%rax
  mov    %rax,%rsi
  lea    D168(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1286(%rip),%rax
  mov    %rax,%rsi
  lea    D1674(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1783(%rip),%rax
  mov    %rax,%rsi
  lea    D455(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1783(%rip),%rax
  mov    %rax,%rsi
  lea    D839(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D232(%rip),%rax
  mov    %rax,%rsi
  lea    D386(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D232(%rip),%rax
  mov    %rax,%rsi
  lea    D275(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1982(%rip),%rax
  mov    %rax,%rsi
  lea    D61(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D41(%rip),%rax
  mov    %rax,%rsi
  lea    D1504(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D80(%rip),%rax
  mov    %rax,%rsi
  lea    D1572(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D729(%rip),%rax
  mov    %rax,%rsi
  lea    D625(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D607(%rip),%rax
  mov    %rax,%rsi
  lea    D2001(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D522(%rip),%rax
  mov    %rax,%rsi
  lea    D1964(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1643(%rip),%rax
  mov    %rax,%rsi
  lea    D1940(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1358(%rip),%rax
  mov    %rax,%rsi
  lea    D1877(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D760(%rip),%rax
  mov    %rax,%rsi
  lea    D2111(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1204(%rip),%rax
  mov    %rax,%rsi
  lea    D1605(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1976(%rip),%rax
  mov    %rax,%rsi
  lea    D384(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1631(%rip),%rax
  mov    %rax,%rsi
  lea    D349(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D813(%rip),%rax
  mov    %rax,%rsi
  lea    D500(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  lea    D1873(%rip),%rax
  mov    %rax,%rsi
  lea    D1248(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  movl   $0x1,-0x54(%rbp)
  jmp    L13
L6:
  mov    -0x54(%rbp),%edx
  lea    -0x50(%rbp),%rax
  lea    D2080(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <sprintf@plt>
  mov    -0x54(%rbp),%edx
  lea    -0x30(%rbp),%rax
  lea    D2020(%rip),%rcx
  mov    %rcx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <sprintf@plt>
  lea    -0x30(%rbp),%rdx
  lea    -0x50(%rbp),%rax
  mov    %rdx,%rsi
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <gui_keyboard_default_bind@plt>
  addl   $0x1,-0x54(%rbp)
L13:
  cmpl   $0x63,-0x54(%rbp)
  jle    L6
  nop
  mov    -0x8(%rbp),%rax
  sub    %fs:0x28,%rax
  je     L23
  call   <__stack_chk_fail@plt>
L23:
  leave
  ret
```

tool_calls: name: parse_data
arguments: tag: D1576
type: string
name: parse_data
arguments: tag: D1533
type: string
name: parse_data
arguments: tag: D600
type: string
name: parse_data
arguments: tag: D921
type: string
name: parse_data
arguments: tag: D465
type: string
name: parse_data
arguments: tag: D1462
type: string
name: parse_data
arguments: tag: D2085
type: string
name: parse_data
arguments: tag: D1215
type: string
name: parse_data
arguments: tag: D1193
type: string
name: parse_data
arguments: tag: D43
type: string
name: parse_data
arguments: tag: D1809
type: string
name: parse_data
arguments: tag: D79
type: string
name: parse_data
arguments: tag: D242
type: string
name: parse_data
arguments: tag: D1926
type: string
name: parse_data
arguments: tag: D639
type: string
name: parse_data
arguments: tag: D1391
type: string
name: parse_data
arguments: tag: D188
type: string
name: parse_data
arguments: tag: D544
type: string
name: parse_data
arguments: tag: D842
type: string
name: parse_data
arguments: tag: D1173
type: string
name: parse_data
arguments: tag: D93
type: string
name: parse_data
arguments: tag: D449
type: string
name: parse_data
arguments: tag: D1040
type: string
name: parse_data
arguments: tag: D515
type: string
name: parse_data
arguments: tag: D758
type: string
name: parse_data
arguments: tag: D295
type: string
name: parse_data
arguments: tag: D1062
type: string
name: parse_data
arguments: tag: D1274
type: string
name: parse_data
arguments: tag: D930
type: string
name: parse_data
arguments: tag: D64
type: string
name: parse_data
arguments: tag: D154
type: string
name: parse_data
arguments: tag: D981
type: string
name: parse_data
arguments: tag: D923
type: string
name: parse_data
arguments: tag: D1878
type: string
name: parse_data
arguments: tag: D370
type: string
name: parse_data
arguments: tag: D317
type: string
name: parse_data
arguments: tag: D1866
type: string
name: parse_data
arguments: tag: D85
type: string
name: parse_data
arguments: tag: D1619
type: string
name: parse_data
arguments: tag: D915
type: string
name: parse_data
arguments: tag: D378
type: string
name: parse_data
arguments: tag: D1054
type: string
name: parse_data
arguments: tag: D1668
type: string
name: parse_data
arguments: tag: D957
type: string
name: parse_data
arguments: tag: D1191
type: string
name: parse_data
arguments: tag: D2086
type: string
name: parse_data
arguments: tag: D1472
type: string
name: parse_data
arguments: tag: D1699
type: string
name: parse_data
arguments: tag: D235
type: string
name: parse_data
arguments: tag: D743
type: string
name: parse_data
arguments: tag: D1650
type: string
name: parse_data
arguments: tag: D1820
type: string
name: parse_data
arguments: tag: D2077
type: string
name: parse_data
arguments: tag: D181
type: string
name: parse_data
arguments: tag: D916
type: string
name: parse_data
arguments: tag: D1133
type: string
name: parse_data
arguments: tag: D1945
type: string
name: parse_data
arguments: tag: D1454
type: string
name: parse_data
arguments: tag: D2011
type: string
name: parse_data
arguments: tag: D298
type: string
name: parse_data
arguments: tag: D732
type: string
name: parse_data
arguments: tag: D1124
type: string
name: parse_data
arguments: tag: D270
type: string
name: parse_data
arguments: tag: D395
type: string
name: parse_data
arguments: tag: D1903
type: string
name: parse_data
arguments: tag: D805
type: string
name: parse_data
arguments: tag: D226
type: string
name: parse_data
arguments: tag: D2049
type: string
name: parse_data
arguments: tag: D215
type: string
name: parse_data
arguments: tag: D142
type: string
name: parse_data
arguments: tag: D1556
type: string
name: parse_data
arguments: tag: D73
type: string
name: parse_data
arguments: tag: D1265
type: string
name: parse_data
arguments: tag: D922
type: string
name: parse_data
arguments: tag: D97
type: string
name: parse_data
arguments: tag: D1488
type: string
name: parse_data
arguments: tag: D2041
type: string
name: parse_data
arguments: tag: D1237
type: string
name: parse_data
arguments: tag: D2067
type: string
name: parse_data
arguments: tag: D1242
type: string
name: parse_data
arguments: tag: D1083
type: string
name: parse_data
arguments: tag: D399
type: string
name: parse_data
arguments: tag: D1749
type: string
name: parse_data
arguments: tag: D1012
type: string
name: parse_data
arguments: tag: D1542
type: string
name: parse_data
arguments: tag: D1584
type: string
name: parse_data
arguments: tag: D780
type: string
name: parse_data
arguments: tag: D1938
type: string
name: parse_data
arguments: tag: D938
type: string
name: parse_data
arguments: tag: D77
type: string
name: parse_data
arguments: tag: D2078
type: string
name: parse_data
arguments: tag: D91
type: string
name: parse_data
arguments: tag: D960
type: string
name: parse_data
arguments: tag: D224
type: string
name: parse_data
arguments: tag: D559
type: string
name: parse_data
arguments: tag: D1761
type: string
name: parse_data
arguments: tag: D1028
type: string
name: parse_data
arguments: tag: D1425
type: string
name: parse_data
arguments: tag: D1942
type: string
name: parse_data
arguments: tag: D398
type: string
name: parse_data
arguments: tag: D1582
type: string
name: parse_data
arguments: tag: D1497
type: string
name: parse_data
arguments: tag: D594
type: string
name: parse_data
arguments: tag: D888
type: string
name: parse_data
arguments: tag: D865
type: string
name: parse_data
arguments: tag: D833
type: string
name: parse_data
arguments: tag: D1055
type: string
name: parse_data
arguments: tag: D1797
type: string
name: parse_data
arguments: tag: D1002
type: string
name: parse_data
arguments: tag: D1087
type: string
name: parse_data
arguments: tag: D177
type: string
name: parse_data
arguments: tag: D1936
type: string
name: parse_data
arguments: tag: D1644
type: string
name: parse_data
arguments: tag: D1432
type: string
name: parse_data
arguments: tag: D108
type: string
name: parse_data
arguments: tag: D967
type: string
name: parse_data
arguments: tag: D493
type: string
name: parse_data
arguments: tag: D1552
type: string
name: parse_data
arguments: tag: D111
type: string
name: parse_data
arguments: tag: D720
type: string
name: parse_data
arguments: tag: D2130
type: string
name: parse_data
arguments: tag: D2064
type: string
name: parse_data
arguments: tag: D1770
type: string
name: parse_data
arguments: tag: D1567
type: string
name: parse_data
arguments: tag: D653
type: string
name: parse_data
arguments: tag: D1000
type: string
name: parse_data
arguments: tag: D1717
type: string
name: parse_data
arguments: tag: D799
type: string
name: parse_data
arguments: tag: D863
type: string
name: parse_data
arguments: tag: D133
type: string
name: parse_data
arguments: tag: D145
type: string
name: parse_data
arguments: tag: D453
type: string
name: parse_data
arguments: tag: D560
type: string
name: parse_data
arguments: tag: D815
type: string
name: parse_data
arguments: tag: D1592
type: string
name: parse_data
arguments: tag: D454
type: string
name: parse_data
arguments: tag: D910
type: string
name: parse_data
arguments: tag: D321
type: string
name: parse_data
arguments: tag: D1935
type: string
name: parse_data
arguments: tag: D632
type: string
name: parse_data
arguments: tag: D631
type: string
name: parse_data
arguments: tag: D592
type: string
name: parse_data
arguments: tag: D1928
type: string
name: parse_data
arguments: tag: D584
type: string
name: parse_data
arguments: tag: D1286
type: string
name: parse_data
arguments: tag: D168
type: string
name: parse_data
arguments: tag: D1674
type: string
name: parse_data
arguments: tag: D1783
type: string
name: parse_data
arguments: tag: D455
type: string
name: parse_data
arguments: tag: D839
type: string
name: parse_data
arguments: tag: D232
type: string
name: parse_data
arguments: tag: D386
type: string
name: parse_data
arguments: tag: D275
type: string
name: parse_data
arguments: tag: D1982
type: string
name: parse_data
arguments: tag: D61
type: string
name: parse_data
arguments: tag: D41
type: string
name: parse_data
arguments: tag: D1504
type: string
name: parse_data
arguments: tag: D80
type: string
name: parse_data
arguments: tag: D1572
type: string
name: parse_data
arguments: tag: D729
type: string
name: parse_data
arguments: tag: D625
type: string
name: parse_data
arguments: tag: D607
type: string
name: parse_data
arguments: tag: D2001
type: string
name: parse_data
arguments: tag: D522
type: string
name: parse_data
arguments: tag: D1964
type: string
name: parse_data
arguments: tag: D1643
type: string
name: parse_data
arguments: tag: D1940
type: string
name: parse_data
arguments: tag: D1358
type: string
name: parse_data
arguments: tag: D1877
type: string
name: parse_data
arguments: tag: D760
type: string
name: parse_data
arguments: tag: D2111
type: string
name: parse_data
arguments: tag: D1204
type: string
name: parse_data
arguments: tag: D1605
type: string
name: parse_data
arguments: tag: D1976
type: string
name: parse_data
arguments: tag: D384
type: string
name: parse_data
arguments: tag: D1631
type: string
name: parse_data
arguments: tag: D349
type: string
name: parse_data
arguments: tag: D813
type: string
name: parse_data
arguments: tag: D500
type: string
name: parse_data
arguments: tag: D1873
type: string
name: parse_data
arguments: tag: D1248
type: string
name: parse_data
arguments: tag: D2080
type: string
name: parse_data
arguments: tag: D2020
type: string

tool: D1576: /input return

tool: D1533: ctrl-M

tool: D600: ctrl-J

tool: D921: /input complete_next

tool: D465: ctrl-I

tool: D1462: /input complete_previous

tool: D2085: meta2-Z

tool: D1215: /input search_text

tool: D1193: ctrl-R

tool: D43: /input delete_previous_char

tool: D1809: ctrl-H

tool: D79: ctrl-?

tool: D242: /input delete_next_char

tool: D1926: meta2-3~

tool: D639: ctrl-D

tool: D1391: /input delete_previous_word

tool: D188: ctrl-W

tool: D544: /input switch_active_buffer

tool: D842: ctrl-X

tool: D1173: /input delete_next_word

tool: D93: meta-d

tool: D449: /input delete_end_of_line

tool: D1040: ctrl-K

tool: D515: /input delete_line

tool: D758: meta-r

tool: D295: /input transpose_chars

tool: D1062: ctrl-T

tool: D1274: /input delete_beginning_of_line

tool: D930: ctrl-U

tool: D64: /input clipboard_paste

tool: D154: ctrl-Y

tool: D981: /input move_beginning_of_line

tool: D923: meta2-1~

tool: D1878: meta2-H

tool: D370: meta2-7~

tool: D317: ctrl-A

tool: D1866: /input move_end_of_line

tool: D85: meta2-4~

tool: D1619: meta2-F

tool: D915: meta2-8~

tool: D378: ctrl-E

tool: D1054: /input move_previous_char

tool: D1668: meta2-D

tool: D957: ctrl-B

tool: D1191: /input move_next_char

tool: D2086: meta2-C

tool: D1472: ctrl-F

tool: D1699: /input move_previous_word

tool: D235: meta-b

tool: D743: meta-Od

tool: D1650: /input move_next_word

tool: D1820: meta-f

tool: D2077: meta-Oc

tool: D181: /input history_previous

tool: D916: meta2-A

tool: D1133: /input history_next

tool: D1945: meta2-B

tool: D1454: /input history_global_previous

tool: D2011: meta-Oa

tool: D298: /input history_global_next

tool: D732: meta-Ob

tool: D1124: /input jump_smart

tool: D270: meta-a

tool: D395: /input jump_last_buffer

tool: D1903: meta-jmeta-l

tool: D805: /server raw

tool: D226: meta-jmeta-r

tool: D2049: /server jump

tool: D215: meta-jmeta-s

tool: D142: /input hotlist_clear

tool: D1556: meta-h

tool: D73: /input grab_key_command

tool: D1265: meta-k

tool: D922: /input scroll_unread

tool: D97: meta-u

tool: D1488: /input set_unread

tool: D2041: ctrl-Sctrl-U

tool: D1237: /input insert \x02

tool: D2067: ctrl-Cb

tool: D1242: /input insert \x03

tool: D1083: ctrl-Cc

tool: D399: /input insert \x1D

tool: D1749: ctrl-Ci

tool: D1012: /input insert \x0F

tool: D1542: ctrl-Co

tool: D1584: /input insert \x12

tool: D780: ctrl-Cr

tool: D1938: /input insert \x15

tool: D938: ctrl-Cu

tool: D77: /buffer +1

tool: D2078: meta-meta2-C

tool: D91: meta2-1;3C

tool: D960: meta-meta2-B

tool: D224: meta2-1;3B

tool: D559: meta2-17~

tool: D1761: ctrl-N

tool: D1028: /buffer -1

tool: D1425: meta-meta2-D

tool: D1942: meta2-1;3D

tool: D398: meta-meta2-A

tool: D1582: meta2-1;3A

tool: D1497: meta2-15~

tool: D594: ctrl-P

tool: D888: /window page_up

tool: D865: meta2-5~

tool: D833: meta2-I

tool: D1055: /window page_down

tool: D1797: meta2-6~

tool: D1002: meta2-G

tool: D1087: /window scroll_up

tool: D177: meta-meta2-5~

tool: D1936: /window scroll_down

tool: D1644: meta-meta2-6~

tool: D1432: /window scroll_top

tool: D108: meta-meta2-1~

tool: D967: meta-meta2-7~

tool: D493: /window scroll_bottom

tool: D1552: meta-meta2-4~

tool: D111: meta-meta2-8~

tool: D720: /window scroll_next_highlight

tool: D2130: meta-n

tool: D2064: /window scroll_previous_highlight

tool: D1770: meta-p

tool: D1567: /bar scroll title * x-50%

tool: D653: meta2-20~

tool: D1000: /bar scroll title * x+50%

tool: D1717: meta2-21~

tool: D799: /bar scroll nicklist * y-100%

tool: D863: meta2-23~

tool: D133: /bar scroll nicklist * y+100%

tool: D145: meta2-24~

tool: D453: /bar scroll nicklist * yb

tool: D560: meta-meta2-23~

tool: D815: /bar scroll nicklist * ye

tool: D1592: meta-meta2-24~

tool: D454: /window refresh

tool: D910: ctrl-L

tool: D321: /window -1

tool: D1935: meta2-18~

tool: D632: /window +1

tool: D631: meta2-19~

tool: D592: /window up

tool: D1928: meta-wmeta-meta2-A

tool: D584: meta-wmeta2-1;3A

tool: D1286: /window down

tool: D168: meta-wmeta-meta2-B

tool: D1674: meta-wmeta2-1;3B

tool: D1783: /window right

tool: D455: meta-wmeta-meta2-C

tool: D839: meta-wmeta2-1;3C

tool: D232: /window left

tool: D386: meta-wmeta-meta2-D

tool: D275: meta-wmeta2-1;3D

tool: D1982: /window zoom

tool: D61: meta-z

tool: D41: /filter toggle

tool: D1504: meta-=

tool: D80: /buffer *10

tool: D1572: meta-0

tool: D729: /buffer *1

tool: D625: meta-1

tool: D607: /buffer *2

tool: D2001: meta-2

tool: D522: /buffer *3

tool: D1964: meta-3

tool: D1643: /buffer *4

tool: D1940: meta-4

tool: D1358: /buffer *5

tool: D1877: meta-5

tool: D760: /buffer *6

tool: D2111: meta-6

tool: D1204: /buffer *7

tool: D1605: meta-7

tool: D1976: /buffer *8

tool: D384: meta-8

tool: D1631: /buffer *9

tool: D349: meta-9

tool: D813: /input jump_previously_visited_buffer

tool: D500: meta-<

tool: D1873: /input jump_next_visited_buffer

tool: D1248: meta->

tool: D2080: meta-j%02d

tool: D2020: /buffer %d

assistant: ```c
void gui_keyboard_default_bindings() {
  int i;
  char key_str[32], command[32];
  gui_keyboard_default_bind("ctrl-M", "/input return");
  gui_keyboard_default_bind("ctrl-J", "/input return");
  gui_keyboard_default_bind("ctrl-I", "/input complete_next");
  gui_keyboard_default_bind("meta2-Z", "/input complete_previous");
  gui_keyboard_default_bind("ctrl-R", "/input search_text");
  gui_keyboard_default_bind("ctrl-H", "/input delete_previous_char");
  gui_keyboard_default_bind("ctrl-?", "/input delete_previous_char");
  gui_keyboard_default_bind("meta2-3~", "/input delete_next_char");
  gui_keyboard_default_bind("ctrl-D", "/input delete_next_char");
  gui_keyboard_default_bind("ctrl-W", "/input delete_previous_word");
  gui_keyboard_default_bind("ctrl-X", "/input switch_active_buffer");
  gui_keyboard_default_bind("meta-d", "/input delete_next_word");
  gui_keyboard_default_bind("ctrl-K", "/input delete_end_of_line");
  gui_keyboard_default_bind("meta-r", "/input delete_line");
  gui_keyboard_default_bind("ctrl-T", "/input transpose_chars");
  gui_keyboard_default_bind("ctrl-U", "/input delete_beginning_of_line");
  gui_keyboard_default_bind("ctrl-Y", "/input clipboard_paste");
  gui_keyboard_default_bind("meta2-1~", "/input move_beginning_of_line");
  gui_keyboard_default_bind("meta2-H", "/input move_beginning_of_line");
  gui_keyboard_default_bind("meta2-7~", "/input move_beginning_of_line");
  gui_keyboard_default_bind("ctrl-A", "/input move_beginning_of_line");
  gui_keyboard_default_bind("meta2-4~", "/input move_end_of_line");
  gui_keyboard_default_bind("meta2-F", "/input move_end_of_line");
  gui_keyboard_default_bind("meta2-8~", "/input move_end_of_line");
  gui_keyboard_default_bind("ctrl-E", "/input move_end_of_line");
  gui_keyboard_default_bind("meta2-D", "/input move_previous_char");
  gui_keyboard_default_bind("ctrl-B", "/input move_previous_char");
  gui_keyboard_default_bind("meta2-C", "/input move_next_char");
  gui_keyboard_default_bind("ctrl-F", "/input move_next_char");
  gui_keyboard_default_bind("meta-b", "/input move_previous_word");
  gui_keyboard_default_bind("meta-Od", "/input move_previous_word");
  gui_keyboard_default_bind("meta-f", "/input move_next_word");
  gui_keyboard_default_bind("meta-Oc", "/input move_next_word");
  gui_keyboard_default_bind("meta2-A", "/input history_previous");
  gui_keyboard_default_bind("meta2-B", "/input history_next");
  gui_keyboard_default_bind("meta-Oa", "/input history_global_previous");
  gui_keyboard_default_bind("meta-Ob", "/input history_global_next");
  gui_keyboard_default_bind("meta-a", "/input jump_smart");
  gui_keyboard_default_bind("meta-jmeta-l", "/input jump_last_buffer");
  gui_keyboard_default_bind("meta-jmeta-r", "/server raw");
  gui_keyboard_default_bind("meta-jmeta-s", "/server jump");
  gui_keyboard_default_bind("meta-h", "/input hotlist_clear");
  gui_keyboard_default_bind("meta-k", "/input grab_key_command");
  gui_keyboard_default_bind("meta-u", "/input scroll_unread");
  gui_keyboard_default_bind("ctrl-Sctrl-U", "/input set_unread");
  gui_keyboard_default_bind("ctrl-Cb", "/input insert \\x02");
  gui_keyboard_default_bind("ctrl-Cc", "/input insert \\x03");
  gui_keyboard_default_bind("ctrl-Ci", "/input insert \\x1D");
  gui_keyboard_default_bind("ctrl-Co", "/input insert \\x0F");
  gui_keyboard_default_bind("ctrl-Cr", "/input insert \\x12");
  gui_keyboard_default_bind("ctrl-Cu", "/input insert \\x15");
  gui_keyboard_default_bind("meta-meta2-C", "/buffer +1");
  gui_keyboard_default_bind("meta2-1;3C", "/buffer +1");
  gui_keyboard_default_bind("meta-meta2-B", "/buffer +1");
  gui_keyboard_default_bind("meta2-1;3B", "/buffer +1");
  gui_keyboard_default_bind("meta2-17~", "/buffer +1");
  gui_keyboard_default_bind("ctrl-N", "/buffer +1");
  gui_keyboard_default_bind("meta-meta2-D", "/buffer -1");
  gui_keyboard_default_bind("meta2-1;3D", "/buffer -1");
  gui_keyboard_default_bind("meta-meta2-A", "/buffer -1");
  gui_keyboard_default_bind("meta2-1;3A", "/buffer -1");
  gui_keyboard_default_bind("meta2-15~", "/buffer -1");
  gui_keyboard_default_bind("ctrl-P", "/buffer -1");
  gui_keyboard_default_bind("meta2-5~", "/window page_up");
  gui_keyboard_default_bind("meta2-I", "/window page_up");
  gui_keyboard_default_bind("meta2-6~", "/window page_down");
  gui_keyboard_default_bind("meta2-G", "/window page_down");
  gui_keyboard_default_bind("meta-meta2-5~", "/window scroll_up");
  gui_keyboard_default_bind("meta-meta2-6~", "/window scroll_down");
  gui_keyboard_default_bind("meta-meta2-1~", "/window scroll_top");
  gui_keyboard_default_bind("meta-meta2-7~", "/window scroll_top");
  gui_keyboard_default_bind("meta-meta2-4~", "/window scroll_bottom");
  gui_keyboard_default_bind("meta-meta2-8~", "/window scroll_bottom");
  gui_keyboard_default_bind("meta-n", "/window scroll_next_highlight");
  gui_keyboard_default_bind("meta-p", "/window scroll_previous_highlight");
  gui_keyboard_default_bind("meta2-20~", "/bar scroll title * x-50%");
  gui_keyboard_default_bind("meta2-21~", "/bar scroll title * x+50%");
  gui_keyboard_default_bind("meta2-23~", "/bar scroll nicklist * y-100%");
  gui_keyboard_default_bind("meta2-24~", "/bar scroll nicklist * y+100%");
  gui_keyboard_default_bind("meta-meta2-23~", "/bar scroll nicklist * yb");
  gui_keyboard_default_bind("meta-meta2-24~", "/bar scroll nicklist * ye");
  gui_keyboard_default_bind("ctrl-L", "/window refresh");
  gui_keyboard_default_bind("meta2-18~", "/window -1");
  gui_keyboard_default_bind("meta2-19~", "/window +1");
  gui_keyboard_default_bind("meta-wmeta-meta2-A", "/window up");
  gui_keyboard_default_bind("meta-wmeta2-1;3A", "/window up");
  gui_keyboard_default_bind("meta-wmeta-meta2-B", "/window down");
  gui_keyboard_default_bind("meta-wmeta2-1;3B", "/window down");
  gui_keyboard_default_bind("meta-wmeta-meta2-C", "/window right");
  gui_keyboard_default_bind("meta-wmeta2-1;3C", "/window right");
  gui_keyboard_default_bind("meta-wmeta-meta2-D", "/window left");
  gui_keyboard_default_bind("meta-wmeta2-1;3D", "/window left");
  gui_keyboard_default_bind("meta-z", "/window zoom");
  gui_keyboard_default_bind("meta-=", "/filter toggle");
  gui_keyboard_default_bind("meta-0", "/buffer *10");
  gui_keyboard_default_bind("meta-1", "/buffer *1");
  gui_keyboard_default_bind("meta-2", "/buffer *2");
  gui_keyboard_default_bind("meta-3", "/buffer *3");
  gui_keyboard_default_bind("meta-4", "/buffer *4");
  gui_keyboard_default_bind("meta-5", "/buffer *5");
  gui_keyboard_default_bind("meta-6", "/buffer *6");
  gui_keyboard_default_bind("meta-7", "/buffer *7");
  gui_keyboard_default_bind("meta-8", "/buffer *8");
  gui_keyboard_default_bind("meta-9", "/buffer *9");
  gui_keyboard_default_bind("meta-<", "/input jump_previously_visited_buffer");
  gui_keyboard_default_bind("meta->", "/input jump_next_visited_buffer");
  for (i = 1; i < 100; i++) {
    sprintf(key_str, "meta-j%02d", i);
    sprintf(command, "/buffer %d", i);
    gui_keyboard_default_bind(key_str, command);
  }
}
```