user: 请将这段汇编代码片段转换成等效的C代码：

```asm
<main>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x270,%rsp
  mov    %edi,-0x254(%rbp)
  mov    %rsi,-0x260(%rbp)
  mov    %fs:0x28,%rax
  mov    %rax,-0x8(%rbp)
  xor    %eax,%eax
  movdqa D94(%rip),%xmm0
  movd   -0x254(%rbp),%xmm3
  movss  %xmm3,%xmm0
  movaps %xmm0,-0x190(%rbp)
  movdqa D503(%rip),%xmm0
  movaps %xmm0,-0x180(%rbp)
  movdqa -0x190(%rbp),%xmm0
  movdqa -0x180(%rbp),%xmm1
  pcmpgtd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x250(%rbp)
  jmp    L1307
L455:
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jle    L2129
  mov    $0xffffffff,%eax
  jmp    L1038
L2129:
  mov    $0x0,%eax
L1038:
  cmp    %edx,%eax
  je     L457
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x250(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D93(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L457:
  addl   $0x1,-0x250(%rbp)
L1307:
  cmpl   $0x3,-0x250(%rbp)
  jle    L455
  movdqa -0x190(%rbp),%xmm1
  movdqa -0x180(%rbp),%xmm0
  pcmpgtd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x24c(%rbp)
  jmp    L1530
L823:
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jge    L587
  mov    $0xffffffff,%eax
  jmp    L1461
L587:
  mov    $0x0,%eax
L1461:
  cmp    %edx,%eax
  je     L1953
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x24c(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D172(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1953:
  addl   $0x1,-0x24c(%rbp)
L1530:
  cmpl   $0x3,-0x24c(%rbp)
  jle    L823
  movdqa -0x190(%rbp),%xmm1
  movdqa -0x180(%rbp),%xmm0
  pcmpgtd %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x248(%rbp)
  jmp    L897
L885:
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jl     L1732
  mov    $0xffffffff,%eax
  jmp    L2424
L1732:
  mov    $0x0,%eax
L2424:
  cmp    %edx,%eax
  je     L925
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x248(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D59(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L925:
  addl   $0x1,-0x248(%rbp)
L897:
  cmpl   $0x3,-0x248(%rbp)
  jle    L885
  movdqa -0x190(%rbp),%xmm0
  movdqa -0x180(%rbp),%xmm1
  pcmpgtd %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x244(%rbp)
  jmp    L707
L1627:
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jg     L285
  mov    $0xffffffff,%eax
  jmp    L2097
L285:
  mov    $0x0,%eax
L2097:
  cmp    %edx,%eax
  je     L1999
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x244(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D453(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1999:
  addl   $0x1,-0x244(%rbp)
L707:
  cmpl   $0x3,-0x244(%rbp)
  jle    L1627
  movdqa -0x190(%rbp),%xmm1
  movdqa -0x180(%rbp),%xmm0
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x240(%rbp)
  jmp    L2446
L1269:
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jne    L2401
  mov    $0xffffffff,%eax
  jmp    L210
L2401:
  mov    $0x0,%eax
L210:
  cmp    %edx,%eax
  je     L1736
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x240(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D25(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1736:
  addl   $0x1,-0x240(%rbp)
L2446:
  cmpl   $0x3,-0x240(%rbp)
  jle    L1269
  movdqa -0x190(%rbp),%xmm1
  movdqa -0x180(%rbp),%xmm0
  pcmpeqd %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x170(%rbp)
  movl   $0x0,-0x23c(%rbp)
  jmp    L704
L1325:
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%edx
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%ecx
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  je     L391
  mov    $0xffffffff,%eax
  jmp    L208
L391:
  mov    $0x0,%eax
L208:
  cmp    %edx,%eax
  je     L2193
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x180(%rbp,%rax,4),%ecx
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x190(%rbp,%rax,4),%edx
  mov    -0x23c(%rbp),%eax
  cltq
  mov    -0x170(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D252(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2193:
  addl   $0x1,-0x23c(%rbp)
L704:
  cmpl   $0x3,-0x23c(%rbp)
  jle    L1325
  mov    -0x254(%rbp),%eax
  movdqa D94(%rip),%xmm0
  movd   %eax,%xmm4
  movss  %xmm4,%xmm0
  movaps %xmm0,-0x150(%rbp)
  movdqa D503(%rip),%xmm0
  movaps %xmm0,-0x140(%rbp)
  movdqa -0x150(%rbp),%xmm1
  movdqa -0x140(%rbp),%xmm2
  movdqa D362(%rip),%xmm0
  psubd  %xmm0,%xmm1
  psubd  %xmm0,%xmm2
  pcmpgtd %xmm2,%xmm1
  movdqa %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x238(%rbp)
  jmp    L2413
L1049:
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jbe    L2299
  mov    $0xffffffff,%eax
  jmp    L113
L2299:
  mov    $0x0,%eax
L113:
  cmp    %edx,%eax
  je     L412
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x238(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D241(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L412:
  addl   $0x1,-0x238(%rbp)
L2413:
  cmpl   $0x3,-0x238(%rbp)
  jle    L1049
  movdqa -0x150(%rbp),%xmm2
  movdqa -0x140(%rbp),%xmm1
  movdqa D362(%rip),%xmm0
  psubd  %xmm0,%xmm1
  psubd  %xmm0,%xmm2
  pcmpgtd %xmm2,%xmm1
  movdqa %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x234(%rbp)
  jmp    L152
L112:
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jae    L1661
  mov    $0xffffffff,%eax
  jmp    L2428
L1661:
  mov    $0x0,%eax
L2428:
  cmp    %edx,%eax
  je     L543
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x234(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D539(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L543:
  addl   $0x1,-0x234(%rbp)
L152:
  cmpl   $0x3,-0x234(%rbp)
  jle    L112
  movdqa -0x150(%rbp),%xmm2
  movdqa -0x140(%rbp),%xmm1
  movdqa D362(%rip),%xmm0
  psubd  %xmm0,%xmm1
  psubd  %xmm0,%xmm2
  pcmpgtd %xmm2,%xmm1
  movdqa %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x230(%rbp)
  jmp    L718
L795:
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jb     L425
  mov    $0xffffffff,%eax
  jmp    L2448
L425:
  mov    $0x0,%eax
L2448:
  cmp    %edx,%eax
  je     L2261
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x230(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D558(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2261:
  addl   $0x1,-0x230(%rbp)
L718:
  cmpl   $0x3,-0x230(%rbp)
  jle    L795
  movdqa -0x150(%rbp),%xmm1
  movdqa -0x140(%rbp),%xmm2
  movdqa D362(%rip),%xmm0
  psubd  %xmm0,%xmm1
  psubd  %xmm0,%xmm2
  pcmpgtd %xmm2,%xmm1
  movdqa %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x22c(%rbp)
  jmp    L895
L1665:
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  ja     L26
  mov    $0xffffffff,%eax
  jmp    L794
L26:
  mov    $0x0,%eax
L794:
  cmp    %edx,%eax
  je     L2388
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x22c(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D576(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2388:
  addl   $0x1,-0x22c(%rbp)
L895:
  cmpl   $0x3,-0x22c(%rbp)
  jle    L1665
  movdqa -0x150(%rbp),%xmm1
  movdqa -0x140(%rbp),%xmm0
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x228(%rbp)
  jmp    L728
L734:
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  jne    L394
  mov    $0xffffffff,%eax
  jmp    L1837
L394:
  mov    $0x0,%eax
L1837:
  cmp    %edx,%eax
  je     L1415
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x228(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D37(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1415:
  addl   $0x1,-0x228(%rbp)
L728:
  cmpl   $0x3,-0x228(%rbp)
  jle    L734
  movdqa -0x150(%rbp),%xmm1
  movdqa -0x140(%rbp),%xmm0
  pcmpeqd %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqd %xmm1,%xmm0
  movaps %xmm0,-0x160(%rbp)
  movl   $0x0,-0x224(%rbp)
  jmp    L1731
L2201:
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%edx
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%ecx
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%eax
  cmp    %eax,%ecx
  je     L2219
  mov    $0xffffffff,%eax
  jmp    L1467
L2219:
  mov    $0x0,%eax
L1467:
  cmp    %edx,%eax
  je     L2402
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x140(%rbp,%rax,4),%ecx
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x150(%rbp,%rax,4),%edx
  mov    -0x224(%rbp),%eax
  cltq
  mov    -0x160(%rbp,%rax,4),%eax
  mov    %eax,%esi
  lea    D555(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2402:
  addl   $0x1,-0x224(%rbp)
L1731:
  cmpl   $0x3,-0x224(%rbp)
  jle    L2201
  mov    -0x254(%rbp),%eax
  movdqa D167(%rip),%xmm0
  pinsrw $0x0,%eax,%xmm0
  movaps %xmm0,-0x130(%rbp)
  movdqa D74(%rip),%xmm0
  movaps %xmm0,-0x120(%rbp)
  movdqa -0x130(%rbp),%xmm0
  movdqa -0x120(%rbp),%xmm1
  pcmpgtw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x220(%rbp)
  jmp    L442
L2343:
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jle    L886
  mov    $0xffffffff,%eax
  jmp    L997
L886:
  mov    $0x0,%eax
L997:
  cmp    %edx,%eax
  je     L420
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x220(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D93(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L420:
  addl   $0x1,-0x220(%rbp)
L442:
  cmpl   $0x7,-0x220(%rbp)
  jle    L2343
  movdqa -0x130(%rbp),%xmm1
  movdqa -0x120(%rbp),%xmm0
  pcmpgtw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x21c(%rbp)
  jmp    L1567
L254:
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jge    L1604
  mov    $0xffffffff,%eax
  jmp    L2088
L1604:
  mov    $0x0,%eax
L2088:
  cmp    %edx,%eax
  je     L327
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x21c(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D172(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L327:
  addl   $0x1,-0x21c(%rbp)
L1567:
  cmpl   $0x7,-0x21c(%rbp)
  jle    L254
  movdqa -0x130(%rbp),%xmm1
  movdqa -0x120(%rbp),%xmm0
  pminsw %xmm0,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x218(%rbp)
  jmp    L2416
L1875:
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jl     L1588
  mov    $0xffffffff,%eax
  jmp    L2260
L1588:
  mov    $0x0,%eax
L2260:
  cmp    %edx,%eax
  je     L1267
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x218(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D59(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1267:
  addl   $0x1,-0x218(%rbp)
L2416:
  cmpl   $0x7,-0x218(%rbp)
  jle    L1875
  movdqa -0x130(%rbp),%xmm0
  movdqa -0x120(%rbp),%xmm1
  pminsw %xmm0,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x214(%rbp)
  jmp    L1959
L1188:
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jg     L2281
  mov    $0xffffffff,%eax
  jmp    L604
L2281:
  mov    $0x0,%eax
L604:
  cmp    %edx,%eax
  je     L1706
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x214(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D453(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1706:
  addl   $0x1,-0x214(%rbp)
L1959:
  cmpl   $0x7,-0x214(%rbp)
  jle    L1188
  movdqa -0x130(%rbp),%xmm1
  movdqa -0x120(%rbp),%xmm0
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x210(%rbp)
  jmp    L1898
L481:
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jne    L2165
  mov    $0xffffffff,%eax
  jmp    L275
L2165:
  mov    $0x0,%eax
L275:
  cmp    %edx,%eax
  je     L744
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x210(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D25(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L744:
  addl   $0x1,-0x210(%rbp)
L1898:
  cmpl   $0x7,-0x210(%rbp)
  jle    L481
  movdqa -0x130(%rbp),%xmm1
  movdqa -0x120(%rbp),%xmm0
  pcmpeqw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0x110(%rbp)
  movl   $0x0,-0x20c(%rbp)
  jmp    L2191
L81:
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%ecx
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  je     L1891
  mov    $0xffffffff,%eax
  jmp    L2019
L1891:
  mov    $0x0,%eax
L2019:
  cmp    %edx,%eax
  je     L1746
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x120(%rbp,%rax,2),%eax
  movswl %ax,%ecx
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x130(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x20c(%rbp),%eax
  cltq
  movzwl -0x110(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D252(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1746:
  addl   $0x1,-0x20c(%rbp)
L2191:
  cmpl   $0x7,-0x20c(%rbp)
  jle    L81
  mov    -0x254(%rbp),%eax
  movdqa D167(%rip),%xmm0
  pinsrw $0x0,%eax,%xmm0
  movaps %xmm0,-0x100(%rbp)
  movdqa D74(%rip),%xmm0
  movaps %xmm0,-0xf0(%rbp)
  movdqa -0x100(%rbp),%xmm0
  movdqa -0xf0(%rbp),%xmm1
  psubusw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x208(%rbp)
  jmp    L1177
L904:
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jbe    L137
  mov    $0xffffffff,%eax
  jmp    L1029
L137:
  mov    $0x0,%eax
L1029:
  cmp    %edx,%eax
  je     L2179
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x208(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D241(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2179:
  addl   $0x1,-0x208(%rbp)
L1177:
  cmpl   $0x7,-0x208(%rbp)
  jle    L904
  movdqa -0x100(%rbp),%xmm1
  movdqa -0xf0(%rbp),%xmm0
  psubusw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x204(%rbp)
  jmp    L2072
L1932:
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jae    L1310
  mov    $0xffffffff,%eax
  jmp    L1624
L1310:
  mov    $0x0,%eax
L1624:
  cmp    %edx,%eax
  je     L980
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x204(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D539(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L980:
  addl   $0x1,-0x204(%rbp)
L2072:
  cmpl   $0x7,-0x204(%rbp)
  jle    L1932
  movdqa -0x100(%rbp),%xmm1
  movdqa -0xf0(%rbp),%xmm0
  psubusw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x200(%rbp)
  jmp    L743
L223:
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jb     L514
  mov    $0xffffffff,%eax
  jmp    L30
L514:
  mov    $0x0,%eax
L30:
  cmp    %edx,%eax
  je     L2368
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x200(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D558(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2368:
  addl   $0x1,-0x200(%rbp)
L743:
  cmpl   $0x7,-0x200(%rbp)
  jle    L223
  movdqa -0x100(%rbp),%xmm0
  movdqa -0xf0(%rbp),%xmm1
  psubusw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x1fc(%rbp)
  jmp    L2189
L797:
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  ja     L170
  mov    $0xffffffff,%eax
  jmp    L916
L170:
  mov    $0x0,%eax
L916:
  cmp    %edx,%eax
  je     L2365
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x1fc(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D576(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2365:
  addl   $0x1,-0x1fc(%rbp)
L2189:
  cmpl   $0x7,-0x1fc(%rbp)
  jle    L797
  movdqa -0x100(%rbp),%xmm1
  movdqa -0xf0(%rbp),%xmm0
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x1f8(%rbp)
  jmp    L785
L1056:
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  jne    L296
  mov    $0xffffffff,%eax
  jmp    L2310
L296:
  mov    $0x0,%eax
L2310:
  cmp    %edx,%eax
  je     L397
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x1f8(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D37(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L397:
  addl   $0x1,-0x1f8(%rbp)
L785:
  cmpl   $0x7,-0x1f8(%rbp)
  jle    L1056
  movdqa -0x100(%rbp),%xmm1
  movdqa -0xf0(%rbp),%xmm0
  pcmpeqw %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqw %xmm1,%xmm0
  movaps %xmm0,-0xe0(%rbp)
  movl   $0x0,-0x1f4(%rbp)
  jmp    L1744
L171:
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  movswl %ax,%edx
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%ecx
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  cmp    %ax,%cx
  je     L321
  mov    $0xffffffff,%eax
  jmp    L480
L321:
  mov    $0x0,%eax
L480:
  cmp    %edx,%eax
  je     L1699
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0xf0(%rbp,%rax,2),%eax
  movzwl %ax,%ecx
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0x100(%rbp,%rax,2),%eax
  movzwl %ax,%edx
  mov    -0x1f4(%rbp),%eax
  cltq
  movzwl -0xe0(%rbp,%rax,2),%eax
  cwtl
  mov    %eax,%esi
  lea    D555(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1699:
  addl   $0x1,-0x1f4(%rbp)
L1744:
  cmpl   $0x7,-0x1f4(%rbp)
  jle    L171
  mov    -0x254(%rbp),%eax
  mov    %eax,%edx
  mov    -0x254(%rbp),%eax
  mov    %eax,%ecx
  mov    $0x2,%eax
  shl    $0x8,%rax
  or     $0xfb,%al
  shl    $0x8,%rax
  or     $0x57,%rax
  shl    $0x8,%rax
  or     $0x6,%rax
  shl    $0x8,%rax
  or     $0xa,%rax
  shl    $0x8,%rax
  or     $0x2,%rax
  shl    $0x8,%rax
  or     $0x1,%rax
  movzbl %dl,%edx
  shl    $0x8,%rax
  or     %rax,%rdx
  mov    $0x2,%eax
  shl    $0x8,%rax
  or     $0xfb,%al
  shl    $0x8,%rax
  or     $0x57,%rax
  shl    $0x8,%rax
  or     $0x6,%rax
  shl    $0x8,%rax
  or     $0xa,%rax
  shl    $0x8,%rax
  or     $0x2,%rax
  shl    $0x8,%rax
  or     $0x1,%rax
  movzbl %cl,%ecx
  shl    $0x8,%rax
  or     %rcx,%rax
  mov    %rdx,-0x270(%rbp)
  mov    %rax,-0x268(%rbp)
  movdqa -0x270(%rbp),%xmm0
  movaps %xmm0,-0xd0(%rbp)
  movdqa D446(%rip),%xmm0
  movaps %xmm0,-0xc0(%rbp)
  movdqa -0xd0(%rbp),%xmm0
  movdqa -0xc0(%rbp),%xmm1
  pcmpgtb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1f0(%rbp)
  jmp    L535
L621:
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jle    L1131
  mov    $0xffffffff,%eax
  jmp    L387
L1131:
  mov    $0x0,%eax
L387:
  cmp    %edx,%eax
  je     L1515
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1f0(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D93(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1515:
  addl   $0x1,-0x1f0(%rbp)
L535:
  cmpl   $0xf,-0x1f0(%rbp)
  jle    L621
  movdqa -0xd0(%rbp),%xmm1
  movdqa -0xc0(%rbp),%xmm0
  pcmpgtb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1ec(%rbp)
  jmp    L546
L764:
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jge    L1155
  mov    $0xffffffff,%eax
  jmp    L1710
L1155:
  mov    $0x0,%eax
L1710:
  cmp    %edx,%eax
  je     L733
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1ec(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D172(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L733:
  addl   $0x1,-0x1ec(%rbp)
L546:
  cmpl   $0xf,-0x1ec(%rbp)
  jle    L764
  movdqa -0xd0(%rbp),%xmm1
  movdqa -0xc0(%rbp),%xmm0
  pcmpgtb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1e8(%rbp)
  jmp    L2411
L2098:
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jl     L1355
  mov    $0xffffffff,%eax
  jmp    L1509
L1355:
  mov    $0x0,%eax
L1509:
  cmp    %edx,%eax
  je     L1877
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e8(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D59(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1877:
  addl   $0x1,-0x1e8(%rbp)
L2411:
  cmpl   $0xf,-0x1e8(%rbp)
  jle    L2098
  movdqa -0xd0(%rbp),%xmm0
  movdqa -0xc0(%rbp),%xmm1
  pcmpgtb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1e4(%rbp)
  jmp    L1942
L1336:
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jg     L616
  mov    $0xffffffff,%eax
  jmp    L2040
L616:
  mov    $0x0,%eax
L2040:
  cmp    %edx,%eax
  je     L2093
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e4(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D453(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2093:
  addl   $0x1,-0x1e4(%rbp)
L1942:
  cmpl   $0xf,-0x1e4(%rbp)
  jle    L1336
  movdqa -0xd0(%rbp),%xmm1
  movdqa -0xc0(%rbp),%xmm0
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1e0(%rbp)
  jmp    L1316
L580:
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jne    L1503
  mov    $0xffffffff,%eax
  jmp    L1794
L1503:
  mov    $0x0,%eax
L1794:
  cmp    %edx,%eax
  je     L32
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1e0(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D25(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L32:
  addl   $0x1,-0x1e0(%rbp)
L1316:
  cmpl   $0xf,-0x1e0(%rbp)
  jle    L580
  movdqa -0xd0(%rbp),%xmm1
  movdqa -0xc0(%rbp),%xmm0
  pcmpeqb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0xb0(%rbp)
  movl   $0x0,-0x1dc(%rbp)
  jmp    L2235
L7:
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%ecx
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  cmp    %al,%cl
  je     L1278
  mov    $0xffffffff,%eax
  jmp    L1270
L1278:
  mov    $0x0,%eax
L1270:
  cmp    %edx,%eax
  je     L1147
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xc0(%rbp,%rax,1),%eax
  movsbl %al,%ecx
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xd0(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1dc(%rbp),%eax
  cltq
  movzbl -0xb0(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D252(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1147:
  addl   $0x1,-0x1dc(%rbp)
L2235:
  cmpl   $0xf,-0x1dc(%rbp)
  jle    L7
  mov    -0x254(%rbp),%eax
  mov    %eax,%edx
  mov    -0x254(%rbp),%eax
  mov    %eax,%ecx
  mov    $0x2,%eax
  shl    $0x8,%rax
  or     $0xfb,%al
  shl    $0x8,%rax
  or     $0x57,%rax
  shl    $0x8,%rax
  or     $0x6,%rax
  shl    $0x8,%rax
  or     $0xa,%rax
  shl    $0x8,%rax
  or     $0x2,%rax
  shl    $0x8,%rax
  or     $0x1,%rax
  movzbl %dl,%edx
  shl    $0x8,%rax
  or     %rax,%rdx
  mov    $0x2,%eax
  shl    $0x8,%rax
  or     $0xfb,%al
  shl    $0x8,%rax
  or     $0x57,%rax
  shl    $0x8,%rax
  or     $0x6,%rax
  shl    $0x8,%rax
  or     $0xa,%rax
  shl    $0x8,%rax
  or     $0x2,%rax
  shl    $0x8,%rax
  or     $0x1,%rax
  movzbl %cl,%ecx
  shl    $0x8,%rax
  or     %rcx,%rax
  mov    %rdx,-0x270(%rbp)
  mov    %rax,-0x268(%rbp)
  movdqa -0x270(%rbp),%xmm0
  movaps %xmm0,-0xa0(%rbp)
  movdqa D446(%rip),%xmm0
  movaps %xmm0,-0x90(%rbp)
  movdqa -0xa0(%rbp),%xmm0
  movdqa -0x90(%rbp),%xmm1
  psubusb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1d8(%rbp)
  jmp    L2382
L1630:
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jbe    L1225
  mov    $0xffffffff,%eax
  jmp    L982
L1225:
  mov    $0x0,%eax
L982:
  cmp    %edx,%eax
  je     L1964
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1d8(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D241(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1964:
  addl   $0x1,-0x1d8(%rbp)
L2382:
  cmpl   $0xf,-0x1d8(%rbp)
  jle    L1630
  movdqa -0xa0(%rbp),%xmm1
  movdqa -0x90(%rbp),%xmm0
  psubusb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1d4(%rbp)
  jmp    L1965
L2023:
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jae    L372
  mov    $0xffffffff,%eax
  jmp    L2035
L372:
  mov    $0x0,%eax
L2035:
  cmp    %edx,%eax
  je     L1324
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1d4(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D539(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1324:
  addl   $0x1,-0x1d4(%rbp)
L1965:
  cmpl   $0xf,-0x1d4(%rbp)
  jle    L2023
  movdqa -0xa0(%rbp),%xmm1
  movdqa -0x90(%rbp),%xmm0
  pminub %xmm0,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1d0(%rbp)
  jmp    L1756
L1632:
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jb     L684
  mov    $0xffffffff,%eax
  jmp    L1354
L684:
  mov    $0x0,%eax
L1354:
  cmp    %edx,%eax
  je     L2083
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1d0(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D558(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2083:
  addl   $0x1,-0x1d0(%rbp)
L1756:
  cmpl   $0xf,-0x1d0(%rbp)
  jle    L1632
  movdqa -0xa0(%rbp),%xmm0
  movdqa -0x90(%rbp),%xmm1
  pminub %xmm0,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1cc(%rbp)
  jmp    L353
L1944:
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  ja     L212
  mov    $0xffffffff,%eax
  jmp    L24
L212:
  mov    $0x0,%eax
L24:
  cmp    %edx,%eax
  je     L47
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1cc(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D576(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L47:
  addl   $0x1,-0x1cc(%rbp)
L353:
  cmpl   $0xf,-0x1cc(%rbp)
  jle    L1944
  movdqa -0xa0(%rbp),%xmm1
  movdqa -0x90(%rbp),%xmm0
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1c8(%rbp)
  jmp    L18
L1076:
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  jne    L458
  mov    $0xffffffff,%eax
  jmp    L869
L458:
  mov    $0x0,%eax
L869:
  cmp    %edx,%eax
  je     L1922
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1c8(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D37(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L1922:
  addl   $0x1,-0x1c8(%rbp)
L18:
  cmpl   $0xf,-0x1c8(%rbp)
  jle    L1076
  movdqa -0xa0(%rbp),%xmm1
  movdqa -0x90(%rbp),%xmm0
  pcmpeqb %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  pcmpeqb %xmm1,%xmm0
  movaps %xmm0,-0x80(%rbp)
  movl   $0x0,-0x1c4(%rbp)
  jmp    L2134
L530:
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%edx
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%ecx
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  cmp    %al,%cl
  je     L822
  mov    $0xffffffff,%eax
  jmp    L592
L822:
  mov    $0x0,%eax
L592:
  cmp    %edx,%eax
  je     L2384
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0x90(%rbp,%rax,1),%eax
  movzbl %al,%ecx
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0xa0(%rbp,%rax,1),%eax
  movzbl %al,%edx
  mov    -0x1c4(%rbp),%eax
  cltq
  movzbl -0x80(%rbp,%rax,1),%eax
  movsbl %al,%eax
  mov    %eax,%esi
  lea    D555(%rip),%rax
  mov    %rax,%rdi
  mov    $0x0,%eax
  call   <printf@plt>
  call   <abort@plt>
L2384:
  addl   $0x1,-0x1c4(%rbp)
L2134:
  cmpl   $0xf,-0x1c4(%rbp)
  jle    L530
  pxor   %xmm1,%xmm1
  cvtsi2ssl -0x254(%rbp),%xmm1
  movaps D517(%rip),%xmm0
  movss  %xmm1,%xmm0
  movaps %xmm0,-0x70(%rbp)
  movaps D79(%rip),%xmm0
  movaps %xmm0,-0x60(%rbp)
  movaps -0x70(%rbp),%xmm1
  movaps -0x60(%rbp),%xmm0
  cmpltps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1c0(%rbp)
  jmp    L1934
L752:
  mov    -0x1c0(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1c0(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm0
  mov    -0x1c0(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm1
  comiss %xmm1,%xmm0
  jbe    L532
  mov    $0xffffffff,%eax
  jmp    L1521
L532:
  mov    $0x0,%eax
L1521:
  cmp    %edx,%eax
  je     L1748
  mov    -0x1c0(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1c0(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm5,%xmm5
  cvtss2sd %xmm1,%xmm5
  movq   %xmm5,%rdx
  mov    -0x1c0(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D651(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L1748:
  addl   $0x1,-0x1c0(%rbp)
L1934:
  cmpl   $0x3,-0x1c0(%rbp)
  jle    L752
  movaps -0x70(%rbp),%xmm0
  movaps -0x60(%rbp),%xmm1
  cmpltps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1bc(%rbp)
  jmp    L1039
L1801:
  mov    -0x1bc(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1bc(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  mov    -0x1bc(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  comiss %xmm1,%xmm0
  jbe    L1246
  mov    $0xffffffff,%eax
  jmp    L454
L1246:
  mov    $0x0,%eax
L454:
  cmp    %edx,%eax
  je     L192
  mov    -0x1bc(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1bc(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm6,%xmm6
  cvtss2sd %xmm1,%xmm6
  movq   %xmm6,%rdx
  mov    -0x1bc(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D283(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L192:
  addl   $0x1,-0x1bc(%rbp)
L1039:
  cmpl   $0x3,-0x1bc(%rbp)
  jle    L1801
  movaps -0x70(%rbp),%xmm1
  movaps -0x60(%rbp),%xmm0
  cmpleps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1b8(%rbp)
  jmp    L355
L800:
  mov    -0x1b8(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1b8(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm0
  mov    -0x1b8(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm1
  comiss %xmm1,%xmm0
  jb     L1477
  mov    $0xffffffff,%eax
  jmp    L1635
L1477:
  mov    $0x0,%eax
L1635:
  cmp    %edx,%eax
  je     L990
  mov    -0x1b8(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1b8(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm7,%xmm7
  cvtss2sd %xmm1,%xmm7
  movq   %xmm7,%rdx
  mov    -0x1b8(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D631(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L990:
  addl   $0x1,-0x1b8(%rbp)
L355:
  cmpl   $0x3,-0x1b8(%rbp)
  jle    L800
  movaps -0x70(%rbp),%xmm0
  movaps -0x60(%rbp),%xmm1
  cmpleps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1b4(%rbp)
  jmp    L36
L672:
  mov    -0x1b4(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1b4(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  mov    -0x1b4(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  comiss %xmm1,%xmm0
  jb     L1272
  mov    $0xffffffff,%eax
  jmp    L2133
L1272:
  mov    $0x0,%eax
L2133:
  cmp    %edx,%eax
  je     L1412
  mov    -0x1b4(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1b4(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm3,%xmm3
  cvtss2sd %xmm1,%xmm3
  movq   %xmm3,%rdx
  mov    -0x1b4(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D137(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L1412:
  addl   $0x1,-0x1b4(%rbp)
L36:
  cmpl   $0x3,-0x1b4(%rbp)
  jle    L672
  movaps -0x70(%rbp),%xmm1
  movaps -0x60(%rbp),%xmm0
  cmpeqps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1b0(%rbp)
  jmp    L1717
L2075:
  mov    -0x1b0(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1b0(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm0
  mov    -0x1b0(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm1
  ucomiss %xmm1,%xmm0
  jp     L1409
  ucomiss %xmm1,%xmm0
  jne    L1409
  mov    $0xffffffff,%eax
  jmp    L661
L1409:
  mov    $0x0,%eax
L661:
  cmp    %edx,%eax
  je     L1227
  mov    -0x1b0(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1b0(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm4,%xmm4
  cvtss2sd %xmm1,%xmm4
  movq   %xmm4,%rdx
  mov    -0x1b0(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D444(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L1227:
  addl   $0x1,-0x1b0(%rbp)
L1717:
  cmpl   $0x3,-0x1b0(%rbp)
  jle    L2075
  movaps -0x70(%rbp),%xmm1
  movaps -0x60(%rbp),%xmm0
  cmpneqps %xmm1,%xmm0
  movaps %xmm0,-0x50(%rbp)
  movl   $0x0,-0x1ac(%rbp)
  jmp    L1614
L1064:
  mov    -0x1ac(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%edx
  mov    -0x1ac(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm0
  mov    -0x1ac(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm1
  ucomiss %xmm1,%xmm0
  jp     L2082
  ucomiss %xmm1,%xmm0
  je     L441
L2082:
  mov    $0xffffffff,%eax
  jmp    L662
L441:
  mov    $0x0,%eax
L662:
  cmp    %edx,%eax
  je     L189
  mov    -0x1ac(%rbp),%eax
  cltq
  movss  -0x60(%rbp,%rax,4),%xmm0
  cvtss2sd %xmm0,%xmm0
  mov    -0x1ac(%rbp),%eax
  cltq
  movss  -0x70(%rbp,%rax,4),%xmm1
  pxor   %xmm5,%xmm5
  cvtss2sd %xmm1,%xmm5
  movq   %xmm5,%rdx
  mov    -0x1ac(%rbp),%eax
  cltq
  mov    -0x50(%rbp,%rax,4),%eax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %eax,%esi
  lea    D511(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L189:
  addl   $0x1,-0x1ac(%rbp)
L1614:
  cmpl   $0x3,-0x1ac(%rbp)
  jle    L1064
  pxor   %xmm0,%xmm0
  cvtsi2sdl -0x254(%rbp),%xmm0
  movsd  D512(%rip),%xmm1
  unpcklpd %xmm1,%xmm0
  movaps %xmm0,-0x40(%rbp)
  movapd D259(%rip),%xmm0
  movaps %xmm0,-0x30(%rbp)
  movapd -0x40(%rbp),%xmm1
  movapd -0x30(%rbp),%xmm0
  cmpltpd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x1a8(%rbp)
  jmp    L400
L1401:
  mov    -0x1a8(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x1a8(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm0
  mov    -0x1a8(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm1
  comisd %xmm1,%xmm0
  jbe    L211
  mov    $0xffffffffffffffff,%rax
  jmp    L1615
L211:
  mov    $0x0,%eax
L1615:
  cmp    %rdx,%rax
  je     L1911
  mov    -0x1a8(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x1a8(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x1a8(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D651(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L1911:
  addl   $0x1,-0x1a8(%rbp)
L400:
  cmpl   $0x1,-0x1a8(%rbp)
  jle    L1401
  movapd -0x40(%rbp),%xmm0
  movapd -0x30(%rbp),%xmm1
  cmpltpd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x1a4(%rbp)
  jmp    L747
L299:
  mov    -0x1a4(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x1a4(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm1
  mov    -0x1a4(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  comisd %xmm1,%xmm0
  jbe    L1167
  mov    $0xffffffffffffffff,%rax
  jmp    L892
L1167:
  mov    $0x0,%eax
L892:
  cmp    %rdx,%rax
  je     L2061
  mov    -0x1a4(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x1a4(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x1a4(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D283(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L2061:
  addl   $0x1,-0x1a4(%rbp)
L747:
  cmpl   $0x1,-0x1a4(%rbp)
  jle    L299
  movapd -0x40(%rbp),%xmm1
  movapd -0x30(%rbp),%xmm0
  cmplepd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x1a0(%rbp)
  jmp    L1025
L2115:
  mov    -0x1a0(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x1a0(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm0
  mov    -0x1a0(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm1
  comisd %xmm1,%xmm0
  jb     L1110
  mov    $0xffffffffffffffff,%rax
  jmp    L149
L1110:
  mov    $0x0,%eax
L149:
  cmp    %rdx,%rax
  je     L4
  mov    -0x1a0(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x1a0(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x1a0(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D631(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L4:
  addl   $0x1,-0x1a0(%rbp)
L1025:
  cmpl   $0x1,-0x1a0(%rbp)
  jle    L2115
  movapd -0x40(%rbp),%xmm0
  movapd -0x30(%rbp),%xmm1
  cmplepd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x19c(%rbp)
  jmp    L76
L954:
  mov    -0x19c(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x19c(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm1
  mov    -0x19c(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  comisd %xmm1,%xmm0
  jb     L1358
  mov    $0xffffffffffffffff,%rax
  jmp    L1384
L1358:
  mov    $0x0,%eax
L1384:
  cmp    %rdx,%rax
  je     L451
  mov    -0x19c(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x19c(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x19c(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D137(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L451:
  addl   $0x1,-0x19c(%rbp)
L76:
  cmpl   $0x1,-0x19c(%rbp)
  jle    L954
  movapd -0x40(%rbp),%xmm1
  movapd -0x30(%rbp),%xmm0
  cmpeqpd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x198(%rbp)
  jmp    L220
L2240:
  mov    -0x198(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x198(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm0
  mov    -0x198(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm1
  ucomisd %xmm1,%xmm0
  jp     L1606
  ucomisd %xmm1,%xmm0
  jne    L1606
  mov    $0xffffffffffffffff,%rax
  jmp    L2336
L1606:
  mov    $0x0,%eax
L2336:
  cmp    %rdx,%rax
  je     L1730
  mov    -0x198(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x198(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x198(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D444(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L1730:
  addl   $0x1,-0x198(%rbp)
L220:
  cmpl   $0x1,-0x198(%rbp)
  jle    L2240
  movapd -0x40(%rbp),%xmm1
  movapd -0x30(%rbp),%xmm0
  cmpneqpd %xmm1,%xmm0
  movaps %xmm0,-0x20(%rbp)
  movl   $0x0,-0x194(%rbp)
  jmp    L1398
L702:
  mov    -0x194(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rdx
  mov    -0x194(%rbp),%eax
  cltq
  movsd  -0x40(%rbp,%rax,8),%xmm0
  mov    -0x194(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm1
  ucomisd %xmm1,%xmm0
  jp     L416
  ucomisd %xmm1,%xmm0
  je     L2285
L416:
  mov    $0xffffffffffffffff,%rax
  jmp    L713
L2285:
  mov    $0x0,%eax
L713:
  cmp    %rdx,%rax
  je     L301
  mov    -0x194(%rbp),%eax
  cltq
  movsd  -0x30(%rbp,%rax,8),%xmm0
  mov    -0x194(%rbp),%eax
  cltq
  mov    -0x40(%rbp,%rax,8),%rdx
  mov    -0x194(%rbp),%eax
  cltq
  mov    -0x20(%rbp,%rax,8),%rax
  movapd %xmm0,%xmm1
  movq   %rdx,%xmm0
  mov    %rax,%rsi
  lea    D511(%rip),%rax
  mov    %rax,%rdi
  mov    $0x2,%eax
  call   <printf@plt>
  call   <abort@plt>
L301:
  addl   $0x1,-0x194(%rbp)
L1398:
  cmpl   $0x1,-0x194(%rbp)
  jle    L702
  mov    $0x0,%eax
  mov    -0x8(%rbp),%rdx
  sub    %fs:0x28,%rdx
  je     L1264
  call   <__stack_chk_fail@plt>
L1264:
  leave
  ret
```

