int bot(int grid[6][7], int move) {
  int i, j, t;
  if (move == 1) {
    for (i = 0; i < 6; i++) {
      for (j = 0; j < 7; j++) {
        if (grid[i][j] == 1 && grid[i + 1][j] == 1 && grid[i + 2][j] == 1 &&
            grid[i + 3][j] == 0 && i < 3) {
          return j;
        } else if (grid[i][j] == 1 && grid[i][j + 1] == 1 &&
                   grid[i][j + 2] == 1 && grid[i][j + 3] == 0 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j + 1] == 1 &&
                   grid[i + 2][j + 2] == 1 && grid[i + 3][j + 3] == 0 &&
                   i < 3 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i - 1][j - 1] == 1 &&
                   grid[i - 2][j - 2] == 1 && grid[i - 3][j - 3] == 0 &&
                   i > 2 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == 1 && grid[i - 1][j + 1] == 1 &&
                   grid[i - 2][j + 2] == 1 && grid[i - 3][j + 3] == 0 &&
                   i > 2 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j - 1] == 1 &&
                   grid[i + 2][j - 2] == 1 && grid[i + 3][j - 3] == 0 &&
                   i < 3 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j] == -1 &&
                   grid[i + 2][j] == -1 && grid[i + 3][j] == 0 && i < 3) {
          return j;
        } else if (grid[i][j] == -1 && grid[i][j + 1] == -1 &&
                   grid[i][j + 2] == -1 && grid[i][j + 3] == 0 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j + 1] == -1 &&
                   grid[i + 2][j + 2] == -1 && grid[i + 3][j + 3] == 0 &&
                   i < 3 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i - 1][j - 1] == -1 &&
                   grid[i - 2][j - 2] == -1 && grid[i - 3][j - 3] == 0 &&
                   i > 2 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == -1 && grid[i - 1][j + 1] == -1 &&
                   grid[i - 2][j + 2] == -1 && grid[i - 3][j + 3] == 0 &&
                   i > 2 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j - 1] == -1 &&
                   grid[i + 2][j - 2] == -1 && grid[i + 3][j - 3] == 0 &&
                   i < 3 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j] == 1 &&
                   grid[i + 2][j] == 0 && i < 4) {
          return j;
        } else if (grid[i][j] == 1 && grid[i][j + 1] == 1 &&
                   grid[i][j + 2] == 0 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == 1 && grid[i + 1][j + 1] == 1 &&
                   grid[i + 2][j + 2] == 0 && i < 4 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == 1 && grid[i - 1][j - 1] == 1 &&
                   grid[i - 2][j - 2] == 0 && j > 1 && i > 1) {
          return j - 2;
        } else if (grid[i][j] == 1 && grid[i - 1][j + 1] == 1 &&
                   grid[i - 2][j + 2] == 0 && i > 1 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == 1 && grid[i + 1][j - 1] == 1 &&
                   grid[i + 2][j - 2] == 0 && i < 4 && j > 1) {
          return j - 2;
        }
      }
    }
    for (t = 0; t < 6; t++)
      if (grid[0][t] == 0)
        return t;
    return 0;
  } else if (move == -1) {
    for (i = 0; i < 6; i++) {
      for (j = 0; j < 7; j++) {
        if (grid[i][j] == -1 && grid[i + 1][j] == -1 && grid[i + 2][j] == -1 &&
            grid[i + 3][j] == 0 && i < 3) {
          return j;
        } else if (grid[i][j] == -1 && grid[i][j + 1] == -1 &&
                   grid[i][j + 2] == -1 && grid[i][j + 3] == 0 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j + 1] == -1 &&
                   grid[i + 2][j + 2] == -1 && grid[i + 3][j + 3] == 0 &&
                   i < 3 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i - 1][j - 1] == -1 &&
                   grid[i - 2][j - 2] == -1 && grid[i - 3][j - 3] == 0 &&
                   i > 2 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == -1 && grid[i - 1][j + 1] == -1 &&
                   grid[i - 2][j + 2] == -1 && grid[i - 3][j + 3] == 0 &&
                   i > 2 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j - 1] == -1 &&
                   grid[i + 2][j - 2] == -1 && grid[i + 3][j - 3] == 0 &&
                   i < 3 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j] == 1 &&
                   grid[i + 2][j] == 1 && grid[i + 3][j] == 0 && i < 3) {
          return j;
        } else if (grid[i][j] == 1 && grid[i][j + 1] == 1 &&
                   grid[i][j + 2] == 1 && grid[i][j + 3] == 0 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j + 1] == 1 &&
                   grid[i + 2][j + 2] == 1 && grid[i + 3][j + 3] == 0 &&
                   i < 3 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i - 1][j - 1] == 1 &&
                   grid[i - 2][j - 2] == 1 && grid[i - 3][j - 3] == 0 &&
                   i > 2 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == 1 && grid[i - 1][j + 1] == 1 &&
                   grid[i - 2][j + 2] == 1 && grid[i - 3][j + 3] == 0 &&
                   i > 2 && j < 4) {
          return j + 3;
        } else if (grid[i][j] == 1 && grid[i + 1][j - 1] == 1 &&
                   grid[i + 2][j - 2] == 1 && grid[i + 3][j - 3] == 0 &&
                   i < 3 && j > 2) {
          return j - 3;
        } else if (grid[i][j] == -1 && grid[i + 1][j] == -1 &&
                   grid[i + 2][j] == 0 && i < 4) {
          return j;
        } else if (grid[i][j] == -1 && grid[i][j + 1] == -1 &&
                   grid[i][j + 2] == 0 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == -1 && grid[i + 1][j + 1] == -1 &&
                   grid[i = 2][j + 2] == 0 && i < 4 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == -1 && grid[i - 1][j - 1] == -1 &&
                   grid[i - 2][j - 2] == 0 && i > 1 && j > 1) {
          return j - 2;
        } else if (grid[i][j] == -1 && grid[i - 1][j + 1] == -1 &&
                   grid[i - 2][j + 2] == 0 && i > 1 && j < 5) {
          return j + 2;
        } else if (grid[i][j] == -1 && grid[i + 1][j - 1] == -1 &&
                   grid[i + 2][j - 2] == 0 && i < 4 && j > 1) {
          return j - 2;
        }
      }
    }
    for (t = 0; t < 6; t++)
      if (grid[0][t] == 0)
        return t;
    return 0;
  }
}


