int bot(int grid[6][7], int move) {
  int j, k, m, n, flag = -1, move2;
  if (move == 1)
    move2 = -1;
  else
    move2 = 1;
  for (j = 0; j < 6; j++) {
    for (k = 0; k < 7; k++) {
      if ((grid[j][k] == 0 && grid[j + 1][k] != 0 && j + 1 < 6) ||
          (grid[j][k] == 0 && j == 5)) {
        grid[j][k] = move;
        for (m = 0; m < 6; m++)
          for (n = 0; n < 7; n++) {
            if (grid[m][n] == grid[m][n - 1] &&
                grid[m][n - 1] == grid[m][n - 2] &&
                grid[m][n - 1] == grid[m][n - 3] && grid[m][n - 3] == move &&
                n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m][n + 1] &&
                       grid[m][n + 1] == grid[m][n + 2] &&
                       grid[m][n + 1] == grid[m][n + 3] &&
                       grid[m][n + 3] == move && n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m + 1][n] &&
                       grid[m + 1][n] == grid[m + 2][n] &&
                       grid[m + 1][n] == grid[m + 3][n] &&
                       grid[m + 1][n] == move && m + 3 < 6) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m - 1][n - 1] &&
                       grid[m - 1][n - 1] == grid[m - 2][n - 2] &&
                       grid[m - 1][n - 1] == grid[m - 3][n - 3] &&
                       grid[m - 3][n - 3] == move && m - 3 >= 0 && n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m - 1][n + 1] &&
                       grid[m - 1][n + 1] == grid[m - 2][n + 2] &&
                       grid[m - 1][n + 1] == grid[m - 3][n + 3] &&
                       grid[m - 3][n + 3] == move && m - 3 >= 0 && n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m + 1][n - 1] &&
                       grid[m + 1][n - 1] == grid[m + 2][n - 2] &&
                       grid[m + 1][n - 1] == grid[m + 3][n - 3] &&
                       grid[m + 3][n - 3] == move && m + 3 < 6 && n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            } else if (grid[m][n] == grid[m + 1][n + 1] &&
                       grid[m + 1][n + 1] == grid[m + 2][n + 2] &&
                       grid[m + 1][n + 1] == grid[m + 3][n + 3] &&
                       grid[m + 3][n + 3] == move && m + 3 < 6 && n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            }
          }
        grid[j][k] = move2;
        for (m = 0; m < 6; m++)
          for (n = 0; n < 7; n++) {
            if (grid[m][n] == grid[m][n - 1] &&
                grid[m][n - 1] == grid[m][n - 2] &&
                grid[m][n - 1] == grid[m][n - 3] && grid[m][n - 3] == move2 &&
                n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m][n + 1] &&
                grid[m][n + 1] == grid[m][n + 2] &&
                grid[m][n + 1] == grid[m][n + 3] && grid[m][n + 3] == move2 &&
                n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m + 1][n] &&
                grid[m + 1][n] == grid[m + 2][n] &&
                grid[m + 1][n] == grid[m + 3][n] && grid[m + 1][n] == move2 &&
                m + 3 < 6) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m - 1][n - 1] &&
                grid[m - 1][n - 1] == grid[m - 2][n - 2] &&
                grid[m - 1][n - 1] == grid[m - 3][n - 3] &&
                grid[m - 3][n - 3] == move2 && m - 3 >= 0 && n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m - 1][n + 1] &&
                grid[m - 1][n + 1] == grid[m - 2][n + 2] &&
                grid[m - 1][n + 1] == grid[m - 3][n + 3] &&
                grid[m - 3][n + 3] == move2 && m - 3 >= 0 && n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m + 1][n - 1] &&
                grid[m + 1][n - 1] == grid[m + 2][n - 2] &&
                grid[m + 1][n - 1] == grid[m + 3][n - 3] &&
                grid[m + 3][n - 3] == move2 && m + 3 < 6 && n - 3 >= 0) {
              grid[j][k] = 0;
              return k;
            }
            if (grid[m][n] == grid[m + 1][n + 1] &&
                grid[m + 1][n + 1] == grid[m + 2][n + 2] &&
                grid[m + 1][n + 1] == grid[m + 3][n + 3] &&
                grid[m + 3][n + 3] == move2 && m + 3 < 6 && n + 3 < 7) {
              grid[j][k] = 0;
              return k;
            }
          }
        grid[j][k] = move;
        for (m = 0; m < 6; m++)
          for (n = 0; n < 7; n++)
            if (grid[m][n] == 0 && grid[m + 1][n] != 0 && m + 1 < 6) {
              if ((grid[m][n - 1] == grid[m][n - 2] &&
                   grid[m][n - 1] == grid[m][n - 3] &&
                   grid[m][n - 3] == move2 && n - 3 >= 0) ||
                  (grid[m][n - 1] == grid[m][n - 2] &&
                   grid[m][n - 1] == grid[m][n + 1] && grid[m][n - 1] == -1 &&
                   n - 2 >= 0 && n + 1 < 7)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if ((grid[m][n + 1] == grid[m][n + 2] &&
                   grid[m][n + 1] == grid[m][n + 3] &&
                   grid[m][n + 3] == move2 && n + 3 < 7) ||
                  (grid[m][n - 1] == grid[m][n + 2] &&
                   grid[m][n + 1] == grid[m][n + 2] && grid[m][n - 1] == -1 &&
                   n - 1 >= 0 && n + 2 < 7)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if (grid[m + 1][n] == grid[m + 2][n] &&
                  grid[m + 1][n] == grid[m + 3][n] && grid[m + 1][n] == move2 &&
                  m + 3 < 6) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if ((grid[m - 1][n - 1] == grid[m - 2][n - 2] &&
                   grid[m - 1][n - 1] == grid[m - 3][n - 3] &&
                   grid[m - 3][n - 3] == move2 && m - 3 >= 0 && n - 3 >= 0) ||
                  (grid[m - 1][n - 1] == grid[m - 2][n - 2] &&
                   grid[m - 1][n - 1] == grid[m + 1][n + 1] &&
                   grid[m - 2][n - 2] == -1 && n - 2 >= 0 && n + 1 < 7 &&
                   m - 2 >= 0 && m + 1 < 6)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if ((grid[m - 1][n + 1] == grid[m - 2][n + 2] &&
                   grid[m - 1][n + 1] == grid[m - 3][n + 3] &&
                   grid[m - 3][n + 3] == move2 && m - 3 >= 0 && n + 3 < 7) ||
                  (grid[m + 1][n - 1] == grid[m - 2][n + 2] &&
                   grid[m + 1][n - 1] == grid[m - 1][n + 1] &&
                   grid[m - 2][n + 2] == -1 && n - 1 >= 0 && n + 2 < 7 &&
                   m - 2 >= 0 && m + 1 < 6)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if ((grid[m + 1][n - 1] == grid[m + 2][n - 2] &&
                   grid[m + 1][n - 1] == grid[m + 3][n - 3] &&
                   grid[m + 3][n - 3] == move2 && m + 3 < 6 && n - 3 >= 0) ||
                  (grid[m - 1][n + 1] == grid[m + 2][n - 2] &&
                   grid[m - 1][n + 1] == grid[m + 1][n - 1] &&
                   grid[m + 2][n - 2] == -1 && n - 2 >= 0 && n + 1 < 7 &&
                   m - 1 >= 0 && m + 2 < 6)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
              if ((grid[m + 1][n + 1] == grid[m + 2][n + 2] &&
                   grid[m + 1][n + 1] == grid[m + 3][n + 3] &&
                   grid[m + 3][n + 3] == move2 && m + 3 < 6 && n + 3 < 7) ||
                  (grid[m - 1][n - 1] == grid[m + 2][n + 2] &&
                   grid[m - 1][n - 1] == grid[m + 1][n + 1] &&
                   grid[m + 2][n + 2] == -1 && n - 1 >= 0 && n + 2 < 7 &&
                   m - 1 >= 0 && m + 2 < 6)) {
                grid[j][k] = 0;
                flag = k;
                break;
              }
            }
        grid[j][k] = 0;
      }
    }
  }
  do {
    k = rand() % 7;
  } while (grid[0][k] != 0 && flag != k);
  return k;
}


x86 assembly (clang, -O0):
<bot>:
push   %rbp
mov    %rsp,%rbp
sub    $0x30,%rsp
mov    %rdi,-0x10(%rbp)
mov    %esi,-0x14(%rbp)
movl   $0xffffffff,-0x28(%rbp)
cmpl   $0x1,-0x14(%rbp)
jne    113c <bot+0x2c>
movl   $0xffffffff,-0x2c(%rbp)
jmp    1143 <bot+0x33>
movl   $0x1,-0x2c(%rbp)
movl   $0x0,-0x18(%rbp)
cmpl   $0x6,-0x18(%rbp)
jge    2ef4 <bot+0x1de4>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x7,-0x1c(%rbp)
jge    2ee1 <bot+0x1dd1>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    11b3 <bot+0xa3>
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   $0x0,(%rax,%rcx,4)
je     11b3 <bot+0xa3>
mov    -0x18(%rbp),%eax
add    $0x1,%eax
cmp    $0x6,%eax
jl     11da <bot+0xca>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    2ece <bot+0x1dbe>
cmpl   $0x5,-0x18(%rbp)
jne    2ece <bot+0x1dbe>
mov    -0x14(%rbp),%edx
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
mov    %edx,(%rax,%rcx,4)
movl   $0x0,-0x20(%rbp)
cmpl   $0x6,-0x20(%rbp)
jge    1a3e <bot+0x92e>
movl   $0x0,-0x24(%rbp)
cmpl   $0x7,-0x24(%rbp)
jge    1a2b <bot+0x91b>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    131c <bot+0x20c>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    131c <bot+0x20c>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    131c <bot+0x20c>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    131c <bot+0x20c>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     131c <bot+0x20c>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1423 <bot+0x313>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1423 <bot+0x313>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1423 <bot+0x313>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    1423 <bot+0x313>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    1423 <bot+0x313>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    152a <bot+0x41a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    152a <bot+0x41a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    152a <bot+0x41a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    152a <bot+0x41a>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    152a <bot+0x41a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    165e <bot+0x54e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    165e <bot+0x54e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    165e <bot+0x54e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    165e <bot+0x54e>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     165e <bot+0x54e>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     165e <bot+0x54e>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1792 <bot+0x682>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1792 <bot+0x682>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1792 <bot+0x682>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    1792 <bot+0x682>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     1792 <bot+0x682>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    1792 <bot+0x682>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    18c6 <bot+0x7b6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    18c6 <bot+0x7b6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    18c6 <bot+0x7b6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    18c6 <bot+0x7b6>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    18c6 <bot+0x7b6>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     18c6 <bot+0x7b6>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    19fa <bot+0x8ea>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    19fa <bot+0x8ea>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    19fa <bot+0x8ea>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x14(%rbp),%eax
jne    19fa <bot+0x8ea>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    19fa <bot+0x8ea>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    19fa <bot+0x8ea>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
jmp    19ff <bot+0x8ef>
jmp    1a04 <bot+0x8f4>
jmp    1a09 <bot+0x8f9>
jmp    1a0e <bot+0x8fe>
jmp    1a13 <bot+0x903>
jmp    1a18 <bot+0x908>
jmp    1a1d <bot+0x90d>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    120b <bot+0xfb>
jmp    1a30 <bot+0x920>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    11fa <bot+0xea>
mov    -0x2c(%rbp),%edx
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
mov    %edx,(%rax,%rcx,4)
movl   $0x0,-0x20(%rbp)
cmpl   $0x6,-0x20(%rbp)
jge    2284 <bot+0x1174>
movl   $0x0,-0x24(%rbp)
cmpl   $0x7,-0x24(%rbp)
jge    2271 <bot+0x1161>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1b80 <bot+0xa70>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1b80 <bot+0xa70>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1b80 <bot+0xa70>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    1b80 <bot+0xa70>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     1b80 <bot+0xa70>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1c87 <bot+0xb77>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1c87 <bot+0xb77>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1c87 <bot+0xb77>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    1c87 <bot+0xb77>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    1c87 <bot+0xb77>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1d8e <bot+0xc7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1d8e <bot+0xc7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1d8e <bot+0xc7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    1d8e <bot+0xc7e>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    1d8e <bot+0xc7e>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ec2 <bot+0xdb2>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ec2 <bot+0xdb2>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ec2 <bot+0xdb2>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    1ec2 <bot+0xdb2>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     1ec2 <bot+0xdb2>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     1ec2 <bot+0xdb2>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ff6 <bot+0xee6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ff6 <bot+0xee6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    1ff6 <bot+0xee6>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    1ff6 <bot+0xee6>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     1ff6 <bot+0xee6>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    1ff6 <bot+0xee6>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    212a <bot+0x101a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    212a <bot+0x101a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    212a <bot+0x101a>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    212a <bot+0x101a>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    212a <bot+0x101a>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     212a <bot+0x101a>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    225e <bot+0x114e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    225e <bot+0x114e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    225e <bot+0x114e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    225e <bot+0x114e>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    225e <bot+0x114e>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jge    225e <bot+0x114e>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2f3f <bot+0x1e2f>
jmp    2263 <bot+0x1153>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    1a6f <bot+0x95f>
jmp    2276 <bot+0x1166>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    1a5e <bot+0x94e>
mov    -0x14(%rbp),%edx
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
mov    %edx,(%rax,%rcx,4)
movl   $0x0,-0x20(%rbp)
cmpl   $0x6,-0x20(%rbp)
jge    2eb4 <bot+0x1da4>
movl   $0x0,-0x24(%rbp)
cmpl   $0x7,-0x24(%rbp)
jge    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    2e8e <bot+0x1d7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     2e8e <bot+0x1d7e>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
cmp    $0x6,%eax
jge    2e8e <bot+0x1d7e>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    23b8 <bot+0x12a8>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    23b8 <bot+0x12a8>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    23b8 <bot+0x12a8>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jge    2470 <bot+0x1360>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2495 <bot+0x1385>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2495 <bot+0x1385>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2495 <bot+0x1385>
mov    -0x24(%rbp),%eax
sub    $0x2,%eax
cmp    $0x0,%eax
jl     2495 <bot+0x1385>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
cmp    $0x7,%eax
jge    2495 <bot+0x1385>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2540 <bot+0x1430>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2540 <bot+0x1430>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    2540 <bot+0x1430>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jl     25f8 <bot+0x14e8>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    261d <bot+0x150d>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
movslq -0x20(%rbp),%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    261d <bot+0x150d>
mov    -0x10(%rbp),%rax
movslq -0x20(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    261d <bot+0x150d>
mov    -0x24(%rbp),%eax
sub    $0x1,%eax
cmp    $0x0,%eax
jl     261d <bot+0x150d>
mov    -0x24(%rbp),%eax
add    $0x2,%eax
cmp    $0x7,%eax
jge    261d <bot+0x150d>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    26ed <bot+0x15dd>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
cmp    (%rcx,%rdx,4),%eax
jne    26ed <bot+0x15dd>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    26ed <bot+0x15dd>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    26ed <bot+0x15dd>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    27c0 <bot+0x16b0>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    27c0 <bot+0x16b0>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    27c0 <bot+0x16b0>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     27c0 <bot+0x16b0>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jge    28af <bot+0x179f>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    28d4 <bot+0x17c4>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    28d4 <bot+0x17c4>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    28d4 <bot+0x17c4>
mov    -0x24(%rbp),%eax
sub    $0x2,%eax
cmp    $0x0,%eax
jl     28d4 <bot+0x17c4>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
cmp    $0x7,%eax
jge    28d4 <bot+0x17c4>
mov    -0x20(%rbp),%eax
sub    $0x2,%eax
cmp    $0x0,%eax
jl     28d4 <bot+0x17c4>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
cmp    $0x6,%eax
jge    28d4 <bot+0x17c4>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    29a7 <bot+0x1897>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    29a7 <bot+0x1897>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    29a7 <bot+0x1897>
mov    -0x20(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jl     29a7 <bot+0x1897>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jl     2a96 <bot+0x1986>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2abb <bot+0x19ab>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2abb <bot+0x19ab>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2abb <bot+0x19ab>
mov    -0x24(%rbp),%eax
sub    $0x1,%eax
cmp    $0x0,%eax
jl     2abb <bot+0x19ab>
mov    -0x24(%rbp),%eax
add    $0x2,%eax
cmp    $0x7,%eax
jge    2abb <bot+0x19ab>
mov    -0x20(%rbp),%eax
sub    $0x2,%eax
cmp    $0x0,%eax
jl     2abb <bot+0x19ab>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
cmp    $0x6,%eax
jge    2abb <bot+0x19ab>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2b8e <bot+0x1a7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2b8e <bot+0x1a7e>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    2b8e <bot+0x1a7e>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    2b8e <bot+0x1a7e>
mov    -0x24(%rbp),%eax
sub    $0x3,%eax
cmp    $0x0,%eax
jge    2c7d <bot+0x1b6d>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2ca2 <bot+0x1b92>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
sub    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2ca2 <bot+0x1b92>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2ca2 <bot+0x1b92>
mov    -0x24(%rbp),%eax
sub    $0x2,%eax
cmp    $0x0,%eax
jl     2ca2 <bot+0x1b92>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
cmp    $0x7,%eax
jge    2ca2 <bot+0x1b92>
mov    -0x20(%rbp),%eax
sub    $0x1,%eax
cmp    $0x0,%eax
jl     2ca2 <bot+0x1b92>
mov    -0x20(%rbp),%eax
add    $0x2,%eax
cmp    $0x6,%eax
jge    2ca2 <bot+0x1b92>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2d75 <bot+0x1c65>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x3,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2d75 <bot+0x1c65>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x3,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
cmp    -0x2c(%rbp),%eax
jne    2d75 <bot+0x1c65>
mov    -0x20(%rbp),%eax
add    $0x3,%eax
cmp    $0x6,%eax
jge    2d75 <bot+0x1c65>
mov    -0x24(%rbp),%eax
add    $0x3,%eax
cmp    $0x7,%eax
jl     2e64 <bot+0x1d54>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x2,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2e89 <bot+0x1d79>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
mov    (%rax,%rcx,4),%eax
mov    -0x10(%rbp),%rcx
mov    -0x20(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
imul   $0x1c,%rdx,%rdx
add    %rdx,%rcx
mov    -0x24(%rbp),%edx
add    $0x1,%edx
movslq %edx,%rdx
cmp    (%rcx,%rdx,4),%eax
jne    2e89 <bot+0x1d79>
mov    -0x10(%rbp),%rax
mov    -0x20(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
mov    -0x24(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0xffffffff,(%rax,%rcx,4)
jne    2e89 <bot+0x1d79>
mov    -0x24(%rbp),%eax
sub    $0x1,%eax
cmp    $0x0,%eax
jl     2e89 <bot+0x1d79>
mov    -0x24(%rbp),%eax
add    $0x2,%eax
cmp    $0x7,%eax
jge    2e89 <bot+0x1d79>
mov    -0x20(%rbp),%eax
sub    $0x1,%eax
cmp    $0x0,%eax
jl     2e89 <bot+0x1d79>
mov    -0x20(%rbp),%eax
add    $0x2,%eax
cmp    $0x6,%eax
jge    2e89 <bot+0x1d79>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
mov    -0x1c(%rbp),%eax
mov    %eax,-0x28(%rbp)
jmp    2ea1 <bot+0x1d91>
jmp    2e8e <bot+0x1d7e>
jmp    2e93 <bot+0x1d83>
mov    -0x24(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x24(%rbp)
jmp    22b5 <bot+0x11a5>
jmp    2ea6 <bot+0x1d96>
mov    -0x20(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x20(%rbp)
jmp    22a4 <bot+0x1194>
mov    -0x10(%rbp),%rax
movslq -0x18(%rbp),%rcx
imul   $0x1c,%rcx,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
movl   $0x0,(%rax,%rcx,4)
jmp    2ed3 <bot+0x1dc3>
mov    -0x1c(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x1c(%rbp)
jmp    115b <bot+0x4b>
jmp    2ee6 <bot+0x1dd6>
mov    -0x18(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x18(%rbp)
jmp    114a <bot+0x3a>
jmp    2ef9 <bot+0x1de9>
mov    $0x0,%al
call   1030 <rand@plt>
mov    $0x7,%ecx
cltd
idiv   %ecx
mov    %edx,-0x1c(%rbp)
mov    -0x10(%rbp),%rcx
movslq -0x1c(%rbp),%rdx
xor    %eax,%eax
cmpl   $0x0,(%rcx,%rdx,4)
mov    %al,-0x2d(%rbp)
je     2f2e <bot+0x1e1e>
mov    -0x28(%rbp),%eax
cmp    -0x1c(%rbp),%eax
setne  %al
mov    %al,-0x2d(%rbp)
mov    -0x2d(%rbp),%al
test   $0x1,%al
jne    2ef9 <bot+0x1de9>
mov    -0x1c(%rbp),%eax
mov    %eax,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x30,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<bot>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x28,%rsp
mov    %rdi,%r12
xor    %eax,%eax
cmp    $0x1,%esi
setne  %al
lea    (%rax,%rax,1),%r15d
add    $0xffffffff,%r15d
mov    $0xffffffff,%r14d
xor    %r11d,%r11d
lea    0x1(%r11),%r9
xor    %eax,%eax
jmp    115e <bot+0x4e>
movl   $0x0,0x0(%r13)
nopw   0x0(%rax,%rax,1)
add    $0x1,%rax
cmp    $0x7,%rax
je     17bf <bot+0x6af>
lea    (%r11,%r11,8),%rcx
lea    (%rcx,%rcx,2),%rcx
add    %r11,%rcx
add    %r12,%rcx
cmpl   $0x0,(%rcx,%rax,4)
jne    1150 <bot+0x40>
cmp    $0x5,%r11
setb   %dl
lea    (%r9,%r9,8),%rdi
lea    (%rdi,%rdi,2),%rdi
add    %r9,%rdi
add    %r12,%rdi
cmpl   $0x0,(%rdi,%rax,4)
setne  %bl
test   %dl,%bl
jne    1198 <bot+0x88>
cmp    $0x5,%r11
jne    1150 <bot+0x40>
lea    (%rcx,%rax,4),%r13
mov    %esi,0x0(%r13)
mov    %r12,%rcx
xor    %r10d,%r10d
lea    0x1(%r10),%r8
lea    (%r10,%r10,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %r10,%rdx
mov    (%r12,%rdx,1),%edx
xor    %edi,%edi
jmp    11ce <bot+0xbe>
nopl   (%rax)
add    $0x1,%rdi
cmp    $0x7,%rdi
je     1330 <bot+0x220>
mov    %edx,%ebx
cmp    -0x4(%rcx,%rdi,4),%edx
jne    1200 <bot+0xf0>
cmp    -0x8(%rcx,%rdi,4),%ebx
jne    1200 <bot+0xf0>
mov    -0xc(%rcx,%rdi,4),%edx
cmp    %edx,%ebx
jne    1200 <bot+0xf0>
cmp    %esi,%edx
jne    1200 <bot+0xf0>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
mov    0x4(%rcx,%rdi,4),%edx
cmp    %edx,%ebx
jne    1230 <bot+0x120>
cmp    0x8(%rcx,%rdi,4),%ebx
jne    1230 <bot+0x120>
mov    0xc(%rcx,%rdi,4),%ebp
cmp    %ebp,%ebx
jne    1230 <bot+0x120>
cmp    %esi,%ebp
jne    1230 <bot+0x120>
cmp    $0x4,%rdi
jb     17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
xchg   %ax,%ax
cmp    0x1c(%rcx,%rdi,4),%ebx
jne    1250 <bot+0x140>
cmp    0x38(%rcx,%rdi,4),%ebx
jne    1250 <bot+0x140>
cmp    %esi,%ebx
jne    1250 <bot+0x140>
cmp    0x54(%rcx,%rdi,4),%ebx
jne    1250 <bot+0x140>
cmp    $0x3,%r10
jb     17ce <bot+0x6be>
cmp    -0x20(%rcx,%rdi,4),%ebx
jne    1280 <bot+0x170>
cmp    -0x40(%rcx,%rdi,4),%ebx
jne    1280 <bot+0x170>
mov    -0x60(%rcx,%rdi,4),%ebp
cmp    %ebp,%ebx
jne    1280 <bot+0x170>
cmp    %esi,%ebp
jne    1280 <bot+0x170>
cmp    $0x3,%r10
jb     1280 <bot+0x170>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
nopl   0x0(%rax,%rax,1)
cmp    -0x18(%rcx,%rdi,4),%ebx
jne    12b0 <bot+0x1a0>
cmp    -0x30(%rcx,%rdi,4),%ebx
jne    12b0 <bot+0x1a0>
mov    -0x48(%rcx,%rdi,4),%ebp
cmp    %ebp,%ebx
jne    12b0 <bot+0x1a0>
cmp    %esi,%ebp
jne    12b0 <bot+0x1a0>
cmp    $0x3,%r10
jb     12b0 <bot+0x1a0>
cmp    $0x4,%rdi
jb     17ce <bot+0x6be>
nopl   0x0(%rax,%rax,1)
cmp    0x18(%rcx,%rdi,4),%ebx
jne    12e0 <bot+0x1d0>
cmp    0x30(%rcx,%rdi,4),%ebx
jne    12e0 <bot+0x1d0>
mov    0x48(%rcx,%rdi,4),%ebp
cmp    %ebp,%ebx
jne    12e0 <bot+0x1d0>
cmp    %esi,%ebp
jne    12e0 <bot+0x1d0>
cmp    $0x2,%r10
ja     12e0 <bot+0x1d0>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
nopl   0x0(%rax,%rax,1)
cmp    0x20(%rcx,%rdi,4),%ebx
jne    11c0 <bot+0xb0>
cmp    0x40(%rcx,%rdi,4),%ebx
jne    11c0 <bot+0xb0>
mov    0x60(%rcx,%rdi,4),%ebp
cmp    %ebp,%ebx
jne    11c0 <bot+0xb0>
cmp    %esi,%ebp
jne    11c0 <bot+0xb0>
cmp    $0x2,%r10
ja     11c0 <bot+0xb0>
cmp    $0x4,%rdi
jae    11c0 <bot+0xb0>
jmp    17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
add    $0x1c,%rcx
mov    %r8,%r10
cmp    $0x6,%r8
jne    11a6 <bot+0x96>
mov    %r15d,0x0(%r13)
mov    %r12,%rcx
xor    %r10d,%r10d
lea    0x1(%r10),%r8
lea    (%r10,%r10,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %r10,%rdx
mov    (%r12,%rdx,1),%ebx
xor    %edi,%edi
jmp    137e <bot+0x26e>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
add    $0x1,%rdi
cmp    $0x7,%rdi
je     14e2 <bot+0x3d2>
mov    %ebx,%edx
cmp    -0x4(%rcx,%rdi,4),%ebx
jne    13b0 <bot+0x2a0>
cmp    -0x8(%rcx,%rdi,4),%edx
jne    13b0 <bot+0x2a0>
mov    -0xc(%rcx,%rdi,4),%ebx
cmp    %ebx,%edx
jne    13b0 <bot+0x2a0>
cmp    %r15d,%ebx
jne    13b0 <bot+0x2a0>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
mov    0x4(%rcx,%rdi,4),%ebx
cmp    %ebx,%edx
jne    13e0 <bot+0x2d0>
cmp    0x8(%rcx,%rdi,4),%edx
jne    13e0 <bot+0x2d0>
mov    0xc(%rcx,%rdi,4),%ebp
cmp    %ebp,%edx
jne    13e0 <bot+0x2d0>
cmp    %r15d,%ebp
jne    13e0 <bot+0x2d0>
cmp    $0x4,%rdi
jb     17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
nop
cmp    0x1c(%rcx,%rdi,4),%edx
jne    1410 <bot+0x300>
cmp    0x38(%rcx,%rdi,4),%edx
jne    1410 <bot+0x300>
cmp    %r15d,%edx
jne    1410 <bot+0x300>
cmp    0x54(%rcx,%rdi,4),%edx
jne    1410 <bot+0x300>
cmp    $0x3,%r10
jb     17ce <bot+0x6be>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
cmp    -0x20(%rcx,%rdi,4),%edx
jne    1440 <bot+0x330>
cmp    -0x40(%rcx,%rdi,4),%edx
jne    1440 <bot+0x330>
mov    -0x60(%rcx,%rdi,4),%ebp
cmp    %ebp,%edx
jne    1440 <bot+0x330>
cmp    %r15d,%ebp
jne    1440 <bot+0x330>
cmp    $0x3,%r10
jb     1440 <bot+0x330>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
nopl   0x0(%rax)
cmp    -0x18(%rcx,%rdi,4),%edx
jne    1470 <bot+0x360>
cmp    -0x30(%rcx,%rdi,4),%edx
jne    1470 <bot+0x360>
mov    -0x48(%rcx,%rdi,4),%ebp
cmp    %ebp,%edx
jne    1470 <bot+0x360>
cmp    %r15d,%ebp
jne    1470 <bot+0x360>
cmp    $0x3,%r10
jb     1470 <bot+0x360>
cmp    $0x4,%rdi
jb     17ce <bot+0x6be>
nopl   0x0(%rax)
cmp    0x18(%rcx,%rdi,4),%edx
jne    14a0 <bot+0x390>
cmp    0x30(%rcx,%rdi,4),%edx
jne    14a0 <bot+0x390>
mov    0x48(%rcx,%rdi,4),%ebp
cmp    %ebp,%edx
jne    14a0 <bot+0x390>
cmp    %r15d,%ebp
jne    14a0 <bot+0x390>
cmp    $0x2,%r10
ja     14a0 <bot+0x390>
cmp    $0x2,%rdi
ja     17ce <bot+0x6be>
nopl   0x0(%rax)
cmp    0x20(%rcx,%rdi,4),%edx
jne    1370 <bot+0x260>
cmp    0x40(%rcx,%rdi,4),%edx
jne    1370 <bot+0x260>
mov    0x60(%rcx,%rdi,4),%ebp
cmp    %ebp,%edx
jne    1370 <bot+0x260>
cmp    %r15d,%ebp
jne    1370 <bot+0x260>
cmp    $0x2,%r10
ja     1370 <bot+0x260>
cmp    $0x4,%rdi
jae    1370 <bot+0x260>
jmp    17ce <bot+0x6be>
add    $0x1c,%rcx
mov    %r8,%r10
cmp    $0x6,%r8
jne    134b <bot+0x23b>
mov    %esi,0x0(%r13)
mov    %r12,%r8
xor    %ecx,%ecx
jmp    151c <bot+0x40c>
movl   $0x0,0x0(%r13)
mov    %eax,%r14d
add    $0x1c,%r8
mov    0x18(%rsp),%rcx
cmp    $0x6,%rcx
je     1142 <bot+0x32>
mov    %rcx,%rdx
add    $0x1,%rcx
mov    %rcx,0x18(%rsp)
mov    %rdx,(%rsp)
lea    -0x1(%rdx),%rcx
mov    %rcx,0x20(%rsp)
xor    %ecx,%ecx
jmp    1543 <bot+0x433>
add    $0x1,%rcx
cmp    $0x7,%rcx
je     1509 <bot+0x3f9>
cmpl   $0x0,(%r8,%rcx,4)
jne    1539 <bot+0x429>
mov    0x1c(%r8,%rcx,4),%ebp
test   %ebp,%ebp
je     1539 <bot+0x429>
cmpq   $0x4,(%rsp)
ja     1539 <bot+0x429>
mov    -0x4(%r8,%rcx,4),%edi
cmp    -0x8(%r8,%rcx,4),%edi
mov    %edi,0xc(%rsp)
jne    15a8 <bot+0x498>
mov    -0xc(%r8,%rcx,4),%edx
cmp    %edx,%edi
jne    157e <bot+0x46e>
cmp    %r15d,%edx
jne    157e <bot+0x46e>
cmp    $0x2,%rcx
ja     14fe <bot+0x3ee>
lea    0x1(%rcx),%rdx
mov    %rdx,0x10(%rsp)
mov    0x4(%r8,%rcx,4),%edi
mov    %edi,%edx
and    0xc(%rsp),%edx
cmp    $0xffffffff,%edx
jne    15b6 <bot+0x4a6>
cmp    $0x2,%rcx
jb     15b6 <bot+0x4a6>
cmp    $0x6,%rcx
jae    15b6 <bot+0x4a6>
jmp    14fe <bot+0x3ee>
lea    0x1(%rcx),%rdx
mov    %rdx,0x10(%rsp)
mov    0x4(%r8,%rcx,4),%edi
mov    0x8(%r8,%rcx,4),%ebx
cmp    %ebx,%edi
jne    15d8 <bot+0x4c8>
mov    0xc(%r8,%rcx,4),%r10d
cmp    %r10d,%edi
jne    15d8 <bot+0x4c8>
cmp    %r15d,%r10d
jne    15d8 <bot+0x4c8>
cmp    $0x4,%rcx
jb     14fe <bot+0x3ee>
cmp    %ebx,0xc(%rsp)
jne    15f8 <bot+0x4e8>
cmp    %ebx,%edi
jne    15f8 <bot+0x4e8>
cmpl   $0xffffffff,0xc(%rsp)
jne    15f8 <bot+0x4e8>
test   %rcx,%rcx
je     15f8 <bot+0x4e8>
cmp    $0x5,%rcx
jb     14fe <bot+0x3ee>
cmp    0x38(%r8,%rcx,4),%ebp
jne    1616 <bot+0x506>
cmp    %r15d,%ebp
jne    1616 <bot+0x506>
cmp    0x54(%r8,%rcx,4),%ebp
jne    1616 <bot+0x506>
cmpq   $0x3,(%rsp)
jb     14fe <bot+0x3ee>
mov    -0x20(%r8,%rcx,4),%r10d
cmp    -0x40(%r8,%rcx,4),%r10d
jne    167c <bot+0x56c>
mov    -0x60(%r8,%rcx,4),%edx
cmp    %edx,%r10d
jne    1642 <bot+0x532>
cmp    %r15d,%edx
jne    1642 <bot+0x532>
cmpq   $0x3,(%rsp)
jb     1642 <bot+0x532>
cmp    $0x2,%rcx
ja     14fe <bot+0x3ee>
mov    0x18(%rsp),%rdi
lea    (%rdi,%rdi,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %rdi,%rdx
add    %r12,%rdx
mov    0x10(%rsp),%rdi
mov    (%rdx,%rdi,4),%edx
and    %r10d,%edx
cmp    $0xffffffff,%edx
jne    167c <bot+0x56c>
cmp    $0x2,%rcx
jb     167c <bot+0x56c>
cmp    $0x5,%rcx
ja     167c <bot+0x56c>
cmpq   $0x1,(%rsp)
ja     14fe <bot+0x3ee>
mov    0x20(%rsp),%rdi
lea    (%rdi,%rdi,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %rdi,%rdx
add    %r12,%rdx
mov    0x10(%rsp),%rdi
mov    (%rdx,%rdi,4),%edi
mov    -0x30(%r8,%rcx,4),%ebx
cmp    %ebx,%edi
jne    16bf <bot+0x5af>
mov    -0x48(%r8,%rcx,4),%edx
cmp    %edx,%edi
jne    16bf <bot+0x5af>
cmp    %r15d,%edx
jne    16bf <bot+0x5af>
cmpq   $0x3,(%rsp)
jb     16bf <bot+0x5af>
cmp    $0x4,%rcx
jb     14fe <bot+0x3ee>
mov    0x18(%r8,%rcx,4),%edx
cmp    %ebx,%edx
jne    16e7 <bot+0x5d7>
cmp    %ebx,%edi
jne    16e7 <bot+0x5d7>
cmp    $0xffffffff,%ebx
jne    16e7 <bot+0x5d7>
test   %rcx,%rcx
je     16e7 <bot+0x5d7>
cmp    $0x4,%rcx
ja     16e7 <bot+0x5d7>
cmpq   $0x1,(%rsp)
ja     14fe <bot+0x3ee>
mov    0x30(%r8,%rcx,4),%ebx
cmp    %ebx,%edx
jne    170f <bot+0x5ff>
mov    0x48(%r8,%rcx,4),%ebp
cmp    %ebp,%edx
jne    170f <bot+0x5ff>
cmp    %r15d,%ebp
jne    170f <bot+0x5ff>
cmpq   $0x2,(%rsp)
ja     170f <bot+0x5ff>
cmp    $0x2,%rcx
ja     14fe <bot+0x3ee>
cmp    %ebx,%edi
jne    1738 <bot+0x628>
and    %edx,%edi
cmp    $0xffffffff,%edi
jne    1738 <bot+0x628>
cmp    $0x2,%rcx
jb     1738 <bot+0x628>
cmp    $0x5,%rcx
ja     1738 <bot+0x628>
cmpq   $0x0,(%rsp)
je     1738 <bot+0x628>
cmpq   $0x4,(%rsp)
jb     14fe <bot+0x3ee>
mov    0x18(%rsp),%rdi
lea    (%rdi,%rdi,8),%rdx
lea    (%rdx,%rdx,2),%rdx
add    %rdi,%rdx
add    %r12,%rdx
mov    0x10(%rsp),%rdi
mov    (%rdx,%rdi,4),%edx
mov    0x40(%r8,%rcx,4),%edi
cmp    %edi,%edx
jne    177b <bot+0x66b>
mov    0x60(%r8,%rcx,4),%ebx
cmp    %ebx,%edx
jne    177b <bot+0x66b>
cmp    %r15d,%ebx
jne    177b <bot+0x66b>
cmpq   $0x2,(%rsp)
ja     177b <bot+0x66b>
cmp    $0x4,%rcx
jb     14fe <bot+0x3ee>
cmp    %edi,%r10d
jne    1539 <bot+0x429>
and    %edx,%r10d
cmp    $0xffffffff,%r10d
jne    1539 <bot+0x429>
test   %rcx,%rcx
je     1539 <bot+0x429>
cmp    $0x4,%rcx
ja     1539 <bot+0x429>
cmpq   $0x0,(%rsp)
je     1539 <bot+0x429>
cmpq   $0x4,(%rsp)
jae    1539 <bot+0x429>
jmp    14fe <bot+0x3ee>
mov    %r9,%r11
cmp    $0x6,%r9
jne    113a <bot+0x2a>
jmp    17ea <bot+0x6da>
movl   $0x0,0x0(%r13)
add    $0x28,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret
cmp    %eax,%r14d
je     17d6 <bot+0x6c6>
xor    %eax,%eax
call   1030 <rand@plt>
movslq %eax,%rcx
imul   $0xffffffff92492493,%rcx,%rax
shr    $0x20,%rax
add    %ecx,%eax
mov    %eax,%edx
shr    $0x1f,%edx
sar    $0x2,%eax
add    %edx,%eax
lea    0x0(,%rax,8),%edx
sub    %edx,%eax
add    %ecx,%eax
movslq %eax,%rcx
cmpl   $0x0,(%r12,%rcx,4)
jne    17e5 <bot+0x6d5>
jmp    17d6 <bot+0x6c6>

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
%9 = alloca i32
%10 = alloca i32
%11 = alloca i32
store [7 x i32]* %0, [7 x i32]** %4
store i32 %1, i32* %5
store i32 -1, i32* %10
%12 = load i32, i32* %5
%13 = icmp eq i32 %12, 1
br i1 %13, label %14, label %15
14: ; preds = %2
store i32 -1, i32* %11
br label %16
15: ; preds = %2
store i32 1, i32* %11
br label %16
16: ; preds = %15, %14
store i32 0, i32* %6
br label %17
17: ; preds = %2332, %16
%18 = load i32, i32* %6
%19 = icmp slt i32 %18, 6
br i1 %19, label %20, label %2335
20: ; preds = %17
store i32 0, i32* %7
br label %21
21: ; preds = %2328, %20
%22 = load i32, i32* %7
%23 = icmp slt i32 %22, 7
br i1 %23, label %24, label %2331
24: ; preds = %21
%25 = load [7 x i32]*, [7 x i32]** %4
%26 = load i32, i32* %6
%27 = sext i32 %26 to i64
%28 = getelementptr inbounds [7 x i32], [7 x i32]* %25, i64 %27
%29 = load i32, i32* %7
%30 = sext i32 %29 to i64
%31 = getelementptr inbounds [7 x i32], [7 x i32]* %28, i64 0, i64 %30
%32 = load i32, i32* %31
%33 = icmp eq i32 %32, 0
br i1 %33, label %34, label %49
34: ; preds = %24
%35 = load [7 x i32]*, [7 x i32]** %4
%36 = load i32, i32* %6
%37 = add nsw i32 %36, 1
%38 = sext i32 %37 to i64
%39 = getelementptr inbounds [7 x i32], [7 x i32]* %35, i64 %38
%40 = load i32, i32* %7
%41 = sext i32 %40 to i64
%42 = getelementptr inbounds [7 x i32], [7 x i32]* %39, i64 0, i64 %41
%43 = load i32, i32* %42
%44 = icmp ne i32 %43, 0
br i1 %44, label %45, label %49
45: ; preds = %34
%46 = load i32, i32* %6
%47 = add nsw i32 %46, 1
%48 = icmp slt i32 %47, 6
br i1 %48, label %62, label %49
49: ; preds = %45, %34, %24
%50 = load [7 x i32]*, [7 x i32]** %4
%51 = load i32, i32* %6
%52 = sext i32 %51 to i64
%53 = getelementptr inbounds [7 x i32], [7 x i32]* %50, i64 %52
%54 = load i32, i32* %7
%55 = sext i32 %54 to i64
%56 = getelementptr inbounds [7 x i32], [7 x i32]* %53, i64 0, i64 %55
%57 = load i32, i32* %56
%58 = icmp eq i32 %57, 0
br i1 %58, label %59, label %2327
59: ; preds = %49
%60 = load i32, i32* %6
%61 = icmp eq i32 %60, 5
br i1 %61, label %62, label %2327
62: ; preds = %59, %45
%63 = load i32, i32* %5
%64 = load [7 x i32]*, [7 x i32]** %4
%65 = load i32, i32* %6
%66 = sext i32 %65 to i64
%67 = getelementptr inbounds [7 x i32], [7 x i32]* %64, i64 %66
%68 = load i32, i32* %7
%69 = sext i32 %68 to i64
%70 = getelementptr inbounds [7 x i32], [7 x i32]* %67, i64 0, i64 %69
store i32 %63, i32* %70
store i32 0, i32* %8
br label %71
71: ; preds = %717, %62
%72 = load i32, i32* %8
%73 = icmp slt i32 %72, 6
br i1 %73, label %74, label %720
74: ; preds = %71
store i32 0, i32* %9
br label %75
75: ; preds = %713, %74
%76 = load i32, i32* %9
%77 = icmp slt i32 %76, 7
br i1 %77, label %78, label %716
78: ; preds = %75
%79 = load [7 x i32]*, [7 x i32]** %4
%80 = load i32, i32* %8
%81 = sext i32 %80 to i64
%82 = getelementptr inbounds [7 x i32], [7 x i32]* %79, i64 %81
%83 = load i32, i32* %9
%84 = sext i32 %83 to i64
%85 = getelementptr inbounds [7 x i32], [7 x i32]* %82, i64 0, i64 %84
%86 = load i32, i32* %85
%87 = load [7 x i32]*, [7 x i32]** %4
%88 = load i32, i32* %8
%89 = sext i32 %88 to i64
%90 = getelementptr inbounds [7 x i32], [7 x i32]* %87, i64 %89
%91 = load i32, i32* %9
%92 = sub nsw i32 %91, 1
%93 = sext i32 %92 to i64
%94 = getelementptr inbounds [7 x i32], [7 x i32]* %90, i64 0, i64 %93
%95 = load i32, i32* %94
%96 = icmp eq i32 %86, %95
br i1 %96, label %97, label %162
97: ; preds = %78
%98 = load [7 x i32]*, [7 x i32]** %4
%99 = load i32, i32* %8
%100 = sext i32 %99 to i64
%101 = getelementptr inbounds [7 x i32], [7 x i32]* %98, i64 %100
%102 = load i32, i32* %9
%103 = sub nsw i32 %102, 1
%104 = sext i32 %103 to i64
%105 = getelementptr inbounds [7 x i32], [7 x i32]* %101, i64 0, i64 %104
%106 = load i32, i32* %105
%107 = load [7 x i32]*, [7 x i32]** %4
%108 = load i32, i32* %8
%109 = sext i32 %108 to i64
%110 = getelementptr inbounds [7 x i32], [7 x i32]* %107, i64 %109
%111 = load i32, i32* %9
%112 = sub nsw i32 %111, 2
%113 = sext i32 %112 to i64
%114 = getelementptr inbounds [7 x i32], [7 x i32]* %110, i64 0, i64 %113
%115 = load i32, i32* %114
%116 = icmp eq i32 %106, %115
br i1 %116, label %117, label %162
117: ; preds = %97
%118 = load [7 x i32]*, [7 x i32]** %4
%119 = load i32, i32* %8
%120 = sext i32 %119 to i64
%121 = getelementptr inbounds [7 x i32], [7 x i32]* %118, i64 %120
%122 = load i32, i32* %9
%123 = sub nsw i32 %122, 1
%124 = sext i32 %123 to i64
%125 = getelementptr inbounds [7 x i32], [7 x i32]* %121, i64 0, i64 %124
%126 = load i32, i32* %125
%127 = load [7 x i32]*, [7 x i32]** %4
%128 = load i32, i32* %8
%129 = sext i32 %128 to i64
%130 = getelementptr inbounds [7 x i32], [7 x i32]* %127, i64 %129
%131 = load i32, i32* %9
%132 = sub nsw i32 %131, 3
%133 = sext i32 %132 to i64
%134 = getelementptr inbounds [7 x i32], [7 x i32]* %130, i64 0, i64 %133
%135 = load i32, i32* %134
%136 = icmp eq i32 %126, %135
br i1 %136, label %137, label %162
137: ; preds = %117
%138 = load [7 x i32]*, [7 x i32]** %4
%139 = load i32, i32* %8
%140 = sext i32 %139 to i64
%141 = getelementptr inbounds [7 x i32], [7 x i32]* %138, i64 %140
%142 = load i32, i32* %9
%143 = sub nsw i32 %142, 3
%144 = sext i32 %143 to i64
%145 = getelementptr inbounds [7 x i32], [7 x i32]* %141, i64 0, i64 %144
%146 = load i32, i32* %145
%147 = load i32, i32* %5
%148 = icmp eq i32 %146, %147
br i1 %148, label %149, label %162
149: ; preds = %137
%150 = load i32, i32* %9
%151 = sub nsw i32 %150, 3
%152 = icmp sge i32 %151, 0
br i1 %152, label %153, label %162
153: ; preds = %149
%154 = load [7 x i32]*, [7 x i32]** %4
%155 = load i32, i32* %6
%156 = sext i32 %155 to i64
%157 = getelementptr inbounds [7 x i32], [7 x i32]* %154, i64 %156
%158 = load i32, i32* %7
%159 = sext i32 %158 to i64
%160 = getelementptr inbounds [7 x i32], [7 x i32]* %157, i64 0, i64 %159
store i32 0, i32* %160
%161 = load i32, i32* %7
store i32 %161, i32* %3
br label %2355
162: ; preds = %149, %137, %117, %97, %78
%163 = load [7 x i32]*, [7 x i32]** %4
%164 = load i32, i32* %8
%165 = sext i32 %164 to i64
%166 = getelementptr inbounds [7 x i32], [7 x i32]* %163, i64 %165
%167 = load i32, i32* %9
%168 = sext i32 %167 to i64
%169 = getelementptr inbounds [7 x i32], [7 x i32]* %166, i64 0, i64 %168
%170 = load i32, i32* %169
%171 = load [7 x i32]*, [7 x i32]** %4
%172 = load i32, i32* %8
%173 = sext i32 %172 to i64
%174 = getelementptr inbounds [7 x i32], [7 x i32]* %171, i64 %173
%175 = load i32, i32* %9
%176 = add nsw i32 %175, 1
%177 = sext i32 %176 to i64
%178 = getelementptr inbounds [7 x i32], [7 x i32]* %174, i64 0, i64 %177
%179 = load i32, i32* %178
%180 = icmp eq i32 %170, %179
br i1 %180, label %181, label %246
181: ; preds = %162
%182 = load [7 x i32]*, [7 x i32]** %4
%183 = load i32, i32* %8
%184 = sext i32 %183 to i64
%185 = getelementptr inbounds [7 x i32], [7 x i32]* %182, i64 %184
%186 = load i32, i32* %9
%187 = add nsw i32 %186, 1
%188 = sext i32 %187 to i64
%189 = getelementptr inbounds [7 x i32], [7 x i32]* %185, i64 0, i64 %188
%190 = load i32, i32* %189
%191 = load [7 x i32]*, [7 x i32]** %4
%192 = load i32, i32* %8
%193 = sext i32 %192 to i64
%194 = getelementptr inbounds [7 x i32], [7 x i32]* %191, i64 %193
%195 = load i32, i32* %9
%196 = add nsw i32 %195, 2
%197 = sext i32 %196 to i64
%198 = getelementptr inbounds [7 x i32], [7 x i32]* %194, i64 0, i64 %197
%199 = load i32, i32* %198
%200 = icmp eq i32 %190, %199
br i1 %200, label %201, label %246
201: ; preds = %181
%202 = load [7 x i32]*, [7 x i32]** %4
%203 = load i32, i32* %8
%204 = sext i32 %203 to i64
%205 = getelementptr inbounds [7 x i32], [7 x i32]* %202, i64 %204
%206 = load i32, i32* %9
%207 = add nsw i32 %206, 1
%208 = sext i32 %207 to i64
%209 = getelementptr inbounds [7 x i32], [7 x i32]* %205, i64 0, i64 %208
%210 = load i32, i32* %209
%211 = load [7 x i32]*, [7 x i32]** %4
%212 = load i32, i32* %8
%213 = sext i32 %212 to i64
%214 = getelementptr inbounds [7 x i32], [7 x i32]* %211, i64 %213
%215 = load i32, i32* %9
%216 = add nsw i32 %215, 3
%217 = sext i32 %216 to i64
%218 = getelementptr inbounds [7 x i32], [7 x i32]* %214, i64 0, i64 %217
%219 = load i32, i32* %218
%220 = icmp eq i32 %210, %219
br i1 %220, label %221, label %246
221: ; preds = %201
%222 = load [7 x i32]*, [7 x i32]** %4
%223 = load i32, i32* %8
%224 = sext i32 %223 to i64
%225 = getelementptr inbounds [7 x i32], [7 x i32]* %222, i64 %224
%226 = load i32, i32* %9
%227 = add nsw i32 %226, 3
%228 = sext i32 %227 to i64
%229 = getelementptr inbounds [7 x i32], [7 x i32]* %225, i64 0, i64 %228
%230 = load i32, i32* %229
%231 = load i32, i32* %5
%232 = icmp eq i32 %230, %231
br i1 %232, label %233, label %246
233: ; preds = %221
%234 = load i32, i32* %9
%235 = add nsw i32 %234, 3
%236 = icmp slt i32 %235, 7
br i1 %236, label %237, label %246
237: ; preds = %233
%238 = load [7 x i32]*, [7 x i32]** %4
%239 = load i32, i32* %6
%240 = sext i32 %239 to i64
%241 = getelementptr inbounds [7 x i32], [7 x i32]* %238, i64 %240
%242 = load i32, i32* %7
%243 = sext i32 %242 to i64
%244 = getelementptr inbounds [7 x i32], [7 x i32]* %241, i64 0, i64 %243
store i32 0, i32* %244
%245 = load i32, i32* %7
store i32 %245, i32* %3
br label %2355
246: ; preds = %233, %221, %201, %181, %162
%247 = load [7 x i32]*, [7 x i32]** %4
%248 = load i32, i32* %8
%249 = sext i32 %248 to i64
%250 = getelementptr inbounds [7 x i32], [7 x i32]* %247, i64 %249
%251 = load i32, i32* %9
%252 = sext i32 %251 to i64
%253 = getelementptr inbounds [7 x i32], [7 x i32]* %250, i64 0, i64 %252
%254 = load i32, i32* %253
%255 = load [7 x i32]*, [7 x i32]** %4
%256 = load i32, i32* %8
%257 = add nsw i32 %256, 1
%258 = sext i32 %257 to i64
%259 = getelementptr inbounds [7 x i32], [7 x i32]* %255, i64 %258
%260 = load i32, i32* %9
%261 = sext i32 %260 to i64
%262 = getelementptr inbounds [7 x i32], [7 x i32]* %259, i64 0, i64 %261
%263 = load i32, i32* %262
%264 = icmp eq i32 %254, %263
br i1 %264, label %265, label %330
265: ; preds = %246
%266 = load [7 x i32]*, [7 x i32]** %4
%267 = load i32, i32* %8
%268 = add nsw i32 %267, 1
%269 = sext i32 %268 to i64
%270 = getelementptr inbounds [7 x i32], [7 x i32]* %266, i64 %269
%271 = load i32, i32* %9
%272 = sext i32 %271 to i64
%273 = getelementptr inbounds [7 x i32], [7 x i32]* %270, i64 0, i64 %272
%274 = load i32, i32* %273
%275 = load [7 x i32]*, [7 x i32]** %4
%276 = load i32, i32* %8
%277 = add nsw i32 %276, 2
%278 = sext i32 %277 to i64
%279 = getelementptr inbounds [7 x i32], [7 x i32]* %275, i64 %278
%280 = load i32, i32* %9
%281 = sext i32 %280 to i64
%282 = getelementptr inbounds [7 x i32], [7 x i32]* %279, i64 0, i64 %281
%283 = load i32, i32* %282
%284 = icmp eq i32 %274, %283
br i1 %284, label %285, label %330
285: ; preds = %265
%286 = load [7 x i32]*, [7 x i32]** %4
%287 = load i32, i32* %8
%288 = add nsw i32 %287, 1
%289 = sext i32 %288 to i64
%290 = getelementptr inbounds [7 x i32], [7 x i32]* %286, i64 %289
%291 = load i32, i32* %9
%292 = sext i32 %291 to i64
%293 = getelementptr inbounds [7 x i32], [7 x i32]* %290, i64 0, i64 %292
%294 = load i32, i32* %293
%295 = load [7 x i32]*, [7 x i32]** %4
%296 = load i32, i32* %8
%297 = add nsw i32 %296, 3
%298 = sext i32 %297 to i64
%299 = getelementptr inbounds [7 x i32], [7 x i32]* %295, i64 %298
%300 = load i32, i32* %9
%301 = sext i32 %300 to i64
%302 = getelementptr inbounds [7 x i32], [7 x i32]* %299, i64 0, i64 %301
%303 = load i32, i32* %302
%304 = icmp eq i32 %294, %303
br i1 %304, label %305, label %330
305: ; preds = %285
%306 = load [7 x i32]*, [7 x i32]** %4
%307 = load i32, i32* %8
%308 = add nsw i32 %307, 1
%309 = sext i32 %308 to i64
%310 = getelementptr inbounds [7 x i32], [7 x i32]* %306, i64 %309
%311 = load i32, i32* %9
%312 = sext i32 %311 to i64
%313 = getelementptr inbounds [7 x i32], [7 x i32]* %310, i64 0, i64 %312
%314 = load i32, i32* %313
%315 = load i32, i32* %5
%316 = icmp eq i32 %314, %315
br i1 %316, label %317, label %330
317: ; preds = %305
%318 = load i32, i32* %8
%319 = add nsw i32 %318, 3
%320 = icmp slt i32 %319, 6
br i1 %320, label %321, label %330
321: ; preds = %317
%322 = load [7 x i32]*, [7 x i32]** %4
%323 = load i32, i32* %6
%324 = sext i32 %323 to i64
%325 = getelementptr inbounds [7 x i32], [7 x i32]* %322, i64 %324
%326 = load i32, i32* %7
%327 = sext i32 %326 to i64
%328 = getelementptr inbounds [7 x i32], [7 x i32]* %325, i64 0, i64 %327
store i32 0, i32* %328
%329 = load i32, i32* %7
store i32 %329, i32* %3
br label %2355
330: ; preds = %317, %305, %285, %265, %246
%331 = load [7 x i32]*, [7 x i32]** %4
%332 = load i32, i32* %8
%333 = sext i32 %332 to i64
%334 = getelementptr inbounds [7 x i32], [7 x i32]* %331, i64 %333
%335 = load i32, i32* %9
%336 = sext i32 %335 to i64
%337 = getelementptr inbounds [7 x i32], [7 x i32]* %334, i64 0, i64 %336
%338 = load i32, i32* %337
%339 = load [7 x i32]*, [7 x i32]** %4
%340 = load i32, i32* %8
%341 = sub nsw i32 %340, 1
%342 = sext i32 %341 to i64
%343 = getelementptr inbounds [7 x i32], [7 x i32]* %339, i64 %342
%344 = load i32, i32* %9
%345 = sub nsw i32 %344, 1
%346 = sext i32 %345 to i64
%347 = getelementptr inbounds [7 x i32], [7 x i32]* %343, i64 0, i64 %346
%348 = load i32, i32* %347
%349 = icmp eq i32 %338, %348
br i1 %349, label %350, label %424
350: ; preds = %330
%351 = load [7 x i32]*, [7 x i32]** %4
%352 = load i32, i32* %8
%353 = sub nsw i32 %352, 1
%354 = sext i32 %353 to i64
%355 = getelementptr inbounds [7 x i32], [7 x i32]* %351, i64 %354
%356 = load i32, i32* %9
%357 = sub nsw i32 %356, 1
%358 = sext i32 %357 to i64
%359 = getelementptr inbounds [7 x i32], [7 x i32]* %355, i64 0, i64 %358
%360 = load i32, i32* %359
%361 = load [7 x i32]*, [7 x i32]** %4
%362 = load i32, i32* %8
%363 = sub nsw i32 %362, 2
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds [7 x i32], [7 x i32]* %361, i64 %364
%366 = load i32, i32* %9
%367 = sub nsw i32 %366, 2
%368 = sext i32 %367 to i64
%369 = getelementptr inbounds [7 x i32], [7 x i32]* %365, i64 0, i64 %368
%370 = load i32, i32* %369
%371 = icmp eq i32 %360, %370
br i1 %371, label %372, label %424
372: ; preds = %350
%373 = load [7 x i32]*, [7 x i32]** %4
%374 = load i32, i32* %8
%375 = sub nsw i32 %374, 1
%376 = sext i32 %375 to i64
%377 = getelementptr inbounds [7 x i32], [7 x i32]* %373, i64 %376
%378 = load i32, i32* %9
%379 = sub nsw i32 %378, 1
%380 = sext i32 %379 to i64
%381 = getelementptr inbounds [7 x i32], [7 x i32]* %377, i64 0, i64 %380
%382 = load i32, i32* %381
%383 = load [7 x i32]*, [7 x i32]** %4
%384 = load i32, i32* %8
%385 = sub nsw i32 %384, 3
%386 = sext i32 %385 to i64
%387 = getelementptr inbounds [7 x i32], [7 x i32]* %383, i64 %386
%388 = load i32, i32* %9
%389 = sub nsw i32 %388, 3
%390 = sext i32 %389 to i64
%391 = getelementptr inbounds [7 x i32], [7 x i32]* %387, i64 0, i64 %390
%392 = load i32, i32* %391
%393 = icmp eq i32 %382, %392
br i1 %393, label %394, label %424
394: ; preds = %372
%395 = load [7 x i32]*, [7 x i32]** %4
%396 = load i32, i32* %8
%397 = sub nsw i32 %396, 3
%398 = sext i32 %397 to i64
%399 = getelementptr inbounds [7 x i32], [7 x i32]* %395, i64 %398
%400 = load i32, i32* %9
%401 = sub nsw i32 %400, 3
%402 = sext i32 %401 to i64
%403 = getelementptr inbounds [7 x i32], [7 x i32]* %399, i64 0, i64 %402
%404 = load i32, i32* %403
%405 = load i32, i32* %5
%406 = icmp eq i32 %404, %405
br i1 %406, label %407, label %424
407: ; preds = %394
%408 = load i32, i32* %8
%409 = sub nsw i32 %408, 3
%410 = icmp sge i32 %409, 0
br i1 %410, label %411, label %424
411: ; preds = %407
%412 = load i32, i32* %9
%413 = sub nsw i32 %412, 3
%414 = icmp sge i32 %413, 0
br i1 %414, label %415, label %424
415: ; preds = %411
%416 = load [7 x i32]*, [7 x i32]** %4
%417 = load i32, i32* %6
%418 = sext i32 %417 to i64
%419 = getelementptr inbounds [7 x i32], [7 x i32]* %416, i64 %418
%420 = load i32, i32* %7
%421 = sext i32 %420 to i64
%422 = getelementptr inbounds [7 x i32], [7 x i32]* %419, i64 0, i64 %421
store i32 0, i32* %422
%423 = load i32, i32* %7
store i32 %423, i32* %3
br label %2355
424: ; preds = %411, %407, %394, %372, %350, %330
%425 = load [7 x i32]*, [7 x i32]** %4
%426 = load i32, i32* %8
%427 = sext i32 %426 to i64
%428 = getelementptr inbounds [7 x i32], [7 x i32]* %425, i64 %427
%429 = load i32, i32* %9
%430 = sext i32 %429 to i64
%431 = getelementptr inbounds [7 x i32], [7 x i32]* %428, i64 0, i64 %430
%432 = load i32, i32* %431
%433 = load [7 x i32]*, [7 x i32]** %4
%434 = load i32, i32* %8
%435 = sub nsw i32 %434, 1
%436 = sext i32 %435 to i64
%437 = getelementptr inbounds [7 x i32], [7 x i32]* %433, i64 %436
%438 = load i32, i32* %9
%439 = add nsw i32 %438, 1
%440 = sext i32 %439 to i64
%441 = getelementptr inbounds [7 x i32], [7 x i32]* %437, i64 0, i64 %440
%442 = load i32, i32* %441
%443 = icmp eq i32 %432, %442
br i1 %443, label %444, label %518
444: ; preds = %424
%445 = load [7 x i32]*, [7 x i32]** %4
%446 = load i32, i32* %8
%447 = sub nsw i32 %446, 1
%448 = sext i32 %447 to i64
%449 = getelementptr inbounds [7 x i32], [7 x i32]* %445, i64 %448
%450 = load i32, i32* %9
%451 = add nsw i32 %450, 1
%452 = sext i32 %451 to i64
%453 = getelementptr inbounds [7 x i32], [7 x i32]* %449, i64 0, i64 %452
%454 = load i32, i32* %453
%455 = load [7 x i32]*, [7 x i32]** %4
%456 = load i32, i32* %8
%457 = sub nsw i32 %456, 2
%458 = sext i32 %457 to i64
%459 = getelementptr inbounds [7 x i32], [7 x i32]* %455, i64 %458
%460 = load i32, i32* %9
%461 = add nsw i32 %460, 2
%462 = sext i32 %461 to i64
%463 = getelementptr inbounds [7 x i32], [7 x i32]* %459, i64 0, i64 %462
%464 = load i32, i32* %463
%465 = icmp eq i32 %454, %464
br i1 %465, label %466, label %518
466: ; preds = %444
%467 = load [7 x i32]*, [7 x i32]** %4
%468 = load i32, i32* %8
%469 = sub nsw i32 %468, 1
%470 = sext i32 %469 to i64
%471 = getelementptr inbounds [7 x i32], [7 x i32]* %467, i64 %470
%472 = load i32, i32* %9
%473 = add nsw i32 %472, 1
%474 = sext i32 %473 to i64
%475 = getelementptr inbounds [7 x i32], [7 x i32]* %471, i64 0, i64 %474
%476 = load i32, i32* %475
%477 = load [7 x i32]*, [7 x i32]** %4
%478 = load i32, i32* %8
%479 = sub nsw i32 %478, 3
%480 = sext i32 %479 to i64
%481 = getelementptr inbounds [7 x i32], [7 x i32]* %477, i64 %480
%482 = load i32, i32* %9
%483 = add nsw i32 %482, 3
%484 = sext i32 %483 to i64
%485 = getelementptr inbounds [7 x i32], [7 x i32]* %481, i64 0, i64 %484
%486 = load i32, i32* %485
%487 = icmp eq i32 %476, %486
br i1 %487, label %488, label %518
488: ; preds = %466
%489 = load [7 x i32]*, [7 x i32]** %4
%490 = load i32, i32* %8
%491 = sub nsw i32 %490, 3
%492 = sext i32 %491 to i64
%493 = getelementptr inbounds [7 x i32], [7 x i32]* %489, i64 %492
%494 = load i32, i32* %9
%495 = add nsw i32 %494, 3
%496 = sext i32 %495 to i64
%497 = getelementptr inbounds [7 x i32], [7 x i32]* %493, i64 0, i64 %496
%498 = load i32, i32* %497
%499 = load i32, i32* %5
%500 = icmp eq i32 %498, %499
br i1 %500, label %501, label %518
501: ; preds = %488
%502 = load i32, i32* %8
%503 = sub nsw i32 %502, 3
%504 = icmp sge i32 %503, 0
br i1 %504, label %505, label %518
505: ; preds = %501
%506 = load i32, i32* %9
%507 = add nsw i32 %506, 3
%508 = icmp slt i32 %507, 7
br i1 %508, label %509, label %518
509: ; preds = %505
%510 = load [7 x i32]*, [7 x i32]** %4
%511 = load i32, i32* %6
%512 = sext i32 %511 to i64
%513 = getelementptr inbounds [7 x i32], [7 x i32]* %510, i64 %512
%514 = load i32, i32* %7
%515 = sext i32 %514 to i64
%516 = getelementptr inbounds [7 x i32], [7 x i32]* %513, i64 0, i64 %515
store i32 0, i32* %516
%517 = load i32, i32* %7
store i32 %517, i32* %3
br label %2355
518: ; preds = %505, %501, %488, %466, %444, %424
%519 = load [7 x i32]*, [7 x i32]** %4
%520 = load i32, i32* %8
%521 = sext i32 %520 to i64
%522 = getelementptr inbounds [7 x i32], [7 x i32]* %519, i64 %521
%523 = load i32, i32* %9
%524 = sext i32 %523 to i64
%525 = getelementptr inbounds [7 x i32], [7 x i32]* %522, i64 0, i64 %524
%526 = load i32, i32* %525
%527 = load [7 x i32]*, [7 x i32]** %4
%528 = load i32, i32* %8
%529 = add nsw i32 %528, 1
%530 = sext i32 %529 to i64
%531 = getelementptr inbounds [7 x i32], [7 x i32]* %527, i64 %530
%532 = load i32, i32* %9
%533 = sub nsw i32 %532, 1
%534 = sext i32 %533 to i64
%535 = getelementptr inbounds [7 x i32], [7 x i32]* %531, i64 0, i64 %534
%536 = load i32, i32* %535
%537 = icmp eq i32 %526, %536
br i1 %537, label %538, label %612
538: ; preds = %518
%539 = load [7 x i32]*, [7 x i32]** %4
%540 = load i32, i32* %8
%541 = add nsw i32 %540, 1
%542 = sext i32 %541 to i64
%543 = getelementptr inbounds [7 x i32], [7 x i32]* %539, i64 %542
%544 = load i32, i32* %9
%545 = sub nsw i32 %544, 1
%546 = sext i32 %545 to i64
%547 = getelementptr inbounds [7 x i32], [7 x i32]* %543, i64 0, i64 %546
%548 = load i32, i32* %547
%549 = load [7 x i32]*, [7 x i32]** %4
%550 = load i32, i32* %8
%551 = add nsw i32 %550, 2
%552 = sext i32 %551 to i64
%553 = getelementptr inbounds [7 x i32], [7 x i32]* %549, i64 %552
%554 = load i32, i32* %9
%555 = sub nsw i32 %554, 2
%556 = sext i32 %555 to i64
%557 = getelementptr inbounds [7 x i32], [7 x i32]* %553, i64 0, i64 %556
%558 = load i32, i32* %557
%559 = icmp eq i32 %548, %558
br i1 %559, label %560, label %612
560: ; preds = %538
%561 = load [7 x i32]*, [7 x i32]** %4
%562 = load i32, i32* %8
%563 = add nsw i32 %562, 1
%564 = sext i32 %563 to i64
%565 = getelementptr inbounds [7 x i32], [7 x i32]* %561, i64 %564
%566 = load i32, i32* %9
%567 = sub nsw i32 %566, 1
%568 = sext i32 %567 to i64
%569 = getelementptr inbounds [7 x i32], [7 x i32]* %565, i64 0, i64 %568
%570 = load i32, i32* %569
%571 = load [7 x i32]*, [7 x i32]** %4
%572 = load i32, i32* %8
%573 = add nsw i32 %572, 3
%574 = sext i32 %573 to i64
%575 = getelementptr inbounds [7 x i32], [7 x i32]* %571, i64 %574
%576 = load i32, i32* %9
%577 = sub nsw i32 %576, 3
%578 = sext i32 %577 to i64
%579 = getelementptr inbounds [7 x i32], [7 x i32]* %575, i64 0, i64 %578
%580 = load i32, i32* %579
%581 = icmp eq i32 %570, %580
br i1 %581, label %582, label %612
582: ; preds = %560
%583 = load [7 x i32]*, [7 x i32]** %4
%584 = load i32, i32* %8
%585 = add nsw i32 %584, 3
%586 = sext i32 %585 to i64
%587 = getelementptr inbounds [7 x i32], [7 x i32]* %583, i64 %586
%588 = load i32, i32* %9
%589 = sub nsw i32 %588, 3
%590 = sext i32 %589 to i64
%591 = getelementptr inbounds [7 x i32], [7 x i32]* %587, i64 0, i64 %590
%592 = load i32, i32* %591
%593 = load i32, i32* %5
%594 = icmp eq i32 %592, %593
br i1 %594, label %595, label %612
595: ; preds = %582
%596 = load i32, i32* %8
%597 = add nsw i32 %596, 3
%598 = icmp slt i32 %597, 6
br i1 %598, label %599, label %612
599: ; preds = %595
%600 = load i32, i32* %9
%601 = sub nsw i32 %600, 3
%602 = icmp sge i32 %601, 0
br i1 %602, label %603, label %612
603: ; preds = %599
%604 = load [7 x i32]*, [7 x i32]** %4
%605 = load i32, i32* %6
%606 = sext i32 %605 to i64
%607 = getelementptr inbounds [7 x i32], [7 x i32]* %604, i64 %606
%608 = load i32, i32* %7
%609 = sext i32 %608 to i64
%610 = getelementptr inbounds [7 x i32], [7 x i32]* %607, i64 0, i64 %609
store i32 0, i32* %610
%611 = load i32, i32* %7
store i32 %611, i32* %3
br label %2355
612: ; preds = %599, %595, %582, %560, %538, %518
%613 = load [7 x i32]*, [7 x i32]** %4
%614 = load i32, i32* %8
%615 = sext i32 %614 to i64
%616 = getelementptr inbounds [7 x i32], [7 x i32]* %613, i64 %615
%617 = load i32, i32* %9
%618 = sext i32 %617 to i64
%619 = getelementptr inbounds [7 x i32], [7 x i32]* %616, i64 0, i64 %618
%620 = load i32, i32* %619
%621 = load [7 x i32]*, [7 x i32]** %4
%622 = load i32, i32* %8
%623 = add nsw i32 %622, 1
%624 = sext i32 %623 to i64
%625 = getelementptr inbounds [7 x i32], [7 x i32]* %621, i64 %624
%626 = load i32, i32* %9
%627 = add nsw i32 %626, 1
%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 %620, %630
br i1 %631, label %632, label %706
632: ; preds = %612
%633 = load [7 x i32]*, [7 x i32]** %4
%634 = load i32, i32* %8
%635 = add nsw i32 %634, 1
%636 = sext i32 %635 to i64
%637 = getelementptr inbounds [7 x i32], [7 x i32]* %633, i64 %636
%638 = load i32, i32* %9
%639 = add nsw i32 %638, 1
%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 = load [7 x i32]*, [7 x i32]** %4
%644 = load i32, i32* %8
%645 = add nsw i32 %644, 2
%646 = sext i32 %645 to i64
%647 = getelementptr inbounds [7 x i32], [7 x i32]* %643, i64 %646
%648 = load i32, i32* %9
%649 = add nsw i32 %648, 2
%650 = sext i32 %649 to i64
%651 = getelementptr inbounds [7 x i32], [7 x i32]* %647, i64 0, i64 %650
%652 = load i32, i32* %651
%653 = icmp eq i32 %642, %652
br i1 %653, label %654, label %706
654: ; preds = %632
%655 = load [7 x i32]*, [7 x i32]** %4
%656 = load i32, i32* %8
%657 = add nsw i32 %656, 1
%658 = sext i32 %657 to i64
%659 = getelementptr inbounds [7 x i32], [7 x i32]* %655, i64 %658
%660 = load i32, i32* %9
%661 = add nsw i32 %660, 1
%662 = sext i32 %661 to i64
%663 = getelementptr inbounds [7 x i32], [7 x i32]* %659, i64 0, i64 %662
%664 = load i32, i32* %663
%665 = load [7 x i32]*, [7 x i32]** %4
%666 = load i32, i32* %8
%667 = add nsw i32 %666, 3
%668 = sext i32 %667 to i64
%669 = getelementptr inbounds [7 x i32], [7 x i32]* %665, i64 %668
%670 = load i32, i32* %9
%671 = add nsw i32 %670, 3
%672 = sext i32 %671 to i64
%673 = getelementptr inbounds [7 x i32], [7 x i32]* %669, i64 0, i64 %672
%674 = load i32, i32* %673
%675 = icmp eq i32 %664, %674
br i1 %675, label %676, label %706
676: ; preds = %654
%677 = load [7 x i32]*, [7 x i32]** %4
%678 = load i32, i32* %8
%679 = add nsw i32 %678, 3
%680 = sext i32 %679 to i64
%681 = getelementptr inbounds [7 x i32], [7 x i32]* %677, i64 %680
%682 = load i32, i32* %9
%683 = add nsw i32 %682, 3
%684 = sext i32 %683 to i64
%685 = getelementptr inbounds [7 x i32], [7 x i32]* %681, i64 0, i64 %684
%686 = load i32, i32* %685
%687 = load i32, i32* %5
%688 = icmp eq i32 %686, %687
br i1 %688, label %689, label %706
689: ; preds = %676
%690 = load i32, i32* %8
%691 = add nsw i32 %690, 3
%692 = icmp slt i32 %691, 6
br i1 %692, label %693, label %706
693: ; preds = %689
%694 = load i32, i32* %9
%695 = add nsw i32 %694, 3
%696 = icmp slt i32 %695, 7
br i1 %696, label %697, label %706
697: ; preds = %693
%698 = load [7 x i32]*, [7 x i32]** %4
%699 = load i32, i32* %6
%700 = sext i32 %699 to i64
%701 = getelementptr inbounds [7 x i32], [7 x i32]* %698, i64 %700
%702 = load i32, i32* %7
%703 = sext i32 %702 to i64
%704 = getelementptr inbounds [7 x i32], [7 x i32]* %701, i64 0, i64 %703
store i32 0, i32* %704
%705 = load i32, i32* %7
store i32 %705, i32* %3
br label %2355
706: ; preds = %693, %689, %676, %654, %632, %612
br label %707
707: ; preds = %706
br label %708
708: ; preds = %707
br label %709
709: ; preds = %708
br label %710
710: ; preds = %709
br label %711
711: ; preds = %710
br label %712
712: ; preds = %711
br label %713
713: ; preds = %712
%714 = load i32, i32* %9
%715 = add nsw i32 %714, 1
store i32 %715, i32* %9
br label %75
716: ; preds = %75
br label %717
717: ; preds = %716
%718 = load i32, i32* %8
%719 = add nsw i32 %718, 1
store i32 %719, i32* %8
br label %71
720: ; preds = %71
%721 = load i32, i32* %11
%722 = load [7 x i32]*, [7 x i32]** %4
%723 = load i32, i32* %6
%724 = sext i32 %723 to i64
%725 = getelementptr inbounds [7 x i32], [7 x i32]* %722, i64 %724
%726 = load i32, i32* %7
%727 = sext i32 %726 to i64
%728 = getelementptr inbounds [7 x i32], [7 x i32]* %725, i64 0, i64 %727
store i32 %721, i32* %728
store i32 0, i32* %8
br label %729
729: ; preds = %1369, %720
%730 = load i32, i32* %8
%731 = icmp slt i32 %730, 6
br i1 %731, label %732, label %1372
732: ; preds = %729
store i32 0, i32* %9
br label %733
733: ; preds = %1365, %732
%734 = load i32, i32* %9
%735 = icmp slt i32 %734, 7
br i1 %735, label %736, label %1368
736: ; preds = %733
%737 = load [7 x i32]*, [7 x i32]** %4
%738 = load i32, i32* %8
%739 = sext i32 %738 to i64
%740 = getelementptr inbounds [7 x i32], [7 x i32]* %737, i64 %739
%741 = load i32, i32* %9
%742 = sext i32 %741 to i64
%743 = getelementptr inbounds [7 x i32], [7 x i32]* %740, i64 0, i64 %742
%744 = load i32, i32* %743
%745 = load [7 x i32]*, [7 x i32]** %4
%746 = load i32, i32* %8
%747 = sext i32 %746 to i64
%748 = getelementptr inbounds [7 x i32], [7 x i32]* %745, i64 %747
%749 = load i32, i32* %9
%750 = sub nsw i32 %749, 1
%751 = sext i32 %750 to i64
%752 = getelementptr inbounds [7 x i32], [7 x i32]* %748, i64 0, i64 %751
%753 = load i32, i32* %752
%754 = icmp eq i32 %744, %753
br i1 %754, label %755, label %820
755: ; preds = %736
%756 = load [7 x i32]*, [7 x i32]** %4
%757 = load i32, i32* %8
%758 = sext i32 %757 to i64
%759 = getelementptr inbounds [7 x i32], [7 x i32]* %756, i64 %758
%760 = load i32, i32* %9
%761 = sub nsw i32 %760, 1
%762 = sext i32 %761 to i64
%763 = getelementptr inbounds [7 x i32], [7 x i32]* %759, i64 0, i64 %762
%764 = load i32, i32* %763
%765 = load [7 x i32]*, [7 x i32]** %4
%766 = load i32, i32* %8
%767 = sext i32 %766 to i64
%768 = getelementptr inbounds [7 x i32], [7 x i32]* %765, i64 %767
%769 = load i32, i32* %9
%770 = sub nsw i32 %769, 2
%771 = sext i32 %770 to i64
%772 = getelementptr inbounds [7 x i32], [7 x i32]* %768, i64 0, i64 %771
%773 = load i32, i32* %772
%774 = icmp eq i32 %764, %773
br i1 %774, label %775, label %820
775: ; preds = %755
%776 = load [7 x i32]*, [7 x i32]** %4
%777 = load i32, i32* %8
%778 = sext i32 %777 to i64
%779 = getelementptr inbounds [7 x i32], [7 x i32]* %776, i64 %778
%780 = load i32, i32* %9
%781 = sub nsw i32 %780, 1
%782 = sext i32 %781 to i64
%783 = getelementptr inbounds [7 x i32], [7 x i32]* %779, i64 0, i64 %782
%784 = load i32, i32* %783
%785 = load [7 x i32]*, [7 x i32]** %4
%786 = load i32, i32* %8
%787 = sext i32 %786 to i64
%788 = getelementptr inbounds [7 x i32], [7 x i32]* %785, i64 %787
%789 = load i32, i32* %9
%790 = sub nsw i32 %789, 3
%791 = sext i32 %790 to i64
%792 = getelementptr inbounds [7 x i32], [7 x i32]* %788, i64 0, i64 %791
%793 = load i32, i32* %792
%794 = icmp eq i32 %784, %793
br i1 %794, label %795, label %820
795: ; preds = %775
%796 = load [7 x i32]*, [7 x i32]** %4
%797 = load i32, i32* %8
%798 = sext i32 %797 to i64
%799 = getelementptr inbounds [7 x i32], [7 x i32]* %796, i64 %798
%800 = load i32, i32* %9
%801 = sub nsw i32 %800, 3
%802 = sext i32 %801 to i64
%803 = getelementptr inbounds [7 x i32], [7 x i32]* %799, i64 0, i64 %802
%804 = load i32, i32* %803
%805 = load i32, i32* %11
%806 = icmp eq i32 %804, %805
br i1 %806, label %807, label %820
807: ; preds = %795
%808 = load i32, i32* %9
%809 = sub nsw i32 %808, 3
%810 = icmp sge i32 %809, 0
br i1 %810, label %811, label %820
811: ; preds = %807
%812 = load [7 x i32]*, [7 x i32]** %4
%813 = load i32, i32* %6
%814 = sext i32 %813 to i64
%815 = getelementptr inbounds [7 x i32], [7 x i32]* %812, i64 %814
%816 = load i32, i32* %7
%817 = sext i32 %816 to i64
%818 = getelementptr inbounds [7 x i32], [7 x i32]* %815, i64 0, i64 %817
store i32 0, i32* %818
%819 = load i32, i32* %7
store i32 %819, i32* %3
br label %2355
820: ; preds = %807, %795, %775, %755, %736
%821 = load [7 x i32]*, [7 x i32]** %4
%822 = load i32, i32* %8
%823 = sext i32 %822 to i64
%824 = getelementptr inbounds [7 x i32], [7 x i32]* %821, i64 %823
%825 = load i32, i32* %9
%826 = sext i32 %825 to i64
%827 = getelementptr inbounds [7 x i32], [7 x i32]* %824, i64 0, i64 %826
%828 = load i32, i32* %827
%829 = load [7 x i32]*, [7 x i32]** %4
%830 = load i32, i32* %8
%831 = sext i32 %830 to i64
%832 = getelementptr inbounds [7 x i32], [7 x i32]* %829, i64 %831
%833 = load i32, i32* %9
%834 = add nsw i32 %833, 1
%835 = sext i32 %834 to i64
%836 = getelementptr inbounds [7 x i32], [7 x i32]* %832, i64 0, i64 %835
%837 = load i32, i32* %836
%838 = icmp eq i32 %828, %837
br i1 %838, label %839, label %904
839: ; preds = %820
%840 = load [7 x i32]*, [7 x i32]** %4
%841 = load i32, i32* %8
%842 = sext i32 %841 to i64
%843 = getelementptr inbounds [7 x i32], [7 x i32]* %840, i64 %842
%844 = load i32, i32* %9
%845 = add nsw i32 %844, 1
%846 = sext i32 %845 to i64
%847 = getelementptr inbounds [7 x i32], [7 x i32]* %843, i64 0, i64 %846
%848 = load i32, i32* %847
%849 = load [7 x i32]*, [7 x i32]** %4
%850 = load i32, i32* %8
%851 = sext i32 %850 to i64
%852 = getelementptr inbounds [7 x i32], [7 x i32]* %849, i64 %851
%853 = load i32, i32* %9
%854 = add nsw i32 %853, 2
%855 = sext i32 %854 to i64
%856 = getelementptr inbounds [7 x i32], [7 x i32]* %852, i64 0, i64 %855
%857 = load i32, i32* %856
%858 = icmp eq i32 %848, %857
br i1 %858, label %859, label %904
859: ; preds = %839
%860 = load [7 x i32]*, [7 x i32]** %4
%861 = load i32, i32* %8
%862 = sext i32 %861 to i64
%863 = getelementptr inbounds [7 x i32], [7 x i32]* %860, i64 %862
%864 = load i32, i32* %9
%865 = add nsw i32 %864, 1
%866 = sext i32 %865 to i64
%867 = getelementptr inbounds [7 x i32], [7 x i32]* %863, i64 0, i64 %866
%868 = load i32, i32* %867
%869 = load [7 x i32]*, [7 x i32]** %4
%870 = load i32, i32* %8
%871 = sext i32 %870 to i64
%872 = getelementptr inbounds [7 x i32], [7 x i32]* %869, i64 %871
%873 = load i32, i32* %9
%874 = add nsw i32 %873, 3
%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 %868, %877
br i1 %878, label %879, label %904
879: ; preds = %859
%880 = load [7 x i32]*, [7 x i32]** %4
%881 = load i32, i32* %8
%882 = sext i32 %881 to i64
%883 = getelementptr inbounds [7 x i32], [7 x i32]* %880, i64 %882
%884 = load i32, i32* %9
%885 = add nsw i32 %884, 3
%886 = sext i32 %885 to i64
%887 = getelementptr inbounds [7 x i32], [7 x i32]* %883, i64 0, i64 %886
%888 = load i32, i32* %887
%889 = load i32, i32* %11
%890 = icmp eq i32 %888, %889
br i1 %890, label %891, label %904
891: ; preds = %879
%892 = load i32, i32* %9
%893 = add nsw i32 %892, 3
%894 = icmp slt i32 %893, 7
br i1 %894, label %895, label %904
895: ; preds = %891
%896 = load [7 x i32]*, [7 x i32]** %4
%897 = load i32, i32* %6
%898 = sext i32 %897 to i64
%899 = getelementptr inbounds [7 x i32], [7 x i32]* %896, i64 %898
%900 = load i32, i32* %7
%901 = sext i32 %900 to i64
%902 = getelementptr inbounds [7 x i32], [7 x i32]* %899, i64 0, i64 %901
store i32 0, i32* %902
%903 = load i32, i32* %7
store i32 %903, i32* %3
br label %2355
904: ; preds = %891, %879, %859, %839, %820
%905 = load [7 x i32]*, [7 x i32]** %4
%906 = load i32, i32* %8
%907 = sext i32 %906 to i64
%908 = getelementptr inbounds [7 x i32], [7 x i32]* %905, i64 %907
%909 = load i32, i32* %9
%910 = sext i32 %909 to i64
%911 = getelementptr inbounds [7 x i32], [7 x i32]* %908, i64 0, i64 %910
%912 = load i32, i32* %911
%913 = load [7 x i32]*, [7 x i32]** %4
%914 = load i32, i32* %8
%915 = add nsw i32 %914, 1
%916 = sext i32 %915 to i64
%917 = getelementptr inbounds [7 x i32], [7 x i32]* %913, i64 %916
%918 = load i32, i32* %9
%919 = sext i32 %918 to i64
%920 = getelementptr inbounds [7 x i32], [7 x i32]* %917, i64 0, i64 %919
%921 = load i32, i32* %920
%922 = icmp eq i32 %912, %921
br i1 %922, label %923, label %988
923: ; preds = %904
%924 = load [7 x i32]*, [7 x i32]** %4
%925 = load i32, i32* %8
%926 = add nsw i32 %925, 1
%927 = sext i32 %926 to i64
%928 = getelementptr inbounds [7 x i32], [7 x i32]* %924, i64 %927
%929 = load i32, i32* %9
%930 = sext i32 %929 to i64
%931 = getelementptr inbounds [7 x i32], [7 x i32]* %928, i64 0, i64 %930
%932 = load i32, i32* %931
%933 = load [7 x i32]*, [7 x i32]** %4
%934 = load i32, i32* %8
%935 = add nsw i32 %934, 2
%936 = sext i32 %935 to i64
%937 = getelementptr inbounds [7 x i32], [7 x i32]* %933, i64 %936
%938 = load i32, i32* %9
%939 = sext i32 %938 to i64
%940 = getelementptr inbounds [7 x i32], [7 x i32]* %937, i64 0, i64 %939
%941 = load i32, i32* %940
%942 = icmp eq i32 %932, %941
br i1 %942, label %943, label %988
943: ; preds = %923
%944 = load [7 x i32]*, [7 x i32]** %4
%945 = load i32, i32* %8
%946 = add nsw i32 %945, 1
%947 = sext i32 %946 to i64
%948 = getelementptr inbounds [7 x i32], [7 x i32]* %944, i64 %947
%949 = load i32, i32* %9
%950 = sext i32 %949 to i64
%951 = getelementptr inbounds [7 x i32], [7 x i32]* %948, i64 0, i64 %950
%952 = load i32, i32* %951
%953 = load [7 x i32]*, [7 x i32]** %4
%954 = load i32, i32* %8
%955 = add nsw i32 %954, 3
%956 = sext i32 %955 to i64
%957 = getelementptr inbounds [7 x i32], [7 x i32]* %953, i64 %956
%958 = load i32, i32* %9
%959 = sext i32 %958 to i64
%960 = getelementptr inbounds [7 x i32], [7 x i32]* %957, i64 0, i64 %959
%961 = load i32, i32* %960
%962 = icmp eq i32 %952, %961
br i1 %962, label %963, label %988
963: ; preds = %943
%964 = load [7 x i32]*, [7 x i32]** %4
%965 = load i32, i32* %8
%966 = add nsw i32 %965, 1
%967 = sext i32 %966 to i64
%968 = getelementptr inbounds [7 x i32], [7 x i32]* %964, i64 %967
%969 = load i32, i32* %9
%970 = sext i32 %969 to i64
%971 = getelementptr inbounds [7 x i32], [7 x i32]* %968, i64 0, i64 %970
%972 = load i32, i32* %971
%973 = load i32, i32* %11
%974 = icmp eq i32 %972, %973
br i1 %974, label %975, label %988
975: ; preds = %963
%976 = load i32, i32* %8
%977 = add nsw i32 %976, 3
%978 = icmp slt i32 %977, 6
br i1 %978, label %979, label %988
979: ; preds = %975
%980 = load [7 x i32]*, [7 x i32]** %4
%981 = load i32, i32* %6
%982 = sext i32 %981 to i64
%983 = getelementptr inbounds [7 x i32], [7 x i32]* %980, i64 %982
%984 = load i32, i32* %7
%985 = sext i32 %984 to i64
%986 = getelementptr inbounds [7 x i32], [7 x i32]* %983, i64 0, i64 %985
store i32 0, i32* %986
%987 = load i32, i32* %7
store i32 %987, i32* %3
br label %2355
988: ; preds = %975, %963, %943, %923, %904
%989 = load [7 x i32]*, [7 x i32]** %4
%990 = load i32, i32* %8
%991 = sext i32 %990 to i64
%992 = getelementptr inbounds [7 x i32], [7 x i32]* %989, i64 %991
%993 = load i32, i32* %9
%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 = load [7 x i32]*, [7 x i32]** %4
%998 = load i32, i32* %8
%999 = sub nsw i32 %998, 1
%1000 = sext i32 %999 to i64
%1001 = getelementptr inbounds [7 x i32], [7 x i32]* %997, i64 %1000
%1002 = load i32, i32* %9
%1003 = sub nsw i32 %1002, 1
%1004 = sext i32 %1003 to i64
%1005 = getelementptr inbounds [7 x i32], [7 x i32]* %1001, i64 0, i64 %1004
%1006 = load i32, i32* %1005
%1007 = icmp eq i32 %996, %1006
br i1 %1007, label %1008, label %1082
1008: ; preds = %988
%1009 = load [7 x i32]*, [7 x i32]** %4
%1010 = load i32, i32* %8
%1011 = sub nsw i32 %1010, 1
%1012 = sext i32 %1011 to i64
%1013 = getelementptr inbounds [7 x i32], [7 x i32]* %1009, i64 %1012
%1014 = load i32, i32* %9
%1015 = sub nsw i32 %1014, 1
%1016 = sext i32 %1015 to i64
%1017 = getelementptr inbounds [7 x i32], [7 x i32]* %1013, i64 0, i64 %1016
%1018 = load i32, i32* %1017
%1019 = load [7 x i32]*, [7 x i32]** %4
%1020 = load i32, i32* %8
%1021 = sub nsw i32 %1020, 2
%1022 = sext i32 %1021 to i64
%1023 = getelementptr inbounds [7 x i32], [7 x i32]* %1019, i64 %1022
%1024 = load i32, i32* %9
%1025 = sub nsw i32 %1024, 2
%1026 = sext i32 %1025 to i64
%1027 = getelementptr inbounds [7 x i32], [7 x i32]* %1023, i64 0, i64 %1026
%1028 = load i32, i32* %1027
%1029 = icmp eq i32 %1018, %1028
br i1 %1029, label %1030, label %1082
1030: ; preds = %1008
%1031 = load [7 x i32]*, [7 x i32]** %4
%1032 = load i32, i32* %8
%1033 = sub nsw i32 %1032, 1
%1034 = sext i32 %1033 to i64
%1035 = getelementptr inbounds [7 x i32], [7 x i32]* %1031, i64 %1034
%1036 = load i32, i32* %9
%1037 = sub nsw i32 %1036, 1
%1038 = sext i32 %1037 to i64
%1039 = getelementptr inbounds [7 x i32], [7 x i32]* %1035, i64 0, i64 %1038
%1040 = load i32, i32* %1039
%1041 = load [7 x i32]*, [7 x i32]** %4
%1042 = load i32, i32* %8
%1043 = sub nsw i32 %1042, 3
%1044 = sext i32 %1043 to i64
%1045 = getelementptr inbounds [7 x i32], [7 x i32]* %1041, i64 %1044
%1046 = load i32, i32* %9
%1047 = sub nsw i32 %1046, 3
%1048 = sext i32 %1047 to i64
%1049 = getelementptr inbounds [7 x i32], [7 x i32]* %1045, i64 0, i64 %1048
%1050 = load i32, i32* %1049
%1051 = icmp eq i32 %1040, %1050
br i1 %1051, label %1052, label %1082
1052: ; preds = %1030
%1053 = load [7 x i32]*, [7 x i32]** %4
%1054 = load i32, i32* %8
%1055 = sub nsw i32 %1054, 3
%1056 = sext i32 %1055 to i64
%1057 = getelementptr inbounds [7 x i32], [7 x i32]* %1053, i64 %1056
%1058 = load i32, i32* %9
%1059 = sub nsw i32 %1058, 3
%1060 = sext i32 %1059 to i64
%1061 = getelementptr inbounds [7 x i32], [7 x i32]* %1057, i64 0, i64 %1060
%1062 = load i32, i32* %1061
%1063 = load i32, i32* %11
%1064 = icmp eq i32 %1062, %1063
br i1 %1064, label %1065, label %1082
1065: ; preds = %1052
%1066 = load i32, i32* %8
%1067 = sub nsw i32 %1066, 3
%1068 = icmp sge i32 %1067, 0
br i1 %1068, label %1069, label %1082
1069: ; preds = %1065
%1070 = load i32, i32* %9
%1071 = sub nsw i32 %1070, 3
%1072 = icmp sge i32 %1071, 0
br i1 %1072, label %1073, label %1082
1073: ; preds = %1069
%1074 = load [7 x i32]*, [7 x i32]** %4
%1075 = load i32, i32* %6
%1076 = sext i32 %1075 to i64
%1077 = getelementptr inbounds [7 x i32], [7 x i32]* %1074, i64 %1076
%1078 = load i32, i32* %7
%1079 = sext i32 %1078 to i64
%1080 = getelementptr inbounds [7 x i32], [7 x i32]* %1077, i64 0, i64 %1079
store i32 0, i32* %1080
%1081 = load i32, i32* %7
store i32 %1081, i32* %3
br label %2355
1082: ; preds = %1069, %1065, %1052, %1030, %1008, %988
%1083 = load [7 x i32]*, [7 x i32]** %4
%1084 = load i32, i32* %8
%1085 = sext i32 %1084 to i64
%1086 = getelementptr inbounds [7 x i32], [7 x i32]* %1083, i64 %1085
%1087 = load i32, i32* %9
%1088 = sext i32 %1087 to i64
%1089 = getelementptr inbounds [7 x i32], [7 x i32]* %1086, i64 0, i64 %1088
%1090 = load i32, i32* %1089
%1091 = load [7 x i32]*, [7 x i32]** %4
%1092 = load i32, i32* %8
%1093 = sub nsw i32 %1092, 1
%1094 = sext i32 %1093 to i64
%1095 = getelementptr inbounds [7 x i32], [7 x i32]* %1091, i64 %1094
%1096 = load i32, i32* %9
%1097 = add nsw i32 %1096, 1
%1098 = sext i32 %1097 to i64
%1099 = getelementptr inbounds [7 x i32], [7 x i32]* %1095, i64 0, i64 %1098
%1100 = load i32, i32* %1099
%1101 = icmp eq i32 %1090, %1100
br i1 %1101, label %1102, label %1176
1102: ; preds = %1082
%1103 = load [7 x i32]*, [7 x i32]** %4
%1104 = load i32, i32* %8
%1105 = sub nsw i32 %1104, 1
%1106 = sext i32 %1105 to i64
%1107 = getelementptr inbounds [7 x i32], [7 x i32]* %1103, i64 %1106
%1108 = load i32, i32* %9
%1109 = add nsw i32 %1108, 1
%1110 = sext i32 %1109 to i64
%1111 = getelementptr inbounds [7 x i32], [7 x i32]* %1107, i64 0, i64 %1110
%1112 = load i32, i32* %1111
%1113 = load [7 x i32]*, [7 x i32]** %4
%1114 = load i32, i32* %8
%1115 = sub nsw i32 %1114, 2
%1116 = sext i32 %1115 to i64
%1117 = getelementptr inbounds [7 x i32], [7 x i32]* %1113, i64 %1116
%1118 = load i32, i32* %9
%1119 = add nsw i32 %1118, 2
%1120 = sext i32 %1119 to i64
%1121 = getelementptr inbounds [7 x i32], [7 x i32]* %1117, i64 0, i64 %1120
%1122 = load i32, i32* %1121
%1123 = icmp eq i32 %1112, %1122
br i1 %1123, label %1124, label %1176
1124: ; preds = %1102
%1125 = load [7 x i32]*, [7 x i32]** %4
%1126 = load i32, i32* %8
%1127 = sub nsw i32 %1126, 1
%1128 = sext i32 %1127 to i64
%1129 = getelementptr inbounds [7 x i32], [7 x i32]* %1125, i64 %1128
%1130 = load i32, i32* %9
%1131 = add nsw i32 %1130, 1
%1132 = sext i32 %1131 to i64
%1133 = getelementptr inbounds [7 x i32], [7 x i32]* %1129, i64 0, i64 %1132
%1134 = load i32, i32* %1133
%1135 = load [7 x i32]*, [7 x i32]** %4
%1136 = load i32, i32* %8
%1137 = sub nsw i32 %1136, 3
%1138 = sext i32 %1137 to i64
%1139 = getelementptr inbounds [7 x i32], [7 x i32]* %1135, i64 %1138
%1140 = load i32, i32* %9
%1141 = add nsw i32 %1140, 3
%1142 = sext i32 %1141 to i64
%1143 = getelementptr inbounds [7 x i32], [7 x i32]* %1139, i64 0, i64 %1142
%1144 = load i32, i32* %1143
%1145 = icmp eq i32 %1134, %1144
br i1 %1145, label %1146, label %1176
1146: ; preds = %1124
%1147 = load [7 x i32]*, [7 x i32]** %4
%1148 = load i32, i32* %8
%1149 = sub nsw i32 %1148, 3
%1150 = sext i32 %1149 to i64
%1151 = getelementptr inbounds [7 x i32], [7 x i32]* %1147, i64 %1150
%1152 = load i32, i32* %9
%1153 = add nsw i32 %1152, 3
%1154 = sext i32 %1153 to i64
%1155 = getelementptr inbounds [7 x i32], [7 x i32]* %1151, i64 0, i64 %1154
%1156 = load i32, i32* %1155
%1157 = load i32, i32* %11
%1158 = icmp eq i32 %1156, %1157
br i1 %1158, label %1159, label %1176
1159: ; preds = %1146
%1160 = load i32, i32* %8
%1161 = sub nsw i32 %1160, 3
%1162 = icmp sge i32 %1161, 0
br i1 %1162, label %1163, label %1176
1163: ; preds = %1159
%1164 = load i32, i32* %9
%1165 = add nsw i32 %1164, 3
%1166 = icmp slt i32 %1165, 7
br i1 %1166, label %1167, label %1176
1167: ; preds = %1163
%1168 = load [7 x i32]*, [7 x i32]** %4
%1169 = load i32, i32* %6
%1170 = sext i32 %1169 to i64
%1171 = getelementptr inbounds [7 x i32], [7 x i32]* %1168, i64 %1170
%1172 = load i32, i32* %7
%1173 = sext i32 %1172 to i64
%1174 = getelementptr inbounds [7 x i32], [7 x i32]* %1171, i64 0, i64 %1173
store i32 0, i32* %1174
%1175 = load i32, i32* %7
store i32 %1175, i32* %3
br label %2355
1176: ; preds = %1163, %1159, %1146, %1124, %1102, %1082
%1177 = load [7 x i32]*, [7 x i32]** %4
%1178 = load i32, i32* %8
%1179 = sext i32 %1178 to i64
%1180 = getelementptr inbounds [7 x i32], [7 x i32]* %1177, i64 %1179
%1181 = load i32, i32* %9
%1182 = sext i32 %1181 to i64
%1183 = getelementptr inbounds [7 x i32], [7 x i32]* %1180, i64 0, i64 %1182
%1184 = load i32, i32* %1183
%1185 = load [7 x i32]*, [7 x i32]** %4
%1186 = load i32, i32* %8
%1187 = add nsw i32 %1186, 1
%1188 = sext i32 %1187 to i64
%1189 = getelementptr inbounds [7 x i32], [7 x i32]* %1185, i64 %1188
%1190 = load i32, i32* %9
%1191 = sub nsw i32 %1190, 1
%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 %1184, %1194
br i1 %1195, label %1196, label %1270
1196: ; preds = %1176
%1197 = load [7 x i32]*, [7 x i32]** %4
%1198 = load i32, i32* %8
%1199 = add nsw i32 %1198, 1
%1200 = sext i32 %1199 to i64
%1201 = getelementptr inbounds [7 x i32], [7 x i32]* %1197, i64 %1200
%1202 = load i32, i32* %9
%1203 = sub nsw i32 %1202, 1
%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 = load [7 x i32]*, [7 x i32]** %4
%1208 = load i32, i32* %8
%1209 = add nsw i32 %1208, 2
%1210 = sext i32 %1209 to i64
%1211 = getelementptr inbounds [7 x i32], [7 x i32]* %1207, i64 %1210
%1212 = load i32, i32* %9
%1213 = sub nsw i32 %1212, 2
%1214 = sext i32 %1213 to i64
%1215 = getelementptr inbounds [7 x i32], [7 x i32]* %1211, i64 0, i64 %1214
%1216 = load i32, i32* %1215
%1217 = icmp eq i32 %1206, %1216
br i1 %1217, label %1218, label %1270
1218: ; preds = %1196
%1219 = load [7 x i32]*, [7 x i32]** %4
%1220 = load i32, i32* %8
%1221 = add nsw i32 %1220, 1
%1222 = sext i32 %1221 to i64
%1223 = getelementptr inbounds [7 x i32], [7 x i32]* %1219, i64 %1222
%1224 = load i32, i32* %9
%1225 = sub nsw i32 %1224, 1
%1226 = sext i32 %1225 to i64
%1227 = getelementptr inbounds [7 x i32], [7 x i32]* %1223, i64 0, i64 %1226
%1228 = load i32, i32* %1227
%1229 = load [7 x i32]*, [7 x i32]** %4
%1230 = load i32, i32* %8
%1231 = add nsw i32 %1230, 3
%1232 = sext i32 %1231 to i64
%1233 = getelementptr inbounds [7 x i32], [7 x i32]* %1229, i64 %1232
%1234 = load i32, i32* %9
%1235 = sub nsw i32 %1234, 3
%1236 = sext i32 %1235 to i64
%1237 = getelementptr inbounds [7 x i32], [7 x i32]* %1233, i64 0, i64 %1236
%1238 = load i32, i32* %1237
%1239 = icmp eq i32 %1228, %1238
br i1 %1239, label %1240, label %1270
1240: ; preds = %1218
%1241 = load [7 x i32]*, [7 x i32]** %4
%1242 = load i32, i32* %8
%1243 = add nsw i32 %1242, 3
%1244 = sext i32 %1243 to i64
%1245 = getelementptr inbounds [7 x i32], [7 x i32]* %1241, i64 %1244
%1246 = load i32, i32* %9
%1247 = sub nsw i32 %1246, 3
%1248 = sext i32 %1247 to i64
%1249 = getelementptr inbounds [7 x i32], [7 x i32]* %1245, i64 0, i64 %1248
%1250 = load i32, i32* %1249
%1251 = load i32, i32* %11
%1252 = icmp eq i32 %1250, %1251
br i1 %1252, label %1253, label %1270
1253: ; preds = %1240
%1254 = load i32, i32* %8
%1255 = add nsw i32 %1254, 3
%1256 = icmp slt i32 %1255, 6
br i1 %1256, label %1257, label %1270
1257: ; preds = %1253
%1258 = load i32, i32* %9
%1259 = sub nsw i32 %1258, 3
%1260 = icmp sge i32 %1259, 0
br i1 %1260, label %1261, label %1270
1261: ; preds = %1257
%1262 = load [7 x i32]*, [7 x i32]** %4
%1263 = load i32, i32* %6
%1264 = sext i32 %1263 to i64
%1265 = getelementptr inbounds [7 x i32], [7 x i32]* %1262, i64 %1264
%1266 = load i32, i32* %7
%1267 = sext i32 %1266 to i64
%1268 = getelementptr inbounds [7 x i32], [7 x i32]* %1265, i64 0, i64 %1267
store i32 0, i32* %1268
%1269 = load i32, i32* %7
store i32 %1269, i32* %3
br label %2355
1270: ; preds = %1257, %1253, %1240, %1218, %1196, %1176
%1271 = load [7 x i32]*, [7 x i32]** %4
%1272 = load i32, i32* %8
%1273 = sext i32 %1272 to i64
%1274 = getelementptr inbounds [7 x i32], [7 x i32]* %1271, i64 %1273
%1275 = load i32, i32* %9
%1276 = sext i32 %1275 to i64
%1277 = getelementptr inbounds [7 x i32], [7 x i32]* %1274, i64 0, i64 %1276
%1278 = load i32, i32* %1277
%1279 = load [7 x i32]*, [7 x i32]** %4
%1280 = load i32, i32* %8
%1281 = add nsw i32 %1280, 1
%1282 = sext i32 %1281 to i64
%1283 = getelementptr inbounds [7 x i32], [7 x i32]* %1279, i64 %1282
%1284 = load i32, i32* %9
%1285 = add nsw i32 %1284, 1
%1286 = sext i32 %1285 to i64
%1287 = getelementptr inbounds [7 x i32], [7 x i32]* %1283, i64 0, i64 %1286
%1288 = load i32, i32* %1287
%1289 = icmp eq i32 %1278, %1288
br i1 %1289, label %1290, label %1364
1290: ; preds = %1270
%1291 = load [7 x i32]*, [7 x i32]** %4
%1292 = load i32, i32* %8
%1293 = add nsw i32 %1292, 1
%1294 = sext i32 %1293 to i64
%1295 = getelementptr inbounds [7 x i32], [7 x i32]* %1291, i64 %1294
%1296 = load i32, i32* %9
%1297 = add nsw i32 %1296, 1
%1298 = sext i32 %1297 to i64
%1299 = getelementptr inbounds [7 x i32], [7 x i32]* %1295, i64 0, i64 %1298
%1300 = load i32, i32* %1299
%1301 = load [7 x i32]*, [7 x i32]** %4
%1302 = load i32, i32* %8
%1303 = add nsw i32 %1302, 2
%1304 = sext i32 %1303 to i64
%1305 = getelementptr inbounds [7 x i32], [7 x i32]* %1301, i64 %1304
%1306 = load i32, i32* %9
%1307 = add nsw i32 %1306, 2
%1308 = sext i32 %1307 to i64
%1309 = getelementptr inbounds [7 x i32], [7 x i32]* %1305, i64 0, i64 %1308
%1310 = load i32, i32* %1309
%1311 = icmp eq i32 %1300, %1310
br i1 %1311, label %1312, label %1364
1312: ; preds = %1290
%1313 = load [7 x i32]*, [7 x i32]** %4
%1314 = load i32, i32* %8
%1315 = add nsw i32 %1314, 1
%1316 = sext i32 %1315 to i64
%1317 = getelementptr inbounds [7 x i32], [7 x i32]* %1313, i64 %1316
%1318 = load i32, i32* %9
%1319 = add nsw i32 %1318, 1
%1320 = sext i32 %1319 to i64
%1321 = getelementptr inbounds [7 x i32], [7 x i32]* %1317, i64 0, i64 %1320
%1322 = load i32, i32* %1321
%1323 = load [7 x i32]*, [7 x i32]** %4
%1324 = load i32, i32* %8
%1325 = add nsw i32 %1324, 3
%1326 = sext i32 %1325 to i64
%1327 = getelementptr inbounds [7 x i32], [7 x i32]* %1323, i64 %1326
%1328 = load i32, i32* %9
%1329 = add nsw i32 %1328, 3
%1330 = sext i32 %1329 to i64
%1331 = getelementptr inbounds [7 x i32], [7 x i32]* %1327, i64 0, i64 %1330
%1332 = load i32, i32* %1331
%1333 = icmp eq i32 %1322, %1332
br i1 %1333, label %1334, label %1364
1334: ; preds = %1312
%1335 = load [7 x i32]*, [7 x i32]** %4
%1336 = load i32, i32* %8
%1337 = add nsw i32 %1336, 3
%1338 = sext i32 %1337 to i64
%1339 = getelementptr inbounds [7 x i32], [7 x i32]* %1335, i64 %1338
%1340 = load i32, i32* %9
%1341 = add nsw i32 %1340, 3
%1342 = sext i32 %1341 to i64
%1343 = getelementptr inbounds [7 x i32], [7 x i32]* %1339, i64 0, i64 %1342
%1344 = load i32, i32* %1343
%1345 = load i32, i32* %11
%1346 = icmp eq i32 %1344, %1345
br i1 %1346, label %1347, label %1364
1347: ; preds = %1334
%1348 = load i32, i32* %8
%1349 = add nsw i32 %1348, 3
%1350 = icmp slt i32 %1349, 6
br i1 %1350, label %1351, label %1364
1351: ; preds = %1347
%1352 = load i32, i32* %9
%1353 = add nsw i32 %1352, 3
%1354 = icmp slt i32 %1353, 7
br i1 %1354, label %1355, label %1364
1355: ; preds = %1351
%1356 = load [7 x i32]*, [7 x i32]** %4
%1357 = load i32, i32* %6
%1358 = sext i32 %1357 to i64
%1359 = getelementptr inbounds [7 x i32], [7 x i32]* %1356, i64 %1358
%1360 = load i32, i32* %7
%1361 = sext i32 %1360 to i64
%1362 = getelementptr inbounds [7 x i32], [7 x i32]* %1359, i64 0, i64 %1361
store i32 0, i32* %1362
%1363 = load i32, i32* %7
store i32 %1363, i32* %3
br label %2355
1364: ; preds = %1351, %1347, %1334, %1312, %1290, %1270
br label %1365
1365: ; preds = %1364
%1366 = load i32, i32* %9
%1367 = add nsw i32 %1366, 1
store i32 %1367, i32* %9
br label %733
1368: ; preds = %733
br label %1369
1369: ; preds = %1368
%1370 = load i32, i32* %8
%1371 = add nsw i32 %1370, 1
store i32 %1371, i32* %8
br label %729
1372: ; preds = %729
%1373 = load i32, i32* %5
%1374 = load [7 x i32]*, [7 x i32]** %4
%1375 = load i32, i32* %6
%1376 = sext i32 %1375 to i64
%1377 = getelementptr inbounds [7 x i32], [7 x i32]* %1374, i64 %1376
%1378 = load i32, i32* %7
%1379 = sext i32 %1378 to i64
%1380 = getelementptr inbounds [7 x i32], [7 x i32]* %1377, i64 0, i64 %1379
store i32 %1373, i32* %1380
store i32 0, i32* %8
br label %1381
1381: ; preds = %2316, %1372
%1382 = load i32, i32* %8
%1383 = icmp slt i32 %1382, 6
br i1 %1383, label %1384, label %2319
1384: ; preds = %1381
store i32 0, i32* %9
br label %1385
1385: ; preds = %2312, %1384
%1386 = load i32, i32* %9
%1387 = icmp slt i32 %1386, 7
br i1 %1387, label %1388, label %2315
1388: ; preds = %1385
%1389 = load [7 x i32]*, [7 x i32]** %4
%1390 = load i32, i32* %8
%1391 = sext i32 %1390 to i64
%1392 = getelementptr inbounds [7 x i32], [7 x i32]* %1389, i64 %1391
%1393 = load i32, i32* %9
%1394 = sext i32 %1393 to i64
%1395 = getelementptr inbounds [7 x i32], [7 x i32]* %1392, i64 0, i64 %1394
%1396 = load i32, i32* %1395
%1397 = icmp eq i32 %1396, 0
br i1 %1397, label %1398, label %2311
1398: ; preds = %1388
%1399 = load [7 x i32]*, [7 x i32]** %4
%1400 = load i32, i32* %8
%1401 = add nsw i32 %1400, 1
%1402 = sext i32 %1401 to i64
%1403 = getelementptr inbounds [7 x i32], [7 x i32]* %1399, i64 %1402
%1404 = load i32, i32* %9
%1405 = sext i32 %1404 to i64
%1406 = getelementptr inbounds [7 x i32], [7 x i32]* %1403, i64 0, i64 %1405
%1407 = load i32, i32* %1406
%1408 = icmp ne i32 %1407, 0
br i1 %1408, label %1409, label %2311
1409: ; preds = %1398
%1410 = load i32, i32* %8
%1411 = add nsw i32 %1410, 1
%1412 = icmp slt i32 %1411, 6
br i1 %1412, label %1413, label %2311
1413: ; preds = %1409
%1414 = load [7 x i32]*, [7 x i32]** %4
%1415 = load i32, i32* %8
%1416 = sext i32 %1415 to i64
%1417 = getelementptr inbounds [7 x i32], [7 x i32]* %1414, i64 %1416
%1418 = load i32, i32* %9
%1419 = sub nsw i32 %1418, 1
%1420 = sext i32 %1419 to i64
%1421 = getelementptr inbounds [7 x i32], [7 x i32]* %1417, i64 0, i64 %1420
%1422 = load i32, i32* %1421
%1423 = load [7 x i32]*, [7 x i32]** %4
%1424 = load i32, i32* %8
%1425 = sext i32 %1424 to i64
%1426 = getelementptr inbounds [7 x i32], [7 x i32]* %1423, i64 %1425
%1427 = load i32, i32* %9
%1428 = sub nsw i32 %1427, 2
%1429 = sext i32 %1428 to i64
%1430 = getelementptr inbounds [7 x i32], [7 x i32]* %1426, i64 0, i64 %1429
%1431 = load i32, i32* %1430
%1432 = icmp eq i32 %1422, %1431
br i1 %1432, label %1433, label %1469
1433: ; preds = %1413
%1434 = load [7 x i32]*, [7 x i32]** %4
%1435 = load i32, i32* %8
%1436 = sext i32 %1435 to i64
%1437 = getelementptr inbounds [7 x i32], [7 x i32]* %1434, i64 %1436
%1438 = load i32, i32* %9
%1439 = sub nsw i32 %1438, 1
%1440 = sext i32 %1439 to i64
%1441 = getelementptr inbounds [7 x i32], [7 x i32]* %1437, i64 0, i64 %1440
%1442 = load i32, i32* %1441
%1443 = load [7 x i32]*, [7 x i32]** %4
%1444 = load i32, i32* %8
%1445 = sext i32 %1444 to i64
%1446 = getelementptr inbounds [7 x i32], [7 x i32]* %1443, i64 %1445
%1447 = load i32, i32* %9
%1448 = sub nsw i32 %1447, 3
%1449 = sext i32 %1448 to i64
%1450 = getelementptr inbounds [7 x i32], [7 x i32]* %1446, i64 0, i64 %1449
%1451 = load i32, i32* %1450
%1452 = icmp eq i32 %1442, %1451
br i1 %1452, label %1453, label %1469
1453: ; preds = %1433
%1454 = load [7 x i32]*, [7 x i32]** %4
%1455 = load i32, i32* %8
%1456 = sext i32 %1455 to i64
%1457 = getelementptr inbounds [7 x i32], [7 x i32]* %1454, i64 %1456
%1458 = load i32, i32* %9
%1459 = sub nsw i32 %1458, 3
%1460 = sext i32 %1459 to i64
%1461 = getelementptr inbounds [7 x i32], [7 x i32]* %1457, i64 0, i64 %1460
%1462 = load i32, i32* %1461
%1463 = load i32, i32* %11
%1464 = icmp eq i32 %1462, %1463
br i1 %1464, label %1465, label %1469
1465: ; preds = %1453
%1466 = load i32, i32* %9
%1467 = sub nsw i32 %1466, 3
%1468 = icmp sge i32 %1467, 0
br i1 %1468, label %1528, label %1469
1469: ; preds = %1465, %1453, %1433, %1413
%1470 = load [7 x i32]*, [7 x i32]** %4
%1471 = load i32, i32* %8
%1472 = sext i32 %1471 to i64
%1473 = getelementptr inbounds [7 x i32], [7 x i32]* %1470, i64 %1472
%1474 = load i32, i32* %9
%1475 = sub nsw i32 %1474, 1
%1476 = sext i32 %1475 to i64
%1477 = getelementptr inbounds [7 x i32], [7 x i32]* %1473, i64 0, i64 %1476
%1478 = load i32, i32* %1477
%1479 = load [7 x i32]*, [7 x i32]** %4
%1480 = load i32, i32* %8
%1481 = sext i32 %1480 to i64
%1482 = getelementptr inbounds [7 x i32], [7 x i32]* %1479, i64 %1481
%1483 = load i32, i32* %9
%1484 = sub nsw i32 %1483, 2
%1485 = sext i32 %1484 to i64
%1486 = getelementptr inbounds [7 x i32], [7 x i32]* %1482, i64 0, i64 %1485
%1487 = load i32, i32* %1486
%1488 = icmp eq i32 %1478, %1487
br i1 %1488, label %1489, label %1537
1489: ; preds = %1469
%1490 = load [7 x i32]*, [7 x i32]** %4
%1491 = load i32, i32* %8
%1492 = sext i32 %1491 to i64
%1493 = getelementptr inbounds [7 x i32], [7 x i32]* %1490, i64 %1492
%1494 = load i32, i32* %9
%1495 = sub nsw i32 %1494, 1
%1496 = sext i32 %1495 to i64
%1497 = getelementptr inbounds [7 x i32], [7 x i32]* %1493, i64 0, i64 %1496
%1498 = load i32, i32* %1497
%1499 = load [7 x i32]*, [7 x i32]** %4
%1500 = load i32, i32* %8
%1501 = sext i32 %1500 to i64
%1502 = getelementptr inbounds [7 x i32], [7 x i32]* %1499, i64 %1501
%1503 = load i32, i32* %9
%1504 = add nsw i32 %1503, 1
%1505 = sext i32 %1504 to i64
%1506 = getelementptr inbounds [7 x i32], [7 x i32]* %1502, i64 0, i64 %1505
%1507 = load i32, i32* %1506
%1508 = icmp eq i32 %1498, %1507
br i1 %1508, label %1509, label %1537
1509: ; preds = %1489
%1510 = load [7 x i32]*, [7 x i32]** %4
%1511 = load i32, i32* %8
%1512 = sext i32 %1511 to i64
%1513 = getelementptr inbounds [7 x i32], [7 x i32]* %1510, i64 %1512
%1514 = load i32, i32* %9
%1515 = sub nsw i32 %1514, 1
%1516 = sext i32 %1515 to i64
%1517 = getelementptr inbounds [7 x i32], [7 x i32]* %1513, i64 0, i64 %1516
%1518 = load i32, i32* %1517
%1519 = icmp eq i32 %1518, -1
br i1 %1519, label %1520, label %1537
1520: ; preds = %1509
%1521 = load i32, i32* %9
%1522 = sub nsw i32 %1521, 2
%1523 = icmp sge i32 %1522, 0
br i1 %1523, label %1524, label %1537
1524: ; preds = %1520
%1525 = load i32, i32* %9
%1526 = add nsw i32 %1525, 1
%1527 = icmp slt i32 %1526, 7
br i1 %1527, label %1528, label %1537
1528: ; preds = %1524, %1465
%1529 = load [7 x i32]*, [7 x i32]** %4
%1530 = load i32, i32* %6
%1531 = sext i32 %1530 to i64
%1532 = getelementptr inbounds [7 x i32], [7 x i32]* %1529, i64 %1531
%1533 = load i32, i32* %7
%1534 = sext i32 %1533 to i64
%1535 = getelementptr inbounds [7 x i32], [7 x i32]* %1532, i64 0, i64 %1534
store i32 0, i32* %1535
%1536 = load i32, i32* %7
store i32 %1536, i32* %10
br label %2315
1537: ; preds = %1524, %1520, %1509, %1489, %1469
%1538 = load [7 x i32]*, [7 x i32]** %4
%1539 = load i32, i32* %8
%1540 = sext i32 %1539 to i64
%1541 = getelementptr inbounds [7 x i32], [7 x i32]* %1538, i64 %1540
%1542 = load i32, i32* %9
%1543 = add nsw i32 %1542, 1
%1544 = sext i32 %1543 to i64
%1545 = getelementptr inbounds [7 x i32], [7 x i32]* %1541, i64 0, i64 %1544
%1546 = load i32, i32* %1545
%1547 = load [7 x i32]*, [7 x i32]** %4
%1548 = load i32, i32* %8
%1549 = sext i32 %1548 to i64
%1550 = getelementptr inbounds [7 x i32], [7 x i32]* %1547, i64 %1549
%1551 = load i32, i32* %9
%1552 = add nsw i32 %1551, 2
%1553 = sext i32 %1552 to i64
%1554 = getelementptr inbounds [7 x i32], [7 x i32]* %1550, i64 0, i64 %1553
%1555 = load i32, i32* %1554
%1556 = icmp eq i32 %1546, %1555
br i1 %1556, label %1557, label %1593
1557: ; preds = %1537
%1558 = load [7 x i32]*, [7 x i32]** %4
%1559 = load i32, i32* %8
%1560 = sext i32 %1559 to i64
%1561 = getelementptr inbounds [7 x i32], [7 x i32]* %1558, i64 %1560
%1562 = load i32, i32* %9
%1563 = add nsw i32 %1562, 1
%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 = load [7 x i32]*, [7 x i32]** %4
%1568 = load i32, i32* %8
%1569 = sext i32 %1568 to i64
%1570 = getelementptr inbounds [7 x i32], [7 x i32]* %1567, i64 %1569
%1571 = load i32, i32* %9
%1572 = add nsw i32 %1571, 3
%1573 = sext i32 %1572 to i64
%1574 = getelementptr inbounds [7 x i32], [7 x i32]* %1570, i64 0, i64 %1573
%1575 = load i32, i32* %1574
%1576 = icmp eq i32 %1566, %1575
br i1 %1576, label %1577, label %1593
1577: ; preds = %1557
%1578 = load [7 x i32]*, [7 x i32]** %4
%1579 = load i32, i32* %8
%1580 = sext i32 %1579 to i64
%1581 = getelementptr inbounds [7 x i32], [7 x i32]* %1578, i64 %1580
%1582 = load i32, i32* %9
%1583 = add nsw i32 %1582, 3
%1584 = sext i32 %1583 to i64
%1585 = getelementptr inbounds [7 x i32], [7 x i32]* %1581, i64 0, i64 %1584
%1586 = load i32, i32* %1585
%1587 = load i32, i32* %11
%1588 = icmp eq i32 %1586, %1587
br i1 %1588, label %1589, label %1593
1589: ; preds = %1577
%1590 = load i32, i32* %9
%1591 = add nsw i32 %1590, 3
%1592 = icmp slt i32 %1591, 7
br i1 %1592, label %1652, label %1593
1593: ; preds = %1589, %1577, %1557, %1537
%1594 = load [7 x i32]*, [7 x i32]** %4
%1595 = load i32, i32* %8
%1596 = sext i32 %1595 to i64
%1597 = getelementptr inbounds [7 x i32], [7 x i32]* %1594, i64 %1596
%1598 = load i32, i32* %9
%1599 = sub nsw i32 %1598, 1
%1600 = sext i32 %1599 to i64
%1601 = getelementptr inbounds [7 x i32], [7 x i32]* %1597, i64 0, i64 %1600
%1602 = load i32, i32* %1601
%1603 = load [7 x i32]*, [7 x i32]** %4
%1604 = load i32, i32* %8
%1605 = sext i32 %1604 to i64
%1606 = getelementptr inbounds [7 x i32], [7 x i32]* %1603, i64 %1605
%1607 = load i32, i32* %9
%1608 = add nsw i32 %1607, 2
%1609 = sext i32 %1608 to i64
%1610 = getelementptr inbounds [7 x i32], [7 x i32]* %1606, i64 0, i64 %1609
%1611 = load i32, i32* %1610
%1612 = icmp eq i32 %1602, %1611
br i1 %1612, label %1613, label %1661
1613: ; preds = %1593
%1614 = load [7 x i32]*, [7 x i32]** %4
%1615 = load i32, i32* %8
%1616 = sext i32 %1615 to i64
%1617 = getelementptr inbounds [7 x i32], [7 x i32]* %1614, i64 %1616
%1618 = load i32, i32* %9
%1619 = add nsw i32 %1618, 1
%1620 = sext i32 %1619 to i64
%1621 = getelementptr inbounds [7 x i32], [7 x i32]* %1617, i64 0, i64 %1620
%1622 = load i32, i32* %1621
%1623 = load [7 x i32]*, [7 x i32]** %4
%1624 = load i32, i32* %8
%1625 = sext i32 %1624 to i64
%1626 = getelementptr inbounds [7 x i32], [7 x i32]* %1623, i64 %1625
%1627 = load i32, i32* %9
%1628 = add nsw i32 %1627, 2
%1629 = sext i32 %1628 to i64
%1630 = getelementptr inbounds [7 x i32], [7 x i32]* %1626, i64 0, i64 %1629
%1631 = load i32, i32* %1630
%1632 = icmp eq i32 %1622, %1631
br i1 %1632, label %1633, label %1661
1633: ; preds = %1613
%1634 = load [7 x i32]*, [7 x i32]** %4
%1635 = load i32, i32* %8
%1636 = sext i32 %1635 to i64
%1637 = getelementptr inbounds [7 x i32], [7 x i32]* %1634, i64 %1636
%1638 = load i32, i32* %9
%1639 = sub nsw i32 %1638, 1
%1640 = sext i32 %1639 to i64
%1641 = getelementptr inbounds [7 x i32], [7 x i32]* %1637, i64 0, i64 %1640
%1642 = load i32, i32* %1641
%1643 = icmp eq i32 %1642, -1
br i1 %1643, label %1644, label %1661
1644: ; preds = %1633
%1645 = load i32, i32* %9
%1646 = sub nsw i32 %1645, 1
%1647 = icmp sge i32 %1646, 0
br i1 %1647, label %1648, label %1661
1648: ; preds = %1644
%1649 = load i32, i32* %9
%1650 = add nsw i32 %1649, 2
%1651 = icmp slt i32 %1650, 7
br i1 %1651, label %1652, label %1661
1652: ; preds = %1648, %1589
%1653 = load [7 x i32]*, [7 x i32]** %4
%1654 = load i32, i32* %6
%1655 = sext i32 %1654 to i64
%1656 = getelementptr inbounds [7 x i32], [7 x i32]* %1653, i64 %1655
%1657 = load i32, i32* %7
%1658 = sext i32 %1657 to i64
%1659 = getelementptr inbounds [7 x i32], [7 x i32]* %1656, i64 0, i64 %1658
store i32 0, i32* %1659
%1660 = load i32, i32* %7
store i32 %1660, i32* %10
br label %2315
1661: ; preds = %1648, %1644, %1633, %1613, %1593
%1662 = load [7 x i32]*, [7 x i32]** %4
%1663 = load i32, i32* %8
%1664 = add nsw i32 %1663, 1
%1665 = sext i32 %1664 to i64
%1666 = getelementptr inbounds [7 x i32], [7 x i32]* %1662, i64 %1665
%1667 = load i32, i32* %9
%1668 = sext i32 %1667 to i64
%1669 = getelementptr inbounds [7 x i32], [7 x i32]* %1666, i64 0, i64 %1668
%1670 = load i32, i32* %1669
%1671 = load [7 x i32]*, [7 x i32]** %4
%1672 = load i32, i32* %8
%1673 = add nsw i32 %1672, 2
%1674 = sext i32 %1673 to i64
%1675 = getelementptr inbounds [7 x i32], [7 x i32]* %1671, i64 %1674
%1676 = load i32, i32* %9
%1677 = sext i32 %1676 to i64
%1678 = getelementptr inbounds [7 x i32], [7 x i32]* %1675, i64 0, i64 %1677
%1679 = load i32, i32* %1678
%1680 = icmp eq i32 %1670, %1679
br i1 %1680, label %1681, label %1726
1681: ; preds = %1661
%1682 = load [7 x i32]*, [7 x i32]** %4
%1683 = load i32, i32* %8
%1684 = add nsw i32 %1683, 1
%1685 = sext i32 %1684 to i64
%1686 = getelementptr inbounds [7 x i32], [7 x i32]* %1682, i64 %1685
%1687 = load i32, i32* %9
%1688 = sext i32 %1687 to i64
%1689 = getelementptr inbounds [7 x i32], [7 x i32]* %1686, i64 0, i64 %1688
%1690 = load i32, i32* %1689
%1691 = load [7 x i32]*, [7 x i32]** %4
%1692 = load i32, i32* %8
%1693 = add nsw i32 %1692, 3
%1694 = sext i32 %1693 to i64
%1695 = getelementptr inbounds [7 x i32], [7 x i32]* %1691, i64 %1694
%1696 = load i32, i32* %9
%1697 = sext i32 %1696 to i64
%1698 = getelementptr inbounds [7 x i32], [7 x i32]* %1695, i64 0, i64 %1697
%1699 = load i32, i32* %1698
%1700 = icmp eq i32 %1690, %1699
br i1 %1700, label %1701, label %1726
1701: ; preds = %1681
%1702 = load [7 x i32]*, [7 x i32]** %4
%1703 = load i32, i32* %8
%1704 = add nsw i32 %1703, 1
%1705 = sext i32 %1704 to i64
%1706 = getelementptr inbounds [7 x i32], [7 x i32]* %1702, i64 %1705
%1707 = load i32, i32* %9
%1708 = sext i32 %1707 to i64
%1709 = getelementptr inbounds [7 x i32], [7 x i32]* %1706, i64 0, i64 %1708
%1710 = load i32, i32* %1709
%1711 = load i32, i32* %11
%1712 = icmp eq i32 %1710, %1711
br i1 %1712, label %1713, label %1726
1713: ; preds = %1701
%1714 = load i32, i32* %8
%1715 = add nsw i32 %1714, 3
%1716 = icmp slt i32 %1715, 6
br i1 %1716, label %1717, label %1726
1717: ; preds = %1713
%1718 = load [7 x i32]*, [7 x i32]** %4
%1719 = load i32, i32* %6
%1720 = sext i32 %1719 to i64
%1721 = getelementptr inbounds [7 x i32], [7 x i32]* %1718, i64 %1720
%1722 = load i32, i32* %7
%1723 = sext i32 %1722 to i64
%1724 = getelementptr inbounds [7 x i32], [7 x i32]* %1721, i64 0, i64 %1723
store i32 0, i32* %1724
%1725 = load i32, i32* %7
store i32 %1725, i32* %10
br label %2315
1726: ; preds = %1713, %1701, %1681, %1661
%1727 = load [7 x i32]*, [7 x i32]** %4
%1728 = load i32, i32* %8
%1729 = sub nsw i32 %1728, 1
%1730 = sext i32 %1729 to i64
%1731 = getelementptr inbounds [7 x i32], [7 x i32]* %1727, i64 %1730
%1732 = load i32, i32* %9
%1733 = sub nsw i32 %1732, 1
%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 = load [7 x i32]*, [7 x i32]** %4
%1738 = load i32, i32* %8
%1739 = sub nsw i32 %1738, 2
%1740 = sext i32 %1739 to i64
%1741 = getelementptr inbounds [7 x i32], [7 x i32]* %1737, i64 %1740
%1742 = load i32, i32* %9
%1743 = sub nsw i32 %1742, 2
%1744 = sext i32 %1743 to i64
%1745 = getelementptr inbounds [7 x i32], [7 x i32]* %1741, i64 0, i64 %1744
%1746 = load i32, i32* %1745
%1747 = icmp eq i32 %1736, %1746
br i1 %1747, label %1748, label %1791
1748: ; preds = %1726
%1749 = load [7 x i32]*, [7 x i32]** %4
%1750 = load i32, i32* %8
%1751 = sub nsw i32 %1750, 1
%1752 = sext i32 %1751 to i64
%1753 = getelementptr inbounds [7 x i32], [7 x i32]* %1749, i64 %1752
%1754 = load i32, i32* %9
%1755 = sub nsw i32 %1754, 1
%1756 = sext i32 %1755 to i64
%1757 = getelementptr inbounds [7 x i32], [7 x i32]* %1753, i64 0, i64 %1756
%1758 = load i32, i32* %1757
%1759 = load [7 x i32]*, [7 x i32]** %4
%1760 = load i32, i32* %8
%1761 = sub nsw i32 %1760, 3
%1762 = sext i32 %1761 to i64
%1763 = getelementptr inbounds [7 x i32], [7 x i32]* %1759, i64 %1762
%1764 = load i32, i32* %9
%1765 = sub nsw i32 %1764, 3
%1766 = sext i32 %1765 to i64
%1767 = getelementptr inbounds [7 x i32], [7 x i32]* %1763, i64 0, i64 %1766
%1768 = load i32, i32* %1767
%1769 = icmp eq i32 %1758, %1768
br i1 %1769, label %1770, label %1791
1770: ; preds = %1748
%1771 = load [7 x i32]*, [7 x i32]** %4
%1772 = load i32, i32* %8
%1773 = sub nsw i32 %1772, 3
%1774 = sext i32 %1773 to i64
%1775 = getelementptr inbounds [7 x i32], [7 x i32]* %1771, i64 %1774
%1776 = load i32, i32* %9
%1777 = sub nsw i32 %1776, 3
%1778 = sext i32 %1777 to i64
%1779 = getelementptr inbounds [7 x i32], [7 x i32]* %1775, i64 0, i64 %1778
%1780 = load i32, i32* %1779
%1781 = load i32, i32* %11
%1782 = icmp eq i32 %1780, %1781
br i1 %1782, label %1783, label %1791
1783: ; preds = %1770
%1784 = load i32, i32* %8
%1785 = sub nsw i32 %1784, 3
%1786 = icmp sge i32 %1785, 0
br i1 %1786, label %1787, label %1791
1787: ; preds = %1783
%1788 = load i32, i32* %9
%1789 = sub nsw i32 %1788, 3
%1790 = icmp sge i32 %1789, 0
br i1 %1790, label %1863, label %1791
1791: ; preds = %1787, %1783, %1770, %1748, %1726
%1792 = load [7 x i32]*, [7 x i32]** %4
%1793 = load i32, i32* %8
%1794 = sub nsw i32 %1793, 1
%1795 = sext i32 %1794 to i64
%1796 = getelementptr inbounds [7 x i32], [7 x i32]* %1792, i64 %1795
%1797 = load i32, i32* %9
%1798 = sub nsw i32 %1797, 1
%1799 = sext i32 %1798 to i64
%1800 = getelementptr inbounds [7 x i32], [7 x i32]* %1796, i64 0, i64 %1799
%1801 = load i32, i32* %1800
%1802 = load [7 x i32]*, [7 x i32]** %4
%1803 = load i32, i32* %8
%1804 = sub nsw i32 %1803, 2
%1805 = sext i32 %1804 to i64
%1806 = getelementptr inbounds [7 x i32], [7 x i32]* %1802, i64 %1805
%1807 = load i32, i32* %9
%1808 = sub nsw i32 %1807, 2
%1809 = sext i32 %1808 to i64
%1810 = getelementptr inbounds [7 x i32], [7 x i32]* %1806, i64 0, i64 %1809
%1811 = load i32, i32* %1810
%1812 = icmp eq i32 %1801, %1811
br i1 %1812, label %1813, label %1872
1813: ; preds = %1791
%1814 = load [7 x i32]*, [7 x i32]** %4
%1815 = load i32, i32* %8
%1816 = sub nsw i32 %1815, 1
%1817 = sext i32 %1816 to i64
%1818 = getelementptr inbounds [7 x i32], [7 x i32]* %1814, i64 %1817
%1819 = load i32, i32* %9
%1820 = sub nsw i32 %1819, 1
%1821 = sext i32 %1820 to i64
%1822 = getelementptr inbounds [7 x i32], [7 x i32]* %1818, i64 0, i64 %1821
%1823 = load i32, i32* %1822
%1824 = load [7 x i32]*, [7 x i32]** %4
%1825 = load i32, i32* %8
%1826 = add nsw i32 %1825, 1
%1827 = sext i32 %1826 to i64
%1828 = getelementptr inbounds [7 x i32], [7 x i32]* %1824, i64 %1827
%1829 = load i32, i32* %9
%1830 = add nsw i32 %1829, 1
%1831 = sext i32 %1830 to i64
%1832 = getelementptr inbounds [7 x i32], [7 x i32]* %1828, i64 0, i64 %1831
%1833 = load i32, i32* %1832
%1834 = icmp eq i32 %1823, %1833
br i1 %1834, label %1835, label %1872
1835: ; preds = %1813
%1836 = load [7 x i32]*, [7 x i32]** %4
%1837 = load i32, i32* %8
%1838 = sub nsw i32 %1837, 2
%1839 = sext i32 %1838 to i64
%1840 = getelementptr inbounds [7 x i32], [7 x i32]* %1836, i64 %1839
%1841 = load i32, i32* %9
%1842 = sub nsw i32 %1841, 2
%1843 = sext i32 %1842 to i64
%1844 = getelementptr inbounds [7 x i32], [7 x i32]* %1840, i64 0, i64 %1843
%1845 = load i32, i32* %1844
%1846 = icmp eq i32 %1845, -1
br i1 %1846, label %1847, label %1872
1847: ; preds = %1835
%1848 = load i32, i32* %9
%1849 = sub nsw i32 %1848, 2
%1850 = icmp sge i32 %1849, 0
br i1 %1850, label %1851, label %1872
1851: ; preds = %1847
%1852 = load i32, i32* %9
%1853 = add nsw i32 %1852, 1
%1854 = icmp slt i32 %1853, 7
br i1 %1854, label %1855, label %1872
1855: ; preds = %1851
%1856 = load i32, i32* %8
%1857 = sub nsw i32 %1856, 2
%1858 = icmp sge i32 %1857, 0
br i1 %1858, label %1859, label %1872
1859: ; preds = %1855
%1860 = load i32, i32* %8
%1861 = add nsw i32 %1860, 1
%1862 = icmp slt i32 %1861, 6
br i1 %1862, label %1863, label %1872
1863: ; preds = %1859, %1787
%1864 = load [7 x i32]*, [7 x i32]** %4
%1865 = load i32, i32* %6
%1866 = sext i32 %1865 to i64
%1867 = getelementptr inbounds [7 x i32], [7 x i32]* %1864, i64 %1866
%1868 = load i32, i32* %7
%1869 = sext i32 %1868 to i64
%1870 = getelementptr inbounds [7 x i32], [7 x i32]* %1867, i64 0, i64 %1869
store i32 0, i32* %1870
%1871 = load i32, i32* %7
store i32 %1871, i32* %10
br label %2315
1872: ; preds = %1859, %1855, %1851, %1847, %1835, %1813, %1791
%1873 = load [7 x i32]*, [7 x i32]** %4
%1874 = load i32, i32* %8
%1875 = sub nsw i32 %1874, 1
%1876 = sext i32 %1875 to i64
%1877 = getelementptr inbounds [7 x i32], [7 x i32]* %1873, i64 %1876
%1878 = load i32, i32* %9
%1879 = add nsw i32 %1878, 1
%1880 = sext i32 %1879 to i64
%1881 = getelementptr inbounds [7 x i32], [7 x i32]* %1877, i64 0, i64 %1880
%1882 = load i32, i32* %1881
%1883 = load [7 x i32]*, [7 x i32]** %4
%1884 = load i32, i32* %8
%1885 = sub nsw i32 %1884, 2
%1886 = sext i32 %1885 to i64
%1887 = getelementptr inbounds [7 x i32], [7 x i32]* %1883, i64 %1886
%1888 = load i32, i32* %9
%1889 = add nsw i32 %1888, 2
%1890 = sext i32 %1889 to i64
%1891 = getelementptr inbounds [7 x i32], [7 x i32]* %1887, i64 0, i64 %1890
%1892 = load i32, i32* %1891
%1893 = icmp eq i32 %1882, %1892
br i1 %1893, label %1894, label %1937
1894: ; preds = %1872
%1895 = load [7 x i32]*, [7 x i32]** %4
%1896 = load i32, i32* %8
%1897 = sub nsw i32 %1896, 1
%1898 = sext i32 %1897 to i64
%1899 = getelementptr inbounds [7 x i32], [7 x i32]* %1895, i64 %1898
%1900 = load i32, i32* %9
%1901 = add nsw i32 %1900, 1
%1902 = sext i32 %1901 to i64
%1903 = getelementptr inbounds [7 x i32], [7 x i32]* %1899, i64 0, i64 %1902
%1904 = load i32, i32* %1903
%1905 = load [7 x i32]*, [7 x i32]** %4
%1906 = load i32, i32* %8
%1907 = sub nsw i32 %1906, 3
%1908 = sext i32 %1907 to i64
%1909 = getelementptr inbounds [7 x i32], [7 x i32]* %1905, i64 %1908
%1910 = load i32, i32* %9
%1911 = add nsw i32 %1910, 3
%1912 = sext i32 %1911 to i64
%1913 = getelementptr inbounds [7 x i32], [7 x i32]* %1909, i64 0, i64 %1912
%1914 = load i32, i32* %1913
%1915 = icmp eq i32 %1904, %1914
br i1 %1915, label %1916, label %1937
1916: ; preds = %1894
%1917 = load [7 x i32]*, [7 x i32]** %4
%1918 = load i32, i32* %8
%1919 = sub nsw i32 %1918, 3
%1920 = sext i32 %1919 to i64
%1921 = getelementptr inbounds [7 x i32], [7 x i32]* %1917, i64 %1920
%1922 = load i32, i32* %9
%1923 = add nsw i32 %1922, 3
%1924 = sext i32 %1923 to i64
%1925 = getelementptr inbounds [7 x i32], [7 x i32]* %1921, i64 0, i64 %1924
%1926 = load i32, i32* %1925
%1927 = load i32, i32* %11
%1928 = icmp eq i32 %1926, %1927
br i1 %1928, label %1929, label %1937
1929: ; preds = %1916
%1930 = load i32, i32* %8
%1931 = sub nsw i32 %1930, 3
%1932 = icmp sge i32 %1931, 0
br i1 %1932, label %1933, label %1937
1933: ; preds = %1929
%1934 = load i32, i32* %9
%1935 = add nsw i32 %1934, 3
%1936 = icmp slt i32 %1935, 7
br i1 %1936, label %2009, label %1937
1937: ; preds = %1933, %1929, %1916, %1894, %1872
%1938 = load [7 x i32]*, [7 x i32]** %4
%1939 = load i32, i32* %8
%1940 = add nsw i32 %1939, 1
%1941 = sext i32 %1940 to i64
%1942 = getelementptr inbounds [7 x i32], [7 x i32]* %1938, i64 %1941
%1943 = load i32, i32* %9
%1944 = sub nsw i32 %1943, 1
%1945 = sext i32 %1944 to i64
%1946 = getelementptr inbounds [7 x i32], [7 x i32]* %1942, i64 0, i64 %1945
%1947 = load i32, i32* %1946
%1948 = load [7 x i32]*, [7 x i32]** %4
%1949 = load i32, i32* %8
%1950 = sub nsw i32 %1949, 2
%1951 = sext i32 %1950 to i64
%1952 = getelementptr inbounds [7 x i32], [7 x i32]* %1948, i64 %1951
%1953 = load i32, i32* %9
%1954 = add nsw i32 %1953, 2
%1955 = sext i32 %1954 to i64
%1956 = getelementptr inbounds [7 x i32], [7 x i32]* %1952, i64 0, i64 %1955
%1957 = load i32, i32* %1956
%1958 = icmp eq i32 %1947, %1957
br i1 %1958, label %1959, label %2018
1959: ; preds = %1937
%1960 = load [7 x i32]*, [7 x i32]** %4
%1961 = load i32, i32* %8
%1962 = add nsw i32 %1961, 1
%1963 = sext i32 %1962 to i64
%1964 = getelementptr inbounds [7 x i32], [7 x i32]* %1960, i64 %1963
%1965 = load i32, i32* %9
%1966 = sub nsw i32 %1965, 1
%1967 = sext i32 %1966 to i64
%1968 = getelementptr inbounds [7 x i32], [7 x i32]* %1964, i64 0, i64 %1967
%1969 = load i32, i32* %1968
%1970 = load [7 x i32]*, [7 x i32]** %4
%1971 = load i32, i32* %8
%1972 = sub nsw i32 %1971, 1
%1973 = sext i32 %1972 to i64
%1974 = getelementptr inbounds [7 x i32], [7 x i32]* %1970, i64 %1973
%1975 = load i32, i32* %9
%1976 = add nsw i32 %1975, 1
%1977 = sext i32 %1976 to i64
%1978 = getelementptr inbounds [7 x i32], [7 x i32]* %1974, i64 0, i64 %1977
%1979 = load i32, i32* %1978
%1980 = icmp eq i32 %1969, %1979
br i1 %1980, label %1981, label %2018
1981: ; preds = %1959
%1982 = load [7 x i32]*, [7 x i32]** %4
%1983 = load i32, i32* %8
%1984 = sub nsw i32 %1983, 2
%1985 = sext i32 %1984 to i64
%1986 = getelementptr inbounds [7 x i32], [7 x i32]* %1982, i64 %1985
%1987 = load i32, i32* %9
%1988 = add nsw i32 %1987, 2
%1989 = sext i32 %1988 to i64
%1990 = getelementptr inbounds [7 x i32], [7 x i32]* %1986, i64 0, i64 %1989
%1991 = load i32, i32* %1990
%1992 = icmp eq i32 %1991, -1
br i1 %1992, label %1993, label %2018
1993: ; preds = %1981
%1994 = load i32, i32* %9
%1995 = sub nsw i32 %1994, 1
%1996 = icmp sge i32 %1995, 0
br i1 %1996, label %1997, label %2018
1997: ; preds = %1993
%1998 = load i32, i32* %9
%1999 = add nsw i32 %1998, 2
%2000 = icmp slt i32 %1999, 7
br i1 %2000, label %2001, label %2018
2001: ; preds = %1997
%2002 = load i32, i32* %8
%2003 = sub nsw i32 %2002, 2
%2004 = icmp sge i32 %2003, 0
br i1 %2004, label %2005, label %2018
2005: ; preds = %2001
%2006 = load i32, i32* %8
%2007 = add nsw i32 %2006, 1
%2008 = icmp slt i32 %2007, 6
br i1 %2008, label %2009, label %2018
2009: ; preds = %2005, %1933
%2010 = load [7 x i32]*, [7 x i32]** %4
%2011 = load i32, i32* %6
%2012 = sext i32 %2011 to i64
%2013 = getelementptr inbounds [7 x i32], [7 x i32]* %2010, i64 %2012
%2014 = load i32, i32* %7
%2015 = sext i32 %2014 to i64
%2016 = getelementptr inbounds [7 x i32], [7 x i32]* %2013, i64 0, i64 %2015
store i32 0, i32* %2016
%2017 = load i32, i32* %7
store i32 %2017, i32* %10
br label %2315
2018: ; preds = %2005, %2001, %1997, %1993, %1981, %1959, %1937
%2019 = load [7 x i32]*, [7 x i32]** %4
%2020 = load i32, i32* %8
%2021 = add nsw i32 %2020, 1
%2022 = sext i32 %2021 to i64
%2023 = getelementptr inbounds [7 x i32], [7 x i32]* %2019, i64 %2022
%2024 = load i32, i32* %9
%2025 = sub nsw i32 %2024, 1
%2026 = sext i32 %2025 to i64
%2027 = getelementptr inbounds [7 x i32], [7 x i32]* %2023, i64 0, i64 %2026
%2028 = load i32, i32* %2027
%2029 = load [7 x i32]*, [7 x i32]** %4
%2030 = load i32, i32* %8
%2031 = add nsw i32 %2030, 2
%2032 = sext i32 %2031 to i64
%2033 = getelementptr inbounds [7 x i32], [7 x i32]* %2029, i64 %2032
%2034 = load i32, i32* %9
%2035 = sub nsw i32 %2034, 2
%2036 = sext i32 %2035 to i64
%2037 = getelementptr inbounds [7 x i32], [7 x i32]* %2033, i64 0, i64 %2036
%2038 = load i32, i32* %2037
%2039 = icmp eq i32 %2028, %2038
br i1 %2039, label %2040, label %2083
2040: ; preds = %2018
%2041 = load [7 x i32]*, [7 x i32]** %4
%2042 = load i32, i32* %8
%2043 = add nsw i32 %2042, 1
%2044 = sext i32 %2043 to i64
%2045 = getelementptr inbounds [7 x i32], [7 x i32]* %2041, i64 %2044
%2046 = load i32, i32* %9
%2047 = sub nsw i32 %2046, 1
%2048 = sext i32 %2047 to i64
%2049 = getelementptr inbounds [7 x i32], [7 x i32]* %2045, i64 0, i64 %2048
%2050 = load i32, i32* %2049
%2051 = load [7 x i32]*, [7 x i32]** %4
%2052 = load i32, i32* %8
%2053 = add nsw i32 %2052, 3
%2054 = sext i32 %2053 to i64
%2055 = getelementptr inbounds [7 x i32], [7 x i32]* %2051, i64 %2054
%2056 = load i32, i32* %9
%2057 = sub nsw i32 %2056, 3
%2058 = sext i32 %2057 to i64
%2059 = getelementptr inbounds [7 x i32], [7 x i32]* %2055, i64 0, i64 %2058
%2060 = load i32, i32* %2059
%2061 = icmp eq i32 %2050, %2060
br i1 %2061, label %2062, label %2083
2062: ; preds = %2040
%2063 = load [7 x i32]*, [7 x i32]** %4
%2064 = load i32, i32* %8
%2065 = add nsw i32 %2064, 3
%2066 = sext i32 %2065 to i64
%2067 = getelementptr inbounds [7 x i32], [7 x i32]* %2063, i64 %2066
%2068 = load i32, i32* %9
%2069 = sub nsw i32 %2068, 3
%2070 = sext i32 %2069 to i64
%2071 = getelementptr inbounds [7 x i32], [7 x i32]* %2067, i64 0, i64 %2070
%2072 = load i32, i32* %2071
%2073 = load i32, i32* %11
%2074 = icmp eq i32 %2072, %2073
br i1 %2074, label %2075, label %2083
2075: ; preds = %2062
%2076 = load i32, i32* %8
%2077 = add nsw i32 %2076, 3
%2078 = icmp slt i32 %2077, 6
br i1 %2078, label %2079, label %2083
2079: ; preds = %2075
%2080 = load i32, i32* %9
%2081 = sub nsw i32 %2080, 3
%2082 = icmp sge i32 %2081, 0
br i1 %2082, label %2155, label %2083
2083: ; preds = %2079, %2075, %2062, %2040, %2018
%2084 = load [7 x i32]*, [7 x i32]** %4
%2085 = load i32, i32* %8
%2086 = sub nsw i32 %2085, 1
%2087 = sext i32 %2086 to i64
%2088 = getelementptr inbounds [7 x i32], [7 x i32]* %2084, i64 %2087
%2089 = load i32, i32* %9
%2090 = add nsw i32 %2089, 1
%2091 = sext i32 %2090 to i64
%2092 = getelementptr inbounds [7 x i32], [7 x i32]* %2088, i64 0, i64 %2091
%2093 = load i32, i32* %2092
%2094 = load [7 x i32]*, [7 x i32]** %4
%2095 = load i32, i32* %8
%2096 = add nsw i32 %2095, 2
%2097 = sext i32 %2096 to i64
%2098 = getelementptr inbounds [7 x i32], [7 x i32]* %2094, i64 %2097
%2099 = load i32, i32* %9
%2100 = sub nsw i32 %2099, 2
%2101 = sext i32 %2100 to i64
%2102 = getelementptr inbounds [7 x i32], [7 x i32]* %2098, i64 0, i64 %2101
%2103 = load i32, i32* %2102
%2104 = icmp eq i32 %2093, %2103
br i1 %2104, label %2105, label %2164
2105: ; preds = %2083
%2106 = load [7 x i32]*, [7 x i32]** %4
%2107 = load i32, i32* %8
%2108 = sub nsw i32 %2107, 1
%2109 = sext i32 %2108 to i64
%2110 = getelementptr inbounds [7 x i32], [7 x i32]* %2106, i64 %2109
%2111 = load i32, i32* %9
%2112 = add nsw i32 %2111, 1
%2113 = sext i32 %2112 to i64
%2114 = getelementptr inbounds [7 x i32], [7 x i32]* %2110, i64 0, i64 %2113
%2115 = load i32, i32* %2114
%2116 = load [7 x i32]*, [7 x i32]** %4
%2117 = load i32, i32* %8
%2118 = add nsw i32 %2117, 1
%2119 = sext i32 %2118 to i64
%2120 = getelementptr inbounds [7 x i32], [7 x i32]* %2116, i64 %2119
%2121 = load i32, i32* %9
%2122 = sub nsw i32 %2121, 1
%2123 = sext i32 %2122 to i64
%2124 = getelementptr inbounds [7 x i32], [7 x i32]* %2120, i64 0, i64 %2123
%2125 = load i32, i32* %2124
%2126 = icmp eq i32 %2115, %2125
br i1 %2126, label %2127, label %2164
2127: ; preds = %2105
%2128 = load [7 x i32]*, [7 x i32]** %4
%2129 = load i32, i32* %8
%2130 = add nsw i32 %2129, 2
%2131 = sext i32 %2130 to i64
%2132 = getelementptr inbounds [7 x i32], [7 x i32]* %2128, i64 %2131
%2133 = load i32, i32* %9
%2134 = sub nsw i32 %2133, 2
%2135 = sext i32 %2134 to i64
%2136 = getelementptr inbounds [7 x i32], [7 x i32]* %2132, i64 0, i64 %2135
%2137 = load i32, i32* %2136
%2138 = icmp eq i32 %2137, -1
br i1 %2138, label %2139, label %2164
2139: ; preds = %2127
%2140 = load i32, i32* %9
%2141 = sub nsw i32 %2140, 2
%2142 = icmp sge i32 %2141, 0
br i1 %2142, label %2143, label %2164
2143: ; preds = %2139
%2144 = load i32, i32* %9
%2145 = add nsw i32 %2144, 1
%2146 = icmp slt i32 %2145, 7
br i1 %2146, label %2147, label %2164
2147: ; preds = %2143
%2148 = load i32, i32* %8
%2149 = sub nsw i32 %2148, 1
%2150 = icmp sge i32 %2149, 0
br i1 %2150, label %2151, label %2164
2151: ; preds = %2147
%2152 = load i32, i32* %8
%2153 = add nsw i32 %2152, 2
%2154 = icmp slt i32 %2153, 6
br i1 %2154, label %2155, label %2164
2155: ; preds = %2151, %2079
%2156 = load [7 x i32]*, [7 x i32]** %4
%2157 = load i32, i32* %6
%2158 = sext i32 %2157 to i64
%2159 = getelementptr inbounds [7 x i32], [7 x i32]* %2156, i64 %2158
%2160 = load i32, i32* %7
%2161 = sext i32 %2160 to i64
%2162 = getelementptr inbounds [7 x i32], [7 x i32]* %2159, i64 0, i64 %2161
store i32 0, i32* %2162
%2163 = load i32, i32* %7
store i32 %2163, i32* %10
br label %2315
2164: ; preds = %2151, %2147, %2143, %2139, %2127, %2105, %2083
%2165 = load [7 x i32]*, [7 x i32]** %4
%2166 = load i32, i32* %8
%2167 = add nsw i32 %2166, 1
%2168 = sext i32 %2167 to i64
%2169 = getelementptr inbounds [7 x i32], [7 x i32]* %2165, i64 %2168
%2170 = load i32, i32* %9
%2171 = add nsw i32 %2170, 1
%2172 = sext i32 %2171 to i64
%2173 = getelementptr inbounds [7 x i32], [7 x i32]* %2169, i64 0, i64 %2172
%2174 = load i32, i32* %2173
%2175 = load [7 x i32]*, [7 x i32]** %4
%2176 = load i32, i32* %8
%2177 = add nsw i32 %2176, 2
%2178 = sext i32 %2177 to i64
%2179 = getelementptr inbounds [7 x i32], [7 x i32]* %2175, i64 %2178
%2180 = load i32, i32* %9
%2181 = add nsw i32 %2180, 2
%2182 = sext i32 %2181 to i64
%2183 = getelementptr inbounds [7 x i32], [7 x i32]* %2179, i64 0, i64 %2182
%2184 = load i32, i32* %2183
%2185 = icmp eq i32 %2174, %2184
br i1 %2185, label %2186, label %2229
2186: ; preds = %2164
%2187 = load [7 x i32]*, [7 x i32]** %4
%2188 = load i32, i32* %8
%2189 = add nsw i32 %2188, 1
%2190 = sext i32 %2189 to i64
%2191 = getelementptr inbounds [7 x i32], [7 x i32]* %2187, i64 %2190
%2192 = load i32, i32* %9
%2193 = add nsw i32 %2192, 1
%2194 = sext i32 %2193 to i64
%2195 = getelementptr inbounds [7 x i32], [7 x i32]* %2191, i64 0, i64 %2194
%2196 = load i32, i32* %2195
%2197 = load [7 x i32]*, [7 x i32]** %4
%2198 = load i32, i32* %8
%2199 = add nsw i32 %2198, 3
%2200 = sext i32 %2199 to i64
%2201 = getelementptr inbounds [7 x i32], [7 x i32]* %2197, i64 %2200
%2202 = load i32, i32* %9
%2203 = add nsw i32 %2202, 3
%2204 = sext i32 %2203 to i64
%2205 = getelementptr inbounds [7 x i32], [7 x i32]* %2201, i64 0, i64 %2204
%2206 = load i32, i32* %2205
%2207 = icmp eq i32 %2196, %2206
br i1 %2207, label %2208, label %2229
2208: ; preds = %2186
%2209 = load [7 x i32]*, [7 x i32]** %4
%2210 = load i32, i32* %8
%2211 = add nsw i32 %2210, 3
%2212 = sext i32 %2211 to i64
%2213 = getelementptr inbounds [7 x i32], [7 x i32]* %2209, i64 %2212
%2214 = load i32, i32* %9
%2215 = add nsw i32 %2214, 3
%2216 = sext i32 %2215 to i64
%2217 = getelementptr inbounds [7 x i32], [7 x i32]* %2213, i64 0, i64 %2216
%2218 = load i32, i32* %2217
%2219 = load i32, i32* %11
%2220 = icmp eq i32 %2218, %2219
br i1 %2220, label %2221, label %2229
2221: ; preds = %2208
%2222 = load i32, i32* %8
%2223 = add nsw i32 %2222, 3
%2224 = icmp slt i32 %2223, 6
br i1 %2224, label %2225, label %2229
2225: ; preds = %2221
%2226 = load i32, i32* %9
%2227 = add nsw i32 %2226, 3
%2228 = icmp slt i32 %2227, 7
br i1 %2228, label %2301, label %2229
2229: ; preds = %2225, %2221, %2208, %2186, %2164
%2230 = load [7 x i32]*, [7 x i32]** %4
%2231 = load i32, i32* %8
%2232 = sub nsw i32 %2231, 1
%2233 = sext i32 %2232 to i64
%2234 = getelementptr inbounds [7 x i32], [7 x i32]* %2230, i64 %2233
%2235 = load i32, i32* %9
%2236 = sub nsw i32 %2235, 1
%2237 = sext i32 %2236 to i64
%2238 = getelementptr inbounds [7 x i32], [7 x i32]* %2234, i64 0, i64 %2237
%2239 = load i32, i32* %2238
%2240 = load [7 x i32]*, [7 x i32]** %4
%2241 = load i32, i32* %8
%2242 = add nsw i32 %2241, 2
%2243 = sext i32 %2242 to i64
%2244 = getelementptr inbounds [7 x i32], [7 x i32]* %2240, i64 %2243
%2245 = load i32, i32* %9
%2246 = add nsw i32 %2245, 2
%2247 = sext i32 %2246 to i64
%2248 = getelementptr inbounds [7 x i32], [7 x i32]* %2244, i64 0, i64 %2247
%2249 = load i32, i32* %2248
%2250 = icmp eq i32 %2239, %2249
br i1 %2250, label %2251, label %2310
2251: ; preds = %2229
%2252 = load [7 x i32]*, [7 x i32]** %4
%2253 = load i32, i32* %8
%2254 = sub nsw i32 %2253, 1
%2255 = sext i32 %2254 to i64
%2256 = getelementptr inbounds [7 x i32], [7 x i32]* %2252, i64 %2255
%2257 = load i32, i32* %9
%2258 = sub nsw i32 %2257, 1
%2259 = sext i32 %2258 to i64
%2260 = getelementptr inbounds [7 x i32], [7 x i32]* %2256, i64 0, i64 %2259
%2261 = load i32, i32* %2260
%2262 = load [7 x i32]*, [7 x i32]** %4
%2263 = load i32, i32* %8
%2264 = add nsw i32 %2263, 1
%2265 = sext i32 %2264 to i64
%2266 = getelementptr inbounds [7 x i32], [7 x i32]* %2262, i64 %2265
%2267 = load i32, i32* %9
%2268 = add nsw i32 %2267, 1
%2269 = sext i32 %2268 to i64
%2270 = getelementptr inbounds [7 x i32], [7 x i32]* %2266, i64 0, i64 %2269
%2271 = load i32, i32* %2270
%2272 = icmp eq i32 %2261, %2271
br i1 %2272, label %2273, label %2310
2273: ; preds = %2251
%2274 = load [7 x i32]*, [7 x i32]** %4
%2275 = load i32, i32* %8
%2276 = add nsw i32 %2275, 2
%2277 = sext i32 %2276 to i64
%2278 = getelementptr inbounds [7 x i32], [7 x i32]* %2274, i64 %2277
%2279 = load i32, i32* %9
%2280 = add nsw i32 %2279, 2
%2281 = sext i32 %2280 to i64
%2282 = getelementptr inbounds [7 x i32], [7 x i32]* %2278, i64 0, i64 %2281
%2283 = load i32, i32* %2282
%2284 = icmp eq i32 %2283, -1
br i1 %2284, label %2285, label %2310
2285: ; preds = %2273
%2286 = load i32, i32* %9
%2287 = sub nsw i32 %2286, 1
%2288 = icmp sge i32 %2287, 0
br i1 %2288, label %2289, label %2310
2289: ; preds = %2285
%2290 = load i32, i32* %9
%2291 = add nsw i32 %2290, 2
%2292 = icmp slt i32 %2291, 7
br i1 %2292, label %2293, label %2310
2293: ; preds = %2289
%2294 = load i32, i32* %8
%2295 = sub nsw i32 %2294, 1
%2296 = icmp sge i32 %2295, 0
br i1 %2296, label %2297, label %2310
2297: ; preds = %2293
%2298 = load i32, i32* %8
%2299 = add nsw i32 %2298, 2
%2300 = icmp slt i32 %2299, 6
br i1 %2300, label %2301, label %2310
2301: ; preds = %2297, %2225
%2302 = load [7 x i32]*, [7 x i32]** %4
%2303 = load i32, i32* %6
%2304 = sext i32 %2303 to i64
%2305 = getelementptr inbounds [7 x i32], [7 x i32]* %2302, i64 %2304
%2306 = load i32, i32* %7
%2307 = sext i32 %2306 to i64
%2308 = getelementptr inbounds [7 x i32], [7 x i32]* %2305, i64 0, i64 %2307
store i32 0, i32* %2308
%2309 = load i32, i32* %7
store i32 %2309, i32* %10
br label %2315
2310: ; preds = %2297, %2293, %2289, %2285, %2273, %2251, %2229
br label %2311
2311: ; preds = %2310, %1409, %1398, %1388
br label %2312
2312: ; preds = %2311
%2313 = load i32, i32* %9
%2314 = add nsw i32 %2313, 1
store i32 %2314, i32* %9
br label %1385
2315: ; preds = %2301, %2155, %2009, %1863, %1717, %1652, %1528, %1385
br label %2316
2316: ; preds = %2315
%2317 = load i32, i32* %8
%2318 = add nsw i32 %2317, 1
store i32 %2318, i32* %8
br label %1381
2319: ; preds = %1381
%2320 = load [7 x i32]*, [7 x i32]** %4
%2321 = load i32, i32* %6
%2322 = sext i32 %2321 to i64
%2323 = getelementptr inbounds [7 x i32], [7 x i32]* %2320, i64 %2322
%2324 = load i32, i32* %7
%2325 = sext i32 %2324 to i64
%2326 = getelementptr inbounds [7 x i32], [7 x i32]* %2323, i64 0, i64 %2325
store i32 0, i32* %2326
br label %2327
2327: ; preds = %2319, %59, %49
br label %2328
2328: ; preds = %2327
%2329 = load i32, i32* %7
%2330 = add nsw i32 %2329, 1
store i32 %2330, i32* %7
br label %21
2331: ; preds = %21
br label %2332
2332: ; preds = %2331
%2333 = load i32, i32* %6
%2334 = add nsw i32 %2333, 1
store i32 %2334, i32* %6
br label %17
2335: ; preds = %17
br label %2336
2336: ; preds = %2351, %2335
%2337 = call i32 (...) @rand()
%2338 = srem i32 %2337, 7
store i32 %2338, i32* %7
br label %2339
2339: ; preds = %2336
%2340 = load [7 x i32]*, [7 x i32]** %4
%2341 = getelementptr inbounds [7 x i32], [7 x i32]* %2340, i64 0
%2342 = load i32, i32* %7
%2343 = sext i32 %2342 to i64
%2344 = getelementptr inbounds [7 x i32], [7 x i32]* %2341, i64 0, i64 %2343
%2345 = load i32, i32* %2344
%2346 = icmp ne i32 %2345, 0
br i1 %2346, label %2347, label %2351
2347: ; preds = %2339
%2348 = load i32, i32* %10
%2349 = load i32, i32* %7
%2350 = icmp ne i32 %2348, %2349
br label %2351
2351: ; preds = %2347, %2339
%2352 = phi i1 [ false, %2339 ], [ %2350, %2347 ]
br i1 %2352, label %2336, label %2353
2353: ; preds = %2351
%2354 = load i32, i32* %7
store i32 %2354, i32* %3
br label %2355
2355: ; preds = %2353, %1355, %1261, %1167, %1073, %979, %895, %811, %697, %603, %509, %415, %321, %237, %153
%2356 = load i32, i32* %3
ret i32 %2356
}

LLVM IR (-O2):
define i32 @bot([7 x i32]* %0, i32 %1) {
%3 = icmp eq i32 %1, 1
%4 = select i1 %3, i32 -1, i32 1
br label %5
5: ; preds = %2, %531
%6 = phi i64 [ 0, %2 ], [ %8, %531 ]
%7 = phi i32 [ -1, %2 ], [ %528, %531 ]
%8 = add nuw nsw i64 %6, 1
%9 = icmp ult i64 %6, 5
%10 = icmp eq i64 %6, 5
br label %11
11: ; preds = %5, %527
%12 = phi i64 [ 0, %5 ], [ %529, %527 ]
%13 = phi i32 [ %7, %5 ], [ %528, %527 ]
%14 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %6, i64 %12
%15 = load i32, i32* %14
%16 = icmp eq i32 %15, 0
br i1 %16, label %17, label %527
17: ; preds = %11
%18 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %8, i64 %12
%19 = load i32, i32* %18
%20 = icmp ne i32 %19, 0
%21 = select i1 %20, i1 %9, i1 false
%22 = select i1 %21, i1 true, i1 %10
br i1 %22, label %23, label %527
23: ; preds = %17
store i32 %1, i32* %14
br label %24
24: ; preds = %23, %169
%25 = phi i64 [ 0, %23 ], [ %26, %169 ]
%26 = add nuw nsw i64 %25, 1
%27 = add nuw nsw i64 %25, 2
%28 = add nuw nsw i64 %25, 3
%29 = icmp ult i64 %25, 3
%30 = add nsw i64 %25, -1
%31 = add nsw i64 %25, -2
%32 = add nsw i64 %25, -3
%33 = icmp ugt i64 %25, 2
%34 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 0
%35 = load i32, i32* %34
br label %36
36: ; preds = %24, %167
%37 = phi i32 [ %35, %24 ], [ %60, %167 ]
%38 = phi i64 [ 0, %24 ], [ %58, %167 ]
%39 = add nsw i64 %38, -1
%40 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %39
%41 = load i32, i32* %40
%42 = icmp eq i32 %37, %41
br i1 %42, label %43, label %57
43: ; preds = %36
%44 = add nsw i64 %38, -2
%45 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %44
%46 = load i32, i32* %45
%47 = icmp eq i32 %37, %46
br i1 %47, label %48, label %57
48: ; preds = %43
%49 = add nsw i64 %38, -3
%50 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %49
%51 = load i32, i32* %50
%52 = icmp eq i32 %37, %51
%53 = icmp eq i32 %51, %1
%54 = and i1 %52, %53
%55 = icmp ugt i64 %38, 2
%56 = select i1 %54, i1 %55, i1 false
br i1 %56, label %542, label %57
57: ; preds = %48, %43, %36
%58 = add nuw nsw i64 %38, 1
%59 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %58
%60 = load i32, i32* %59
%61 = icmp eq i32 %37, %60
br i1 %61, label %62, label %76
62: ; preds = %57
%63 = add nuw nsw i64 %38, 2
%64 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %63
%65 = load i32, i32* %64
%66 = icmp eq i32 %37, %65
br i1 %66, label %67, label %76
67: ; preds = %62
%68 = add nuw nsw i64 %38, 3
%69 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %25, i64 %68
%70 = load i32, i32* %69
%71 = icmp eq i32 %37, %70
%72 = icmp eq i32 %70, %1
%73 = and i1 %71, %72
%74 = icmp ult i64 %38, 4
%75 = select i1 %73, i1 %74, i1 false
br i1 %75, label %542, label %76
76: ; preds = %67, %62, %57
%77 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %26, i64 %38
%78 = load i32, i32* %77
%79 = icmp eq i32 %37, %78
br i1 %79, label %80, label %91
80: ; preds = %76
%81 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %27, i64 %38
%82 = load i32, i32* %81
%83 = icmp eq i32 %37, %82
br i1 %83, label %84, label %91
84: ; preds = %80
%85 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %28, i64 %38
%86 = load i32, i32* %85
%87 = icmp eq i32 %37, %86
%88 = icmp eq i32 %37, %1
%89 = and i1 %88, %87
%90 = select i1 %89, i1 %29, i1 false
br i1 %90, label %542, label %91
91: ; preds = %84, %80, %76
%92 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %30, i64 %39
%93 = load i32, i32* %92
%94 = icmp eq i32 %37, %93
br i1 %94, label %95, label %110
95: ; preds = %91
%96 = add nsw i64 %38, -2
%97 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %31, i64 %96
%98 = load i32, i32* %97
%99 = icmp eq i32 %37, %98
br i1 %99, label %100, label %110
100: ; preds = %95
%101 = add nsw i64 %38, -3
%102 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %32, i64 %101
%103 = load i32, i32* %102
%104 = icmp eq i32 %37, %103
%105 = icmp eq i32 %103, %1
%106 = and i1 %104, %105
%107 = select i1 %106, i1 %33, i1 false
%108 = icmp ugt i64 %38, 2
%109 = select i1 %107, i1 %108, i1 false
br i1 %109, label %542, label %110
110: ; preds = %100, %95, %91
%111 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %30, i64 %58
%112 = load i32, i32* %111
%113 = icmp eq i32 %37, %112
br i1 %113, label %114, label %129
114: ; preds = %110
%115 = add nuw nsw i64 %38, 2
%116 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %31, i64 %115
%117 = load i32, i32* %116
%118 = icmp eq i32 %37, %117
br i1 %118, label %119, label %129
119: ; preds = %114
%120 = add nuw nsw i64 %38, 3
%121 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %32, i64 %120
%122 = load i32, i32* %121
%123 = icmp eq i32 %37, %122
%124 = icmp eq i32 %122, %1
%125 = and i1 %123, %124
%126 = select i1 %125, i1 %33, i1 false
%127 = icmp ult i64 %38, 4
%128 = select i1 %126, i1 %127, i1 false
br i1 %128, label %542, label %129
129: ; preds = %119, %114, %110
%130 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %26, i64 %39
%131 = load i32, i32* %130
%132 = icmp eq i32 %37, %131
br i1 %132, label %133, label %148
133: ; preds = %129
%134 = add nsw i64 %38, -2
%135 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %27, i64 %134
%136 = load i32, i32* %135
%137 = icmp eq i32 %37, %136
br i1 %137, label %138, label %148
138: ; preds = %133
%139 = add nsw i64 %38, -3
%140 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %28, i64 %139
%141 = load i32, i32* %140
%142 = icmp eq i32 %37, %141
%143 = icmp eq i32 %141, %1
%144 = and i1 %142, %143
%145 = select i1 %144, i1 %29, i1 false
%146 = icmp ugt i64 %38, 2
%147 = select i1 %145, i1 %146, i1 false
br i1 %147, label %542, label %148
148: ; preds = %138, %133, %129
%149 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %26, i64 %58
%150 = load i32, i32* %149
%151 = icmp eq i32 %37, %150
br i1 %151, label %152, label %167
152: ; preds = %148
%153 = add nuw nsw i64 %38, 2
%154 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %27, i64 %153
%155 = load i32, i32* %154
%156 = icmp eq i32 %37, %155
br i1 %156, label %157, label %167
157: ; preds = %152
%158 = add nuw nsw i64 %38, 3
%159 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %28, i64 %158
%160 = load i32, i32* %159
%161 = icmp eq i32 %37, %160
%162 = icmp eq i32 %160, %1
%163 = and i1 %161, %162
%164 = select i1 %163, i1 %29, i1 false
%165 = icmp ult i64 %38, 4
%166 = select i1 %164, i1 %165, i1 false
br i1 %166, label %542, label %167
167: ; preds = %148, %152, %157
%168 = icmp eq i64 %58, 7
br i1 %168, label %169, label %36
169: ; preds = %167
%170 = icmp eq i64 %26, 6
br i1 %170, label %171, label %24
171: ; preds = %169
store i32 %4, i32* %14
br label %172
172: ; preds = %171, %317
%173 = phi i64 [ 0, %171 ], [ %174, %317 ]
%174 = add nuw nsw i64 %173, 1
%175 = add nuw nsw i64 %173, 2
%176 = add nuw nsw i64 %173, 3
%177 = icmp ult i64 %173, 3
%178 = add nsw i64 %173, -1
%179 = add nsw i64 %173, -2
%180 = add nsw i64 %173, -3
%181 = icmp ugt i64 %173, 2
%182 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 0
%183 = load i32, i32* %182
br label %184
184: ; preds = %172, %315
%185 = phi i32 [ %183, %172 ], [ %208, %315 ]
%186 = phi i64 [ 0, %172 ], [ %206, %315 ]
%187 = add nsw i64 %186, -1
%188 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %187
%189 = load i32, i32* %188
%190 = icmp eq i32 %185, %189
br i1 %190, label %191, label %205
191: ; preds = %184
%192 = add nsw i64 %186, -2
%193 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %192
%194 = load i32, i32* %193
%195 = icmp eq i32 %185, %194
br i1 %195, label %196, label %205
196: ; preds = %191
%197 = add nsw i64 %186, -3
%198 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %197
%199 = load i32, i32* %198
%200 = icmp eq i32 %185, %199
%201 = icmp eq i32 %199, %4
%202 = and i1 %200, %201
%203 = icmp ugt i64 %186, 2
%204 = select i1 %202, i1 %203, i1 false
br i1 %204, label %542, label %205
205: ; preds = %196, %191, %184
%206 = add nuw nsw i64 %186, 1
%207 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %206
%208 = load i32, i32* %207
%209 = icmp eq i32 %185, %208
br i1 %209, label %210, label %224
210: ; preds = %205
%211 = add nuw nsw i64 %186, 2
%212 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %211
%213 = load i32, i32* %212
%214 = icmp eq i32 %185, %213
br i1 %214, label %215, label %224
215: ; preds = %210
%216 = add nuw nsw i64 %186, 3
%217 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %173, i64 %216
%218 = load i32, i32* %217
%219 = icmp eq i32 %185, %218
%220 = icmp eq i32 %218, %4
%221 = and i1 %219, %220
%222 = icmp ult i64 %186, 4
%223 = select i1 %221, i1 %222, i1 false
br i1 %223, label %542, label %224
224: ; preds = %215, %210, %205
%225 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %174, i64 %186
%226 = load i32, i32* %225
%227 = icmp eq i32 %185, %226
br i1 %227, label %228, label %239
228: ; preds = %224
%229 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %175, i64 %186
%230 = load i32, i32* %229
%231 = icmp eq i32 %185, %230
br i1 %231, label %232, label %239
232: ; preds = %228
%233 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %176, i64 %186
%234 = load i32, i32* %233
%235 = icmp eq i32 %185, %234
%236 = icmp eq i32 %185, %4
%237 = and i1 %236, %235
%238 = select i1 %237, i1 %177, i1 false
br i1 %238, label %542, label %239
239: ; preds = %232, %228, %224
%240 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %178, i64 %187
%241 = load i32, i32* %240
%242 = icmp eq i32 %185, %241
br i1 %242, label %243, label %258
243: ; preds = %239
%244 = add nsw i64 %186, -2
%245 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %179, i64 %244
%246 = load i32, i32* %245
%247 = icmp eq i32 %185, %246
br i1 %247, label %248, label %258
248: ; preds = %243
%249 = add nsw i64 %186, -3
%250 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %180, i64 %249
%251 = load i32, i32* %250
%252 = icmp eq i32 %185, %251
%253 = icmp eq i32 %251, %4
%254 = and i1 %252, %253
%255 = select i1 %254, i1 %181, i1 false
%256 = icmp ugt i64 %186, 2
%257 = select i1 %255, i1 %256, i1 false
br i1 %257, label %542, label %258
258: ; preds = %248, %243, %239
%259 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %178, i64 %206
%260 = load i32, i32* %259
%261 = icmp eq i32 %185, %260
br i1 %261, label %262, label %277
262: ; preds = %258
%263 = add nuw nsw i64 %186, 2
%264 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %179, i64 %263
%265 = load i32, i32* %264
%266 = icmp eq i32 %185, %265
br i1 %266, label %267, label %277
267: ; preds = %262
%268 = add nuw nsw i64 %186, 3
%269 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %180, i64 %268
%270 = load i32, i32* %269
%271 = icmp eq i32 %185, %270
%272 = icmp eq i32 %270, %4
%273 = and i1 %271, %272
%274 = select i1 %273, i1 %181, i1 false
%275 = icmp ult i64 %186, 4
%276 = select i1 %274, i1 %275, i1 false
br i1 %276, label %542, label %277
277: ; preds = %267, %262, %258
%278 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %174, i64 %187
%279 = load i32, i32* %278
%280 = icmp eq i32 %185, %279
br i1 %280, label %281, label %296
281: ; preds = %277
%282 = add nsw i64 %186, -2
%283 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %175, i64 %282
%284 = load i32, i32* %283
%285 = icmp eq i32 %185, %284
br i1 %285, label %286, label %296
286: ; preds = %281
%287 = add nsw i64 %186, -3
%288 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %176, i64 %287
%289 = load i32, i32* %288
%290 = icmp eq i32 %185, %289
%291 = icmp eq i32 %289, %4
%292 = and i1 %290, %291
%293 = select i1 %292, i1 %177, i1 false
%294 = icmp ugt i64 %186, 2
%295 = select i1 %293, i1 %294, i1 false
br i1 %295, label %542, label %296
296: ; preds = %286, %281, %277
%297 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %174, i64 %206
%298 = load i32, i32* %297
%299 = icmp eq i32 %185, %298
br i1 %299, label %300, label %315
300: ; preds = %296
%301 = add nuw nsw i64 %186, 2
%302 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %175, i64 %301
%303 = load i32, i32* %302
%304 = icmp eq i32 %185, %303
br i1 %304, label %305, label %315
305: ; preds = %300
%306 = add nuw nsw i64 %186, 3
%307 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %176, i64 %306
%308 = load i32, i32* %307
%309 = icmp eq i32 %185, %308
%310 = icmp eq i32 %308, %4
%311 = and i1 %309, %310
%312 = select i1 %311, i1 %177, i1 false
%313 = icmp ult i64 %186, 4
%314 = select i1 %312, i1 %313, i1 false
br i1 %314, label %542, label %315
315: ; preds = %296, %300, %305
%316 = icmp eq i64 %206, 7
br i1 %316, label %317, label %184
317: ; preds = %315
%318 = icmp eq i64 %174, 6
br i1 %318, label %319, label %172
319: ; preds = %317
store i32 %1, i32* %14
%320 = trunc i64 %12 to i32
br label %321
321: ; preds = %319, %523
%322 = phi i64 [ 0, %319 ], [ %324, %523 ]
%323 = phi i32 [ %13, %319 ], [ %524, %523 ]
%324 = add nuw nsw i64 %322, 1
%325 = icmp ult i64 %322, 5
%326 = add nuw nsw i64 %322, 2
%327 = add nuw nsw i64 %322, 3
%328 = icmp ult i64 %322, 3
%329 = add nsw i64 %322, -1
%330 = add nsw i64 %322, -2
%331 = add nsw i64 %322, -3
%332 = icmp ugt i64 %322, 2
%333 = icmp ugt i64 %322, 1
%334 = icmp ne i64 %322, 0
%335 = icmp ult i64 %322, 4
br label %336
336: ; preds = %321, %519
%337 = phi i64 [ 0, %321 ], [ %520, %519 ]
%338 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %337
%339 = load i32, i32* %338
%340 = icmp eq i32 %339, 0
br i1 %340, label %341, label %519
341: ; preds = %336
%342 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %324, i64 %337
%343 = load i32, i32* %342
%344 = icmp ne i32 %343, 0
%345 = select i1 %344, i1 %325, i1 false
br i1 %345, label %346, label %519
346: ; preds = %341
%347 = add nsw i64 %337, -1
%348 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %347
%349 = load i32, i32* %348
%350 = add nsw i64 %337, -2
%351 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %350
%352 = load i32, i32* %351
%353 = icmp eq i32 %349, %352
br i1 %353, label %358, label %354
354: ; preds = %346
%355 = add nuw nsw i64 %337, 1
%356 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %355
%357 = load i32, i32* %356
br label %377
358: ; preds = %346
%359 = add nsw i64 %337, -3
%360 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %359
%361 = load i32, i32* %360
%362 = icmp eq i32 %349, %361
%363 = icmp eq i32 %361, %4
%364 = and i1 %362, %363
%365 = icmp ugt i64 %337, 2
%366 = select i1 %364, i1 %365, i1 false
br i1 %366, label %522, label %367
367: ; preds = %358
%368 = add nuw nsw i64 %337, 1
%369 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %368
%370 = load i32, i32* %369
%371 = and i32 %370, %349
%372 = icmp eq i32 %371, -1
%373 = icmp ugt i64 %337, 1
%374 = select i1 %372, i1 %373, i1 false
%375 = icmp ult i64 %337, 6
%376 = select i1 %374, i1 %375, i1 false
br i1 %376, label %522, label %377
377: ; preds = %354, %367
%378 = phi i32 [ %357, %354 ], [ %370, %367 ]
%379 = phi i64 [ %355, %354 ], [ %368, %367 ]
%380 = add nuw nsw i64 %337, 2
%381 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %380
%382 = load i32, i32* %381
%383 = icmp eq i32 %378, %382
br i1 %383, label %384, label %393
384: ; preds = %377
%385 = add nuw nsw i64 %337, 3
%386 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %322, i64 %385
%387 = load i32, i32* %386
%388 = icmp eq i32 %378, %387
%389 = icmp eq i32 %387, %4
%390 = and i1 %388, %389
%391 = icmp ult i64 %337, 4
%392 = select i1 %390, i1 %391, i1 false
br i1 %392, label %522, label %393
393: ; preds = %384, %377
%394 = icmp eq i32 %349, %382
br i1 %394, label %395, label %402
395: ; preds = %393
%396 = icmp eq i32 %349, -1
%397 = icmp ne i64 %337, 0
%398 = select i1 %383, i1 %396, i1 false
%399 = select i1 %398, i1 %397, i1 false
%400 = icmp ult i64 %337, 5
%401 = select i1 %399, i1 %400, i1 false
br i1 %401, label %522, label %402
402: ; preds = %395, %393
%403 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %326, i64 %337
%404 = load i32, i32* %403
%405 = icmp eq i32 %343, %404
br i1 %405, label %406, label %413
406: ; preds = %402
%407 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %327, i64 %337
%408 = load i32, i32* %407
%409 = icmp eq i32 %343, %408
%410 = icmp eq i32 %343, %4
%411 = and i1 %410, %409
%412 = select i1 %411, i1 %328, i1 false
br i1 %412, label %522, label %413
413: ; preds = %406, %402
%414 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %329, i64 %347
%415 = load i32, i32* %414
%416 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %330, i64 %350
%417 = load i32, i32* %416
%418 = icmp eq i32 %415, %417
br i1 %418, label %419, label %439
419: ; preds = %413
%420 = add nsw i64 %337, -3
%421 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %331, i64 %420
%422 = load i32, i32* %421
%423 = icmp eq i32 %415, %422
%424 = icmp eq i32 %422, %4
%425 = and i1 %423, %424
%426 = select i1 %425, i1 %332, i1 false
%427 = icmp ugt i64 %337, 2
%428 = select i1 %426, i1 %427, i1 false
br i1 %428, label %522, label %429
429: ; preds = %419
%430 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %324, i64 %379
%431 = load i32, i32* %430
%432 = and i32 %415, %431
%433 = icmp eq i32 %432, -1
%434 = icmp ugt i64 %337, 1
%435 = select i1 %433, i1 %434, i1 false
%436 = icmp ult i64 %337, 6
%437 = select i1 %435, i1 %436, i1 false
%438 = select i1 %437, i1 %333, i1 false
br i1 %438, label %522, label %439
439: ; preds = %413, %429
%440 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %329, i64 %379
%441 = load i32, i32* %440
%442 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %330, i64 %380
%443 = load i32, i32* %442
%444 = icmp eq i32 %441, %443
br i1 %444, label %445, label %455
445: ; preds = %439
%446 = add nuw nsw i64 %337, 3
%447 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %331, i64 %446
%448 = load i32, i32* %447
%449 = icmp eq i32 %441, %448
%450 = icmp eq i32 %448, %4
%451 = and i1 %449, %450
%452 = select i1 %451, i1 %332, i1 false
%453 = icmp ult i64 %337, 4
%454 = select i1 %452, i1 %453, i1 false
br i1 %454, label %522, label %455
455: ; preds = %445, %439
%456 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %324, i64 %347
%457 = load i32, i32* %456
%458 = icmp eq i32 %457, %443
br i1 %458, label %459, label %467
459: ; preds = %455
%460 = icmp eq i32 %443, -1
%461 = and i1 %444, %460
%462 = icmp ne i64 %337, 0
%463 = select i1 %461, i1 %462, i1 false
%464 = icmp ult i64 %337, 5
%465 = select i1 %463, i1 %464, i1 false
%466 = select i1 %465, i1 %333, i1 false
br i1 %466, label %522, label %467
467: ; preds = %459, %455
%468 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %326, i64 %350
%469 = load i32, i32* %468
%470 = icmp eq i32 %457, %469
br i1 %470, label %471, label %481
471: ; preds = %467
%472 = add nsw i64 %337, -3
%473 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %327, i64 %472
%474 = load i32, i32* %473
%475 = icmp eq i32 %457, %474
%476 = icmp eq i32 %474, %4
%477 = and i1 %475, %476
%478 = select i1 %477, i1 %328, i1 false
%479 = icmp ugt i64 %337, 2
%480 = select i1 %478, i1 %479, i1 false
br i1 %480, label %522, label %481
481: ; preds = %471, %467
%482 = icmp eq i32 %441, %469
br i1 %482, label %483, label %492
483: ; preds = %481
%484 = and i32 %441, %457
%485 = icmp eq i32 %484, -1
%486 = icmp ugt i64 %337, 1
%487 = select i1 %485, i1 %486, i1 false
%488 = icmp ult i64 %337, 6
%489 = select i1 %487, i1 %488, i1 false
%490 = select i1 %489, i1 %334, i1 false
%491 = select i1 %490, i1 %335, i1 false
br i1 %491, label %522, label %492
492: ; preds = %483, %481
%493 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %324, i64 %379
%494 = load i32, i32* %493
%495 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %326, i64 %380
%496 = load i32, i32* %495
%497 = icmp eq i32 %494, %496
br i1 %497, label %498, label %508
498: ; preds = %492
%499 = add nuw nsw i64 %337, 3
%500 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 %327, i64 %499
%501 = load i32, i32* %500
%502 = icmp eq i32 %494, %501
%503 = icmp eq i32 %501, %4
%504 = and i1 %502, %503
%505 = select i1 %504, i1 %328, i1 false
%506 = icmp ult i64 %337, 4
%507 = select i1 %505, i1 %506, i1 false
br i1 %507, label %522, label %508
508: ; preds = %498, %492
%509 = icmp eq i32 %415, %496
br i1 %509, label %510, label %519
510: ; preds = %508
%511 = and i32 %415, %494
%512 = icmp eq i32 %511, -1
%513 = icmp ne i64 %337, 0
%514 = select i1 %512, i1 %513, i1 false
%515 = icmp ult i64 %337, 5
%516 = select i1 %514, i1 %515, i1 false
%517 = select i1 %516, i1 %334, i1 false
%518 = select i1 %517, i1 %335, i1 false
br i1 %518, label %522, label %519
519: ; preds = %336, %341, %510, %508
%520 = add nuw nsw i64 %337, 1
%521 = icmp eq i64 %520, 7
br i1 %521, label %523, label %336
522: ; preds = %498, %510, %471, %483, %445, %459, %419, %429, %406, %384, %395, %358, %367
store i32 0, i32* %14
br label %523
523: ; preds = %519, %522
%524 = phi i32 [ %320, %522 ], [ %323, %519 ]
%525 = icmp eq i64 %324, 6
br i1 %525, label %526, label %321
526: ; preds = %523
store i32 0, i32* %14
br label %527
527: ; preds = %17, %11, %526
%528 = phi i32 [ %524, %526 ], [ %13, %11 ], [ %13, %17 ]
%529 = add nuw nsw i64 %12, 1
%530 = icmp eq i64 %529, 7
br i1 %530, label %531, label %11
531: ; preds = %527
%532 = icmp eq i64 %8, 6
br i1 %532, label %533, label %5
533: ; preds = %531, %533
%534 = tail call i32 (...) @rand()
%535 = srem i32 %534, 7
%536 = sext i32 %535 to i64
%537 = getelementptr inbounds [7 x i32], [7 x i32]* %0, i64 0, i64 %536
%538 = load i32, i32* %537
%539 = icmp ne i32 %538, 0
%540 = icmp ne i32 %528, %535
%541 = select i1 %539, i1 %540, i1 false
br i1 %541, label %533, label %544
542: ; preds = %157, %138, %119, %100, %84, %67, %48, %305, %286, %267, %248, %232, %215, %196
%543 = trunc i64 %12 to i32
store i32 0, i32* %14
br label %544
544: ; preds = %533, %542
%545 = phi i32 [ %543, %542 ], [ %535, %533 ]
ret i32 %545
}