tool_calls: name: read_data
arguments: label: D94
type_infered: f32[4]
name: read_data
arguments: label: D503
type_infered: f32[4]
name: read_data
arguments: label: D93
type_infered: string
name: read_data
arguments: label: D172
type_infered: string
name: read_data
arguments: label: D59
type_infered: string
name: read_data
arguments: label: D453
type_infered: string
name: read_data
arguments: label: D25
type_infered: string
name: read_data
arguments: label: D252
type_infered: string
name: read_data
arguments: label: D362
type_infered: byte[16]
name: read_data
arguments: label: D241
type_infered: string
name: read_data
arguments: label: D539
type_infered: string
name: read_data
arguments: label: D558
type_infered: string
name: read_data
arguments: label: D576
type_infered: string
name: read_data
arguments: label: D37
type_infered: string
name: read_data
arguments: label: D555
type_infered: string
name: read_data
arguments: label: D167
type_infered: byte[16]
name: read_data
arguments: label: D74
type_infered: byte[16]
name: read_data
arguments: label: D446
type_infered: byte[16]
name: read_data
arguments: label: D517
type_infered: f32[4]
name: read_data
arguments: label: D79
type_infered: f32[4]
name: read_data
arguments: label: D651
type_infered: string
name: read_data
arguments: label: D283
type_infered: string
name: read_data
arguments: label: D631
type_infered: string
name: read_data
arguments: label: D137
type_infered: string
name: read_data
arguments: label: D444
type_infered: string
name: read_data
arguments: label: D511
type_infered: string
name: read_data
arguments: label: D512
type_infered: f64
name: read_data
arguments: label: D259
type_infered: f32[4]

