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

```asm
<accel_show_ext_z>:
  endbr64
  push   %rbp
  push   %rbx
  sub    $0x8,%rsp
  movsd  D324(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L124
  movsd  D62(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L152
  movsd  D88(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L122
  movsd  D258(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L55
  movsd  D204(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L46
  movsd  D200(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L60
  movsd  D25(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L29
  movsd  D192(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L169
  movsd  D358(%rip),%xmm1
  comisd %xmm0,%xmm1
  ja     L134
  movsd  D289(%rip),%xmm1
  comisd %xmm0,%xmm1
  jbe    L184
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbp
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  lea    D225(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L124:
  lea    D243(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
L176:
  add    $0x8,%rsp
  pop    %rbx
  pop    %rbp
  ret
L152:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  lea    D243(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbp
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L122:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  lea    D243(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbp
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L55:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  lea    D243(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L46:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  lea    D243(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L60:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L29:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D225(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L169:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  lea    D225(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L134:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbp
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbp,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  lea    D225(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
L184:
  lea    D329(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x1,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x2,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x3,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x4,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x5,%edi
  call   <mvprintw@plt>
  lea    D256(%rip),%rbx
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x7,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x8,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0x9,%edi
  call   <mvprintw@plt>
  mov    %rbx,%rdx
  mov    $0x5b,%esi
  mov    $0xa,%edi
  call   <mvprintw@plt>
  lea    D225(%rip),%rdx
  mov    $0x5b,%esi
  mov    $0xb,%edi
  call   <mvprintw@plt>
  jmp    L176
```

tool_calls: name: read_data
arguments: tag: D324
datatype: byte[8]
name: read_data
arguments: tag: D62
datatype: byte[8]
name: read_data
arguments: tag: D88
datatype: byte[8]
name: read_data
arguments: tag: D258
datatype: byte[8]
name: read_data
arguments: tag: D204
datatype: byte[8]
name: read_data
arguments: tag: D200
datatype: f64
name: read_data
arguments: tag: D25
datatype: byte[8]
name: read_data
arguments: tag: D192
datatype: byte[8]
name: read_data
arguments: tag: D358
datatype: byte[8]
name: read_data
arguments: tag: D289
datatype: byte[8]
name: read_data
arguments: tag: D329
datatype: string
name: read_data
arguments: tag: D256
datatype: string
name: read_data
arguments: tag: D225
datatype: string
name: read_data
arguments: tag: D243
datatype: string

tool: {"D324": [0x00,0x00,0x00,0x00,0x00,0x00,0x14,0xc0]}

tool: {"D62": [0x00,0x00,0x00,0x00,0x00,0x00,0x10,0xc0]}

tool: {"D88": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0xc0]}

tool: {"D258": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0]}

tool: {"D204": [0x33,0x33,0x33,0x33,0x33,0x33,0xd3,0xbf]}

tool: D200: 0.3

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

tool: {"D192": [0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x40]}

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

tool: {"D289": [0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x40]}

tool: D329:   

tool: D256: ||

tool: D225: \/

tool: D243: /\

assistant: ```c
void accel_show_ext_z(double val) {
  if (val < -5) {
    mvprintw(1, 91, "/\\");
    mvprintw(2, 91, "||");
    mvprintw(3, 91, "||");
    mvprintw(4, 91, "||");
    mvprintw(5, 91, "||");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < -4) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "/\\");
    mvprintw(3, 91, "||");
    mvprintw(4, 91, "||");
    mvprintw(5, 91, "||");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < -3) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "/\\");
    mvprintw(4, 91, "||");
    mvprintw(5, 91, "||");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < -2) {
    mvprintw(5, 91, "  ");
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "/\\");
    mvprintw(5, 91, "||");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < -0.3) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "/\\");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < 0.3) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "  ");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < 2) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "\\/");
    mvprintw(8, 91, "  ");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < 3) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "||");
    mvprintw(8, 91, "\\/");
    mvprintw(9, 91, "  ");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < 4) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "||");
    mvprintw(8, 91, "||");
    mvprintw(9, 91, "\\/");
    mvprintw(10, 91, "  ");
    mvprintw(11, 91, "  ");
  } else if (val < 5) {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "||");
    mvprintw(8, 91, "||");
    mvprintw(9, 91, "||");
    mvprintw(10, 91, "\\/");
    mvprintw(11, 91, "  ");
  } else {
    mvprintw(1, 91, "  ");
    mvprintw(2, 91, "  ");
    mvprintw(3, 91, "  ");
    mvprintw(4, 91, "  ");
    mvprintw(5, 91, "  ");
    mvprintw(7, 91, "||");
    mvprintw(8, 91, "||");
    mvprintw(9, 91, "||");
    mvprintw(10, 91, "||");
    mvprintw(11, 91, "\\/");
  }
}
```