x86 assembly (clang, -O0):
<bot>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x10(%rbp)
mov    %esi,-0x14(%rbp)
cmpl   $0x1,-0x14(%rbp)
jne    1d28 <bot+0xc28>
movl   $0x0,-0x18(%rbp)
cmpl   $0x6,-0x18(%rbp)
jge    1cdb <bot+0xbdb>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x7,-0x1c(%rbp)
jge    1cc8 <bot+0xbc8>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    11cf <bot+0xcf>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    11cf <bot+0xcf>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    11cf <bot+0xcf>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    11cf <bot+0xcf>
cmpl   $0x3,-0x18(%rbp)
jge    11cf <bot+0xcf>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    126a <bot+0x16a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    126a <bot+0x16a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    126a <bot+0x16a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    126a <bot+0x16a>
cmpl   $0x4,-0x1c(%rbp)
jge    126a <bot+0x16a>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    131e <bot+0x21e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    131e <bot+0x21e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    131e <bot+0x21e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    131e <bot+0x21e>
cmpl   $0x3,-0x18(%rbp)
jge    131e <bot+0x21e>
cmpl   $0x4,-0x1c(%rbp)
jge    131e <bot+0x21e>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    13d2 <bot+0x2d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    13d2 <bot+0x2d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    13d2 <bot+0x2d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    13d2 <bot+0x2d2>
cmpl   $0x2,-0x18(%rbp)
jle    13d2 <bot+0x2d2>
cmpl   $0x2,-0x1c(%rbp)
jle    13d2 <bot+0x2d2>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1486 <bot+0x386>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1486 <bot+0x386>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1486 <bot+0x386>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1486 <bot+0x386>
cmpl   $0x2,-0x18(%rbp)
jle    1486 <bot+0x386>
cmpl   $0x4,-0x1c(%rbp)
jge    1486 <bot+0x386>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    153a <bot+0x43a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    153a <bot+0x43a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    153a <bot+0x43a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    153a <bot+0x43a>
cmpl   $0x3,-0x18(%rbp)
jge    153a <bot+0x43a>
cmpl   $0x2,-0x1c(%rbp)
jle    153a <bot+0x43a>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    15d2 <bot+0x4d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    15d2 <bot+0x4d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    15d2 <bot+0x4d2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    15d2 <bot+0x4d2>
cmpl   $0x3,-0x18(%rbp)
jge    15d2 <bot+0x4d2>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    166d <bot+0x56d>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    166d <bot+0x56d>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    166d <bot+0x56d>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    166d <bot+0x56d>
cmpl   $0x4,-0x1c(%rbp)
jge    166d <bot+0x56d>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1721 <bot+0x621>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1721 <bot+0x621>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1721 <bot+0x621>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1721 <bot+0x621>
cmpl   $0x3,-0x18(%rbp)
jge    1721 <bot+0x621>
cmpl   $0x4,-0x1c(%rbp)
jge    1721 <bot+0x621>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    17d5 <bot+0x6d5>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    17d5 <bot+0x6d5>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    17d5 <bot+0x6d5>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    17d5 <bot+0x6d5>
cmpl   $0x2,-0x18(%rbp)
jle    17d5 <bot+0x6d5>
cmpl   $0x2,-0x1c(%rbp)
jle    17d5 <bot+0x6d5>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1889 <bot+0x789>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1889 <bot+0x789>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1889 <bot+0x789>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1889 <bot+0x789>
cmpl   $0x2,-0x18(%rbp)
jle    1889 <bot+0x789>
cmpl   $0x4,-0x1c(%rbp)
jge    1889 <bot+0x789>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    193d <bot+0x83d>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    193d <bot+0x83d>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    193d <bot+0x83d>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    193d <bot+0x83d>
cmpl   $0x3,-0x18(%rbp)
jge    193d <bot+0x83d>
cmpl   $0x2,-0x1c(%rbp)
jle    193d <bot+0x83d>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    19b3 <bot+0x8b3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    19b3 <bot+0x8b3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    19b3 <bot+0x8b3>
cmpl   $0x4,-0x18(%rbp)
jge    19b3 <bot+0x8b3>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1a2c <bot+0x92c>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1a2c <bot+0x92c>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1a2c <bot+0x92c>
cmpl   $0x5,-0x1c(%rbp)
jge    1a2c <bot+0x92c>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1ab9 <bot+0x9b9>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1ab9 <bot+0x9b9>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1ab9 <bot+0x9b9>
cmpl   $0x4,-0x18(%rbp)
jge    1ab9 <bot+0x9b9>
cmpl   $0x5,-0x1c(%rbp)
jge    1ab9 <bot+0x9b9>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1b46 <bot+0xa46>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1b46 <bot+0xa46>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1b46 <bot+0xa46>
cmpl   $0x1,-0x1c(%rbp)
jle    1b46 <bot+0xa46>
cmpl   $0x1,-0x18(%rbp)
jle    1b46 <bot+0xa46>
mov    -0x1c(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1bd3 <bot+0xad3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1bd3 <bot+0xad3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1bd3 <bot+0xad3>
cmpl   $0x1,-0x18(%rbp)
jle    1bd3 <bot+0xad3>
cmpl   $0x5,-0x1c(%rbp)
jge    1bd3 <bot+0xad3>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1c60 <bot+0xb60>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    1c60 <bot+0xb60>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1c60 <bot+0xb60>
cmpl   $0x4,-0x18(%rbp)
jge    1c60 <bot+0xb60>
cmpl   $0x1,-0x1c(%rbp)
jle    1c60 <bot+0xb60>
mov    -0x1c(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
jmp    1c65 <bot+0xb65>
jmp    1c6a <bot+0xb6a>
jmp    1c6f <bot+0xb6f>
jmp    1c74 <bot+0xb74>
jmp    1c79 <bot+0xb79>
jmp    1c7e <bot+0xb7e>
jmp    1c83 <bot+0xb83>
jmp    1c88 <bot+0xb88>
jmp    1c8d <bot+0xb8d>
jmp    1c92 <bot+0xb92>
jmp    1c97 <bot+0xb97>
jmp    1c9c <bot+0xb9c>
jmp    1ca1 <bot+0xba1>
jmp    1ca6 <bot+0xba6>
jmp    1cab <bot+0xbab>
jmp    1cb0 <bot+0xbb0>
jmp    1cb5 <bot+0xbb5>
jmp    1cba <bot+0xbba>
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    112d <bot+0x2d>
jmp    1ccd <bot+0xbcd>
mov    -0x18(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x18(%rbp)
jmp    111c <bot+0x1c>
movl   $0x0,-0x20(%rbp)
cmpl   $0x6,-0x20(%rbp)
jge    1d1c <bot+0xc1c>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1d09 <bot+0xc09>
mov    -0x20(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
jmp    1d0e <bot+0xc0e>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1ce2 <bot+0xbe2>
movl   $0x0,-0x4(%rbp)
jmp    2942 <bot+0x1842>
cmpl   $0xffffffff,-0x14(%rbp)
jne    293d <bot+0x183d>
movl   $0x0,-0x18(%rbp)
cmpl   $0x6,-0x18(%rbp)
jge    28f0 <bot+0x17f0>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x7,-0x1c(%rbp)
jge    28dd <bot+0x17dd>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1dec <bot+0xcec>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1dec <bot+0xcec>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1dec <bot+0xcec>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1dec <bot+0xcec>
cmpl   $0x3,-0x18(%rbp)
jge    1dec <bot+0xcec>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1e87 <bot+0xd87>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1e87 <bot+0xd87>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1e87 <bot+0xd87>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1e87 <bot+0xd87>
cmpl   $0x4,-0x1c(%rbp)
jge    1e87 <bot+0xd87>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1f3b <bot+0xe3b>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1f3b <bot+0xe3b>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1f3b <bot+0xe3b>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1f3b <bot+0xe3b>
cmpl   $0x3,-0x18(%rbp)
jge    1f3b <bot+0xe3b>
cmpl   $0x4,-0x1c(%rbp)
jge    1f3b <bot+0xe3b>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1fef <bot+0xeef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1fef <bot+0xeef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    1fef <bot+0xeef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1fef <bot+0xeef>
cmpl   $0x2,-0x18(%rbp)
jle    1fef <bot+0xeef>
cmpl   $0x2,-0x1c(%rbp)
jle    1fef <bot+0xeef>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    20a3 <bot+0xfa3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    20a3 <bot+0xfa3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    20a3 <bot+0xfa3>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    20a3 <bot+0xfa3>
cmpl   $0x2,-0x18(%rbp)
jle    20a3 <bot+0xfa3>
cmpl   $0x4,-0x1c(%rbp)
jge    20a3 <bot+0xfa3>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2157 <bot+0x1057>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2157 <bot+0x1057>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2157 <bot+0x1057>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    2157 <bot+0x1057>
cmpl   $0x3,-0x18(%rbp)
jge    2157 <bot+0x1057>
cmpl   $0x2,-0x1c(%rbp)
jle    2157 <bot+0x1057>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    21ef <bot+0x10ef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    21ef <bot+0x10ef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    21ef <bot+0x10ef>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    21ef <bot+0x10ef>
cmpl   $0x3,-0x18(%rbp)
jge    21ef <bot+0x10ef>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    228a <bot+0x118a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    228a <bot+0x118a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    228a <bot+0x118a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    228a <bot+0x118a>
cmpl   $0x4,-0x1c(%rbp)
jge    228a <bot+0x118a>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    233e <bot+0x123e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    233e <bot+0x123e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    233e <bot+0x123e>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    233e <bot+0x123e>
cmpl   $0x3,-0x18(%rbp)
jge    233e <bot+0x123e>
cmpl   $0x4,-0x1c(%rbp)
jge    233e <bot+0x123e>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    23f2 <bot+0x12f2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    23f2 <bot+0x12f2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    23f2 <bot+0x12f2>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    23f2 <bot+0x12f2>
cmpl   $0x2,-0x18(%rbp)
jle    23f2 <bot+0x12f2>
cmpl   $0x2,-0x1c(%rbp)
jle    23f2 <bot+0x12f2>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    24a6 <bot+0x13a6>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    24a6 <bot+0x13a6>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    24a6 <bot+0x13a6>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    24a6 <bot+0x13a6>
cmpl   $0x2,-0x18(%rbp)
jle    24a6 <bot+0x13a6>
cmpl   $0x4,-0x1c(%rbp)
jge    24a6 <bot+0x13a6>
mov    -0x1c(%rbp),%eax
add    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    255a <bot+0x145a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    255a <bot+0x145a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x1,(%rax,%rcx,4)
jne    255a <bot+0x145a>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    255a <bot+0x145a>
cmpl   $0x3,-0x18(%rbp)
jge    255a <bot+0x145a>
cmpl   $0x2,-0x1c(%rbp)
jle    255a <bot+0x145a>
mov    -0x1c(%rbp),%eax
sub    $0x3,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    25d0 <bot+0x14d0>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    25d0 <bot+0x14d0>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    25d0 <bot+0x14d0>
cmpl   $0x4,-0x18(%rbp)
jge    25d0 <bot+0x14d0>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2649 <bot+0x1549>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2649 <bot+0x1549>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    2649 <bot+0x1549>
cmpl   $0x5,-0x1c(%rbp)
jge    2649 <bot+0x1549>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    26ce <bot+0x15ce>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    26ce <bot+0x15ce>
mov    -0x10(%rbp),%rax
movl   $0x2,-0x18(%rbp)
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,0x38(%rax,%rcx,4)
jne    26ce <bot+0x15ce>
cmpl   $0x4,-0x18(%rbp)
jge    26ce <bot+0x15ce>
cmpl   $0x5,-0x1c(%rbp)
jge    26ce <bot+0x15ce>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    275b <bot+0x165b>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    275b <bot+0x165b>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    275b <bot+0x165b>
cmpl   $0x1,-0x18(%rbp)
jle    275b <bot+0x165b>
cmpl   $0x1,-0x1c(%rbp)
jle    275b <bot+0x165b>
mov    -0x1c(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    27e8 <bot+0x16e8>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    27e8 <bot+0x16e8>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    27e8 <bot+0x16e8>
cmpl   $0x1,-0x18(%rbp)
jle    27e8 <bot+0x16e8>
cmpl   $0x5,-0x1c(%rbp)
jge    27e8 <bot+0x16e8>
mov    -0x1c(%rbp),%eax
add    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2875 <bot+0x1775>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2875 <bot+0x1775>
mov    -0x10(%rbp),%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x1c(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    2875 <bot+0x1775>
cmpl   $0x4,-0x18(%rbp)
jge    2875 <bot+0x1775>
cmpl   $0x1,-0x1c(%rbp)
jle    2875 <bot+0x1775>
mov    -0x1c(%rbp),%eax
sub    $0x2,%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
jmp    287a <bot+0x177a>
jmp    287f <bot+0x177f>
jmp    2884 <bot+0x1784>
jmp    2889 <bot+0x1789>
jmp    288e <bot+0x178e>
jmp    2893 <bot+0x1793>
jmp    2898 <bot+0x1798>
jmp    289d <bot+0x179d>
jmp    28a2 <bot+0x17a2>
jmp    28a7 <bot+0x17a7>
jmp    28ac <bot+0x17ac>
jmp    28b1 <bot+0x17b1>
jmp    28b6 <bot+0x17b6>
jmp    28bb <bot+0x17bb>
jmp    28c0 <bot+0x17c0>
jmp    28c5 <bot+0x17c5>
jmp    28ca <bot+0x17ca>
jmp    28cf <bot+0x17cf>
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    1d4a <bot+0xc4a>
jmp    28e2 <bot+0x17e2>
mov    -0x18(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x18(%rbp)
jmp    1d39 <bot+0xc39>
movl   $0x0,-0x20(%rbp)
cmpl   $0x6,-0x20(%rbp)
jge    2931 <bot+0x1831>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    291e <bot+0x181e>
mov    -0x20(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2942 <bot+0x1842>
jmp    2923 <bot+0x1823>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    28f7 <bot+0x17f7>
movl   $0x0,-0x4(%rbp)
jmp    2942 <bot+0x1842>
jmp    2942 <bot+0x1842>
mov    -0x4(%rbp),%eax
pop    %rbp
ret

x86 assembly (clang, -O2):
<bot>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
cmp    $0x1,%esi
je     177c <bot+0x67c>
cmp    $0xffffffff,%esi
jne    1d3a <bot+0xc3a>
xor    %eax,%eax
xor    %r14d,%r14d
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
movslq %r14d,%rdx
lea    (%rdx,%rdx,8),%rcx
lea    (%rcx,%rcx,2),%rbx
add    %rdx,%rbx
add    %rdi,%rbx
mov    (%rbx,%rax,4),%ecx
cmp    $0x1,%ecx
je     14d0 <bot+0x3d0>
cmp    $0xffffffff,%ecx
jne    1710 <bot+0x610>
lea    0x1(%rdx),%rcx
lea    (%rcx,%rcx,8),%rsi
lea    (%rsi,%rsi,2),%r12
lea    (%rdx,%r12,1),%rsi
add    $0x1,%rsi
add    %rdi,%rsi
mov    (%rsi,%rax,4),%r8d
cmp    $0xffffffff,%r8d
jne    11c0 <bot+0xc0>
lea    (%rdx,%rdx,8),%rsi
add    $0x12,%rsi
lea    (%rsi,%rsi,2),%rsi
add    %rdx,%rsi
add    $0x2,%rsi
add    %rdi,%rsi
cmpl   $0xffffffff,(%rsi,%rax,4)
jne    11c0 <bot+0xc0>
lea    (%rdx,%rdx,8),%rsi
add    $0x1b,%rsi
lea    (%rsi,%rsi,2),%rsi
add    %rdx,%rsi
add    $0x3,%rsi
add    %rdi,%rsi
cmpl   $0x0,(%rsi,%rax,4)
jne    11c0 <bot+0xc0>
cmp    $0x3,%r14d
jl     1d3a <bot+0xc3a>
nopl   0x0(%rax)
mov    0x4(%rbx,%rax,4),%r9d
cmp    $0xffffffff,%r9d
jne    11f0 <bot+0xf0>
cmpl   $0xffffffff,0x8(%rbx,%rax,4)
jne    11f0 <bot+0xf0>
cmpl   $0x0,0xc(%rbx,%rax,4)
jne    11f0 <bot+0xf0>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    0x1(%rax),%r15
add    %rcx,%r12
add    %rdi,%r12
mov    (%r12,%r15,4),%r10d
cmp    $0xffffffff,%r10d
jne    1250 <bot+0x150>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,0x8(%rcx,%rax,4)
jne    1250 <bot+0x150>
lea    (%rdx,%rdx,8),%rcx
add    $0x1b,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x3,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1250 <bot+0x150>
cmp    $0x2,%r14d
jg     1250 <bot+0x150>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
xchg   %ax,%ax
lea    -0x1(%rdx),%rsi
lea    (%rsi,%rsi,8),%rcx
lea    (%rcx,%rcx,2),%rcx
lea    (%rdx,%rcx,1),%rbp
add    $0xffffffffffffffff,%rbp
add    %rdi,%rbp
cmpl   $0xffffffff,-0x4(%rbp,%rax,4)
jne    12c0 <bot+0x1c0>
lea    (%rdx,%rdx,8),%rbp
add    $0xffffffffffffffee,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0xfffffffffffffffe,%rbp
add    %rdi,%rbp
cmpl   $0xffffffff,-0x8(%rbp,%rax,4)
jne    12c0 <bot+0x1c0>
lea    (%rdx,%rdx,8),%rbp
add    $0xffffffffffffffe5,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0xfffffffffffffffd,%rbp
add    %rdi,%rbp
cmpl   $0x0,-0xc(%rbp,%rax,4)
jne    12c0 <bot+0x1c0>
cmp    $0x3,%r14d
jl     12c0 <bot+0x1c0>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
nopw   0x0(%rax,%rax,1)
add    %rsi,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,(%rcx,%r15,4)
jne    1320 <bot+0x220>
lea    (%rdx,%rdx,8),%rcx
add    $0xffffffffffffffee,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0xfffffffffffffffe,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,0x8(%rcx,%rax,4)
jne    1320 <bot+0x220>
lea    (%rdx,%rdx,8),%rcx
add    $0xffffffffffffffe5,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0xfffffffffffffffd,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1320 <bot+0x220>
cmp    $0x3,%r14d
jl     1320 <bot+0x220>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nopw   0x0(%rax,%rax,1)
lea    -0x1(%rax),%r11
cmpl   $0xffffffff,(%r12,%r11,4)
jne    1380 <bot+0x280>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,-0x8(%rcx,%rax,4)
jne    1380 <bot+0x280>
lea    (%rdx,%rdx,8),%rcx
add    $0x1b,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x3,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    1380 <bot+0x280>
cmp    $0x2,%r14d
jg     1380 <bot+0x280>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
cs nopw 0x0(%rax,%rax,1)
nop
cmp    $0xffffffff,%r8d
jne    13b0 <bot+0x2b0>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%rax,4)
jne    13b0 <bot+0x2b0>
cmp    $0x4,%r14d
jl     1d3a <bot+0xc3a>
nopl   0x0(%rax)
cmp    $0xffffffff,%r9d
jne    13d0 <bot+0x2d0>
cmpl   $0x0,0x8(%rbx,%rax,4)
jne    13d0 <bot+0x2d0>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
nopw   0x0(%rax,%rax,1)
cmp    $0xffffffff,%r10d
je     16e5 <bot+0x5e5>
movslq %r14d,%rdx
lea    -0x1(%rdx),%rsi
lea    (%rsi,%rsi,8),%rcx
lea    (%rcx,%rcx,2),%rcx
lea    (%rdx,%rcx,1),%rbp
add    $0xffffffffffffffff,%rbp
add    %rdi,%rbp
cmpl   $0xffffffff,-0x4(%rbp,%rax,4)
jne    1430 <bot+0x330>
lea    (%rdx,%rdx,8),%rbp
add    $0xffffffffffffffee,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0xfffffffffffffffe,%rbp
add    %rdi,%rbp
cmpl   $0x0,-0x8(%rbp,%rax,4)
jne    1430 <bot+0x330>
cmp    $0x2,%r14d
jl     1430 <bot+0x330>
cmp    $0x1,%rax
ja     1d1e <bot+0xc1e>
nopl   0x0(%rax)
add    %rsi,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,0x4(%rcx,%rax,4)
jne    1470 <bot+0x370>
lea    (%rdx,%rdx,8),%rcx
add    $0xffffffffffffffee,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0xfffffffffffffffe,%rcx
add    %rdi,%rcx
cmpl   $0x0,0x8(%rcx,%rax,4)
jne    1470 <bot+0x370>
cmp    $0x2,%r14d
jl     1470 <bot+0x370>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
nopw   0x0(%rax,%rax,1)
lea    (%rdx,%rdx,8),%rcx
add    $0x9,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x1,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,(%rcx,%r11,4)
jne    1717 <bot+0x617>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0x8(%rcx,%rax,4)
jne    1717 <bot+0x617>
cmp    $0x3,%r14d
jg     1717 <bot+0x617>
cmp    $0x1,%rax
jbe    1717 <bot+0x617>
jmp    1d1e <bot+0xc1e>
nopl   0x0(%rax,%rax,1)
lea    0x1(%rdx),%rcx
lea    (%rcx,%rcx,8),%rsi
lea    (%rsi,%rsi,2),%rsi
lea    (%rdx,%rsi,1),%rbp
add    $0x1,%rbp
add    %rdi,%rbp
cmpl   $0x1,0x0(%rbp,%rax,4)
jne    1540 <bot+0x440>
lea    (%rdx,%rdx,8),%rbp
add    $0x12,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0x2,%rbp
add    %rdi,%rbp
cmpl   $0x1,0x0(%rbp,%rax,4)
jne    1540 <bot+0x440>
lea    (%rdx,%rdx,8),%rbp
add    $0x1b,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0x3,%rbp
add    %rdi,%rbp
cmpl   $0x0,0x0(%rbp,%rax,4)
jne    1540 <bot+0x440>
cmp    $0x3,%r14d
jl     1d3a <bot+0xc3a>
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
cmpl   $0x1,0x4(%rbx,%rax,4)
jne    1560 <bot+0x460>
cmpl   $0x1,0x8(%rbx,%rax,4)
jne    1560 <bot+0x460>
cmpl   $0x0,0xc(%rbx,%rax,4)
jne    1560 <bot+0x460>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nop
lea    0x1(%rax),%r8
add    %rcx,%rsi
add    %rdi,%rsi
cmpl   $0x1,(%rsi,%r8,4)
jne    15c0 <bot+0x4c0>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0x1,0x8(%rcx,%rax,4)
jne    15c0 <bot+0x4c0>
lea    (%rdx,%rdx,8),%rcx
add    $0x1b,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x3,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    15c0 <bot+0x4c0>
cmp    $0x2,%r14d
jg     15c0 <bot+0x4c0>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nopl   0x0(%rax,%rax,1)
lea    -0x1(%rdx),%rbx
lea    (%rbx,%rbx,8),%rcx
lea    (%rcx,%rcx,2),%rcx
lea    (%rdx,%rcx,1),%rbp
add    $0xffffffffffffffff,%rbp
add    %rdi,%rbp
cmpl   $0x1,-0x4(%rbp,%rax,4)
jne    1630 <bot+0x530>
lea    (%rdx,%rdx,8),%rbp
add    $0xffffffffffffffee,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0xfffffffffffffffe,%rbp
add    %rdi,%rbp
cmpl   $0x1,-0x8(%rbp,%rax,4)
jne    1630 <bot+0x530>
lea    (%rdx,%rdx,8),%rbp
add    $0xffffffffffffffe5,%rbp
lea    0x0(%rbp,%rbp,2),%rbp
add    %rdx,%rbp
add    $0xfffffffffffffffd,%rbp
add    %rdi,%rbp
cmpl   $0x0,-0xc(%rbp,%rax,4)
jne    1630 <bot+0x530>
cmp    $0x3,%r14d
jl     1630 <bot+0x530>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
nopw   0x0(%rax,%rax,1)
add    %rbx,%rcx
add    %rdi,%rcx
cmpl   $0x1,(%rcx,%r8,4)
jne    1690 <bot+0x590>
lea    (%rdx,%rdx,8),%rcx
add    $0xffffffffffffffee,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0xfffffffffffffffe,%rcx
add    %rdi,%rcx
cmpl   $0x1,0x8(%rcx,%rax,4)
jne    1690 <bot+0x590>
lea    (%rdx,%rdx,8),%rcx
add    $0xffffffffffffffe5,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0xfffffffffffffffd,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1690 <bot+0x590>
cmp    $0x3,%r14d
jl     1690 <bot+0x590>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nopw   0x0(%rax,%rax,1)
lea    -0x1(%rax),%rcx
cmpl   $0x1,(%rsi,%rcx,4)
jne    1710 <bot+0x610>
lea    (%rdx,%rdx,8),%rcx
add    $0x12,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x2,%rcx
add    %rdi,%rcx
cmpl   $0x1,-0x8(%rcx,%rax,4)
jne    1710 <bot+0x610>
lea    (%rdx,%rdx,8),%rcx
add    $0x1b,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    $0x3,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    1710 <bot+0x610>
cmp    $0x2,%r14d
jg     1710 <bot+0x610>
cmp    $0x2,%rax
jbe    1710 <bot+0x610>
jmp    1d19 <bot+0xc19>
cmpl   $0x0,0x40(%rdi,%rax,4)
jne    16f6 <bot+0x5f6>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
mov    $0x2,%r14d
cmpl   $0xffffffff,0x38(%rdi,%rax,4)
je     13da <bot+0x2da>
nopw   0x0(%rax,%rax,1)
add    $0x1,%rax
mov    %rax,%r15
mov    %r15,%rax
cmp    $0x7,%r15
jne    1130 <bot+0x30>
lea    0x1(%r14),%ecx
mov    $0x0,%eax
cmp    $0x5,%r14d
mov    %ecx,%r14d
jl     1130 <bot+0x30>
cmpl   $0x0,(%rdi)
je     1d23 <bot+0xc23>
cmpl   $0x0,0x4(%rdi)
je     1d27 <bot+0xc27>
cmpl   $0x0,0x8(%rdi)
je     1d2e <bot+0xc2e>
cmpl   $0x0,0xc(%rdi)
je     1d35 <bot+0xc35>
cmpl   $0x0,0x10(%rdi)
je     1d08 <bot+0xc08>
xor    %eax,%eax
cmpl   $0x0,0x14(%rdi)
sete   %al
lea    (%rax,%rax,4),%eax
jmp    1d3a <bot+0xc3a>
xor    %r10d,%r10d
lea    0x1(%r10),%r8
lea    0x2(%r10),%r12
lea    0x3(%r10),%rax
mov    %rax,-0x28(%rsp)
lea    -0x1(%r10),%r11
lea    -0x2(%r10),%r14
lea    -0x3(%r10),%rax
mov    %rax,-0x20(%rsp)
xor    %eax,%eax
mov    %r8,-0x8(%rsp)
mov    %r11,-0x10(%rsp)
jmp    17c4 <bot+0x6c4>
nop
add    $0x1,%rax
mov    %rax,%rbx
mov    %rbx,%rax
cmp    $0x7,%rbx
je     1cda <bot+0xbda>
lea    (%r10,%r10,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %r10,%rdx
add    %rdi,%rdx
mov    (%rdx,%rax,4),%esi
cmp    $0xffffffff,%esi
je     1af0 <bot+0x9f0>
cmp    $0x1,%esi
jne    17b0 <bot+0x6b0>
lea    (%r8,%r8,8),%rsi
lea    (%rsi,%rsi,2),%rbp
add    %r8,%rbp
add    %rdi,%rbp
mov    0x0(%rbp,%rax,4),%r15d
cmp    $0x1,%r15d
jne    1840 <bot+0x740>
lea    (%r12,%r12,8),%rsi
lea    (%rsi,%rsi,2),%rsi
add    %r12,%rsi
add    %rdi,%rsi
cmpl   $0x1,(%rsi,%rax,4)
jne    1840 <bot+0x740>
mov    -0x28(%rsp),%rcx
lea    (%rcx,%rcx,8),%rsi
lea    (%rsi,%rsi,2),%rsi
add    %rcx,%rsi
add    %rdi,%rsi
cmpl   $0x0,(%rsi,%rax,4)
jne    1840 <bot+0x740>
cmp    $0x3,%r10
jb     1d3a <bot+0xc3a>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
mov    0x4(%rdx,%rax,4),%r13d
cmp    $0x1,%r13d
jne    1870 <bot+0x770>
cmpl   $0x1,0x8(%rdx,%rax,4)
jne    1870 <bot+0x770>
cmpl   $0x0,0xc(%rdx,%rax,4)
jne    1870 <bot+0x770>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    0x1(%rax),%rbx
mov    0x0(%rbp,%rbx,4),%r9d
cmp    $0x1,%r9d
jne    18c0 <bot+0x7c0>
lea    (%r12,%r12,8),%rsi
lea    (%rsi,%rsi,2),%rsi
add    %r12,%rsi
add    %rdi,%rsi
cmpl   $0x1,0x8(%rsi,%rax,4)
jne    18c0 <bot+0x7c0>
mov    -0x28(%rsp),%rcx
lea    (%rcx,%rcx,8),%rsi
lea    (%rsi,%rsi,2),%rsi
add    %rcx,%rsi
add    %rdi,%rsi
cmpl   $0x0,0xc(%rsi,%rax,4)
jne    18c0 <bot+0x7c0>
cmp    $0x2,%r10
ja     18c0 <bot+0x7c0>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
xchg   %ax,%ax
lea    (%r11,%r11,8),%rsi
lea    (%rsi,%rsi,2),%rsi
add    %r11,%rsi
add    %rdi,%rsi
mov    -0x4(%rsi,%rax,4),%r11d
cmp    $0x1,%r11d
jne    1940 <bot+0x840>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0x1,-0x8(%rcx,%rax,4)
jne    1940 <bot+0x840>
mov    %r9d,-0x14(%rsp)
mov    %r13d,%r9d
mov    %r12,%r13
mov    %r15d,%r12d
mov    %r14,%r15
mov    -0x20(%rsp),%r14
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
mov    %r15,%r14
mov    %r12d,%r15d
mov    %r13,%r12
mov    %r9d,%r13d
mov    -0x14(%rsp),%r9d
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    1940 <bot+0x840>
cmp    $0x3,%r10
jb     1940 <bot+0x840>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
nopw   0x0(%rax,%rax,1)
mov    (%rsi,%rbx,4),%r8d
cmp    $0x1,%r8d
jne    1990 <bot+0x890>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0x1,0x8(%rcx,%rax,4)
jne    1990 <bot+0x890>
mov    -0x20(%rsp),%rsi
lea    (%rsi,%rsi,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rsi,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1990 <bot+0x890>
cmp    $0x3,%r10
jb     1990 <bot+0x890>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nopl   0x0(%rax)
lea    -0x1(%rax),%rcx
mov    0x0(%rbp,%rcx,4),%ebp
cmp    $0x1,%ebp
jne    19e0 <bot+0x8e0>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0x1,-0x8(%rcx,%rax,4)
jne    19e0 <bot+0x8e0>
mov    -0x28(%rsp),%rsi
lea    (%rsi,%rsi,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rsi,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    19e0 <bot+0x8e0>
cmp    $0x2,%r10
ja     19e0 <bot+0x8e0>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
nopl   0x0(%rax)
cmp    $0x1,%r15d
jne    1a04 <bot+0x904>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%rax,4)
jne    1a04 <bot+0x904>
cmp    $0x4,%r10
jb     1d3a <bot+0xc3a>
cmp    $0x1,%r13d
jne    1a1b <bot+0x91b>
cmpl   $0x0,0x8(%rdx,%rax,4)
jne    1a1b <bot+0x91b>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
cmp    $0x1,%r9d
jne    1a46 <bot+0x946>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0x0,0x8(%rcx,%rax,4)
jne    1a46 <bot+0x946>
cmp    $0x3,%r10
ja     1a46 <bot+0x946>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
cmp    $0x1,%r11d
jne    1a71 <bot+0x971>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0x8(%rcx,%rax,4)
jne    1a71 <bot+0x971>
cmp    $0x2,%rax
jb     1a71 <bot+0x971>
cmp    $0x1,%r10
ja     1d1e <bot+0xc1e>
cmp    $0x1,%r8d
jne    1a9c <bot+0x99c>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0x0,0x8(%rcx,%rax,4)
jne    1a9c <bot+0x99c>
cmp    $0x2,%r10
jb     1a9c <bot+0x99c>
cmp    $0x5,%rax
jb     1d0f <bot+0xc0f>
cmp    $0x1,%ebp
jne    1ccb <bot+0xbcb>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0x8(%rcx,%rax,4)
mov    -0x8(%rsp),%r8
mov    -0x10(%rsp),%r11
jne    17b7 <bot+0x6b7>
cmp    $0x3,%r10
ja     17b7 <bot+0x6b7>
cmp    $0x1,%rax
jbe    17b7 <bot+0x6b7>
jmp    1d1e <bot+0xc1e>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
lea    (%r8,%r8,8),%rcx
lea    (%rcx,%rcx,2),%rsi
add    %r8,%rsi
add    %rdi,%rsi
cmpl   $0xffffffff,(%rsi,%rax,4)
jne    1b50 <bot+0xa50>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,(%rcx,%rax,4)
jne    1b50 <bot+0xa50>
mov    -0x28(%rsp),%rbp
lea    0x0(,%rbp,8),%rcx
add    %rbp,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rbp,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%rax,4)
jne    1b50 <bot+0xa50>
cmp    $0x3,%r10
jb     1d3a <bot+0xc3a>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
cmpl   $0xffffffff,0x4(%rdx,%rax,4)
jne    1b70 <bot+0xa70>
cmpl   $0xffffffff,0x8(%rdx,%rax,4)
jne    1b70 <bot+0xa70>
cmpl   $0x0,0xc(%rdx,%rax,4)
jne    1b70 <bot+0xa70>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nop
lea    0x1(%rax),%rbx
cmpl   $0xffffffff,(%rsi,%rbx,4)
jne    1bc0 <bot+0xac0>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,0x8(%rcx,%rax,4)
jne    1bc0 <bot+0xac0>
mov    -0x28(%rsp),%rdx
lea    (%rdx,%rdx,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1bc0 <bot+0xac0>
cmp    $0x2,%r10
ja     1bc0 <bot+0xac0>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
nopl   0x0(%rax)
lea    (%r11,%r11,8),%rcx
lea    (%rcx,%rcx,2),%rdx
add    %r11,%rdx
add    %rdi,%rdx
cmpl   $0xffffffff,-0x4(%rdx,%rax,4)
jne    1c20 <bot+0xb20>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,-0x8(%rcx,%rax,4)
jne    1c20 <bot+0xb20>
mov    -0x20(%rsp),%rbp
lea    0x0(,%rbp,8),%rcx
add    %rbp,%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rbp,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    1c20 <bot+0xb20>
cmp    $0x3,%r10
jb     1c20 <bot+0xb20>
cmp    $0x2,%rax
ja     1d19 <bot+0xc19>
nopl   0x0(%rax,%rax,1)
cmpl   $0xffffffff,(%rdx,%rbx,4)
jne    1c70 <bot+0xb70>
lea    (%r14,%r14,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r14,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,0x8(%rcx,%rax,4)
jne    1c70 <bot+0xb70>
mov    -0x20(%rsp),%rdx
lea    (%rdx,%rdx,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    %rdi,%rcx
cmpl   $0x0,0xc(%rcx,%rax,4)
jne    1c70 <bot+0xb70>
cmp    $0x3,%r10
jb     1c70 <bot+0xb70>
cmp    $0x4,%rax
jb     1d14 <bot+0xc14>
cs nopw 0x0(%rax,%rax,1)
nop
lea    -0x1(%rax),%rcx
cmpl   $0xffffffff,(%rsi,%rcx,4)
jne    17b7 <bot+0x6b7>
lea    (%r12,%r12,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r12,%rcx
add    %rdi,%rcx
cmpl   $0xffffffff,-0x8(%rcx,%rax,4)
jne    17b7 <bot+0x6b7>
mov    -0x28(%rsp),%rdx
lea    (%rdx,%rdx,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %rdx,%rcx
add    %rdi,%rcx
cmpl   $0x0,-0xc(%rcx,%rax,4)
jne    17b7 <bot+0x6b7>
cmp    $0x2,%r10
ja     17b7 <bot+0x6b7>
cmp    $0x2,%rax
jbe    17b7 <bot+0x6b7>
jmp    1d19 <bot+0xc19>
mov    -0x8(%rsp),%r8
mov    -0x10(%rsp),%r11
jmp    17b7 <bot+0x6b7>
mov    %r8,%r10
cmp    $0x6,%r8
jne    177f <bot+0x67f>
cmpl   $0x0,(%rdi)
je     1d23 <bot+0xc23>
cmpl   $0x0,0x4(%rdi)
je     1d27 <bot+0xc27>
cmpl   $0x0,0x8(%rdi)
je     1d2e <bot+0xc2e>
cmpl   $0x0,0xc(%rdi)
je     1d35 <bot+0xc35>
cmpl   $0x0,0x10(%rdi)
jne    176b <bot+0x66b>
mov    $0x4,%eax
jmp    1d3a <bot+0xc3a>
add    $0x2,%eax
jmp    1d3a <bot+0xc3a>
add    $0x3,%eax
jmp    1d3a <bot+0xc3a>
add    $0xfffffffd,%eax
jmp    1d3a <bot+0xc3a>
add    $0xfffffffe,%eax
jmp    1d3a <bot+0xc3a>
xor    %eax,%eax
jmp    1d3a <bot+0xc3a>
mov    $0x1,%eax
jmp    1d3a <bot+0xc3a>
mov    $0x2,%eax
jmp    1d3a <bot+0xc3a>
mov    $0x3,%eax
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

LLVM IR (-O0):
define i32 @bot([7 x i32]* %0, i32 %1) {
%3 = alloca i32
%4 = alloca [7 x i32]*
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
store [7 x i32]* %0, [7 x i32]** %4
store i32 %1, i32* %5
%9 = load i32, i32* %5
%10 = icmp eq i32 %9, 1
br i1 %10, label %11, label %944
11: ; preds = %2
store i32 0, i32* %6
br label %12
12: ; preds = %922, %11
%13 = load i32, i32* %6
%14 = icmp slt i32 %13, 6
br i1 %14, label %15, label %925
15: ; preds = %12
store i32 0, i32* %7
br label %16
16: ; preds = %918, %15
%17 = load i32, i32* %7
%18 = icmp slt i32 %17, 7
br i1 %18, label %19, label %921
19: ; preds = %16
%20 = load [7 x i32]*, [7 x i32]** %4
%21 = load i32, i32* %6
%22 = sext i32 %21 to i64
%23 = getelementptr inbounds [7 x i32], [7 x i32]* %20, i64 %22
%24 = load i32, i32* %7
%25 = sext i32 %24 to i64
%26 = getelementptr inbounds [7 x i32], [7 x i32]* %23, i64 0, i64 %25
%27 = load i32, i32* %26
%28 = icmp eq i32 %27, 1
br i1 %28, label %29, label %67
29: ; preds = %19
%30 = load [7 x i32]*, [7 x i32]** %4
%31 = load i32, i32* %6
%32 = add nsw i32 %31, 1
%33 = sext i32 %32 to i64
%34 = getelementptr inbounds [7 x i32], [7 x i32]* %30, i64 %33
%35 = load i32, i32* %7
%36 = sext i32 %35 to i64
%37 = getelementptr inbounds [7 x i32], [7 x i32]* %34, i64 0, i64 %36
%38 = load i32, i32* %37
%39 = icmp eq i32 %38, 1
br i1 %39, label %40, label %67
40: ; preds = %29
%41 = load [7 x i32]*, [7 x i32]** %4
%42 = load i32, i32* %6
%43 = add nsw i32 %42, 2
%44 = sext i32 %43 to i64
%45 = getelementptr inbounds [7 x i32], [7 x i32]* %41, i64 %44
%46 = load i32, i32* %7
%47 = sext i32 %46 to i64
%48 = getelementptr inbounds [7 x i32], [7 x i32]* %45, i64 0, i64 %47
%49 = load i32, i32* %48
%50 = icmp eq i32 %49, 1
br i1 %50, label %51, label %67
51: ; preds = %40
%52 = load [7 x i32]*, [7 x i32]** %4
%53 = load i32, i32* %6
%54 = add nsw i32 %53, 3
%55 = sext i32 %54 to i64
%56 = getelementptr inbounds [7 x i32], [7 x i32]* %52, i64 %55
%57 = load i32, i32* %7
%58 = sext i32 %57 to i64
%59 = getelementptr inbounds [7 x i32], [7 x i32]* %56, i64 0, i64 %58
%60 = load i32, i32* %59
%61 = icmp eq i32 %60, 0
br i1 %61, label %62, label %67
62: ; preds = %51
%63 = load i32, i32* %6
%64 = icmp slt i32 %63, 3
br i1 %64, label %65, label %67
65: ; preds = %62
%66 = load i32, i32* %7
store i32 %66, i32* %3
br label %1878
67: ; preds = %62, %51, %40, %29, %19
%68 = load [7 x i32]*, [7 x i32]** %4
%69 = load i32, i32* %6
%70 = sext i32 %69 to i64
%71 = getelementptr inbounds [7 x i32], [7 x i32]* %68, i64 %70
%72 = load i32, i32* %7
%73 = sext i32 %72 to i64
%74 = getelementptr inbounds [7 x i32], [7 x i32]* %71, i64 0, i64 %73
%75 = load i32, i32* %74
%76 = icmp eq i32 %75, 1
br i1 %76, label %77, label %116
77: ; preds = %67
%78 = load [7 x i32]*, [7 x i32]** %4
%79 = load i32, i32* %6
%80 = sext i32 %79 to i64
%81 = getelementptr inbounds [7 x i32], [7 x i32]* %78, i64 %80
%82 = load i32, i32* %7
%83 = add nsw i32 %82, 1
%84 = sext i32 %83 to i64
%85 = getelementptr inbounds [7 x i32], [7 x i32]* %81, i64 0, i64 %84
%86 = load i32, i32* %85
%87 = icmp eq i32 %86, 1
br i1 %87, label %88, label %116
88: ; preds = %77
%89 = load [7 x i32]*, [7 x i32]** %4
%90 = load i32, i32* %6
%91 = sext i32 %90 to i64
%92 = getelementptr inbounds [7 x i32], [7 x i32]* %89, i64 %91
%93 = load i32, i32* %7
%94 = add nsw i32 %93, 2
%95 = sext i32 %94 to i64
%96 = getelementptr inbounds [7 x i32], [7 x i32]* %92, i64 0, i64 %95
%97 = load i32, i32* %96
%98 = icmp eq i32 %97, 1
br i1 %98, label %99, label %116
99: ; preds = %88
%100 = load [7 x i32]*, [7 x i32]** %4
%101 = load i32, i32* %6
%102 = sext i32 %101 to i64
%103 = getelementptr inbounds [7 x i32], [7 x i32]* %100, i64 %102
%104 = load i32, i32* %7
%105 = add nsw i32 %104, 3
%106 = sext i32 %105 to i64
%107 = getelementptr inbounds [7 x i32], [7 x i32]* %103, i64 0, i64 %106
%108 = load i32, i32* %107
%109 = icmp eq i32 %108, 0
br i1 %109, label %110, label %116
110: ; preds = %99
%111 = load i32, i32* %7
%112 = icmp slt i32 %111, 4
br i1 %112, label %113, label %116
113: ; preds = %110
%114 = load i32, i32* %7
%115 = add nsw i32 %114, 3
store i32 %115, i32* %3
br label %1878
116: ; preds = %110, %99, %88, %77, %67
%117 = load [7 x i32]*, [7 x i32]** %4
%118 = load i32, i32* %6
%119 = sext i32 %118 to i64
%120 = getelementptr inbounds [7 x i32], [7 x i32]* %117, i64 %119
%121 = load i32, i32* %7
%122 = sext i32 %121 to i64
%123 = getelementptr inbounds [7 x i32], [7 x i32]* %120, i64 0, i64 %122
%124 = load i32, i32* %123
%125 = icmp eq i32 %124, 1
br i1 %125, label %126, label %171
126: ; preds = %116
%127 = load [7 x i32]*, [7 x i32]** %4
%128 = load i32, i32* %6
%129 = add nsw i32 %128, 1
%130 = sext i32 %129 to i64
%131 = getelementptr inbounds [7 x i32], [7 x i32]* %127, i64 %130
%132 = load i32, i32* %7
%133 = add nsw i32 %132, 1
%134 = sext i32 %133 to i64
%135 = getelementptr inbounds [7 x i32], [7 x i32]* %131, i64 0, i64 %134
%136 = load i32, i32* %135
%137 = icmp eq i32 %136, 1
br i1 %137, label %138, label %171
138: ; preds = %126
%139 = load [7 x i32]*, [7 x i32]** %4
%140 = load i32, i32* %6
%141 = add nsw i32 %140, 2
%142 = sext i32 %141 to i64
%143 = getelementptr inbounds [7 x i32], [7 x i32]* %139, i64 %142
%144 = load i32, i32* %7
%145 = add nsw i32 %144, 2
%146 = sext i32 %145 to i64
%147 = getelementptr inbounds [7 x i32], [7 x i32]* %143, i64 0, i64 %146
%148 = load i32, i32* %147
%149 = icmp eq i32 %148, 1
br i1 %149, label %150, label %171
150: ; preds = %138
%151 = load [7 x i32]*, [7 x i32]** %4
%152 = load i32, i32* %6
%153 = add nsw i32 %152, 3
%154 = sext i32 %153 to i64
%155 = getelementptr inbounds [7 x i32], [7 x i32]* %151, i64 %154
%156 = load i32, i32* %7
%157 = add nsw i32 %156, 3
%158 = sext i32 %157 to i64
%159 = getelementptr inbounds [7 x i32], [7 x i32]* %155, i64 0, i64 %158
%160 = load i32, i32* %159
%161 = icmp eq i32 %160, 0
br i1 %161, label %162, label %171
162: ; preds = %150
%163 = load i32, i32* %6
%164 = icmp slt i32 %163, 3
br i1 %164, label %165, label %171
165: ; preds = %162
%166 = load i32, i32* %7
%167 = icmp slt i32 %166, 4
br i1 %167, label %168, label %171
168: ; preds = %165
%169 = load i32, i32* %7
%170 = add nsw i32 %169, 3
store i32 %170, i32* %3
br label %1878
171: ; preds = %165, %162, %150, %138, %126, %116
%172 = load [7 x i32]*, [7 x i32]** %4
%173 = load i32, i32* %6
%174 = sext i32 %173 to i64
%175 = getelementptr inbounds [7 x i32], [7 x i32]* %172, i64 %174
%176 = load i32, i32* %7
%177 = sext i32 %176 to i64
%178 = getelementptr inbounds [7 x i32], [7 x i32]* %175, i64 0, i64 %177
%179 = load i32, i32* %178
%180 = icmp eq i32 %179, 1
br i1 %180, label %181, label %226
181: ; preds = %171
%182 = load [7 x i32]*, [7 x i32]** %4
%183 = load i32, i32* %6
%184 = sub nsw i32 %183, 1
%185 = sext i32 %184 to i64
%186 = getelementptr inbounds [7 x i32], [7 x i32]* %182, i64 %185
%187 = load i32, i32* %7
%188 = sub nsw i32 %187, 1
%189 = sext i32 %188 to i64
%190 = getelementptr inbounds [7 x i32], [7 x i32]* %186, i64 0, i64 %189
%191 = load i32, i32* %190
%192 = icmp eq i32 %191, 1
br i1 %192, label %193, label %226
193: ; preds = %181
%194 = load [7 x i32]*, [7 x i32]** %4
%195 = load i32, i32* %6
%196 = sub nsw i32 %195, 2
%197 = sext i32 %196 to i64
%198 = getelementptr inbounds [7 x i32], [7 x i32]* %194, i64 %197
%199 = load i32, i32* %7
%200 = sub nsw i32 %199, 2
%201 = sext i32 %200 to i64
%202 = getelementptr inbounds [7 x i32], [7 x i32]* %198, i64 0, i64 %201
%203 = load i32, i32* %202
%204 = icmp eq i32 %203, 1
br i1 %204, label %205, label %226
205: ; preds = %193
%206 = load [7 x i32]*, [7 x i32]** %4
%207 = load i32, i32* %6
%208 = sub nsw i32 %207, 3
%209 = sext i32 %208 to i64
%210 = getelementptr inbounds [7 x i32], [7 x i32]* %206, i64 %209
%211 = load i32, i32* %7
%212 = sub nsw i32 %211, 3
%213 = sext i32 %212 to i64
%214 = getelementptr inbounds [7 x i32], [7 x i32]* %210, i64 0, i64 %213
%215 = load i32, i32* %214
%216 = icmp eq i32 %215, 0
br i1 %216, label %217, label %226
217: ; preds = %205
%218 = load i32, i32* %6
%219 = icmp sgt i32 %218, 2
br i1 %219, label %220, label %226
220: ; preds = %217
%221 = load i32, i32* %7
%222 = icmp sgt i32 %221, 2
br i1 %222, label %223, label %226
223: ; preds = %220
%224 = load i32, i32* %7
%225 = sub nsw i32 %224, 3
store i32 %225, i32* %3
br label %1878
226: ; preds = %220, %217, %205, %193, %181, %171
%227 = load [7 x i32]*, [7 x i32]** %4
%228 = load i32, i32* %6
%229 = sext i32 %228 to i64
%230 = getelementptr inbounds [7 x i32], [7 x i32]* %227, i64 %229
%231 = load i32, i32* %7
%232 = sext i32 %231 to i64
%233 = getelementptr inbounds [7 x i32], [7 x i32]* %230, i64 0, i64 %232
%234 = load i32, i32* %233
%235 = icmp eq i32 %234, 1
br i1 %235, label %236, label %281
236: ; preds = %226
%237 = load [7 x i32]*, [7 x i32]** %4
%238 = load i32, i32* %6
%239 = sub nsw i32 %238, 1
%240 = sext i32 %239 to i64
%241 = getelementptr inbounds [7 x i32], [7 x i32]* %237, i64 %240
%242 = load i32, i32* %7
%243 = add nsw i32 %242, 1
%244 = sext i32 %243 to i64
%245 = getelementptr inbounds [7 x i32], [7 x i32]* %241, i64 0, i64 %244
%246 = load i32, i32* %245
%247 = icmp eq i32 %246, 1
br i1 %247, label %248, label %281
248: ; preds = %236
%249 = load [7 x i32]*, [7 x i32]** %4
%250 = load i32, i32* %6
%251 = sub nsw i32 %250, 2
%252 = sext i32 %251 to i64
%253 = getelementptr inbounds [7 x i32], [7 x i32]* %249, i64 %252
%254 = load i32, i32* %7
%255 = add nsw i32 %254, 2
%256 = sext i32 %255 to i64
%257 = getelementptr inbounds [7 x i32], [7 x i32]* %253, i64 0, i64 %256
%258 = load i32, i32* %257
%259 = icmp eq i32 %258, 1
br i1 %259, label %260, label %281
260: ; preds = %248
%261 = load [7 x i32]*, [7 x i32]** %4
%262 = load i32, i32* %6
%263 = sub nsw i32 %262, 3
%264 = sext i32 %263 to i64
%265 = getelementptr inbounds [7 x i32], [7 x i32]* %261, i64 %264
%266 = load i32, i32* %7
%267 = add nsw i32 %266, 3
%268 = sext i32 %267 to i64
%269 = getelementptr inbounds [7 x i32], [7 x i32]* %265, i64 0, i64 %268
%270 = load i32, i32* %269
%271 = icmp eq i32 %270, 0
br i1 %271, label %272, label %281
272: ; preds = %260
%273 = load i32, i32* %6
%274 = icmp sgt i32 %273, 2
br i1 %274, label %275, label %281
275: ; preds = %272
%276 = load i32, i32* %7
%277 = icmp slt i32 %276, 4
br i1 %277, label %278, label %281
278: ; preds = %275
%279 = load i32, i32* %7
%280 = add nsw i32 %279, 3
store i32 %280, i32* %3
br label %1878
281: ; preds = %275, %272, %260, %248, %236, %226
%282 = load [7 x i32]*, [7 x i32]** %4
%283 = load i32, i32* %6
%284 = sext i32 %283 to i64
%285 = getelementptr inbounds [7 x i32], [7 x i32]* %282, i64 %284
%286 = load i32, i32* %7
%287 = sext i32 %286 to i64
%288 = getelementptr inbounds [7 x i32], [7 x i32]* %285, i64 0, i64 %287
%289 = load i32, i32* %288
%290 = icmp eq i32 %289, 1
br i1 %290, label %291, label %336
291: ; preds = %281
%292 = load [7 x i32]*, [7 x i32]** %4
%293 = load i32, i32* %6
%294 = add nsw i32 %293, 1
%295 = sext i32 %294 to i64
%296 = getelementptr inbounds [7 x i32], [7 x i32]* %292, i64 %295
%297 = load i32, i32* %7
%298 = sub nsw i32 %297, 1
%299 = sext i32 %298 to i64
%300 = getelementptr inbounds [7 x i32], [7 x i32]* %296, i64 0, i64 %299
%301 = load i32, i32* %300
%302 = icmp eq i32 %301, 1
br i1 %302, label %303, label %336
303: ; preds = %291
%304 = load [7 x i32]*, [7 x i32]** %4
%305 = load i32, i32* %6
%306 = add nsw i32 %305, 2
%307 = sext i32 %306 to i64
%308 = getelementptr inbounds [7 x i32], [7 x i32]* %304, i64 %307
%309 = load i32, i32* %7
%310 = sub nsw i32 %309, 2
%311 = sext i32 %310 to i64
%312 = getelementptr inbounds [7 x i32], [7 x i32]* %308, i64 0, i64 %311
%313 = load i32, i32* %312
%314 = icmp eq i32 %313, 1
br i1 %314, label %315, label %336
315: ; preds = %303
%316 = load [7 x i32]*, [7 x i32]** %4
%317 = load i32, i32* %6
%318 = add nsw i32 %317, 3
%319 = sext i32 %318 to i64
%320 = getelementptr inbounds [7 x i32], [7 x i32]* %316, i64 %319
%321 = load i32, i32* %7
%322 = sub nsw i32 %321, 3
%323 = sext i32 %322 to i64
%324 = getelementptr inbounds [7 x i32], [7 x i32]* %320, i64 0, i64 %323
%325 = load i32, i32* %324
%326 = icmp eq i32 %325, 0
br i1 %326, label %327, label %336
327: ; preds = %315
%328 = load i32, i32* %6
%329 = icmp slt i32 %328, 3
br i1 %329, label %330, label %336
330: ; preds = %327
%331 = load i32, i32* %7
%332 = icmp sgt i32 %331, 2
br i1 %332, label %333, label %336
333: ; preds = %330
%334 = load i32, i32* %7
%335 = sub nsw i32 %334, 3
store i32 %335, i32* %3
br label %1878
336: ; preds = %330, %327, %315, %303, %291, %281
%337 = load [7 x i32]*, [7 x i32]** %4
%338 = load i32, i32* %6
%339 = sext i32 %338 to i64
%340 = getelementptr inbounds [7 x i32], [7 x i32]* %337, i64 %339
%341 = load i32, i32* %7
%342 = sext i32 %341 to i64
%343 = getelementptr inbounds [7 x i32], [7 x i32]* %340, i64 0, i64 %342
%344 = load i32, i32* %343
%345 = icmp eq i32 %344, -1
br i1 %345, label %346, label %384
346: ; preds = %336
%347 = load [7 x i32]*, [7 x i32]** %4
%348 = load i32, i32* %6
%349 = add nsw i32 %348, 1
%350 = sext i32 %349 to i64
%351 = getelementptr inbounds [7 x i32], [7 x i32]* %347, i64 %350
%352 = load i32, i32* %7
%353 = sext i32 %352 to i64
%354 = getelementptr inbounds [7 x i32], [7 x i32]* %351, i64 0, i64 %353
%355 = load i32, i32* %354
%356 = icmp eq i32 %355, -1
br i1 %356, label %357, label %384
357: ; preds = %346
%358 = load [7 x i32]*, [7 x i32]** %4
%359 = load i32, i32* %6
%360 = add nsw i32 %359, 2
%361 = sext i32 %360 to i64
%362 = getelementptr inbounds [7 x i32], [7 x i32]* %358, i64 %361
%363 = load i32, i32* %7
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds [7 x i32], [7 x i32]* %362, i64 0, i64 %364
%366 = load i32, i32* %365
%367 = icmp eq i32 %366, -1
br i1 %367, label %368, label %384
368: ; preds = %357
%369 = load [7 x i32]*, [7 x i32]** %4
%370 = load i32, i32* %6
%371 = add nsw i32 %370, 3
%372 = sext i32 %371 to i64
%373 = getelementptr inbounds [7 x i32], [7 x i32]* %369, i64 %372
%374 = load i32, i32* %7
%375 = sext i32 %374 to i64
%376 = getelementptr inbounds [7 x i32], [7 x i32]* %373, i64 0, i64 %375
%377 = load i32, i32* %376
%378 = icmp eq i32 %377, 0
br i1 %378, label %379, label %384
379: ; preds = %368
%380 = load i32, i32* %6
%381 = icmp slt i32 %380, 3
br i1 %381, label %382, label %384
382: ; preds = %379
%383 = load i32, i32* %7
store i32 %383, i32* %3
br label %1878
384: ; preds = %379, %368, %357, %346, %336
%385 = load [7 x i32]*, [7 x i32]** %4
%386 = load i32, i32* %6
%387 = sext i32 %386 to i64
%388 = getelementptr inbounds [7 x i32], [7 x i32]* %385, i64 %387
%389 = load i32, i32* %7
%390 = sext i32 %389 to i64
%391 = getelementptr inbounds [7 x i32], [7 x i32]* %388, i64 0, i64 %390
%392 = load i32, i32* %391
%393 = icmp eq i32 %392, -1
br i1 %393, label %394, label %433
394: ; preds = %384
%395 = load [7 x i32]*, [7 x i32]** %4
%396 = load i32, i32* %6
%397 = sext i32 %396 to i64
%398 = getelementptr inbounds [7 x i32], [7 x i32]* %395, i64 %397
%399 = load i32, i32* %7
%400 = add nsw i32 %399, 1
%401 = sext i32 %400 to i64
%402 = getelementptr inbounds [7 x i32], [7 x i32]* %398, i64 0, i64 %401
%403 = load i32, i32* %402
%404 = icmp eq i32 %403, -1
br i1 %404, label %405, label %433
405: ; preds = %394
%406 = load [7 x i32]*, [7 x i32]** %4
%407 = load i32, i32* %6
%408 = sext i32 %407 to i64
%409 = getelementptr inbounds [7 x i32], [7 x i32]* %406, i64 %408
%410 = load i32, i32* %7
%411 = add nsw i32 %410, 2
%412 = sext i32 %411 to i64
%413 = getelementptr inbounds [7 x i32], [7 x i32]* %409, i64 0, i64 %412
%414 = load i32, i32* %413
%415 = icmp eq i32 %414, -1
br i1 %415, label %416, label %433
416: ; preds = %405
%417 = load [7 x i32]*, [7 x i32]** %4
%418 = load i32, i32* %6
%419 = sext i32 %418 to i64
%420 = getelementptr inbounds [7 x i32], [7 x i32]* %417, i64 %419
%421 = load i32, i32* %7
%422 = add nsw i32 %421, 3
%423 = sext i32 %422 to i64
%424 = getelementptr inbounds [7 x i32], [7 x i32]* %420, i64 0, i64 %423
%425 = load i32, i32* %424
%426 = icmp eq i32 %425, 0
br i1 %426, label %427, label %433
427: ; preds = %416
%428 = load i32, i32* %7
%429 = icmp slt i32 %428, 4
br i1 %429, label %430, label %433
430: ; preds = %427
%431 = load i32, i32* %7
%432 = add nsw i32 %431, 3
store i32 %432, i32* %3
br label %1878
433: ; preds = %427, %416, %405, %394, %384
%434 = load [7 x i32]*, [7 x i32]** %4
%435 = load i32, i32* %6
%436 = sext i32 %435 to i64
%437 = getelementptr inbounds [7 x i32], [7 x i32]* %434, i64 %436
%438 = load i32, i32* %7
%439 = sext i32 %438 to i64
%440 = getelementptr inbounds [7 x i32], [7 x i32]* %437, i64 0, i64 %439
%441 = load i32, i32* %440
%442 = icmp eq i32 %441, -1
br i1 %442, label %443, label %488
443: ; preds = %433
%444 = load [7 x i32]*, [7 x i32]** %4
%445 = load i32, i32* %6
%446 = add nsw i32 %445, 1
%447 = sext i32 %446 to i64
%448 = getelementptr inbounds [7 x i32], [7 x i32]* %444, i64 %447
%449 = load i32, i32* %7
%450 = add nsw i32 %449, 1
%451 = sext i32 %450 to i64
%452 = getelementptr inbounds [7 x i32], [7 x i32]* %448, i64 0, i64 %451
%453 = load i32, i32* %452
%454 = icmp eq i32 %453, -1
br i1 %454, label %455, label %488
455: ; preds = %443
%456 = load [7 x i32]*, [7 x i32]** %4
%457 = load i32, i32* %6
%458 = add nsw i32 %457, 2
%459 = sext i32 %458 to i64
%460 = getelementptr inbounds [7 x i32], [7 x i32]* %456, i64 %459
%461 = load i32, i32* %7
%462 = add nsw i32 %461, 2
%463 = sext i32 %462 to i64
%464 = getelementptr inbounds [7 x i32], [7 x i32]* %460, i64 0, i64 %463
%465 = load i32, i32* %464
%466 = icmp eq i32 %465, -1
br i1 %466, label %467, label %488
467: ; preds = %455
%468 = load [7 x i32]*, [7 x i32]** %4
%469 = load i32, i32* %6
%470 = add nsw i32 %469, 3
%471 = sext i32 %470 to i64
%472 = getelementptr inbounds [7 x i32], [7 x i32]* %468, i64 %471
%473 = load i32, i32* %7
%474 = add nsw i32 %473, 3
%475 = sext i32 %474 to i64
%476 = getelementptr inbounds [7 x i32], [7 x i32]* %472, i64 0, i64 %475
%477 = load i32, i32* %476
%478 = icmp eq i32 %477, 0
br i1 %478, label %479, label %488
479: ; preds = %467
%480 = load i32, i32* %6
%481 = icmp slt i32 %480, 3
br i1 %481, label %482, label %488
482: ; preds = %479
%483 = load i32, i32* %7
%484 = icmp slt i32 %483, 4
br i1 %484, label %485, label %488
485: ; preds = %482
%486 = load i32, i32* %7
%487 = add nsw i32 %486, 3
store i32 %487, i32* %3
br label %1878
488: ; preds = %482, %479, %467, %455, %443, %433
%489 = load [7 x i32]*, [7 x i32]** %4
%490 = load i32, i32* %6
%491 = sext i32 %490 to i64
%492 = getelementptr inbounds [7 x i32], [7 x i32]* %489, i64 %491
%493 = load i32, i32* %7
%494 = sext i32 %493 to i64
%495 = getelementptr inbounds [7 x i32], [7 x i32]* %492, i64 0, i64 %494
%496 = load i32, i32* %495
%497 = icmp eq i32 %496, -1
br i1 %497, label %498, label %543
498: ; preds = %488
%499 = load [7 x i32]*, [7 x i32]** %4
%500 = load i32, i32* %6
%501 = sub nsw i32 %500, 1
%502 = sext i32 %501 to i64
%503 = getelementptr inbounds [7 x i32], [7 x i32]* %499, i64 %502
%504 = load i32, i32* %7
%505 = sub nsw i32 %504, 1
%506 = sext i32 %505 to i64
%507 = getelementptr inbounds [7 x i32], [7 x i32]* %503, i64 0, i64 %506
%508 = load i32, i32* %507
%509 = icmp eq i32 %508, -1
br i1 %509, label %510, label %543
510: ; preds = %498
%511 = load [7 x i32]*, [7 x i32]** %4
%512 = load i32, i32* %6
%513 = sub nsw i32 %512, 2
%514 = sext i32 %513 to i64
%515 = getelementptr inbounds [7 x i32], [7 x i32]* %511, i64 %514
%516 = load i32, i32* %7
%517 = sub nsw i32 %516, 2
%518 = sext i32 %517 to i64
%519 = getelementptr inbounds [7 x i32], [7 x i32]* %515, i64 0, i64 %518
%520 = load i32, i32* %519
%521 = icmp eq i32 %520, -1
br i1 %521, label %522, label %543
522: ; preds = %510
%523 = load [7 x i32]*, [7 x i32]** %4
%524 = load i32, i32* %6
%525 = sub nsw i32 %524, 3
%526 = sext i32 %525 to i64
%527 = getelementptr inbounds [7 x i32], [7 x i32]* %523, i64 %526
%528 = load i32, i32* %7
%529 = sub nsw i32 %528, 3
%530 = sext i32 %529 to i64
%531 = getelementptr inbounds [7 x i32], [7 x i32]* %527, i64 0, i64 %530
%532 = load i32, i32* %531
%533 = icmp eq i32 %532, 0
br i1 %533, label %534, label %543
534: ; preds = %522
%535 = load i32, i32* %6
%536 = icmp sgt i32 %535, 2
br i1 %536, label %537, label %543
537: ; preds = %534
%538 = load i32, i32* %7
%539 = icmp sgt i32 %538, 2
br i1 %539, label %540, label %543
540: ; preds = %537
%541 = load i32, i32* %7
%542 = sub nsw i32 %541, 3
store i32 %542, i32* %3
br label %1878
543: ; preds = %537, %534, %522, %510, %498, %488
%544 = load [7 x i32]*, [7 x i32]** %4
%545 = load i32, i32* %6
%546 = sext i32 %545 to i64
%547 = getelementptr inbounds [7 x i32], [7 x i32]* %544, i64 %546
%548 = load i32, i32* %7
%549 = sext i32 %548 to i64
%550 = getelementptr inbounds [7 x i32], [7 x i32]* %547, i64 0, i64 %549
%551 = load i32, i32* %550
%552 = icmp eq i32 %551, -1
br i1 %552, label %553, label %598
553: ; preds = %543
%554 = load [7 x i32]*, [7 x i32]** %4
%555 = load i32, i32* %6
%556 = sub nsw i32 %555, 1
%557 = sext i32 %556 to i64
%558 = getelementptr inbounds [7 x i32], [7 x i32]* %554, i64 %557
%559 = load i32, i32* %7
%560 = add nsw i32 %559, 1
%561 = sext i32 %560 to i64
%562 = getelementptr inbounds [7 x i32], [7 x i32]* %558, i64 0, i64 %561
%563 = load i32, i32* %562
%564 = icmp eq i32 %563, -1
br i1 %564, label %565, label %598
565: ; preds = %553
%566 = load [7 x i32]*, [7 x i32]** %4
%567 = load i32, i32* %6
%568 = sub nsw i32 %567, 2
%569 = sext i32 %568 to i64
%570 = getelementptr inbounds [7 x i32], [7 x i32]* %566, i64 %569
%571 = load i32, i32* %7
%572 = add nsw i32 %571, 2
%573 = sext i32 %572 to i64
%574 = getelementptr inbounds [7 x i32], [7 x i32]* %570, i64 0, i64 %573
%575 = load i32, i32* %574
%576 = icmp eq i32 %575, -1
br i1 %576, label %577, label %598
577: ; preds = %565
%578 = load [7 x i32]*, [7 x i32]** %4
%579 = load i32, i32* %6
%580 = sub nsw i32 %579, 3
%581 = sext i32 %580 to i64
%582 = getelementptr inbounds [7 x i32], [7 x i32]* %578, i64 %581
%583 = load i32, i32* %7
%584 = add nsw i32 %583, 3
%585 = sext i32 %584 to i64
%586 = getelementptr inbounds [7 x i32], [7 x i32]* %582, i64 0, i64 %585
%587 = load i32, i32* %586
%588 = icmp eq i32 %587, 0
br i1 %588, label %589, label %598
589: ; preds = %577
%590 = load i32, i32* %6
%591 = icmp sgt i32 %590, 2
br i1 %591, label %592, label %598
592: ; preds = %589
%593 = load i32, i32* %7
%594 = icmp slt i32 %593, 4
br i1 %594, label %595, label %598
595: ; preds = %592
%596 = load i32, i32* %7
%597 = add nsw i32 %596, 3
store i32 %597, i32* %3
br label %1878
598: ; preds = %592, %589, %577, %565, %553, %543
%599 = load [7 x i32]*, [7 x i32]** %4
%600 = load i32, i32* %6
%601 = sext i32 %600 to i64
%602 = getelementptr inbounds [7 x i32], [7 x i32]* %599, i64 %601
%603 = load i32, i32* %7
%604 = sext i32 %603 to i64
%605 = getelementptr inbounds [7 x i32], [7 x i32]* %602, i64 0, i64 %604
%606 = load i32, i32* %605
%607 = icmp eq i32 %606, -1
br i1 %607, label %608, label %653
608: ; preds = %598
%609 = load [7 x i32]*, [7 x i32]** %4
%610 = load i32, i32* %6
%611 = add nsw i32 %610, 1
%612 = sext i32 %611 to i64
%613 = getelementptr inbounds [7 x i32], [7 x i32]* %609, i64 %612
%614 = load i32, i32* %7
%615 = sub nsw i32 %614, 1
%616 = sext i32 %615 to i64
%617 = getelementptr inbounds [7 x i32], [7 x i32]* %613, i64 0, i64 %616
%618 = load i32, i32* %617
%619 = icmp eq i32 %618, -1
br i1 %619, label %620, label %653
620: ; preds = %608
%621 = load [7 x i32]*, [7 x i32]** %4
%622 = load i32, i32* %6
%623 = add nsw i32 %622, 2
%624 = sext i32 %623 to i64
%625 = getelementptr inbounds [7 x i32], [7 x i32]* %621, i64 %624
%626 = load i32, i32* %7
%627 = sub nsw i32 %626, 2
%628 = sext i32 %627 to i64
%629 = getelementptr inbounds [7 x i32], [7 x i32]* %625, i64 0, i64 %628
%630 = load i32, i32* %629
%631 = icmp eq i32 %630, -1
br i1 %631, label %632, label %653
632: ; preds = %620
%633 = load [7 x i32]*, [7 x i32]** %4
%634 = load i32, i32* %6
%635 = add nsw i32 %634, 3
%636 = sext i32 %635 to i64
%637 = getelementptr inbounds [7 x i32], [7 x i32]* %633, i64 %636
%638 = load i32, i32* %7
%639 = sub nsw i32 %638, 3
%640 = sext i32 %639 to i64
%641 = getelementptr inbounds [7 x i32], [7 x i32]* %637, i64 0, i64 %640
%642 = load i32, i32* %641
%643 = icmp eq i32 %642, 0
br i1 %643, label %644, label %653
644: ; preds = %632
%645 = load i32, i32* %6
%646 = icmp slt i32 %645, 3
br i1 %646, label %647, label %653
647: ; preds = %644
%648 = load i32, i32* %7
%649 = icmp sgt i32 %648, 2
br i1 %649, label %650, label %653
650: ; preds = %647
%651 = load i32, i32* %7
%652 = sub nsw i32 %651, 3
store i32 %652, i32* %3
br label %1878
653: ; preds = %647, %644, %632, %620, %608, %598
%654 = load [7 x i32]*, [7 x i32]** %4
%655 = load i32, i32* %6
%656 = sext i32 %655 to i64
%657 = getelementptr inbounds [7 x i32], [7 x i32]* %654, i64 %656
%658 = load i32, i32* %7
%659 = sext i32 %658 to i64
%660 = getelementptr inbounds [7 x i32], [7 x i32]* %657, i64 0, i64 %659
%661 = load i32, i32* %660
%662 = icmp eq i32 %661, 1
br i1 %662, label %663, label %690
663: ; preds = %653
%664 = load [7 x i32]*, [7 x i32]** %4
%665 = load i32, i32* %6
%666 = add nsw i32 %665, 1
%667 = sext i32 %666 to i64
%668 = getelementptr inbounds [7 x i32], [7 x i32]* %664, i64 %667
%669 = load i32, i32* %7
%670 = sext i32 %669 to i64
%671 = getelementptr inbounds [7 x i32], [7 x i32]* %668, i64 0, i64 %670
%672 = load i32, i32* %671
%673 = icmp eq i32 %672, 1
br i1 %673, label %674, label %690
674: ; preds = %663
%675 = load [7 x i32]*, [7 x i32]** %4
%676 = load i32, i32* %6
%677 = add nsw i32 %676, 2
%678 = sext i32 %677 to i64
%679 = getelementptr inbounds [7 x i32], [7 x i32]* %675, i64 %678
%680 = load i32, i32* %7
%681 = sext i32 %680 to i64
%682 = getelementptr inbounds [7 x i32], [7 x i32]* %679, i64 0, i64 %681
%683 = load i32, i32* %682
%684 = icmp eq i32 %683, 0
br i1 %684, label %685, label %690
685: ; preds = %674
%686 = load i32, i32* %6
%687 = icmp slt i32 %686, 4
br i1 %687, label %688, label %690
688: ; preds = %685
%689 = load i32, i32* %7
store i32 %689, i32* %3
br label %1878
690: ; preds = %685, %674, %663, %653
%691 = load [7 x i32]*, [7 x i32]** %4
%692 = load i32, i32* %6
%693 = sext i32 %692 to i64
%694 = getelementptr inbounds [7 x i32], [7 x i32]* %691, i64 %693
%695 = load i32, i32* %7
%696 = sext i32 %695 to i64
%697 = getelementptr inbounds [7 x i32], [7 x i32]* %694, i64 0, i64 %696
%698 = load i32, i32* %697
%699 = icmp eq i32 %698, 1
br i1 %699, label %700, label %728
700: ; preds = %690
%701 = load [7 x i32]*, [7 x i32]** %4
%702 = load i32, i32* %6
%703 = sext i32 %702 to i64
%704 = getelementptr inbounds [7 x i32], [7 x i32]* %701, i64 %703
%705 = load i32, i32* %7
%706 = add nsw i32 %705, 1
%707 = sext i32 %706 to i64
%708 = getelementptr inbounds [7 x i32], [7 x i32]* %704, i64 0, i64 %707
%709 = load i32, i32* %708
%710 = icmp eq i32 %709, 1
br i1 %710, label %711, label %728
711: ; preds = %700
%712 = load [7 x i32]*, [7 x i32]** %4
%713 = load i32, i32* %6
%714 = sext i32 %713 to i64
%715 = getelementptr inbounds [7 x i32], [7 x i32]* %712, i64 %714
%716 = load i32, i32* %7
%717 = add nsw i32 %716, 2
%718 = sext i32 %717 to i64
%719 = getelementptr inbounds [7 x i32], [7 x i32]* %715, i64 0, i64 %718
%720 = load i32, i32* %719
%721 = icmp eq i32 %720, 0
br i1 %721, label %722, label %728
722: ; preds = %711
%723 = load i32, i32* %7
%724 = icmp slt i32 %723, 5
br i1 %724, label %725, label %728
725: ; preds = %722
%726 = load i32, i32* %7
%727 = add nsw i32 %726, 2
store i32 %727, i32* %3
br label %1878
728: ; preds = %722, %711, %700, %690
%729 = load [7 x i32]*, [7 x i32]** %4
%730 = load i32, i32* %6
%731 = sext i32 %730 to i64
%732 = getelementptr inbounds [7 x i32], [7 x i32]* %729, i64 %731
%733 = load i32, i32* %7
%734 = sext i32 %733 to i64
%735 = getelementptr inbounds [7 x i32], [7 x i32]* %732, i64 0, i64 %734
%736 = load i32, i32* %735
%737 = icmp eq i32 %736, 1
br i1 %737, label %738, label %771
738: ; preds = %728
%739 = load [7 x i32]*, [7 x i32]** %4
%740 = load i32, i32* %6
%741 = add nsw i32 %740, 1
%742 = sext i32 %741 to i64
%743 = getelementptr inbounds [7 x i32], [7 x i32]* %739, i64 %742
%744 = load i32, i32* %7
%745 = add nsw i32 %744, 1
%746 = sext i32 %745 to i64
%747 = getelementptr inbounds [7 x i32], [7 x i32]* %743, i64 0, i64 %746
%748 = load i32, i32* %747
%749 = icmp eq i32 %748, 1
br i1 %749, label %750, label %771
750: ; preds = %738
%751 = load [7 x i32]*, [7 x i32]** %4
%752 = load i32, i32* %6
%753 = add nsw i32 %752, 2
%754 = sext i32 %753 to i64
%755 = getelementptr inbounds [7 x i32], [7 x i32]* %751, i64 %754
%756 = load i32, i32* %7
%757 = add nsw i32 %756, 2
%758 = sext i32 %757 to i64
%759 = getelementptr inbounds [7 x i32], [7 x i32]* %755, i64 0, i64 %758
%760 = load i32, i32* %759
%761 = icmp eq i32 %760, 0
br i1 %761, label %762, label %771
762: ; preds = %750
%763 = load i32, i32* %6
%764 = icmp slt i32 %763, 4
br i1 %764, label %765, label %771
765: ; preds = %762
%766 = load i32, i32* %7
%767 = icmp slt i32 %766, 5
br i1 %767, label %768, label %771
768: ; preds = %765
%769 = load i32, i32* %7
%770 = add nsw i32 %769, 2
store i32 %770, i32* %3
br label %1878
771: ; preds = %765, %762, %750, %738, %728
%772 = load [7 x i32]*, [7 x i32]** %4
%773 = load i32, i32* %6
%774 = sext i32 %773 to i64
%775 = getelementptr inbounds [7 x i32], [7 x i32]* %772, i64 %774
%776 = load i32, i32* %7
%777 = sext i32 %776 to i64
%778 = getelementptr inbounds [7 x i32], [7 x i32]* %775, i64 0, i64 %777
%779 = load i32, i32* %778
%780 = icmp eq i32 %779, 1
br i1 %780, label %781, label %814
781: ; preds = %771
%782 = load [7 x i32]*, [7 x i32]** %4
%783 = load i32, i32* %6
%784 = sub nsw i32 %783, 1
%785 = sext i32 %784 to i64
%786 = getelementptr inbounds [7 x i32], [7 x i32]* %782, i64 %785
%787 = load i32, i32* %7
%788 = sub nsw i32 %787, 1
%789 = sext i32 %788 to i64
%790 = getelementptr inbounds [7 x i32], [7 x i32]* %786, i64 0, i64 %789
%791 = load i32, i32* %790
%792 = icmp eq i32 %791, 1
br i1 %792, label %793, label %814
793: ; preds = %781
%794 = load [7 x i32]*, [7 x i32]** %4
%795 = load i32, i32* %6
%796 = sub nsw i32 %795, 2
%797 = sext i32 %796 to i64
%798 = getelementptr inbounds [7 x i32], [7 x i32]* %794, i64 %797
%799 = load i32, i32* %7
%800 = sub nsw i32 %799, 2
%801 = sext i32 %800 to i64
%802 = getelementptr inbounds [7 x i32], [7 x i32]* %798, i64 0, i64 %801
%803 = load i32, i32* %802
%804 = icmp eq i32 %803, 0
br i1 %804, label %805, label %814
805: ; preds = %793
%806 = load i32, i32* %7
%807 = icmp sgt i32 %806, 1
br i1 %807, label %808, label %814
808: ; preds = %805
%809 = load i32, i32* %6
%810 = icmp sgt i32 %809, 1
br i1 %810, label %811, label %814
811: ; preds = %808
%812 = load i32, i32* %7
%813 = sub nsw i32 %812, 2
store i32 %813, i32* %3
br label %1878
814: ; preds = %808, %805, %793, %781, %771
%815 = load [7 x i32]*, [7 x i32]** %4
%816 = load i32, i32* %6
%817 = sext i32 %816 to i64
%818 = getelementptr inbounds [7 x i32], [7 x i32]* %815, i64 %817
%819 = load i32, i32* %7
%820 = sext i32 %819 to i64
%821 = getelementptr inbounds [7 x i32], [7 x i32]* %818, i64 0, i64 %820
%822 = load i32, i32* %821
%823 = icmp eq i32 %822, 1
br i1 %823, label %824, label %857
824: ; preds = %814
%825 = load [7 x i32]*, [7 x i32]** %4
%826 = load i32, i32* %6
%827 = sub nsw i32 %826, 1
%828 = sext i32 %827 to i64
%829 = getelementptr inbounds [7 x i32], [7 x i32]* %825, i64 %828
%830 = load i32, i32* %7
%831 = add nsw i32 %830, 1
%832 = sext i32 %831 to i64
%833 = getelementptr inbounds [7 x i32], [7 x i32]* %829, i64 0, i64 %832
%834 = load i32, i32* %833
%835 = icmp eq i32 %834, 1
br i1 %835, label %836, label %857
836: ; preds = %824
%837 = load [7 x i32]*, [7 x i32]** %4
%838 = load i32, i32* %6
%839 = sub nsw i32 %838, 2
%840 = sext i32 %839 to i64
%841 = getelementptr inbounds [7 x i32], [7 x i32]* %837, i64 %840
%842 = load i32, i32* %7
%843 = add nsw i32 %842, 2
%844 = sext i32 %843 to i64
%845 = getelementptr inbounds [7 x i32], [7 x i32]* %841, i64 0, i64 %844
%846 = load i32, i32* %845
%847 = icmp eq i32 %846, 0
br i1 %847, label %848, label %857
848: ; preds = %836
%849 = load i32, i32* %6
%850 = icmp sgt i32 %849, 1
br i1 %850, label %851, label %857
851: ; preds = %848
%852 = load i32, i32* %7
%853 = icmp slt i32 %852, 5
br i1 %853, label %854, label %857
854: ; preds = %851
%855 = load i32, i32* %7
%856 = add nsw i32 %855, 2
store i32 %856, i32* %3
br label %1878
857: ; preds = %851, %848, %836, %824, %814
%858 = load [7 x i32]*, [7 x i32]** %4
%859 = load i32, i32* %6
%860 = sext i32 %859 to i64
%861 = getelementptr inbounds [7 x i32], [7 x i32]* %858, i64 %860
%862 = load i32, i32* %7
%863 = sext i32 %862 to i64
%864 = getelementptr inbounds [7 x i32], [7 x i32]* %861, i64 0, i64 %863
%865 = load i32, i32* %864
%866 = icmp eq i32 %865, 1
br i1 %866, label %867, label %900
867: ; preds = %857
%868 = load [7 x i32]*, [7 x i32]** %4
%869 = load i32, i32* %6
%870 = add nsw i32 %869, 1
%871 = sext i32 %870 to i64
%872 = getelementptr inbounds [7 x i32], [7 x i32]* %868, i64 %871
%873 = load i32, i32* %7
%874 = sub nsw i32 %873, 1
%875 = sext i32 %874 to i64
%876 = getelementptr inbounds [7 x i32], [7 x i32]* %872, i64 0, i64 %875
%877 = load i32, i32* %876
%878 = icmp eq i32 %877, 1
br i1 %878, label %879, label %900
879: ; preds = %867
%880 = load [7 x i32]*, [7 x i32]** %4
%881 = load i32, i32* %6
%882 = add nsw i32 %881, 2
%883 = sext i32 %882 to i64
%884 = getelementptr inbounds [7 x i32], [7 x i32]* %880, i64 %883
%885 = load i32, i32* %7
%886 = sub nsw i32 %885, 2
%887 = sext i32 %886 to i64
%888 = getelementptr inbounds [7 x i32], [7 x i32]* %884, i64 0, i64 %887
%889 = load i32, i32* %888
%890 = icmp eq i32 %889, 0
br i1 %890, label %891, label %900
891: ; preds = %879
%892 = load i32, i32* %6
%893 = icmp slt i32 %892, 4
br i1 %893, label %894, label %900
894: ; preds = %891
%895 = load i32, i32* %7
%896 = icmp sgt i32 %895, 1
br i1 %896, label %897, label %900
897: ; preds = %894
%898 = load i32, i32* %7
%899 = sub nsw i32 %898, 2
store i32 %899, i32* %3
br label %1878
900: ; preds = %894, %891, %879, %867, %857
br label %901
901: ; preds = %900
br label %902
902: ; preds = %901
br label %903
903: ; preds = %902
br label %904
904: ; preds = %903
br label %905
905: ; preds = %904
br label %906
906: ; preds = %905
br label %907
907: ; preds = %906
br label %908
908: ; preds = %907
br label %909
909: ; preds = %908
br label %910
910: ; preds = %909
br label %911
911: ; preds = %910
br label %912
912: ; preds = %911
br label %913
913: ; preds = %912
br label %914
914: ; preds = %913
br label %915
915: ; preds = %914
br label %916
916: ; preds = %915
br label %917
917: ; preds = %916
br label %918
918: ; preds = %917
%919 = load i32, i32* %7
%920 = add nsw i32 %919, 1
store i32 %920, i32* %7
br label %16
921: ; preds = %16
br label %922
922: ; preds = %921
%923 = load i32, i32* %6
%924 = add nsw i32 %923, 1
store i32 %924, i32* %6
br label %12
925: ; preds = %12
store i32 0, i32* %8
br label %926
926: ; preds = %940, %925
%927 = load i32, i32* %8
%928 = icmp slt i32 %927, 6
br i1 %928, label %929, label %943
929: ; preds = %926
%930 = load [7 x i32]*, [7 x i32]** %4
%931 = getelementptr inbounds [7 x i32], [7 x i32]* %930, i64 0
%932 = load i32, i32* %8
%933 = sext i32 %932 to i64
%934 = getelementptr inbounds [7 x i32], [7 x i32]* %931, i64 0, i64 %933
%935 = load i32, i32* %934
%936 = icmp eq i32 %935, 0
br i1 %936, label %937, label %939
937: ; preds = %929
%938 = load i32, i32* %8
store i32 %938, i32* %3
br label %1878
939: ; preds = %929
br label %940
940: ; preds = %939
%941 = load i32, i32* %8
%942 = add nsw i32 %941, 1
store i32 %942, i32* %8
br label %926
943: ; preds = %926
store i32 0, i32* %3
br label %1878
944: ; preds = %2
%945 = load i32, i32* %5
%946 = icmp eq i32 %945, -1
br i1 %946, label %947, label %1877
947: ; preds = %944
store i32 0, i32* %6
br label %948
948: ; preds = %1855, %947
%949 = load i32, i32* %6
%950 = icmp slt i32 %949, 6
br i1 %950, label %951, label %1858
951: ; preds = %948
store i32 0, i32* %7
br label %952
952: ; preds = %1851, %951
%953 = load i32, i32* %7
%954 = icmp slt i32 %953, 7
br i1 %954, label %955, label %1854
955: ; preds = %952
%956 = load [7 x i32]*, [7 x i32]** %4
%957 = load i32, i32* %6
%958 = sext i32 %957 to i64
%959 = getelementptr inbounds [7 x i32], [7 x i32]* %956, i64 %958
%960 = load i32, i32* %7
%961 = sext i32 %960 to i64
%962 = getelementptr inbounds [7 x i32], [7 x i32]* %959, i64 0, i64 %961
%963 = load i32, i32* %962
%964 = icmp eq i32 %963, -1
br i1 %964, label %965, label %1003
965: ; preds = %955
%966 = load [7 x i32]*, [7 x i32]** %4
%967 = load i32, i32* %6
%968 = add nsw i32 %967, 1
%969 = sext i32 %968 to i64
%970 = getelementptr inbounds [7 x i32], [7 x i32]* %966, i64 %969
%971 = load i32, i32* %7
%972 = sext i32 %971 to i64
%973 = getelementptr inbounds [7 x i32], [7 x i32]* %970, i64 0, i64 %972
%974 = load i32, i32* %973
%975 = icmp eq i32 %974, -1
br i1 %975, label %976, label %1003
976: ; preds = %965
%977 = load [7 x i32]*, [7 x i32]** %4
%978 = load i32, i32* %6
%979 = add nsw i32 %978, 2
%980 = sext i32 %979 to i64
%981 = getelementptr inbounds [7 x i32], [7 x i32]* %977, i64 %980
%982 = load i32, i32* %7
%983 = sext i32 %982 to i64
%984 = getelementptr inbounds [7 x i32], [7 x i32]* %981, i64 0, i64 %983
%985 = load i32, i32* %984
%986 = icmp eq i32 %985, -1
br i1 %986, label %987, label %1003
987: ; preds = %976
%988 = load [7 x i32]*, [7 x i32]** %4
%989 = load i32, i32* %6
%990 = add nsw i32 %989, 3
%991 = sext i32 %990 to i64
%992 = getelementptr inbounds [7 x i32], [7 x i32]* %988, i64 %991
%993 = load i32, i32* %7
%994 = sext i32 %993 to i64
%995 = getelementptr inbounds [7 x i32], [7 x i32]* %992, i64 0, i64 %994
%996 = load i32, i32* %995
%997 = icmp eq i32 %996, 0
br i1 %997, label %998, label %1003
998: ; preds = %987
%999 = load i32, i32* %6
%1000 = icmp slt i32 %999, 3
br i1 %1000, label %1001, label %1003
1001: ; preds = %998
%1002 = load i32, i32* %7
store i32 %1002, i32* %3
br label %1878
1003: ; preds = %998, %987, %976, %965, %955
%1004 = load [7 x i32]*, [7 x i32]** %4
%1005 = load i32, i32* %6
%1006 = sext i32 %1005 to i64
%1007 = getelementptr inbounds [7 x i32], [7 x i32]* %1004, i64 %1006
%1008 = load i32, i32* %7
%1009 = sext i32 %1008 to i64
%1010 = getelementptr inbounds [7 x i32], [7 x i32]* %1007, i64 0, i64 %1009
%1011 = load i32, i32* %1010
%1012 = icmp eq i32 %1011, -1
br i1 %1012, label %1013, label %1052
1013: ; preds = %1003
%1014 = load [7 x i32]*, [7 x i32]** %4
%1015 = load i32, i32* %6
%1016 = sext i32 %1015 to i64
%1017 = getelementptr inbounds [7 x i32], [7 x i32]* %1014, i64 %1016
%1018 = load i32, i32* %7
%1019 = add nsw i32 %1018, 1
%1020 = sext i32 %1019 to i64
%1021 = getelementptr inbounds [7 x i32], [7 x i32]* %1017, i64 0, i64 %1020
%1022 = load i32, i32* %1021
%1023 = icmp eq i32 %1022, -1
br i1 %1023, label %1024, label %1052
1024: ; preds = %1013
%1025 = load [7 x i32]*, [7 x i32]** %4
%1026 = load i32, i32* %6
%1027 = sext i32 %1026 to i64
%1028 = getelementptr inbounds [7 x i32], [7 x i32]* %1025, i64 %1027
%1029 = load i32, i32* %7
%1030 = add nsw i32 %1029, 2
%1031 = sext i32 %1030 to i64
%1032 = getelementptr inbounds [7 x i32], [7 x i32]* %1028, i64 0, i64 %1031
%1033 = load i32, i32* %1032
%1034 = icmp eq i32 %1033, -1
br i1 %1034, label %1035, label %1052
1035: ; preds = %1024
%1036 = load [7 x i32]*, [7 x i32]** %4
%1037 = load i32, i32* %6
%1038 = sext i32 %1037 to i64
%1039 = getelementptr inbounds [7 x i32], [7 x i32]* %1036, i64 %1038
%1040 = load i32, i32* %7
%1041 = add nsw i32 %1040, 3
%1042 = sext i32 %1041 to i64
%1043 = getelementptr inbounds [7 x i32], [7 x i32]* %1039, i64 0, i64 %1042
%1044 = load i32, i32* %1043
%1045 = icmp eq i32 %1044, 0
br i1 %1045, label %1046, label %1052
1046: ; preds = %1035
%1047 = load i32, i32* %7
%1048 = icmp slt i32 %1047, 4
br i1 %1048, label %1049, label %1052
1049: ; preds = %1046
%1050 = load i32, i32* %7
%1051 = add nsw i32 %1050, 3
store i32 %1051, i32* %3
br label %1878
1052: ; preds = %1046, %1035, %1024, %1013, %1003
%1053 = load [7 x i32]*, [7 x i32]** %4
%1054 = load i32, i32* %6
%1055 = sext i32 %1054 to i64
%1056 = getelementptr inbounds [7 x i32], [7 x i32]* %1053, i64 %1055
%1057 = load i32, i32* %7
%1058 = sext i32 %1057 to i64
%1059 = getelementptr inbounds [7 x i32], [7 x i32]* %1056, i64 0, i64 %1058
%1060 = load i32, i32* %1059
%1061 = icmp eq i32 %1060, -1
br i1 %1061, label %1062, label %1107
1062: ; preds = %1052
%1063 = load [7 x i32]*, [7 x i32]** %4
%1064 = load i32, i32* %6
%1065 = add nsw i32 %1064, 1
%1066 = sext i32 %1065 to i64
%1067 = getelementptr inbounds [7 x i32], [7 x i32]* %1063, i64 %1066
%1068 = load i32, i32* %7
%1069 = add nsw i32 %1068, 1
%1070 = sext i32 %1069 to i64
%1071 = getelementptr inbounds [7 x i32], [7 x i32]* %1067, i64 0, i64 %1070
%1072 = load i32, i32* %1071
%1073 = icmp eq i32 %1072, -1
br i1 %1073, label %1074, label %1107
1074: ; preds = %1062
%1075 = load [7 x i32]*, [7 x i32]** %4
%1076 = load i32, i32* %6
%1077 = add nsw i32 %1076, 2
%1078 = sext i32 %1077 to i64
%1079 = getelementptr inbounds [7 x i32], [7 x i32]* %1075, i64 %1078
%1080 = load i32, i32* %7
%1081 = add nsw i32 %1080, 2
%1082 = sext i32 %1081 to i64
%1083 = getelementptr inbounds [7 x i32], [7 x i32]* %1079, i64 0, i64 %1082
%1084 = load i32, i32* %1083
%1085 = icmp eq i32 %1084, -1
br i1 %1085, label %1086, label %1107
1086: ; preds = %1074
%1087 = load [7 x i32]*, [7 x i32]** %4
%1088 = load i32, i32* %6
%1089 = add nsw i32 %1088, 3
%1090 = sext i32 %1089 to i64
%1091 = getelementptr inbounds [7 x i32], [7 x i32]* %1087, i64 %1090
%1092 = load i32, i32* %7
%1093 = add nsw i32 %1092, 3
%1094 = sext i32 %1093 to i64
%1095 = getelementptr inbounds [7 x i32], [7 x i32]* %1091, i64 0, i64 %1094
%1096 = load i32, i32* %1095
%1097 = icmp eq i32 %1096, 0
br i1 %1097, label %1098, label %1107
1098: ; preds = %1086
%1099 = load i32, i32* %6
%1100 = icmp slt i32 %1099, 3
br i1 %1100, label %1101, label %1107
1101: ; preds = %1098
%1102 = load i32, i32* %7
%1103 = icmp slt i32 %1102, 4
br i1 %1103, label %1104, label %1107
1104: ; preds = %1101
%1105 = load i32, i32* %7
%1106 = add nsw i32 %1105, 3
store i32 %1106, i32* %3
br label %1878
1107: ; preds = %1101, %1098, %1086, %1074, %1062, %1052
%1108 = load [7 x i32]*, [7 x i32]** %4
%1109 = load i32, i32* %6
%1110 = sext i32 %1109 to i64
%1111 = getelementptr inbounds [7 x i32], [7 x i32]* %1108, i64 %1110
%1112 = load i32, i32* %7
%1113 = sext i32 %1112 to i64
%1114 = getelementptr inbounds [7 x i32], [7 x i32]* %1111, i64 0, i64 %1113
%1115 = load i32, i32* %1114
%1116 = icmp eq i32 %1115, -1
br i1 %1116, label %1117, label %1162
1117: ; preds = %1107
%1118 = load [7 x i32]*, [7 x i32]** %4
%1119 = load i32, i32* %6
%1120 = sub nsw i32 %1119, 1
%1121 = sext i32 %1120 to i64
%1122 = getelementptr inbounds [7 x i32], [7 x i32]* %1118, i64 %1121
%1123 = load i32, i32* %7
%1124 = sub nsw i32 %1123, 1
%1125 = sext i32 %1124 to i64
%1126 = getelementptr inbounds [7 x i32], [7 x i32]* %1122, i64 0, i64 %1125
%1127 = load i32, i32* %1126
%1128 = icmp eq i32 %1127, -1
br i1 %1128, label %1129, label %1162
1129: ; preds = %1117
%1130 = load [7 x i32]*, [7 x i32]** %4
%1131 = load i32, i32* %6
%1132 = sub nsw i32 %1131, 2
%1133 = sext i32 %1132 to i64
%1134 = getelementptr inbounds [7 x i32], [7 x i32]* %1130, i64 %1133
%1135 = load i32, i32* %7
%1136 = sub nsw i32 %1135, 2
%1137 = sext i32 %1136 to i64
%1138 = getelementptr inbounds [7 x i32], [7 x i32]* %1134, i64 0, i64 %1137
%1139 = load i32, i32* %1138
%1140 = icmp eq i32 %1139, -1
br i1 %1140, label %1141, label %1162
1141: ; preds = %1129
%1142 = load [7 x i32]*, [7 x i32]** %4
%1143 = load i32, i32* %6
%1144 = sub nsw i32 %1143, 3
%1145 = sext i32 %1144 to i64
%1146 = getelementptr inbounds [7 x i32], [7 x i32]* %1142, i64 %1145
%1147 = load i32, i32* %7
%1148 = sub nsw i32 %1147, 3
%1149 = sext i32 %1148 to i64
%1150 = getelementptr inbounds [7 x i32], [7 x i32]* %1146, i64 0, i64 %1149
%1151 = load i32, i32* %1150
%1152 = icmp eq i32 %1151, 0
br i1 %1152, label %1153, label %1162
1153: ; preds = %1141
%1154 = load i32, i32* %6
%1155 = icmp sgt i32 %1154, 2
br i1 %1155, label %1156, label %1162
1156: ; preds = %1153
%1157 = load i32, i32* %7
%1158 = icmp sgt i32 %1157, 2
br i1 %1158, label %1159, label %1162
1159: ; preds = %1156
%1160 = load i32, i32* %7
%1161 = sub nsw i32 %1160, 3
store i32 %1161, i32* %3
br label %1878
1162: ; preds = %1156, %1153, %1141, %1129, %1117, %1107
%1163 = load [7 x i32]*, [7 x i32]** %4
%1164 = load i32, i32* %6
%1165 = sext i32 %1164 to i64
%1166 = getelementptr inbounds [7 x i32], [7 x i32]* %1163, i64 %1165
%1167 = load i32, i32* %7
%1168 = sext i32 %1167 to i64
%1169 = getelementptr inbounds [7 x i32], [7 x i32]* %1166, i64 0, i64 %1168
%1170 = load i32, i32* %1169
%1171 = icmp eq i32 %1170, -1
br i1 %1171, label %1172, label %1217
1172: ; preds = %1162
%1173 = load [7 x i32]*, [7 x i32]** %4
%1174 = load i32, i32* %6
%1175 = sub nsw i32 %1174, 1
%1176 = sext i32 %1175 to i64
%1177 = getelementptr inbounds [7 x i32], [7 x i32]* %1173, i64 %1176
%1178 = load i32, i32* %7
%1179 = add nsw i32 %1178, 1
%1180 = sext i32 %1179 to i64
%1181 = getelementptr inbounds [7 x i32], [7 x i32]* %1177, i64 0, i64 %1180
%1182 = load i32, i32* %1181
%1183 = icmp eq i32 %1182, -1
br i1 %1183, label %1184, label %1217
1184: ; preds = %1172
%1185 = load [7 x i32]*, [7 x i32]** %4
%1186 = load i32, i32* %6
%1187 = sub nsw i32 %1186, 2
%1188 = sext i32 %1187 to i64
%1189 = getelementptr inbounds [7 x i32], [7 x i32]* %1185, i64 %1188
%1190 = load i32, i32* %7
%1191 = add nsw i32 %1190, 2
%1192 = sext i32 %1191 to i64
%1193 = getelementptr inbounds [7 x i32], [7 x i32]* %1189, i64 0, i64 %1192
%1194 = load i32, i32* %1193
%1195 = icmp eq i32 %1194, -1
br i1 %1195, label %1196, label %1217
1196: ; preds = %1184
%1197 = load [7 x i32]*, [7 x i32]** %4
%1198 = load i32, i32* %6
%1199 = sub nsw i32 %1198, 3
%1200 = sext i32 %1199 to i64
%1201 = getelementptr inbounds [7 x i32], [7 x i32]* %1197, i64 %1200
%1202 = load i32, i32* %7
%1203 = add nsw i32 %1202, 3
%1204 = sext i32 %1203 to i64
%1205 = getelementptr inbounds [7 x i32], [7 x i32]* %1201, i64 0, i64 %1204
%1206 = load i32, i32* %1205
%1207 = icmp eq i32 %1206, 0
br i1 %1207, label %1208, label %1217
1208: ; preds = %1196
%1209 = load i32, i32* %6
%1210 = icmp sgt i32 %1209, 2
br i1 %1210, label %1211, label %1217
1211: ; preds = %1208
%1212 = load i32, i32* %7
%1213 = icmp slt i32 %1212, 4
br i1 %1213, label %1214, label %1217
1214: ; preds = %1211
%1215 = load i32, i32* %7
%1216 = add nsw i32 %1215, 3
store i32 %1216, i32* %3
br label %1878
1217: ; preds = %1211, %1208, %1196, %1184, %1172, %1162
%1218 = load [7 x i32]*, [7 x i32]** %4
%1219 = load i32, i32* %6
%1220 = sext i32 %1219 to i64
%1221 = getelementptr inbounds [7 x i32], [7 x i32]* %1218, i64 %1220
%1222 = load i32, i32* %7
%1223 = sext i32 %1222 to i64
%1224 = getelementptr inbounds [7 x i32], [7 x i32]* %1221, i64 0, i64 %1223
%1225 = load i32, i32* %1224
%1226 = icmp eq i32 %1225, -1
br i1 %1226, label %1227, label %1272
1227: ; preds = %1217
%1228 = load [7 x i32]*, [7 x i32]** %4
%1229 = load i32, i32* %6
%1230 = add nsw i32 %1229, 1
%1231 = sext i32 %1230 to i64
%1232 = getelementptr inbounds [7 x i32], [7 x i32]* %1228, i64 %1231
%1233 = load i32, i32* %7
%1234 = sub nsw i32 %1233, 1
%1235 = sext i32 %1234 to i64
%1236 = getelementptr inbounds [7 x i32], [7 x i32]* %1232, i64 0, i64 %1235
%1237 = load i32, i32* %1236
%1238 = icmp eq i32 %1237, -1
br i1 %1238, label %1239, label %1272
1239: ; preds = %1227
%1240 = load [7 x i32]*, [7 x i32]** %4
%1241 = load i32, i32* %6
%1242 = add nsw i32 %1241, 2
%1243 = sext i32 %1242 to i64
%1244 = getelementptr inbounds [7 x i32], [7 x i32]* %1240, i64 %1243
%1245 = load i32, i32* %7
%1246 = sub nsw i32 %1245, 2
%1247 = sext i32 %1246 to i64
%1248 = getelementptr inbounds [7 x i32], [7 x i32]* %1244, i64 0, i64 %1247
%1249 = load i32, i32* %1248
%1250 = icmp eq i32 %1249, -1
br i1 %1250, label %1251, label %1272
1251: ; preds = %1239
%1252 = load [7 x i32]*, [7 x i32]** %4
%1253 = load i32, i32* %6
%1254 = add nsw i32 %1253, 3
%1255 = sext i32 %1254 to i64
%1256 = getelementptr inbounds [7 x i32], [7 x i32]* %1252, i64 %1255
%1257 = load i32, i32* %7
%1258 = sub nsw i32 %1257, 3
%1259 = sext i32 %1258 to i64
%1260 = getelementptr inbounds [7 x i32], [7 x i32]* %1256, i64 0, i64 %1259
%1261 = load i32, i32* %1260
%1262 = icmp eq i32 %1261, 0
br i1 %1262, label %1263, label %1272
1263: ; preds = %1251
%1264 = load i32, i32* %6
%1265 = icmp slt i32 %1264, 3
br i1 %1265, label %1266, label %1272
1266: ; preds = %1263
%1267 = load i32, i32* %7
%1268 = icmp sgt i32 %1267, 2
br i1 %1268, label %1269, label %1272
1269: ; preds = %1266
%1270 = load i32, i32* %7
%1271 = sub nsw i32 %1270, 3
store i32 %1271, i32* %3
br label %1878
1272: ; preds = %1266, %1263, %1251, %1239, %1227, %1217
%1273 = load [7 x i32]*, [7 x i32]** %4
%1274 = load i32, i32* %6
%1275 = sext i32 %1274 to i64
%1276 = getelementptr inbounds [7 x i32], [7 x i32]* %1273, i64 %1275
%1277 = load i32, i32* %7
%1278 = sext i32 %1277 to i64
%1279 = getelementptr inbounds [7 x i32], [7 x i32]* %1276, i64 0, i64 %1278
%1280 = load i32, i32* %1279
%1281 = icmp eq i32 %1280, 1
br i1 %1281, label %1282, label %1320
1282: ; preds = %1272
%1283 = load [7 x i32]*, [7 x i32]** %4
%1284 = load i32, i32* %6
%1285 = add nsw i32 %1284, 1
%1286 = sext i32 %1285 to i64
%1287 = getelementptr inbounds [7 x i32], [7 x i32]* %1283, i64 %1286
%1288 = load i32, i32* %7
%1289 = sext i32 %1288 to i64
%1290 = getelementptr inbounds [7 x i32], [7 x i32]* %1287, i64 0, i64 %1289
%1291 = load i32, i32* %1290
%1292 = icmp eq i32 %1291, 1
br i1 %1292, label %1293, label %1320
1293: ; preds = %1282
%1294 = load [7 x i32]*, [7 x i32]** %4
%1295 = load i32, i32* %6
%1296 = add nsw i32 %1295, 2
%1297 = sext i32 %1296 to i64
%1298 = getelementptr inbounds [7 x i32], [7 x i32]* %1294, i64 %1297
%1299 = load i32, i32* %7
%1300 = sext i32 %1299 to i64
%1301 = getelementptr inbounds [7 x i32], [7 x i32]* %1298, i64 0, i64 %1300
%1302 = load i32, i32* %1301
%1303 = icmp eq i32 %1302, 1
br i1 %1303, label %1304, label %1320
1304: ; preds = %1293
%1305 = load [7 x i32]*, [7 x i32]** %4
%1306 = load i32, i32* %6
%1307 = add nsw i32 %1306, 3
%1308 = sext i32 %1307 to i64
%1309 = getelementptr inbounds [7 x i32], [7 x i32]* %1305, i64 %1308
%1310 = load i32, i32* %7
%1311 = sext i32 %1310 to i64
%1312 = getelementptr inbounds [7 x i32], [7 x i32]* %1309, i64 0, i64 %1311
%1313 = load i32, i32* %1312
%1314 = icmp eq i32 %1313, 0
br i1 %1314, label %1315, label %1320
1315: ; preds = %1304
%1316 = load i32, i32* %6
%1317 = icmp slt i32 %1316, 3
br i1 %1317, label %1318, label %1320
1318: ; preds = %1315
%1319 = load i32, i32* %7
store i32 %1319, i32* %3
br label %1878
1320: ; preds = %1315, %1304, %1293, %1282, %1272
%1321 = load [7 x i32]*, [7 x i32]** %4
%1322 = load i32, i32* %6
%1323 = sext i32 %1322 to i64
%1324 = getelementptr inbounds [7 x i32], [7 x i32]* %1321, i64 %1323
%1325 = load i32, i32* %7
%1326 = sext i32 %1325 to i64
%1327 = getelementptr inbounds [7 x i32], [7 x i32]* %1324, i64 0, i64 %1326
%1328 = load i32, i32* %1327
%1329 = icmp eq i32 %1328, 1
br i1 %1329, label %1330, label %1369
1330: ; preds = %1320
%1331 = load [7 x i32]*, [7 x i32]** %4
%1332 = load i32, i32* %6
%1333 = sext i32 %1332 to i64
%1334 = getelementptr inbounds [7 x i32], [7 x i32]* %1331, i64 %1333
%1335 = load i32, i32* %7
%1336 = add nsw i32 %1335, 1
%1337 = sext i32 %1336 to i64
%1338 = getelementptr inbounds [7 x i32], [7 x i32]* %1334, i64 0, i64 %1337
%1339 = load i32, i32* %1338
%1340 = icmp eq i32 %1339, 1
br i1 %1340, label %1341, label %1369
1341: ; preds = %1330
%1342 = load [7 x i32]*, [7 x i32]** %4
%1343 = load i32, i32* %6
%1344 = sext i32 %1343 to i64
%1345 = getelementptr inbounds [7 x i32], [7 x i32]* %1342, i64 %1344
%1346 = load i32, i32* %7
%1347 = add nsw i32 %1346, 2
%1348 = sext i32 %1347 to i64
%1349 = getelementptr inbounds [7 x i32], [7 x i32]* %1345, i64 0, i64 %1348
%1350 = load i32, i32* %1349
%1351 = icmp eq i32 %1350, 1
br i1 %1351, label %1352, label %1369
1352: ; preds = %1341
%1353 = load [7 x i32]*, [7 x i32]** %4
%1354 = load i32, i32* %6
%1355 = sext i32 %1354 to i64
%1356 = getelementptr inbounds [7 x i32], [7 x i32]* %1353, i64 %1355
%1357 = load i32, i32* %7
%1358 = add nsw i32 %1357, 3
%1359 = sext i32 %1358 to i64
%1360 = getelementptr inbounds [7 x i32], [7 x i32]* %1356, i64 0, i64 %1359
%1361 = load i32, i32* %1360
%1362 = icmp eq i32 %1361, 0
br i1 %1362, label %1363, label %1369
1363: ; preds = %1352
%1364 = load i32, i32* %7
%1365 = icmp slt i32 %1364, 4
br i1 %1365, label %1366, label %1369
1366: ; preds = %1363
%1367 = load i32, i32* %7
%1368 = add nsw i32 %1367, 3
store i32 %1368, i32* %3
br label %1878
1369: ; preds = %1363, %1352, %1341, %1330, %1320
%1370 = load [7 x i32]*, [7 x i32]** %4
%1371 = load i32, i32* %6
%1372 = sext i32 %1371 to i64
%1373 = getelementptr inbounds [7 x i32], [7 x i32]* %1370, i64 %1372
%1374 = load i32, i32* %7
%1375 = sext i32 %1374 to i64
%1376 = getelementptr inbounds [7 x i32], [7 x i32]* %1373, i64 0, i64 %1375
%1377 = load i32, i32* %1376
%1378 = icmp eq i32 %1377, 1
br i1 %1378, label %1379, label %1424
1379: ; preds = %1369
%1380 = load [7 x i32]*, [7 x i32]** %4
%1381 = load i32, i32* %6
%1382 = add nsw i32 %1381, 1
%1383 = sext i32 %1382 to i64
%1384 = getelementptr inbounds [7 x i32], [7 x i32]* %1380, i64 %1383
%1385 = load i32, i32* %7
%1386 = add nsw i32 %1385, 1
%1387 = sext i32 %1386 to i64
%1388 = getelementptr inbounds [7 x i32], [7 x i32]* %1384, i64 0, i64 %1387
%1389 = load i32, i32* %1388
%1390 = icmp eq i32 %1389, 1
br i1 %1390, label %1391, label %1424
1391: ; preds = %1379
%1392 = load [7 x i32]*, [7 x i32]** %4
%1393 = load i32, i32* %6
%1394 = add nsw i32 %1393, 2
%1395 = sext i32 %1394 to i64
%1396 = getelementptr inbounds [7 x i32], [7 x i32]* %1392, i64 %1395
%1397 = load i32, i32* %7
%1398 = add nsw i32 %1397, 2
%1399 = sext i32 %1398 to i64
%1400 = getelementptr inbounds [7 x i32], [7 x i32]* %1396, i64 0, i64 %1399
%1401 = load i32, i32* %1400
%1402 = icmp eq i32 %1401, 1
br i1 %1402, label %1403, label %1424
1403: ; preds = %1391
%1404 = load [7 x i32]*, [7 x i32]** %4
%1405 = load i32, i32* %6
%1406 = add nsw i32 %1405, 3
%1407 = sext i32 %1406 to i64
%1408 = getelementptr inbounds [7 x i32], [7 x i32]* %1404, i64 %1407
%1409 = load i32, i32* %7
%1410 = add nsw i32 %1409, 3
%1411 = sext i32 %1410 to i64
%1412 = getelementptr inbounds [7 x i32], [7 x i32]* %1408, i64 0, i64 %1411
%1413 = load i32, i32* %1412
%1414 = icmp eq i32 %1413, 0
br i1 %1414, label %1415, label %1424
1415: ; preds = %1403
%1416 = load i32, i32* %6
%1417 = icmp slt i32 %1416, 3
br i1 %1417, label %1418, label %1424
1418: ; preds = %1415
%1419 = load i32, i32* %7
%1420 = icmp slt i32 %1419, 4
br i1 %1420, label %1421, label %1424
1421: ; preds = %1418
%1422 = load i32, i32* %7
%1423 = add nsw i32 %1422, 3
store i32 %1423, i32* %3
br label %1878
1424: ; preds = %1418, %1415, %1403, %1391, %1379, %1369
%1425 = load [7 x i32]*, [7 x i32]** %4
%1426 = load i32, i32* %6
%1427 = sext i32 %1426 to i64
%1428 = getelementptr inbounds [7 x i32], [7 x i32]* %1425, i64 %1427
%1429 = load i32, i32* %7
%1430 = sext i32 %1429 to i64
%1431 = getelementptr inbounds [7 x i32], [7 x i32]* %1428, i64 0, i64 %1430
%1432 = load i32, i32* %1431
%1433 = icmp eq i32 %1432, 1
br i1 %1433, label %1434, label %1479
1434: ; preds = %1424
%1435 = load [7 x i32]*, [7 x i32]** %4
%1436 = load i32, i32* %6
%1437 = sub nsw i32 %1436, 1
%1438 = sext i32 %1437 to i64
%1439 = getelementptr inbounds [7 x i32], [7 x i32]* %1435, i64 %1438
%1440 = load i32, i32* %7
%1441 = sub nsw i32 %1440, 1
%1442 = sext i32 %1441 to i64
%1443 = getelementptr inbounds [7 x i32], [7 x i32]* %1439, i64 0, i64 %1442
%1444 = load i32, i32* %1443
%1445 = icmp eq i32 %1444, 1
br i1 %1445, label %1446, label %1479
1446: ; preds = %1434
%1447 = load [7 x i32]*, [7 x i32]** %4
%1448 = load i32, i32* %6
%1449 = sub nsw i32 %1448, 2
%1450 = sext i32 %1449 to i64
%1451 = getelementptr inbounds [7 x i32], [7 x i32]* %1447, i64 %1450
%1452 = load i32, i32* %7
%1453 = sub nsw i32 %1452, 2
%1454 = sext i32 %1453 to i64
%1455 = getelementptr inbounds [7 x i32], [7 x i32]* %1451, i64 0, i64 %1454
%1456 = load i32, i32* %1455
%1457 = icmp eq i32 %1456, 1
br i1 %1457, label %1458, label %1479
1458: ; preds = %1446
%1459 = load [7 x i32]*, [7 x i32]** %4
%1460 = load i32, i32* %6
%1461 = sub nsw i32 %1460, 3
%1462 = sext i32 %1461 to i64
%1463 = getelementptr inbounds [7 x i32], [7 x i32]* %1459, i64 %1462
%1464 = load i32, i32* %7
%1465 = sub nsw i32 %1464, 3
%1466 = sext i32 %1465 to i64
%1467 = getelementptr inbounds [7 x i32], [7 x i32]* %1463, i64 0, i64 %1466
%1468 = load i32, i32* %1467
%1469 = icmp eq i32 %1468, 0
br i1 %1469, label %1470, label %1479
1470: ; preds = %1458
%1471 = load i32, i32* %6
%1472 = icmp sgt i32 %1471, 2
br i1 %1472, label %1473, label %1479
1473: ; preds = %1470
%1474 = load i32, i32* %7
%1475 = icmp sgt i32 %1474, 2
br i1 %1475, label %1476, label %1479
1476: ; preds = %1473
%1477 = load i32, i32* %7
%1478 = sub nsw i32 %1477, 3
store i32 %1478, i32* %3
br label %1878
1479: ; preds = %1473, %1470, %1458, %1446, %1434, %1424
%1480 = load [7 x i32]*, [7 x i32]** %4
%1481 = load i32, i32* %6
%1482 = sext i32 %1481 to i64
%1483 = getelementptr inbounds [7 x i32], [7 x i32]* %1480, i64 %1482
%1484 = load i32, i32* %7
%1485 = sext i32 %1484 to i64
%1486 = getelementptr inbounds [7 x i32], [7 x i32]* %1483, i64 0, i64 %1485
%1487 = load i32, i32* %1486
%1488 = icmp eq i32 %1487, 1
br i1 %1488, label %1489, label %1534
1489: ; preds = %1479
%1490 = load [7 x i32]*, [7 x i32]** %4
%1491 = load i32, i32* %6
%1492 = sub nsw i32 %1491, 1
%1493 = sext i32 %1492 to i64
%1494 = getelementptr inbounds [7 x i32], [7 x i32]* %1490, i64 %1493
%1495 = load i32, i32* %7
%1496 = add nsw i32 %1495, 1
%1497 = sext i32 %1496 to i64
%1498 = getelementptr inbounds [7 x i32], [7 x i32]* %1494, i64 0, i64 %1497
%1499 = load i32, i32* %1498
%1500 = icmp eq i32 %1499, 1
br i1 %1500, label %1501, label %1534
1501: ; preds = %1489
%1502 = load [7 x i32]*, [7 x i32]** %4
%1503 = load i32, i32* %6
%1504 = sub nsw i32 %1503, 2
%1505 = sext i32 %1504 to i64
%1506 = getelementptr inbounds [7 x i32], [7 x i32]* %1502, i64 %1505
%1507 = load i32, i32* %7
%1508 = add nsw i32 %1507, 2
%1509 = sext i32 %1508 to i64
%1510 = getelementptr inbounds [7 x i32], [7 x i32]* %1506, i64 0, i64 %1509
%1511 = load i32, i32* %1510
%1512 = icmp eq i32 %1511, 1
br i1 %1512, label %1513, label %1534
1513: ; preds = %1501
%1514 = load [7 x i32]*, [7 x i32]** %4
%1515 = load i32, i32* %6
%1516 = sub nsw i32 %1515, 3
%1517 = sext i32 %1516 to i64
%1518 = getelementptr inbounds [7 x i32], [7 x i32]* %1514, i64 %1517
%1519 = load i32, i32* %7
%1520 = add nsw i32 %1519, 3
%1521 = sext i32 %1520 to i64
%1522 = getelementptr inbounds [7 x i32], [7 x i32]* %1518, i64 0, i64 %1521
%1523 = load i32, i32* %1522
%1524 = icmp eq i32 %1523, 0
br i1 %1524, label %1525, label %1534
1525: ; preds = %1513
%1526 = load i32, i32* %6
%1527 = icmp sgt i32 %1526, 2
br i1 %1527, label %1528, label %1534
1528: ; preds = %1525
%1529 = load i32, i32* %7
%1530 = icmp slt i32 %1529, 4
br i1 %1530, label %1531, label %1534
1531: ; preds = %1528
%1532 = load i32, i32* %7
%1533 = add nsw i32 %1532, 3
store i32 %1533, i32* %3
br label %1878
1534: ; preds = %1528, %1525, %1513, %1501, %1489, %1479
%1535 = load [7 x i32]*, [7 x i32]** %4
%1536 = load i32, i32* %6
%1537 = sext i32 %1536 to i64
%1538 = getelementptr inbounds [7 x i32], [7 x i32]* %1535, i64 %1537
%1539 = load i32, i32* %7
%1540 = sext i32 %1539 to i64
%1541 = getelementptr inbounds [7 x i32], [7 x i32]* %1538, i64 0, i64 %1540
%1542 = load i32, i32* %1541
%1543 = icmp eq i32 %1542, 1
br i1 %1543, label %1544, label %1589
1544: ; preds = %1534
%1545 = load [7 x i32]*, [7 x i32]** %4
%1546 = load i32, i32* %6
%1547 = add nsw i32 %1546, 1
%1548 = sext i32 %1547 to i64
%1549 = getelementptr inbounds [7 x i32], [7 x i32]* %1545, i64 %1548
%1550 = load i32, i32* %7
%1551 = sub nsw i32 %1550, 1
%1552 = sext i32 %1551 to i64
%1553 = getelementptr inbounds [7 x i32], [7 x i32]* %1549, i64 0, i64 %1552
%1554 = load i32, i32* %1553
%1555 = icmp eq i32 %1554, 1
br i1 %1555, label %1556, label %1589
1556: ; preds = %1544
%1557 = load [7 x i32]*, [7 x i32]** %4
%1558 = load i32, i32* %6
%1559 = add nsw i32 %1558, 2
%1560 = sext i32 %1559 to i64
%1561 = getelementptr inbounds [7 x i32], [7 x i32]* %1557, i64 %1560
%1562 = load i32, i32* %7
%1563 = sub nsw i32 %1562, 2
%1564 = sext i32 %1563 to i64
%1565 = getelementptr inbounds [7 x i32], [7 x i32]* %1561, i64 0, i64 %1564
%1566 = load i32, i32* %1565
%1567 = icmp eq i32 %1566, 1
br i1 %1567, label %1568, label %1589
1568: ; preds = %1556
%1569 = load [7 x i32]*, [7 x i32]** %4
%1570 = load i32, i32* %6
%1571 = add nsw i32 %1570, 3
%1572 = sext i32 %1571 to i64
%1573 = getelementptr inbounds [7 x i32], [7 x i32]* %1569, i64 %1572
%1574 = load i32, i32* %7
%1575 = sub nsw i32 %1574, 3
%1576 = sext i32 %1575 to i64
%1577 = getelementptr inbounds [7 x i32], [7 x i32]* %1573, i64 0, i64 %1576
%1578 = load i32, i32* %1577
%1579 = icmp eq i32 %1578, 0
br i1 %1579, label %1580, label %1589
1580: ; preds = %1568
%1581 = load i32, i32* %6
%1582 = icmp slt i32 %1581, 3
br i1 %1582, label %1583, label %1589
1583: ; preds = %1580
%1584 = load i32, i32* %7
%1585 = icmp sgt i32 %1584, 2
br i1 %1585, label %1586, label %1589
1586: ; preds = %1583
%1587 = load i32, i32* %7
%1588 = sub nsw i32 %1587, 3
store i32 %1588, i32* %3
br label %1878
1589: ; preds = %1583, %1580, %1568, %1556, %1544, %1534
%1590 = load [7 x i32]*, [7 x i32]** %4
%1591 = load i32, i32* %6
%1592 = sext i32 %1591 to i64
%1593 = getelementptr inbounds [7 x i32], [7 x i32]* %1590, i64 %1592
%1594 = load i32, i32* %7
%1595 = sext i32 %1594 to i64
%1596 = getelementptr inbounds [7 x i32], [7 x i32]* %1593, i64 0, i64 %1595
%1597 = load i32, i32* %1596
%1598 = icmp eq i32 %1597, -1
br i1 %1598, label %1599, label %1626
1599: ; preds = %1589
%1600 = load [7 x i32]*, [7 x i32]** %4
%1601 = load i32, i32* %6
%1602 = add nsw i32 %1601, 1
%1603 = sext i32 %1602 to i64
%1604 = getelementptr inbounds [7 x i32], [7 x i32]* %1600, i64 %1603
%1605 = load i32, i32* %7
%1606 = sext i32 %1605 to i64
%1607 = getelementptr inbounds [7 x i32], [7 x i32]* %1604, i64 0, i64 %1606
%1608 = load i32, i32* %1607
%1609 = icmp eq i32 %1608, -1
br i1 %1609, label %1610, label %1626
1610: ; preds = %1599
%1611 = load [7 x i32]*, [7 x i32]** %4
%1612 = load i32, i32* %6
%1613 = add nsw i32 %1612, 2
%1614 = sext i32 %1613 to i64
%1615 = getelementptr inbounds [7 x i32], [7 x i32]* %1611, i64 %1614
%1616 = load i32, i32* %7
%1617 = sext i32 %1616 to i64
%1618 = getelementptr inbounds [7 x i32], [7 x i32]* %1615, i64 0, i64 %1617
%1619 = load i32, i32* %1618
%1620 = icmp eq i32 %1619, 0
br i1 %1620, label %1621, label %1626
1621: ; preds = %1610
%1622 = load i32, i32* %6
%1623 = icmp slt i32 %1622, 4
br i1 %1623, label %1624, label %1626
1624: ; preds = %1621
%1625 = load i32, i32* %7
store i32 %1625, i32* %3
br label %1878
1626: ; preds = %1621, %1610, %1599, %1589
%1627 = load [7 x i32]*, [7 x i32]** %4
%1628 = load i32, i32* %6
%1629 = sext i32 %1628 to i64
%1630 = getelementptr inbounds [7 x i32], [7 x i32]* %1627, i64 %1629
%1631 = load i32, i32* %7
%1632 = sext i32 %1631 to i64
%1633 = getelementptr inbounds [7 x i32], [7 x i32]* %1630, i64 0, i64 %1632
%1634 = load i32, i32* %1633
%1635 = icmp eq i32 %1634, -1
br i1 %1635, label %1636, label %1664
1636: ; preds = %1626
%1637 = load [7 x i32]*, [7 x i32]** %4
%1638 = load i32, i32* %6
%1639 = sext i32 %1638 to i64
%1640 = getelementptr inbounds [7 x i32], [7 x i32]* %1637, i64 %1639
%1641 = load i32, i32* %7
%1642 = add nsw i32 %1641, 1
%1643 = sext i32 %1642 to i64
%1644 = getelementptr inbounds [7 x i32], [7 x i32]* %1640, i64 0, i64 %1643
%1645 = load i32, i32* %1644
%1646 = icmp eq i32 %1645, -1
br i1 %1646, label %1647, label %1664
1647: ; preds = %1636
%1648 = load [7 x i32]*, [7 x i32]** %4
%1649 = load i32, i32* %6
%1650 = sext i32 %1649 to i64
%1651 = getelementptr inbounds [7 x i32], [7 x i32]* %1648, i64 %1650
%1652 = load i32, i32* %7
%1653 = add nsw i32 %1652, 2
%1654 = sext i32 %1653 to i64
%1655 = getelementptr inbounds [7 x i32], [7 x i32]* %1651, i64 0, i64 %1654
%1656 = load i32, i32* %1655
%1657 = icmp eq i32 %1656, 0
br i1 %1657, label %1658, label %1664
1658: ; preds = %1647
%1659 = load i32, i32* %7
%1660 = icmp slt i32 %1659, 5
br i1 %1660, label %1661, label %1664
1661: ; preds = %1658
%1662 = load i32, i32* %7
%1663 = add nsw i32 %1662, 2
store i32 %1663, i32* %3
br label %1878
1664: ; preds = %1658, %1647, %1636, %1626
%1665 = load [7 x i32]*, [7 x i32]** %4
%1666 = load i32, i32* %6
%1667 = sext i32 %1666 to i64
%1668 = getelementptr inbounds [7 x i32], [7 x i32]* %1665, i64 %1667
%1669 = load i32, i32* %7
%1670 = sext i32 %1669 to i64
%1671 = getelementptr inbounds [7 x i32], [7 x i32]* %1668, i64 0, i64 %1670
%1672 = load i32, i32* %1671
%1673 = icmp eq i32 %1672, -1
br i1 %1673, label %1674, label %1704
1674: ; preds = %1664
%1675 = load [7 x i32]*, [7 x i32]** %4
%1676 = load i32, i32* %6
%1677 = add nsw i32 %1676, 1
%1678 = sext i32 %1677 to i64
%1679 = getelementptr inbounds [7 x i32], [7 x i32]* %1675, i64 %1678
%1680 = load i32, i32* %7
%1681 = add nsw i32 %1680, 1
%1682 = sext i32 %1681 to i64
%1683 = getelementptr inbounds [7 x i32], [7 x i32]* %1679, i64 0, i64 %1682
%1684 = load i32, i32* %1683
%1685 = icmp eq i32 %1684, -1
br i1 %1685, label %1686, label %1704
1686: ; preds = %1674
%1687 = load [7 x i32]*, [7 x i32]** %4
store i32 2, i32* %6
%1688 = getelementptr inbounds [7 x i32], [7 x i32]* %1687, i64 2
%1689 = load i32, i32* %7
%1690 = add nsw i32 %1689, 2
%1691 = sext i32 %1690 to i64
%1692 = getelementptr inbounds [7 x i32], [7 x i32]* %1688, i64 0, i64 %1691
%1693 = load i32, i32* %1692
%1694 = icmp eq i32 %1693, 0
br i1 %1694, label %1695, label %1704
1695: ; preds = %1686
%1696 = load i32, i32* %6
%1697 = icmp slt i32 %1696, 4
br i1 %1697, label %1698, label %1704
1698: ; preds = %1695
%1699 = load i32, i32* %7
%1700 = icmp slt i32 %1699, 5
br i1 %1700, label %1701, label %1704
1701: ; preds = %1698
%1702 = load i32, i32* %7
%1703 = add nsw i32 %1702, 2
store i32 %1703, i32* %3
br label %1878
1704: ; preds = %1698, %1695, %1686, %1674, %1664
%1705 = load [7 x i32]*, [7 x i32]** %4
%1706 = load i32, i32* %6
%1707 = sext i32 %1706 to i64
%1708 = getelementptr inbounds [7 x i32], [7 x i32]* %1705, i64 %1707
%1709 = load i32, i32* %7
%1710 = sext i32 %1709 to i64
%1711 = getelementptr inbounds [7 x i32], [7 x i32]* %1708, i64 0, i64 %1710
%1712 = load i32, i32* %1711
%1713 = icmp eq i32 %1712, -1
br i1 %1713, label %1714, label %1747
1714: ; preds = %1704
%1715 = load [7 x i32]*, [7 x i32]** %4
%1716 = load i32, i32* %6
%1717 = sub nsw i32 %1716, 1
%1718 = sext i32 %1717 to i64
%1719 = getelementptr inbounds [7 x i32], [7 x i32]* %1715, i64 %1718
%1720 = load i32, i32* %7
%1721 = sub nsw i32 %1720, 1
%1722 = sext i32 %1721 to i64
%1723 = getelementptr inbounds [7 x i32], [7 x i32]* %1719, i64 0, i64 %1722
%1724 = load i32, i32* %1723
%1725 = icmp eq i32 %1724, -1
br i1 %1725, label %1726, label %1747
1726: ; preds = %1714
%1727 = load [7 x i32]*, [7 x i32]** %4
%1728 = load i32, i32* %6
%1729 = sub nsw i32 %1728, 2
%1730 = sext i32 %1729 to i64
%1731 = getelementptr inbounds [7 x i32], [7 x i32]* %1727, i64 %1730
%1732 = load i32, i32* %7
%1733 = sub nsw i32 %1732, 2
%1734 = sext i32 %1733 to i64
%1735 = getelementptr inbounds [7 x i32], [7 x i32]* %1731, i64 0, i64 %1734
%1736 = load i32, i32* %1735
%1737 = icmp eq i32 %1736, 0
br i1 %1737, label %1738, label %1747
1738: ; preds = %1726
%1739 = load i32, i32* %6
%1740 = icmp sgt i32 %1739, 1
br i1 %1740, label %1741, label %1747
1741: ; preds = %1738
%1742 = load i32, i32* %7
%1743 = icmp sgt i32 %1742, 1
br i1 %1743, label %1744, label %1747
1744: ; preds = %1741
%1745 = load i32, i32* %7
%1746 = sub nsw i32 %1745, 2
store i32 %1746, i32* %3
br label %1878
1747: ; preds = %1741, %1738, %1726, %1714, %1704
%1748 = load [7 x i32]*, [7 x i32]** %4
%1749 = load i32, i32* %6
%1750 = sext i32 %1749 to i64
%1751 = getelementptr inbounds [7 x i32], [7 x i32]* %1748, i64 %1750
%1752 = load i32, i32* %7
%1753 = sext i32 %1752 to i64
%1754 = getelementptr inbounds [7 x i32], [7 x i32]* %1751, i64 0, i64 %1753
%1755 = load i32, i32* %1754
%1756 = icmp eq i32 %1755, -1
br i1 %1756, label %1757, label %1790
1757: ; preds = %1747
%1758 = load [7 x i32]*, [7 x i32]** %4
%1759 = load i32, i32* %6
%1760 = sub nsw i32 %1759, 1
%1761 = sext i32 %1760 to i64
%1762 = getelementptr inbounds [7 x i32], [7 x i32]* %1758, i64 %1761
%1763 = load i32, i32* %7
%1764 = add nsw i32 %1763, 1
%1765 = sext i32 %1764 to i64
%1766 = getelementptr inbounds [7 x i32], [7 x i32]* %1762, i64 0, i64 %1765
%1767 = load i32, i32* %1766
%1768 = icmp eq i32 %1767, -1
br i1 %1768, label %1769, label %1790
1769: ; preds = %1757
%1770 = load [7 x i32]*, [7 x i32]** %4
%1771 = load i32, i32* %6
%1772 = sub nsw i32 %1771, 2
%1773 = sext i32 %1772 to i64
%1774 = getelementptr inbounds [7 x i32], [7 x i32]* %1770, i64 %1773
%1775 = load i32, i32* %7
%1776 = add nsw i32 %1775, 2
%1777 = sext i32 %1776 to i64
%1778 = getelementptr inbounds [7 x i32], [7 x i32]* %1774, i64 0, i64 %1777
%1779 = load i32, i32* %1778
%1780 = icmp eq i32 %1779, 0
br i1 %1780, label %1781, label %1790
1781: ; preds = %1769
%1782 = load i32, i32* %6
%1783 = icmp sgt i32 %1782, 1
br i1 %1783, label %1784, label %1790
1784: ; preds = %1781
%1785 = load i32, i32* %7
%1786 = icmp slt i32 %1785, 5
br i1 %1786, label %1787, label %1790
1787: ; preds = %1784
%1788 = load i32, i32* %7
%1789 = add nsw i32 %1788, 2
store i32 %1789, i32* %3
br label %1878
1790: ; preds = %1784, %1781, %1769, %1757, %1747
%1791 = load [7 x i32]*, [7 x i32]** %4
%1792 = load i32, i32* %6
%1793 = sext i32 %1792 to i64
%1794 = getelementptr inbounds [7 x i32], [7 x i32]* %1791, i64 %1793
%1795 = load i32, i32* %7
%1796 = sext i32 %1795 to i64
%1797 = getelementptr inbounds [7 x i32], [7 x i32]* %1794, i64 0, i64 %1796
%1798 = load i32, i32* %1797
%1799 = icmp eq i32 %1798, -1
br i1 %1799, label %1800, label %1833
1800: ; preds = %1790
%1801 = load [7 x i32]*, [7 x i32]** %4
%1802 = load i32, i32* %6
%1803 = add nsw i32 %1802, 1
%1804 = sext i32 %1803 to i64
%1805 = getelementptr inbounds [7 x i32], [7 x i32]* %1801, i64 %1804
%1806 = load i32, i32* %7
%1807 = sub nsw i32 %1806, 1
%1808 = sext i32 %1807 to i64
%1809 = getelementptr inbounds [7 x i32], [7 x i32]* %1805, i64 0, i64 %1808
%1810 = load i32, i32* %1809
%1811 = icmp eq i32 %1810, -1
br i1 %1811, label %1812, label %1833
1812: ; preds = %1800
%1813 = load [7 x i32]*, [7 x i32]** %4
%1814 = load i32, i32* %6
%1815 = add nsw i32 %1814, 2
%1816 = sext i32 %1815 to i64
%1817 = getelementptr inbounds [7 x i32], [7 x i32]* %1813, i64 %1816
%1818 = load i32, i32* %7
%1819 = sub nsw i32 %1818, 2
%1820 = sext i32 %1819 to i64
%1821 = getelementptr inbounds [7 x i32], [7 x i32]* %1817, i64 0, i64 %1820
%1822 = load i32, i32* %1821
%1823 = icmp eq i32 %1822, 0
br i1 %1823, label %1824, label %1833
1824: ; preds = %1812
%1825 = load i32, i32* %6
%1826 = icmp slt i32 %1825, 4
br i1 %1826, label %1827, label %1833
1827: ; preds = %1824
%1828 = load i32, i32* %7
%1829 = icmp sgt i32 %1828, 1
br i1 %1829, label %1830, label %1833
1830: ; preds = %1827
%1831 = load i32, i32* %7
%1832 = sub nsw i32 %1831, 2
store i32 %1832, i32* %3
br label %1878
1833: ; preds = %1827, %1824, %1812, %1800, %1790
br label %1834
1834: ; preds = %1833
br label %1835
1835: ; preds = %1834
br label %1836
1836: ; preds = %1835
br label %1837
1837: ; preds = %1836
br label %1838
1838: ; preds = %1837
br label %1839
1839: ; preds = %1838
br label %1840
1840: ; preds = %1839
br label %1841
1841: ; preds = %1840
br label %1842
1842: ; preds = %1841
br label %1843
1843: ; preds = %1842
br label %1844
1844: ; preds = %1843
br label %1845
1845: ; preds = %1844
br label %1846
1846: ; preds = %1845
br label %1847
1847: ; preds = %1846
br label %1848
1848: ; preds = %1847
br label %1849
1849: ; preds = %1848
br label %1850
1850: ; preds = %1849
br label %1851
1851: ; preds = %1850
%1852 = load i32, i32* %7
%1853 = add nsw i32 %1852, 1
store i32 %1853, i32* %7
br label %952
1854: ; preds = %952
br label %1855
1855: ; preds = %1854
%1856 = load i32, i32* %6
%1857 = add nsw i32 %1856, 1
store i32 %1857, i32* %6
br label %948
1858: ; preds = %948
store i32 0, i32* %8
br label %1859
1859: ; preds = %1873, %1858
%1860 = load i32, i32* %8
%1861 = icmp slt i32 %1860, 6
br i1 %1861, label %1862, label %1876
1862: ; preds = %1859
%1863 = load [7 x i32]*, [7 x i32]** %4
%1864 = getelementptr inbounds [7 x i32], [7 x i32]* %1863, i64 0
%1865 = load i32, i32* %8
%1866 = sext i32 %1865 to i64
%1867 = getelementptr inbounds [7 x i32], [7 x i32]* %1864, i64 0, i64 %1866
%1868 = load i32, i32* %1867
%1869 = icmp eq i32 %1868, 0
br i1 %1869, label %1870, label %1872
1870: ; preds = %1862
%1871 = load i32, i32* %8
store i32 %1871, i32* %3
br label %1878
1872: ; preds = %1862
br label %1873
1873: ; preds = %1872
%1874 = load i32, i32* %8
%1875 = add nsw i32 %1874, 1
store i32 %1875, i32* %8
br label %1859
1876: ; preds = %1859
store i32 0, i32* %3
br label %1878
1877: ; preds = %944
br label %1878
1878: ; preds = %65, %113, %168, %223, %278, %333, %382, %430, %485, %540, %595, %650, %688, %725, %768, %811, %854, %897, %937, %943, %1001, %1049, %1104, %1159, %1214, %1269, %1318, %1366, %1421, %1476, %1531, %1586, %1624, %1661, %1701, %1744, %1787, %1830, %1870, %1876, %1877
%1879 = load i32, i32* %3
ret i32 %1879
}

LLVM IR (-O2):
define i32 @bot([7 x i32]* %0, i32 %1) {
switch i32 %1, label %782 [
i32 1, label %3
i32 -1, label %299
]
3: ; preds = %2, %272
%4 = phi i64 [ %5, %272 ], [ 0, %2 ]
%5 = add nuw nsw i64 %4, 1
%6 = add nuw nsw i64 %4, 2
%7 = add nuw nsw i64 %4, 3
%8 = icmp ult i64 %4, 3
%9 = add nsw i64 %4, -1
%10 = add nsw i64 %4, -2
%11 = add nsw i64 %4, -3
%12 = icmp ugt i64 %4, 2
%13 = icmp ult i64 %4, 4
%14 = icmp ugt i64 %4, 1
br label %15
15: ; preds = %3, %269
%16 = phi i64 [ 0, %3 ], [ %270, %269 ]
%17 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %16
%18 = load i32, i32* %17
switch i32 %18, label %19 [
i32 1, label %21
i32 -1, label %120
]
19: ; preds = %15
%20 = add nuw nsw i64 %16, 1
br label %269
21: ; preds = %15
%22 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %16
%23 = load i32, i32* %22
%24 = icmp eq i32 %23, 1
br i1 %24, label %25, label %34
25: ; preds = %21
%26 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %16
%27 = load i32, i32* %26
%28 = icmp eq i32 %27, 1
br i1 %28, label %29, label %34
29: ; preds = %25
%30 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %16
%31 = load i32, i32* %30
%32 = icmp eq i32 %31, 0
%33 = select i1 %32, i1 %8, i1 false
br i1 %33, label %680, label %34
34: ; preds = %29, %25, %21
%35 = add nuw nsw i64 %16, 1
%36 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %35
%37 = load i32, i32* %36
%38 = icmp eq i32 %37, 1
br i1 %38, label %39, label %51
39: ; preds = %34
%40 = add nuw nsw i64 %16, 2
%41 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %40
%42 = load i32, i32* %41
%43 = icmp eq i32 %42, 1
br i1 %43, label %44, label %51
44: ; preds = %39
%45 = add nuw nsw i64 %16, 3
%46 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %45
%47 = load i32, i32* %46
%48 = icmp eq i32 %47, 0
%49 = icmp ult i64 %16, 4
%50 = select i1 %48, i1 %49, i1 false
br i1 %50, label %682, label %51
51: ; preds = %44, %39, %34
%52 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %35
%53 = load i32, i32* %52
%54 = icmp eq i32 %53, 1
br i1 %54, label %55, label %68
55: ; preds = %51
%56 = add nuw nsw i64 %16, 2
%57 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %56
%58 = load i32, i32* %57
%59 = icmp eq i32 %58, 1
br i1 %59, label %60, label %68
60: ; preds = %55
%61 = add nuw nsw i64 %16, 3
%62 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %61
%63 = load i32, i32* %62
%64 = icmp eq i32 %63, 0
%65 = select i1 %64, i1 %8, i1 false
%66 = icmp ult i64 %16, 4
%67 = select i1 %65, i1 %66, i1 false
br i1 %67, label %685, label %68
68: ; preds = %60, %55, %51
%69 = add nsw i64 %16, -1
%70 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %9, i64 %69
%71 = load i32, i32* %70
%72 = icmp eq i32 %71, 1
br i1 %72, label %73, label %86
73: ; preds = %68
%74 = add nsw i64 %16, -2
%75 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %74
%76 = load i32, i32* %75
%77 = icmp eq i32 %76, 1
br i1 %77, label %78, label %86
78: ; preds = %73
%79 = add nsw i64 %16, -3
%80 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %11, i64 %79
%81 = load i32, i32* %80
%82 = icmp eq i32 %81, 0
%83 = select i1 %82, i1 %12, i1 false
%84 = icmp ugt i64 %16, 2
%85 = select i1 %83, i1 %84, i1 false
br i1 %85, label %688, label %86
86: ; preds = %78, %73, %68
%87 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %9, i64 %35
%88 = load i32, i32* %87
%89 = icmp eq i32 %88, 1
br i1 %89, label %90, label %103
90: ; preds = %86
%91 = add nuw nsw i64 %16, 2
%92 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %91
%93 = load i32, i32* %92
%94 = icmp eq i32 %93, 1
br i1 %94, label %95, label %103
95: ; preds = %90
%96 = add nuw nsw i64 %16, 3
%97 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %11, i64 %96
%98 = load i32, i32* %97
%99 = icmp eq i32 %98, 0
%100 = select i1 %99, i1 %12, i1 false
%101 = icmp ult i64 %16, 4
%102 = select i1 %100, i1 %101, i1 false
br i1 %102, label %691, label %103
103: ; preds = %95, %90, %86
%104 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %69
%105 = load i32, i32* %104
%106 = icmp eq i32 %105, 1
br i1 %106, label %107, label %219
107: ; preds = %103
%108 = add nsw i64 %16, -2
%109 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %108
%110 = load i32, i32* %109
%111 = icmp eq i32 %110, 1
br i1 %111, label %112, label %219
112: ; preds = %107
%113 = add nsw i64 %16, -3
%114 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %113
%115 = load i32, i32* %114
%116 = icmp eq i32 %115, 0
%117 = select i1 %116, i1 %8, i1 false
%118 = icmp ugt i64 %16, 2
%119 = select i1 %117, i1 %118, i1 false
br i1 %119, label %694, label %219
120: ; preds = %15
%121 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %16
%122 = load i32, i32* %121
%123 = icmp eq i32 %122, -1
br i1 %123, label %124, label %133
124: ; preds = %120
%125 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %16
%126 = load i32, i32* %125
%127 = icmp eq i32 %126, -1
br i1 %127, label %128, label %133
128: ; preds = %124
%129 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %16
%130 = load i32, i32* %129
%131 = icmp eq i32 %130, 0
%132 = select i1 %131, i1 %8, i1 false
br i1 %132, label %697, label %133
133: ; preds = %128, %124, %120
%134 = add nuw nsw i64 %16, 1
%135 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %134
%136 = load i32, i32* %135
%137 = icmp eq i32 %136, -1
br i1 %137, label %138, label %150
138: ; preds = %133
%139 = add nuw nsw i64 %16, 2
%140 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %139
%141 = load i32, i32* %140
%142 = icmp eq i32 %141, -1
br i1 %142, label %143, label %150
143: ; preds = %138
%144 = add nuw nsw i64 %16, 3
%145 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %144
%146 = load i32, i32* %145
%147 = icmp eq i32 %146, 0
%148 = icmp ult i64 %16, 4
%149 = select i1 %147, i1 %148, i1 false
br i1 %149, label %699, label %150
150: ; preds = %133, %138, %143
%151 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %134
%152 = load i32, i32* %151
%153 = icmp eq i32 %152, -1
br i1 %153, label %154, label %167
154: ; preds = %150
%155 = add nuw nsw i64 %16, 2
%156 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %155
%157 = load i32, i32* %156
%158 = icmp eq i32 %157, -1
br i1 %158, label %159, label %167
159: ; preds = %154
%160 = add nuw nsw i64 %16, 3
%161 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %160
%162 = load i32, i32* %161
%163 = icmp eq i32 %162, 0
%164 = select i1 %163, i1 %8, i1 false
%165 = icmp ult i64 %16, 4
%166 = select i1 %164, i1 %165, i1 false
br i1 %166, label %702, label %167
167: ; preds = %159, %154, %150
%168 = add nsw i64 %16, -1
%169 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %9, i64 %168
%170 = load i32, i32* %169
%171 = icmp eq i32 %170, -1
br i1 %171, label %172, label %185
172: ; preds = %167
%173 = add nsw i64 %16, -2
%174 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %173
%175 = load i32, i32* %174
%176 = icmp eq i32 %175, -1
br i1 %176, label %177, label %185
177: ; preds = %172
%178 = add nsw i64 %16, -3
%179 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %11, i64 %178
%180 = load i32, i32* %179
%181 = icmp eq i32 %180, 0
%182 = select i1 %181, i1 %12, i1 false
%183 = icmp ugt i64 %16, 2
%184 = select i1 %182, i1 %183, i1 false
br i1 %184, label %705, label %185
185: ; preds = %167, %172, %177
%186 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %9, i64 %134
%187 = load i32, i32* %186
%188 = icmp eq i32 %187, -1
br i1 %188, label %189, label %202
189: ; preds = %185
%190 = add nuw nsw i64 %16, 2
%191 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %190
%192 = load i32, i32* %191
%193 = icmp eq i32 %192, -1
br i1 %193, label %194, label %202
194: ; preds = %189
%195 = add nuw nsw i64 %16, 3
%196 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %11, i64 %195
%197 = load i32, i32* %196
%198 = icmp eq i32 %197, 0
%199 = select i1 %198, i1 %12, i1 false
%200 = icmp ult i64 %16, 4
%201 = select i1 %199, i1 %200, i1 false
br i1 %201, label %708, label %202
202: ; preds = %194, %189, %185
%203 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %5, i64 %168
%204 = load i32, i32* %203
%205 = icmp eq i32 %204, -1
br i1 %205, label %206, label %269
206: ; preds = %202
%207 = add nsw i64 %16, -2
%208 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %207
%209 = load i32, i32* %208
%210 = icmp eq i32 %209, -1
br i1 %210, label %211, label %269
211: ; preds = %206
%212 = add nsw i64 %16, -3
%213 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %7, i64 %212
%214 = load i32, i32* %213
%215 = icmp eq i32 %214, 0
%216 = select i1 %215, i1 %8, i1 false
%217 = icmp ugt i64 %16, 2
%218 = select i1 %216, i1 %217, i1 false
br i1 %218, label %711, label %269
219: ; preds = %112, %107, %103
br i1 %24, label %220, label %225
220: ; preds = %219
%221 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %16
%222 = load i32, i32* %221
%223 = icmp eq i32 %222, 0
%224 = select i1 %223, i1 %13, i1 false
br i1 %224, label %714, label %225
225: ; preds = %220, %219
br i1 %38, label %226, label %233
226: ; preds = %225
%227 = add nuw nsw i64 %16, 2
%228 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %4, i64 %227
%229 = load i32, i32* %228
%230 = icmp eq i32 %229, 0
%231 = icmp ult i64 %16, 5
%232 = select i1 %230, i1 %231, i1 false
br i1 %232, label %716, label %233
233: ; preds = %225, %226
br i1 %54, label %234, label %242
234: ; preds = %233
%235 = add nuw nsw i64 %16, 2
%236 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %235
%237 = load i32, i32* %236
%238 = icmp eq i32 %237, 0
%239 = select i1 %238, i1 %13, i1 false
%240 = icmp ult i64 %16, 5
%241 = select i1 %239, i1 %240, i1 false
br i1 %241, label %719, label %242
242: ; preds = %234, %233
br i1 %72, label %243, label %251
243: ; preds = %242
%244 = add nsw i64 %16, -2
%245 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %244
%246 = load i32, i32* %245
%247 = icmp eq i32 %246, 0
%248 = icmp ugt i64 %16, 1
%249 = select i1 %247, i1 %248, i1 false
%250 = select i1 %249, i1 %14, i1 false
br i1 %250, label %722, label %251
251: ; preds = %242, %243
br i1 %89, label %252, label %260
252: ; preds = %251
%253 = add nuw nsw i64 %16, 2
%254 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %10, i64 %253
%255 = load i32, i32* %254
%256 = icmp eq i32 %255, 0
%257 = select i1 %256, i1 %14, i1 false
%258 = icmp ult i64 %16, 5
%259 = select i1 %257, i1 %258, i1 false
br i1 %259, label %725, label %260
260: ; preds = %252, %251
br i1 %106, label %261, label %269
261: ; preds = %260
%262 = add nsw i64 %16, -2
%263 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %262
%264 = load i32, i32* %263
%265 = icmp eq i32 %264, 0
%266 = select i1 %265, i1 %13, i1 false
%267 = icmp ugt i64 %16, 1
%268 = select i1 %266, i1 %267, i1 false
br i1 %268, label %728, label %269
269: ; preds = %19, %202, %206, %211, %261, %260
%270 = phi i64 [ %20, %19 ], [ %134, %202 ], [ %134, %206 ], [ %134, %211 ], [ %35, %261 ], [ %35, %260 ]
%271 = icmp eq i64 %270, 7
br i1 %271, label %272, label %15
272: ; preds = %269
%273 = icmp eq i64 %5, 6
br i1 %273, label %274, label %3
274: ; preds = %272
%275 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 0
%276 = load i32, i32* %275
%277 = icmp eq i32 %276, 0
br i1 %277, label %782, label %278
278: ; preds = %274
%279 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 1
%280 = load i32, i32* %279
%281 = icmp eq i32 %280, 0
br i1 %281, label %782, label %282
282: ; preds = %278
%283 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 2
%284 = load i32, i32* %283
%285 = icmp eq i32 %284, 0
br i1 %285, label %782, label %286
286: ; preds = %282
%287 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 3
%288 = load i32, i32* %287
%289 = icmp eq i32 %288, 0
br i1 %289, label %782, label %290
290: ; preds = %286
%291 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 4
%292 = load i32, i32* %291
%293 = icmp eq i32 %292, 0
br i1 %293, label %782, label %294
294: ; preds = %290
%295 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 5
%296 = load i32, i32* %295
%297 = icmp eq i32 %296, 0
%298 = select i1 %297, i32 5, i32 0
br label %782
299: ; preds = %2, %649
%300 = phi i64 [ %650, %649 ], [ 0, %2 ]
%301 = phi i32 [ %651, %649 ], [ 0, %2 ]
%302 = sext i32 %301 to i64
%303 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %300
%304 = load i32, i32* %303
switch i32 %304, label %590 [
i32 -1, label %305
i32 1, label %433
]
305: ; preds = %299
%306 = add nsw i32 %301, 1
%307 = sext i32 %306 to i64
%308 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %307, i64 %300
%309 = load i32, i32* %308
%310 = icmp eq i32 %309, -1
br i1 %310, label %311, label %325
311: ; preds = %305
%312 = add nsw i32 %301, 2
%313 = sext i32 %312 to i64
%314 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %313, i64 %300
%315 = load i32, i32* %314
%316 = icmp eq i32 %315, -1
br i1 %316, label %317, label %325
317: ; preds = %311
%318 = add nsw i32 %301, 3
%319 = sext i32 %318 to i64
%320 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %319, i64 %300
%321 = load i32, i32* %320
%322 = icmp eq i32 %321, 0
%323 = icmp slt i32 %301, 3
%324 = select i1 %322, i1 %323, i1 false
br i1 %324, label %731, label %325
325: ; preds = %317, %311, %305
%326 = add nuw nsw i64 %300, 1
%327 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %326
%328 = load i32, i32* %327
%329 = icmp eq i32 %328, -1
br i1 %329, label %330, label %342
330: ; preds = %325
%331 = add nuw nsw i64 %300, 2
%332 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %331
%333 = load i32, i32* %332
%334 = icmp eq i32 %333, -1
br i1 %334, label %335, label %342
335: ; preds = %330
%336 = add nuw nsw i64 %300, 3
%337 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %336
%338 = load i32, i32* %337
%339 = icmp eq i32 %338, 0
%340 = icmp ult i64 %300, 4
%341 = select i1 %339, i1 %340, i1 false
br i1 %341, label %733, label %342
342: ; preds = %335, %330, %325
%343 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %307, i64 %326
%344 = load i32, i32* %343
%345 = icmp eq i32 %344, -1
br i1 %345, label %346, label %364
346: ; preds = %342
%347 = add nsw i32 %301, 2
%348 = sext i32 %347 to i64
%349 = add nuw nsw i64 %300, 2
%350 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %348, i64 %349
%351 = load i32, i32* %350
%352 = icmp eq i32 %351, -1
br i1 %352, label %353, label %364
353: ; preds = %346
%354 = add nsw i32 %301, 3
%355 = sext i32 %354 to i64
%356 = add nuw nsw i64 %300, 3
%357 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %355, i64 %356
%358 = load i32, i32* %357
%359 = icmp eq i32 %358, 0
%360 = icmp slt i32 %301, 3
%361 = select i1 %359, i1 %360, i1 false
%362 = icmp ult i64 %300, 4
%363 = select i1 %361, i1 %362, i1 false
br i1 %363, label %736, label %364
364: ; preds = %353, %346, %342
%365 = add nsw i32 %301, -1
%366 = sext i32 %365 to i64
%367 = add nsw i64 %300, -1
%368 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %366, i64 %367
%369 = load i32, i32* %368
%370 = icmp eq i32 %369, -1
br i1 %370, label %371, label %389
371: ; preds = %364
%372 = add nsw i32 %301, -2
%373 = sext i32 %372 to i64
%374 = add nsw i64 %300, -2
%375 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %373, i64 %374
%376 = load i32, i32* %375
%377 = icmp eq i32 %376, -1
br i1 %377, label %378, label %389
378: ; preds = %371
%379 = add nsw i32 %301, -3
%380 = sext i32 %379 to i64
%381 = add nsw i64 %300, -3
%382 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %380, i64 %381
%383 = load i32, i32* %382
%384 = icmp eq i32 %383, 0
%385 = icmp sgt i32 %301, 2
%386 = select i1 %384, i1 %385, i1 false
%387 = icmp ugt i64 %300, 2
%388 = select i1 %386, i1 %387, i1 false
br i1 %388, label %739, label %389
389: ; preds = %378, %371, %364
%390 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %366, i64 %326
%391 = load i32, i32* %390
%392 = icmp eq i32 %391, -1
br i1 %392, label %393, label %411
393: ; preds = %389
%394 = add nsw i32 %301, -2
%395 = sext i32 %394 to i64
%396 = add nuw nsw i64 %300, 2
%397 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %395, i64 %396
%398 = load i32, i32* %397
%399 = icmp eq i32 %398, -1
br i1 %399, label %400, label %411
400: ; preds = %393
%401 = add nsw i32 %301, -3
%402 = sext i32 %401 to i64
%403 = add nuw nsw i64 %300, 3
%404 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %402, i64 %403
%405 = load i32, i32* %404
%406 = icmp eq i32 %405, 0
%407 = icmp sgt i32 %301, 2
%408 = select i1 %406, i1 %407, i1 false
%409 = icmp ult i64 %300, 4
%410 = select i1 %408, i1 %409, i1 false
br i1 %410, label %742, label %411
411: ; preds = %400, %393, %389
%412 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %307, i64 %367
%413 = load i32, i32* %412
%414 = icmp eq i32 %413, -1
br i1 %414, label %415, label %561
415: ; preds = %411
%416 = add nsw i32 %301, 2
%417 = sext i32 %416 to i64
%418 = add nsw i64 %300, -2
%419 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %417, i64 %418
%420 = load i32, i32* %419
%421 = icmp eq i32 %420, -1
br i1 %421, label %422, label %561
422: ; preds = %415
%423 = add nsw i32 %301, 3
%424 = sext i32 %423 to i64
%425 = add nsw i64 %300, -3
%426 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %424, i64 %425
%427 = load i32, i32* %426
%428 = icmp eq i32 %427, 0
%429 = icmp slt i32 %301, 3
%430 = select i1 %428, i1 %429, i1 false
%431 = icmp ugt i64 %300, 2
%432 = select i1 %430, i1 %431, i1 false
br i1 %432, label %745, label %561
433: ; preds = %299
%434 = add nsw i32 %301, 1
%435 = sext i32 %434 to i64
%436 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %435, i64 %300
%437 = load i32, i32* %436
%438 = icmp eq i32 %437, 1
br i1 %438, label %439, label %453
439: ; preds = %433
%440 = add nsw i32 %301, 2
%441 = sext i32 %440 to i64
%442 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %441, i64 %300
%443 = load i32, i32* %442
%444 = icmp eq i32 %443, 1
br i1 %444, label %445, label %453
445: ; preds = %439
%446 = add nsw i32 %301, 3
%447 = sext i32 %446 to i64
%448 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %447, i64 %300
%449 = load i32, i32* %448
%450 = icmp eq i32 %449, 0
%451 = icmp slt i32 %301, 3
%452 = select i1 %450, i1 %451, i1 false
br i1 %452, label %748, label %453
453: ; preds = %445, %439, %433
%454 = add nuw nsw i64 %300, 1
%455 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %454
%456 = load i32, i32* %455
%457 = icmp eq i32 %456, 1
br i1 %457, label %458, label %470
458: ; preds = %453
%459 = add nuw nsw i64 %300, 2
%460 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %459
%461 = load i32, i32* %460
%462 = icmp eq i32 %461, 1
br i1 %462, label %463, label %470
463: ; preds = %458
%464 = add nuw nsw i64 %300, 3
%465 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %464
%466 = load i32, i32* %465
%467 = icmp eq i32 %466, 0
%468 = icmp ult i64 %300, 4
%469 = select i1 %467, i1 %468, i1 false
br i1 %469, label %750, label %470
470: ; preds = %453, %458, %463
%471 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %435, i64 %454
%472 = load i32, i32* %471
%473 = icmp eq i32 %472, 1
br i1 %473, label %474, label %492
474: ; preds = %470
%475 = add nsw i32 %301, 2
%476 = sext i32 %475 to i64
%477 = add nuw nsw i64 %300, 2
%478 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %476, i64 %477
%479 = load i32, i32* %478
%480 = icmp eq i32 %479, 1
br i1 %480, label %481, label %492
481: ; preds = %474
%482 = add nsw i32 %301, 3
%483 = sext i32 %482 to i64
%484 = add nuw nsw i64 %300, 3
%485 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %483, i64 %484
%486 = load i32, i32* %485
%487 = icmp eq i32 %486, 0
%488 = icmp slt i32 %301, 3
%489 = select i1 %487, i1 %488, i1 false
%490 = icmp ult i64 %300, 4
%491 = select i1 %489, i1 %490, i1 false
br i1 %491, label %753, label %492
492: ; preds = %481, %474, %470
%493 = add nsw i32 %301, -1
%494 = sext i32 %493 to i64
%495 = add nsw i64 %300, -1
%496 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %494, i64 %495
%497 = load i32, i32* %496
%498 = icmp eq i32 %497, 1
br i1 %498, label %499, label %517
499: ; preds = %492
%500 = add nsw i32 %301, -2
%501 = sext i32 %500 to i64
%502 = add nsw i64 %300, -2
%503 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %501, i64 %502
%504 = load i32, i32* %503
%505 = icmp eq i32 %504, 1
br i1 %505, label %506, label %517
506: ; preds = %499
%507 = add nsw i32 %301, -3
%508 = sext i32 %507 to i64
%509 = add nsw i64 %300, -3
%510 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %508, i64 %509
%511 = load i32, i32* %510
%512 = icmp eq i32 %511, 0
%513 = icmp sgt i32 %301, 2
%514 = select i1 %512, i1 %513, i1 false
%515 = icmp ugt i64 %300, 2
%516 = select i1 %514, i1 %515, i1 false
br i1 %516, label %756, label %517
517: ; preds = %492, %499, %506
%518 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %494, i64 %454
%519 = load i32, i32* %518
%520 = icmp eq i32 %519, 1
br i1 %520, label %521, label %539
521: ; preds = %517
%522 = add nsw i32 %301, -2
%523 = sext i32 %522 to i64
%524 = add nuw nsw i64 %300, 2
%525 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %523, i64 %524
%526 = load i32, i32* %525
%527 = icmp eq i32 %526, 1
br i1 %527, label %528, label %539
528: ; preds = %521
%529 = add nsw i32 %301, -3
%530 = sext i32 %529 to i64
%531 = add nuw nsw i64 %300, 3
%532 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %530, i64 %531
%533 = load i32, i32* %532
%534 = icmp eq i32 %533, 0
%535 = icmp sgt i32 %301, 2
%536 = select i1 %534, i1 %535, i1 false
%537 = icmp ult i64 %300, 4
%538 = select i1 %536, i1 %537, i1 false
br i1 %538, label %759, label %539
539: ; preds = %528, %521, %517
%540 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %435, i64 %495
%541 = load i32, i32* %540
%542 = icmp eq i32 %541, 1
br i1 %542, label %543, label %590
543: ; preds = %539
%544 = add nsw i32 %301, 2
%545 = sext i32 %544 to i64
%546 = add nsw i64 %300, -2
%547 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %545, i64 %546
%548 = load i32, i32* %547
%549 = icmp eq i32 %548, 1
br i1 %549, label %550, label %590
550: ; preds = %543
%551 = add nsw i32 %301, 3
%552 = sext i32 %551 to i64
%553 = add nsw i64 %300, -3
%554 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %552, i64 %553
%555 = load i32, i32* %554
%556 = icmp eq i32 %555, 0
%557 = icmp slt i32 %301, 3
%558 = select i1 %556, i1 %557, i1 false
%559 = icmp ugt i64 %300, 2
%560 = select i1 %558, i1 %559, i1 false
br i1 %560, label %762, label %590
561: ; preds = %422, %415, %411
br i1 %310, label %562, label %570
562: ; preds = %561
%563 = add nsw i32 %301, 2
%564 = sext i32 %563 to i64
%565 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %564, i64 %300
%566 = load i32, i32* %565
%567 = icmp eq i32 %566, 0
%568 = icmp slt i32 %301, 4
%569 = select i1 %567, i1 %568, i1 false
br i1 %569, label %765, label %570
570: ; preds = %562, %561
br i1 %329, label %571, label %578
571: ; preds = %570
%572 = add nuw nsw i64 %300, 2
%573 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %302, i64 %572
%574 = load i32, i32* %573
%575 = icmp eq i32 %574, 0
%576 = icmp ult i64 %300, 5
%577 = select i1 %575, i1 %576, i1 false
br i1 %577, label %767, label %578
578: ; preds = %570, %571
br i1 %345, label %579, label %593
579: ; preds = %578
%580 = add nuw nsw i64 %300, 2
%581 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 2, i64 %580
%582 = load i32, i32* %581
%583 = icmp eq i32 %582, 0
%584 = icmp ult i64 %300, 5
%585 = select i1 %583, i1 %584, i1 false
br i1 %585, label %770, label %586
586: ; preds = %579
%587 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 2, i64 %300
%588 = load i32, i32* %587
%589 = icmp eq i32 %588, -1
br i1 %589, label %593, label %590
590: ; preds = %299, %550, %543, %539, %586
%591 = phi i32 [ 2, %586 ], [ %301, %539 ], [ %301, %543 ], [ %301, %550 ], [ %301, %299 ]
%592 = add nuw nsw i64 %300, 1
br label %645
593: ; preds = %578, %586
%594 = phi i32 [ 2, %586 ], [ %301, %578 ]
%595 = add nsw i32 %594, -1
%596 = sext i32 %595 to i64
%597 = add nsw i64 %300, -1
%598 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %596, i64 %597
%599 = load i32, i32* %598
%600 = icmp eq i32 %599, -1
br i1 %600, label %601, label %612
601: ; preds = %593
%602 = add nsw i32 %594, -2
%603 = sext i32 %602 to i64
%604 = add nsw i64 %300, -2
%605 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %603, i64 %604
%606 = load i32, i32* %605
%607 = icmp eq i32 %606, 0
%608 = icmp sgt i32 %594, 1
%609 = select i1 %607, i1 %608, i1 false
%610 = icmp ugt i64 %300, 1
%611 = select i1 %609, i1 %610, i1 false
br i1 %611, label %773, label %612
612: ; preds = %601, %593
%613 = add nuw nsw i64 %300, 1
%614 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %596, i64 %613
%615 = load i32, i32* %614
%616 = icmp eq i32 %615, -1
br i1 %616, label %617, label %628
617: ; preds = %612
%618 = add nsw i32 %594, -2
%619 = sext i32 %618 to i64
%620 = add nuw nsw i64 %300, 2
%621 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %619, i64 %620
%622 = load i32, i32* %621
%623 = icmp eq i32 %622, 0
%624 = icmp sgt i32 %594, 1
%625 = select i1 %623, i1 %624, i1 false
%626 = icmp ult i64 %300, 5
%627 = select i1 %625, i1 %626, i1 false
br i1 %627, label %776, label %628
628: ; preds = %617, %612
%629 = add nsw i32 %594, 1
%630 = sext i32 %629 to i64
%631 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %630, i64 %597
%632 = load i32, i32* %631
%633 = icmp eq i32 %632, -1
br i1 %633, label %634, label %645
634: ; preds = %628
%635 = add nsw i32 %594, 2
%636 = sext i32 %635 to i64
%637 = add nsw i64 %300, -2
%638 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %636, i64 %637
%639 = load i32, i32* %638
%640 = icmp eq i32 %639, 0
%641 = icmp slt i32 %594, 4
%642 = select i1 %640, i1 %641, i1 false
%643 = icmp ugt i64 %300, 1
%644 = select i1 %642, i1 %643, i1 false
br i1 %644, label %779, label %645
645: ; preds = %590, %634, %628
%646 = phi i32 [ %591, %590 ], [ %594, %634 ], [ %594, %628 ]
%647 = phi i64 [ %592, %590 ], [ %613, %634 ], [ %613, %628 ]
%648 = icmp eq i64 %647, 7
br i1 %648, label %652, label %649
649: ; preds = %645, %652
%650 = phi i64 [ %647, %645 ], [ 0, %652 ]
%651 = phi i32 [ %646, %645 ], [ %653, %652 ]
br label %299
652: ; preds = %645
%653 = add nsw i32 %646, 1
%654 = icmp slt i32 %646, 5
br i1 %654, label %649, label %655
655: ; preds = %652
%656 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 0
%657 = load i32, i32* %656
%658 = icmp eq i32 %657, 0
br i1 %658, label %782, label %659
659: ; preds = %655
%660 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 1
%661 = load i32, i32* %660
%662 = icmp eq i32 %661, 0
br i1 %662, label %782, label %663
663: ; preds = %659
%664 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 2
%665 = load i32, i32* %664
%666 = icmp eq i32 %665, 0
br i1 %666, label %782, label %667
667: ; preds = %663
%668 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 3
%669 = load i32, i32* %668
%670 = icmp eq i32 %669, 0
br i1 %670, label %782, label %671
671: ; preds = %667
%672 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 4
%673 = load i32, i32* %672
%674 = icmp eq i32 %673, 0
br i1 %674, label %782, label %675
675: ; preds = %671
%676 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 5
%677 = load i32, i32* %676
%678 = icmp eq i32 %677, 0
%679 = select i1 %678, i32 5, i32 0
br label %782
680: ; preds = %29
%681 = trunc i64 %16 to i32
br label %782
682: ; preds = %44
%683 = trunc i64 %16 to i32
%684 = add nuw nsw i32 %683, 3
br label %782
685: ; preds = %60
%686 = trunc i64 %16 to i32
%687 = add nuw nsw i32 %686, 3
br label %782
688: ; preds = %78
%689 = trunc i64 %16 to i32
%690 = add nsw i32 %689, -3
br label %782
691: ; preds = %95
%692 = trunc i64 %16 to i32
%693 = add nuw nsw i32 %692, 3
br label %782
694: ; preds = %112
%695 = trunc i64 %16 to i32
%696 = add nsw i32 %695, -3
br label %782
697: ; preds = %128
%698 = trunc i64 %16 to i32
br label %782
699: ; preds = %143
%700 = trunc i64 %16 to i32
%701 = add nuw nsw i32 %700, 3
br label %782
702: ; preds = %159
%703 = trunc i64 %16 to i32
%704 = add nuw nsw i32 %703, 3
br label %782
705: ; preds = %177
%706 = trunc i64 %16 to i32
%707 = add nsw i32 %706, -3
br label %782
708: ; preds = %194
%709 = trunc i64 %16 to i32
%710 = add nuw nsw i32 %709, 3
br label %782
711: ; preds = %211
%712 = trunc i64 %16 to i32
%713 = add nsw i32 %712, -3
br label %782
714: ; preds = %220
%715 = trunc i64 %16 to i32
br label %782
716: ; preds = %226
%717 = trunc i64 %16 to i32
%718 = add nuw nsw i32 %717, 2
br label %782
719: ; preds = %234
%720 = trunc i64 %16 to i32
%721 = add nuw nsw i32 %720, 2
br label %782
722: ; preds = %243
%723 = trunc i64 %16 to i32
%724 = add nsw i32 %723, -2
br label %782
725: ; preds = %252
%726 = trunc i64 %16 to i32
%727 = add nuw nsw i32 %726, 2
br label %782
728: ; preds = %261
%729 = trunc i64 %16 to i32
%730 = add nsw i32 %729, -2
br label %782
731: ; preds = %317
%732 = trunc i64 %300 to i32
br label %782
733: ; preds = %335
%734 = trunc i64 %300 to i32
%735 = add nuw nsw i32 %734, 3
br label %782
736: ; preds = %353
%737 = trunc i64 %300 to i32
%738 = add nuw nsw i32 %737, 3
br label %782
739: ; preds = %378
%740 = trunc i64 %300 to i32
%741 = add nsw i32 %740, -3
br label %782
742: ; preds = %400
%743 = trunc i64 %300 to i32
%744 = add nuw nsw i32 %743, 3
br label %782
745: ; preds = %422
%746 = trunc i64 %300 to i32
%747 = add nsw i32 %746, -3
br label %782
748: ; preds = %445
%749 = trunc i64 %300 to i32
br label %782
750: ; preds = %463
%751 = trunc i64 %300 to i32
%752 = add nuw nsw i32 %751, 3
br label %782
753: ; preds = %481
%754 = trunc i64 %300 to i32
%755 = add nuw nsw i32 %754, 3
br label %782
756: ; preds = %506
%757 = trunc i64 %300 to i32
%758 = add nsw i32 %757, -3
br label %782
759: ; preds = %528
%760 = trunc i64 %300 to i32
%761 = add nuw nsw i32 %760, 3
br label %782
762: ; preds = %550
%763 = trunc i64 %300 to i32
%764 = add nsw i32 %763, -3
br label %782
765: ; preds = %562
%766 = trunc i64 %300 to i32
br label %782
767: ; preds = %571
%768 = trunc i64 %300 to i32
%769 = add nuw nsw i32 %768, 2
br label %782
770: ; preds = %579
%771 = trunc i64 %300 to i32
%772 = add nuw nsw i32 %771, 2
br label %782
773: ; preds = %601
%774 = trunc i64 %300 to i32
%775 = add nsw i32 %774, -2
br label %782
776: ; preds = %617
%777 = trunc i64 %300 to i32
%778 = add nuw nsw i32 %777, 2
br label %782
779: ; preds = %634
%780 = trunc i64 %300 to i32
%781 = add nsw i32 %780, -2
br label %782
782: ; preds = %675, %294, %731, %733, %736, %739, %742, %745, %748, %750, %753, %756, %759, %762, %765, %767, %770, %773, %776, %779, %680, %682, %685, %688, %691, %694, %697, %699, %702, %705, %708, %711, %714, %716, %719, %722, %725, %728, %655, %659, %663, %667, %671, %274, %278, %282, %286, %290, %2
%783 = phi i32 [ undef, %2 ], [ 0, %274 ], [ 1, %278 ], [ 2, %282 ], [ 3, %286 ], [ 4, %290 ], [ 0, %655 ], [ 1, %659 ], [ 2, %663 ], [ 3, %667 ], [ 4, %671 ], [ %298, %294 ], [ %679, %675 ], [ %681, %680 ], [ %684, %682 ], [ %687, %685 ], [ %690, %688 ], [ %693, %691 ], [ %696, %694 ], [ %698, %697 ], [ %701, %699 ], [ %704, %702 ], [ %707, %705 ], [ %710, %708 ], [ %713, %711 ], [ %715, %714 ], [ %718, %716 ], [ %721, %719 ], [ %724, %722 ], [ %727, %725 ], [ %730, %728 ], [ %732, %731 ], [ %735, %733 ], [ %738, %736 ], [ %741, %739 ], [ %744, %742 ], [ %747, %745 ], [ %749, %748 ], [ %752, %750 ], [ %755, %753 ], [ %758, %756 ], [ %761, %759 ], [ %764, %762 ], [ %766, %765 ], [ %769, %767 ], [ %772, %770 ], [ %775, %773 ], [ %778, %776 ], [ %781, %779 ]
ret i32 %783
}