tool: {"D94": [0.0,1.401298464324817e-45,2.802596928649634e-45,1.401298464324817e-44]}

tool: {"D503": [0.0,4.203895392974451e-45,2.802596928649634e-45,null]}

tool: D93: %i != ((%i > %i ? -1 : 0) 

tool: D172: %i != ((%i < %i ? -1 : 0) 

tool: D59: %i != ((%i >= %i ? -1 : 0) 

tool: D453: %i != ((%i <= %i ? -1 : 0) 

tool: D25: %i != ((%i == %i ? -1 : 0) 

tool: D252: %i != ((%i != %i ? -1 : 0) 

tool: {"D362": [0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80]}

tool: D241: %i != ((%u > %u ? -1 : 0) 

tool: D539: %i != ((%u < %u ? -1 : 0) 

tool: D558: %i != ((%u >= %u ? -1 : 0) 

tool: D576: %i != ((%u <= %u ? -1 : 0) 

tool: D37: %i != ((%u == %u ? -1 : 0) 

tool: D555: %i != ((%u != %u ? -1 : 0) 

tool: {"D167": [0x00,0x00,0x01,0x00,0x02,0x00,0x0a,0x00,0x06,0x00,0x57,0x00,0xfb,0xff,0x02,0x00]}

tool: {"D74": [0x00,0x00,0x03,0x00,0x02,0x00,0xe9,0xff,0x0c,0x00,0x0a,0x00,0xfe,0xff,0x00,0x00]}

tool: {"D446": [0x00,0x03,0x02,0xe9,0x0c,0x0a,0xfe,0x00,0x00,0x03,0x02,0xe9,0x0c,0x0a,0xfe,0x00]}

tool: {"D517": [0.0,1.0,2.0,10.0]}

tool: {"D79": [0.0,3.0,2.0,-23.0]}

tool: D651: %i != ((%f > %f ? -1 : 0) 

tool: D283: %i != ((%f < %f ? -1 : 0) 

tool: D631: %i != ((%f >= %f ? -1 : 0) 

tool: D137: %i != ((%f <= %f ? -1 : 0) 

tool: D444: %i != ((%f == %f ? -1 : 0) 

tool: D511: %i != ((%f != %f ? -1 : 0) 

tool: D512: 10

tool: {"D259": [0.0,0.0,0.0,-2.859375]}

assistant: ```c
int main(int argc, char *argv[]) {
  __attribute__((vector_size((4) * sizeof(int)))) int i0;
  __attribute__((vector_size((4) * sizeof(int)))) int i1;
  __attribute__((vector_size((4) * sizeof(int)))) int ires;
  int i;
  i0 = (__attribute__((vector_size((4) * sizeof(int)))) int){argc, 1, 2, 10};
  i1 = (__attribute__((vector_size((4) * sizeof(int)))) int){0, 3, 2, (int)-23};
  ;
  do {
    ires = (i0 > i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] > (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ires = (i0 < i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] < (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ires = (i0 >= i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] >= (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ires = (i0 <= i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] <= (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ires = (i0 == i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] == (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "=="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ires = (i0 != i1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ires)[__i] != ((i0)[__i] != (i1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "!="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (ires)[__i], (i0)[__i], (i1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((4) * sizeof(int)))) int ures;
  __attribute__((vector_size((4) * sizeof(unsigned int)))) unsigned int u0;
  __attribute__((vector_size((4) * sizeof(unsigned int)))) unsigned int u1;
  u0 = (__attribute__((vector_size((4) * sizeof(unsigned int)))) unsigned int){argc, 1, 2, 10};
  u1 = (__attribute__((vector_size((4) * sizeof(unsigned int)))) unsigned int){0, 3, 2, (unsigned int)-23};
  ;
  do {
    ures = (u0 > u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] > (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ures = (u0 < u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] < (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ures = (u0 >= u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] >= (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ures = (u0 <= u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] <= (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ures = (u0 == u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] == (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "=="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ures = (u0 != u1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ures)[__i] != ((u0)[__i] != (u1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "!="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ures)[__i], (u0)[__i], (u1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((8) * sizeof(short)))) short s0;
  __attribute__((vector_size((8) * sizeof(short)))) short s1;
  __attribute__((vector_size((8) * sizeof(short)))) short sres;
  s0 = (__attribute__((vector_size((8) * sizeof(short)))) short){argc, 1, 2, 10, 6, 87, (short)-5, 2};
  s1 = (__attribute__((vector_size((8) * sizeof(short)))) short){0, 3, 2, (short)-23, 12, 10, (short)-2, 0};
  ;
  do {
    sres = (s0 > s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] > (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    sres = (s0 < s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] < (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    sres = (s0 >= s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] >= (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    sres = (s0 <= s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] <= (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    sres = (s0 == s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] == (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "=="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    sres = (s0 != s1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((sres)[__i] != ((s0)[__i] != (s1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "!="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (sres)[__i], (s0)[__i], (s1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((8) * sizeof(unsigned short)))) unsigned short us0;
  __attribute__((vector_size((8) * sizeof(unsigned short)))) unsigned short us1;
  __attribute__((vector_size((8) * sizeof(short)))) short usres;
  us0 = (__attribute__((vector_size((8) * sizeof(unsigned short)))) unsigned short){argc, 1, 2, 10, 6, 87, (unsigned short)-5, 2};
  us1 = (__attribute__((vector_size((8) * sizeof(unsigned short)))) unsigned short){0, 3, 2, (unsigned short)-23, 12, 10, (unsigned short)-2, 0};
  ;
  do {
    usres = (us0 > us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] > (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    usres = (us0 < us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] < (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    usres = (us0 >= us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] >= (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    usres = (us0 <= us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] <= (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    usres = (us0 == us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] == (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "=="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    usres = (us0 != us1);
    do {
      int __i;
      for (__i = 0; __i < 8; __i++) {
        if ((usres)[__i] != ((us0)[__i] != (us1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "!="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (usres)[__i], (us0)[__i], (us1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((16) * sizeof(signed char)))) signed char c0;
  __attribute__((vector_size((16) * sizeof(signed char)))) signed char c1;
  __attribute__((vector_size((16) * sizeof(signed char)))) signed char cres;
  c0 = (__attribute__((vector_size((16) * sizeof(signed char)))) signed char){argc, 1, 2, 10, 6, 87, (signed char)-5, 2, argc, 1, 2, 10, 6, 87, (signed char)-5, 2};
  c1 = (__attribute__((vector_size((16) * sizeof(signed char)))) signed char){0, 3, 2, (signed char)-23, 12, 10, (signed char)-2, 0, 0, 3, 2, (signed char)-23, 12, 10, (signed char)-2, 0};
  ;
  do {
    cres = (c0 > c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] > (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    cres = (c0 < c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] < (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<"
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    cres = (c0 >= c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] >= (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           ">="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    cres = (c0 <= c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] <= (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "<="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    cres = (c0 == c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] == (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "=="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    cres = (c0 != c1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((cres)[__i] != ((c0)[__i] != (c1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%i"
                           " "
                           "!="
                           " "
                           "%i"
                           " ? -1 : 0) ",
                           (cres)[__i], (c0)[__i], (c1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((16) * sizeof(unsigned char)))) unsigned char uc0;
  __attribute__((vector_size((16) * sizeof(unsigned char)))) unsigned char uc1;
  __attribute__((vector_size((16) * sizeof(signed char)))) signed char ucres;
  uc0 = (__attribute__((vector_size((16) * sizeof(unsigned char)))) unsigned char){argc, 1, 2, 10, 6, 87, (unsigned char)-5, 2, argc, 1, 2, 10, 6, 87, (unsigned char)-5, 2};
  uc1 = (__attribute__((vector_size((16) * sizeof(unsigned char)))) unsigned char){0, 3, 2, (unsigned char)-23, 12, 10, (unsigned char)-2, 0, 0, 3, 2, (unsigned char)-23, 12, 10, (unsigned char)-2, 0};
  ;
  do {
    ucres = (uc0 > uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] > (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ucres = (uc0 < uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] < (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<"
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ucres = (uc0 >= uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] >= (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           ">="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ucres = (uc0 <= uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] <= (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "<="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ucres = (uc0 == uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] == (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "=="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ucres = (uc0 != uc1);
    do {
      int __i;
      for (__i = 0; __i < 16; __i++) {
        if ((ucres)[__i] != ((uc0)[__i] != (uc1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%u"
                           " "
                           "!="
                           " "
                           "%u"
                           " ? -1 : 0) ",
                           (ucres)[__i], (uc0)[__i], (uc1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((4) * sizeof(float)))) float f0;
  __attribute__((vector_size((4) * sizeof(float)))) float f1;
  __typeof(f0 == f1) ifres;
  f0 = (__attribute__((vector_size((4) * sizeof(float)))) float){(float)argc, 1., 2., 10.};
  f1 = (__attribute__((vector_size((4) * sizeof(float)))) float){0., 3., 2., (float)-23};
  ;
  do {
    ifres = (f0 > f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] > (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           ">"
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ifres = (f0 < f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] < (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "<"
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ifres = (f0 >= f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] >= (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           ">="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ifres = (f0 <= f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] <= (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "<="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ifres = (f0 == f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] == (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "=="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    ifres = (f0 != f1);
    do {
      int __i;
      for (__i = 0; __i < 4; __i++) {
        if ((ifres)[__i] != ((f0)[__i] != (f1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "!="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (ifres)[__i], (f0)[__i], (f1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  __attribute__((vector_size((2) * sizeof(double)))) double d0;
  __attribute__((vector_size((2) * sizeof(double)))) double d1;
  __typeof(d0 == d1) idres;
  d0 = (__attribute__((vector_size((2) * sizeof(double)))) double){(double)argc, 10.};
  d1 = (__attribute__((vector_size((2) * sizeof(double)))) double){0., (double)-23};
  ;
  do {
    idres = (d0 > d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] > (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           ">"
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    idres = (d0 < d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] < (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "<"
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    idres = (d0 >= d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] >= (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           ">="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    idres = (d0 <= d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] <= (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "<="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    idres = (d0 == d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] == (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "=="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
    idres = (d0 != d1);
    do {
      int __i;
      for (__i = 0; __i < 2; __i++) {
        if ((idres)[__i] != ((d0)[__i] != (d1)[__i] ? -1 : 0)) {
          __builtin_printf("%i != (("
                           "%f"
                           " "
                           "!="
                           " "
                           "%f"
                           " ? -1 : 0) ",
                           (idres)[__i], (d0)[__i], (d1)[__i]);
          __builtin_abort();
        }
      }
    } while (0);
  } while (0);
  return 0;
}
```