int verif_laterala(int harta[][30], int row, int col, int tip_piesa,
                   int tip_rotatie, int directie) {
  if (tip_piesa == 1) {
    if (directie == 1) {
      if (harta[row][col - 2] != 0 || harta[row + 1][col - 2] != 0)
        return 1;
    }
    if (directie == 2) {
      if (harta[row][col + 1] != 0 || harta[row + 1][col + 1] != 0)
        return 1;
    }
    return 0;
  }
  if (tip_piesa == 2) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row][col - 3] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row - 1][col - 1] != 0 || harta[row][col - 1] != 0 ||
            harta[row + 1][col - 1] != 0 || harta[row + 2][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row - 1][col + 1] != 0 || harta[row][col + 1] != 0 ||
            harta[row + 1][col + 1] != 0 || harta[row + 2][col + 1] != 0)
          return 1;
      }
    }
    return 0;
  }
  if (tip_piesa == 3) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row - 1][col - 1] != 0 || harta[row][col - 1] != 0 ||
            harta[row + 1][col] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0 || harta[row + 1][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row][col - 1] != 0 || harta[row + 1][col - 2] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0 || harta[row + 1][col + 1] != 0)
          return 1;
      }
    }
    return 0;
  }
  if (tip_piesa == 4) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row][col - 1] != 0 || harta[row + 1][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0 || harta[row - 1][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row][col - 2] != 0 || harta[row + 1][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 1] != 0 || harta[row + 1][col + 2] != 0)
          return 1;
      }
    }
    return 0;
  }
  if (tip_piesa == 5) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row][col - 2] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row][col - 1] != 0 || harta[row + 1][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 1] != 0 || harta[row - 1][col + 1] != 0)
          return 1;
      }
    }
    if (tip_rotatie % 4 == 0) {
      if (directie == 1)
        if (harta[row + 1][col - 2] != 0)
          return 1;
      if (directie == 2)
        if (harta[row + 1][col] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 1) {
      if (directie == 1)
        if (harta[row - 1][col - 1] != 0)
          return 1;
      if (directie == 2)
        if (harta[row + 1][col + 2] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 2) {
      if (directie == 1)
        if (harta[row - 1][col] != 0)
          return 1;
      if (directie == 2)
        if (harta[row - 1][col + 2] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 3) {
      if (directie == 1)
        if (harta[row - 1][col - 2] != 0)
          return 1;
      if (directie == 2)
        if (harta[row + 1][col + 1] != 0)
          return 1;
    }
  }
  if (tip_piesa == 6) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row][col - 2] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row][col - 1] != 0 || harta[row - 1][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 1] != 0 || harta[row + 1][col + 1] != 0)
          return 1;
      }
    }
    if (tip_rotatie % 4 == 0) {
      if (directie == 1)
        if (harta[row + 1][col] != 0)
          return 1;
      if (directie == 2)
        if (harta[row + 1][col + 2] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 1) {
      if (directie == 1)
        if (harta[row - 1][col - 1] != 0)
          return 1;
      if (directie == 2)
        if (harta[row - 1][col + 2] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 2) {
      if (directie == 1)
        if (harta[row - 1][col - 2] != 0)
          return 1;
      if (directie == 2)
        if (harta[row - 1][col] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 3) {
      if (directie == 1)
        if (harta[row + 1][col - 2] != 0)
          return 1;
      if (directie == 2)
        if (harta[row - 1][col + 1] != 0)
          return 1;
    }
  }
  if (tip_piesa == 7) {
    if (tip_rotatie % 2 == 0) {
      if (directie == 1) {
        if (harta[row][col - 2] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row][col + 2] != 0)
          return 1;
      }
    } else {
      if (directie == 1) {
        if (harta[row + 1][col - 1] != 0 || harta[row - 1][col - 1] != 0)
          return 1;
      }
      if (directie == 2) {
        if (harta[row - 1][col + 1] != 0 || harta[row + 1][col + 1] != 0)
          return 1;
      }
    }
    if (tip_rotatie % 4 == 0) {
      if (directie == 1)
        if (harta[row + 1][col - 1] != 0)
          return 1;
      if (directie == 2)
        if (harta[row + 1][col + 1] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 1) {
      if (directie == 1)
        if (harta[row][col - 1] != 0)
          return 1;
      if (directie == 2)
        if (harta[row][col + 2] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 2) {
      if (directie == 1)
        if (harta[row - 1][col - 1] != 0)
          return 1;
      if (directie == 2)
        if (harta[row - 1][col + 1] != 0)
          return 1;
    }
    if (tip_rotatie % 4 == 3) {
      if (directie == 1)
        if (harta[row][col - 2] != 0)
          return 1;
      if (directie == 2)
        if (harta[row][col + 1] != 0)
          return 1;
    }
  }
  return 0;
}


x86 assembly (clang, -O0):
<verif_laterala>:
push   %rbp
mov    %rsp,%rbp
mov    %rdi,-0x10(%rbp)
mov    %esi,-0x14(%rbp)
mov    %edx,-0x18(%rbp)
mov    %ecx,-0x1c(%rbp)
mov    %r8d,-0x20(%rbp)
mov    %r9d,-0x24(%rbp)
cmpl   $0x1,-0x1c(%rbp)
jne    11f7 <verif_laterala+0xf7>
cmpl   $0x1,-0x24(%rbp)
jne    1187 <verif_laterala+0x87>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1176 <verif_laterala+0x76>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1182 <verif_laterala+0x82>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1187 <verif_laterala+0x87>
cmpl   $0x2,-0x24(%rbp)
jne    11eb <verif_laterala+0xeb>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    11da <verif_laterala+0xda>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     11e6 <verif_laterala+0xe6>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    11eb <verif_laterala+0xeb>
movl   $0x0,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
cmpl   $0x2,-0x1c(%rbp)
jne    1409 <verif_laterala+0x309>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    1294 <verif_laterala+0x194>
cmpl   $0x1,-0x24(%rbp)
jne    1252 <verif_laterala+0x152>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x3,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     124d <verif_laterala+0x14d>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1252 <verif_laterala+0x152>
cmpl   $0x2,-0x24(%rbp)
jne    128f <verif_laterala+0x18f>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     128a <verif_laterala+0x18a>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    128f <verif_laterala+0x18f>
jmp    13fd <verif_laterala+0x2fd>
cmpl   $0x1,-0x24(%rbp)
jne    1346 <verif_laterala+0x246>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1335 <verif_laterala+0x235>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1335 <verif_laterala+0x235>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1335 <verif_laterala+0x235>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1341 <verif_laterala+0x241>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1346 <verif_laterala+0x246>
cmpl   $0x2,-0x24(%rbp)
jne    13f8 <verif_laterala+0x2f8>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    13e7 <verif_laterala+0x2e7>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    13e7 <verif_laterala+0x2e7>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    13e7 <verif_laterala+0x2e7>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     13f3 <verif_laterala+0x2f3>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    13f8 <verif_laterala+0x2f8>
jmp    13fd <verif_laterala+0x2fd>
movl   $0x0,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
cmpl   $0x3,-0x1c(%rbp)
jne    15ef <verif_laterala+0x4ef>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    1516 <verif_laterala+0x416>
cmpl   $0x1,-0x24(%rbp)
jne    14ad <verif_laterala+0x3ad>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    149c <verif_laterala+0x39c>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    149c <verif_laterala+0x39c>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
movslq -0x18(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     14a8 <verif_laterala+0x3a8>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    14ad <verif_laterala+0x3ad>
cmpl   $0x2,-0x24(%rbp)
jne    1511 <verif_laterala+0x411>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1500 <verif_laterala+0x400>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     150c <verif_laterala+0x40c>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1511 <verif_laterala+0x411>
jmp    15e3 <verif_laterala+0x4e3>
cmpl   $0x1,-0x24(%rbp)
jne    157a <verif_laterala+0x47a>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1569 <verif_laterala+0x469>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1575 <verif_laterala+0x475>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    157a <verif_laterala+0x47a>
cmpl   $0x2,-0x24(%rbp)
jne    15de <verif_laterala+0x4de>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    15cd <verif_laterala+0x4cd>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     15d9 <verif_laterala+0x4d9>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    15de <verif_laterala+0x4de>
jmp    15e3 <verif_laterala+0x4e3>
movl   $0x0,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
cmpl   $0x4,-0x1c(%rbp)
jne    17b3 <verif_laterala+0x6b3>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    16da <verif_laterala+0x5da>
cmpl   $0x1,-0x24(%rbp)
jne    1671 <verif_laterala+0x571>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1660 <verif_laterala+0x560>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     166c <verif_laterala+0x56c>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1671 <verif_laterala+0x571>
cmpl   $0x2,-0x24(%rbp)
jne    16d5 <verif_laterala+0x5d5>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    16c4 <verif_laterala+0x5c4>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     16d0 <verif_laterala+0x5d0>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    16d5 <verif_laterala+0x5d5>
jmp    17a7 <verif_laterala+0x6a7>
cmpl   $0x1,-0x24(%rbp)
jne    173e <verif_laterala+0x63e>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    172d <verif_laterala+0x62d>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1739 <verif_laterala+0x639>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    173e <verif_laterala+0x63e>
cmpl   $0x2,-0x24(%rbp)
jne    17a2 <verif_laterala+0x6a2>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1791 <verif_laterala+0x691>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     179d <verif_laterala+0x69d>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    17a2 <verif_laterala+0x6a2>
jmp    17a7 <verif_laterala+0x6a7>
movl   $0x0,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
cmpl   $0x5,-0x1c(%rbp)
jne    1b8c <verif_laterala+0xa8c>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    1850 <verif_laterala+0x750>
cmpl   $0x1,-0x24(%rbp)
jne    180e <verif_laterala+0x70e>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1809 <verif_laterala+0x709>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    180e <verif_laterala+0x70e>
cmpl   $0x2,-0x24(%rbp)
jne    184b <verif_laterala+0x74b>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1846 <verif_laterala+0x746>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    184b <verif_laterala+0x74b>
jmp    191d <verif_laterala+0x81d>
cmpl   $0x1,-0x24(%rbp)
jne    18b4 <verif_laterala+0x7b4>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    18a3 <verif_laterala+0x7a3>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     18af <verif_laterala+0x7af>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    18b4 <verif_laterala+0x7b4>
cmpl   $0x2,-0x24(%rbp)
jne    1918 <verif_laterala+0x818>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1907 <verif_laterala+0x807>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1913 <verif_laterala+0x813>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1918 <verif_laterala+0x818>
jmp    191d <verif_laterala+0x81d>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    19b5 <verif_laterala+0x8b5>
cmpl   $0x1,-0x24(%rbp)
jne    1973 <verif_laterala+0x873>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     196e <verif_laterala+0x86e>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1973 <verif_laterala+0x873>
cmpl   $0x2,-0x24(%rbp)
jne    19b0 <verif_laterala+0x8b0>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
movslq -0x18(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     19ab <verif_laterala+0x8ab>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    19b0 <verif_laterala+0x8b0>
jmp    19b5 <verif_laterala+0x8b5>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x1,%edx
jne    1a52 <verif_laterala+0x952>
cmpl   $0x1,-0x24(%rbp)
jne    1a0b <verif_laterala+0x90b>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1a06 <verif_laterala+0x906>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1a0b <verif_laterala+0x90b>
cmpl   $0x2,-0x24(%rbp)
jne    1a4d <verif_laterala+0x94d>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1a48 <verif_laterala+0x948>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1a4d <verif_laterala+0x94d>
jmp    1a52 <verif_laterala+0x952>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x2,%edx
jne    1aea <verif_laterala+0x9ea>
cmpl   $0x1,-0x24(%rbp)
jne    1aa3 <verif_laterala+0x9a3>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
movslq -0x18(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1a9e <verif_laterala+0x99e>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1aa3 <verif_laterala+0x9a3>
cmpl   $0x2,-0x24(%rbp)
jne    1ae5 <verif_laterala+0x9e5>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1ae0 <verif_laterala+0x9e0>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1ae5 <verif_laterala+0x9e5>
jmp    1aea <verif_laterala+0x9ea>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x3,%edx
jne    1b87 <verif_laterala+0xa87>
cmpl   $0x1,-0x24(%rbp)
jne    1b40 <verif_laterala+0xa40>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1b3b <verif_laterala+0xa3b>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1b40 <verif_laterala+0xa40>
cmpl   $0x2,-0x24(%rbp)
jne    1b82 <verif_laterala+0xa82>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1b7d <verif_laterala+0xa7d>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1b82 <verif_laterala+0xa82>
jmp    1b87 <verif_laterala+0xa87>
jmp    1b8c <verif_laterala+0xa8c>
cmpl   $0x6,-0x1c(%rbp)
jne    1f65 <verif_laterala+0xe65>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    1c29 <verif_laterala+0xb29>
cmpl   $0x1,-0x24(%rbp)
jne    1be7 <verif_laterala+0xae7>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1be2 <verif_laterala+0xae2>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1be7 <verif_laterala+0xae7>
cmpl   $0x2,-0x24(%rbp)
jne    1c24 <verif_laterala+0xb24>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1c1f <verif_laterala+0xb1f>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1c24 <verif_laterala+0xb24>
jmp    1cf6 <verif_laterala+0xbf6>
cmpl   $0x1,-0x24(%rbp)
jne    1c8d <verif_laterala+0xb8d>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1c7c <verif_laterala+0xb7c>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1c88 <verif_laterala+0xb88>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1c8d <verif_laterala+0xb8d>
cmpl   $0x2,-0x24(%rbp)
jne    1cf1 <verif_laterala+0xbf1>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    1ce0 <verif_laterala+0xbe0>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1cec <verif_laterala+0xbec>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1cf1 <verif_laterala+0xbf1>
jmp    1cf6 <verif_laterala+0xbf6>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    1d8e <verif_laterala+0xc8e>
cmpl   $0x1,-0x24(%rbp)
jne    1d47 <verif_laterala+0xc47>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
movslq -0x18(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1d42 <verif_laterala+0xc42>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1d47 <verif_laterala+0xc47>
cmpl   $0x2,-0x24(%rbp)
jne    1d89 <verif_laterala+0xc89>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1d84 <verif_laterala+0xc84>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1d89 <verif_laterala+0xc89>
jmp    1d8e <verif_laterala+0xc8e>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x1,%edx
jne    1e2b <verif_laterala+0xd2b>
cmpl   $0x1,-0x24(%rbp)
jne    1de4 <verif_laterala+0xce4>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1ddf <verif_laterala+0xcdf>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1de4 <verif_laterala+0xce4>
cmpl   $0x2,-0x24(%rbp)
jne    1e26 <verif_laterala+0xd26>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1e21 <verif_laterala+0xd21>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1e26 <verif_laterala+0xd26>
jmp    1e2b <verif_laterala+0xd2b>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x2,%edx
jne    1ec3 <verif_laterala+0xdc3>
cmpl   $0x1,-0x24(%rbp)
jne    1e81 <verif_laterala+0xd81>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1e7c <verif_laterala+0xd7c>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1e81 <verif_laterala+0xd81>
cmpl   $0x2,-0x24(%rbp)
jne    1ebe <verif_laterala+0xdbe>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
movslq -0x18(%rbp),%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1eb9 <verif_laterala+0xdb9>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1ebe <verif_laterala+0xdbe>
jmp    1ec3 <verif_laterala+0xdc3>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x3,%edx
jne    1f60 <verif_laterala+0xe60>
cmpl   $0x1,-0x24(%rbp)
jne    1f19 <verif_laterala+0xe19>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1f14 <verif_laterala+0xe14>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1f19 <verif_laterala+0xe19>
cmpl   $0x2,-0x24(%rbp)
jne    1f5b <verif_laterala+0xe5b>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1f56 <verif_laterala+0xe56>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1f5b <verif_laterala+0xe5b>
jmp    1f60 <verif_laterala+0xe60>
jmp    1f65 <verif_laterala+0xe65>
cmpl   $0x7,-0x1c(%rbp)
jne    233e <verif_laterala+0x123e>
mov    -0x20(%rbp),%eax
mov    $0x2,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    2002 <verif_laterala+0xf02>
cmpl   $0x1,-0x24(%rbp)
jne    1fc0 <verif_laterala+0xec0>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1fbb <verif_laterala+0xebb>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1fc0 <verif_laterala+0xec0>
cmpl   $0x2,-0x24(%rbp)
jne    1ffd <verif_laterala+0xefd>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     1ff8 <verif_laterala+0xef8>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    1ffd <verif_laterala+0xefd>
jmp    20d9 <verif_laterala+0xfd9>
cmpl   $0x1,-0x24(%rbp)
jne    206b <verif_laterala+0xf6b>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    205a <verif_laterala+0xf5a>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     2066 <verif_laterala+0xf66>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    206b <verif_laterala+0xf6b>
cmpl   $0x2,-0x24(%rbp)
jne    20d4 <verif_laterala+0xfd4>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
jne    20c3 <verif_laterala+0xfc3>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     20cf <verif_laterala+0xfcf>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    20d4 <verif_laterala+0xfd4>
jmp    20d9 <verif_laterala+0xfd9>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x0,%edx
jne    2176 <verif_laterala+0x1076>
cmpl   $0x1,-0x24(%rbp)
jne    212f <verif_laterala+0x102f>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     212a <verif_laterala+0x102a>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    212f <verif_laterala+0x102f>
cmpl   $0x2,-0x24(%rbp)
jne    2171 <verif_laterala+0x1071>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     216c <verif_laterala+0x106c>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    2171 <verif_laterala+0x1071>
jmp    2176 <verif_laterala+0x1076>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x1,%edx
jne    2209 <verif_laterala+0x1109>
cmpl   $0x1,-0x24(%rbp)
jne    21c7 <verif_laterala+0x10c7>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     21c2 <verif_laterala+0x10c2>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    21c7 <verif_laterala+0x10c7>
cmpl   $0x2,-0x24(%rbp)
jne    2204 <verif_laterala+0x1104>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     21ff <verif_laterala+0x10ff>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    2204 <verif_laterala+0x1104>
jmp    2209 <verif_laterala+0x1109>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x2,%edx
jne    22a6 <verif_laterala+0x11a6>
cmpl   $0x1,-0x24(%rbp)
jne    225f <verif_laterala+0x115f>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     225a <verif_laterala+0x115a>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    225f <verif_laterala+0x115f>
cmpl   $0x2,-0x24(%rbp)
jne    22a1 <verif_laterala+0x11a1>
mov    -0x10(%rbp),%rax
mov    -0x14(%rbp),%ecx
sub    $0x1,%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     229c <verif_laterala+0x119c>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    22a1 <verif_laterala+0x11a1>
jmp    22a6 <verif_laterala+0x11a6>
mov    -0x20(%rbp),%eax
mov    $0x4,%ecx
cltd
idiv   %ecx
cmp    $0x3,%edx
jne    2339 <verif_laterala+0x1239>
cmpl   $0x1,-0x24(%rbp)
jne    22f7 <verif_laterala+0x11f7>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
sub    $0x2,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     22f2 <verif_laterala+0x11f2>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    22f7 <verif_laterala+0x11f7>
cmpl   $0x2,-0x24(%rbp)
jne    2334 <verif_laterala+0x1234>
mov    -0x10(%rbp),%rax
movslq -0x14(%rbp),%rcx
imul   $0x78,%rcx,%rcx
add    %rcx,%rax
mov    -0x18(%rbp),%ecx
add    $0x1,%ecx
movslq %ecx,%rcx
cmpl   $0x0,(%rax,%rcx,4)
je     232f <verif_laterala+0x122f>
movl   $0x1,-0x4(%rbp)
jmp    2345 <verif_laterala+0x1245>
jmp    2334 <verif_laterala+0x1234>
jmp    2339 <verif_laterala+0x1239>
jmp    233e <verif_laterala+0x123e>
movl   $0x0,-0x4(%rbp)
mov    -0x4(%rbp),%eax
pop    %rbp
ret

x86 assembly (clang, -O2):
<verif_laterala>:
add    $0xffffffff,%ecx
cmp    $0x6,%ecx
ja     18b3 <verif_laterala+0x7b3>
lea    0xeed(%rip),%rax
movslq (%rax,%rcx,4),%rcx
add    %rax,%rcx
jmp    *%rcx
cmp    $0x2,%r9d
je     1476 <verif_laterala+0x376>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0xfffffffffffffffe,%rcx
jmp    14ba <verif_laterala+0x3ba>
test   $0x1,%r8b
jne    12f8 <verif_laterala+0x1f8>
cmp    $0x2,%r9d
je     1803 <verif_laterala+0x703>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,-0xc(%rdi,%rcx,4)
jne    1820 <verif_laterala+0x720>
jmp    18b3 <verif_laterala+0x7b3>
test   $0x1,%r8b
jne    1334 <verif_laterala+0x234>
cmp    $0x2,%r9d
je     1499 <verif_laterala+0x399>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
lea    -0x1(%rsi),%eax
cltq
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
lea    -0x1(%rcx),%r8
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdi,%rdx
cmpl   $0x0,(%rdx,%r8,4)
jne    1820 <verif_laterala+0x720>
jmp    14ba <verif_laterala+0x3ba>
test   $0x1,%r8b
jne    1377 <verif_laterala+0x277>
cmp    $0x2,%r9d
je     14cc <verif_laterala+0x3cc>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0xffffffffffffffff,%rcx
jmp    14ba <verif_laterala+0x3ba>
test   $0x1,%r8b
jne    13ba <verif_laterala+0x2ba>
cmp    $0x2,%r9d
je     14f2 <verif_laterala+0x3f2>
cmp    $0x1,%r9d
jne    1649 <verif_laterala+0x549>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    1649 <verif_laterala+0x549>
test   $0x1,%r8b
jne    13f8 <verif_laterala+0x2f8>
cmp    $0x2,%r9d
je     1515 <verif_laterala+0x415>
cmp    $0x1,%r9d
jne    16ba <verif_laterala+0x5ba>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    16ba <verif_laterala+0x5ba>
test   $0x1,%r8b
jne    1436 <verif_laterala+0x336>
cmp    $0x2,%r9d
je     1538 <verif_laterala+0x438>
cmp    $0x1,%r9d
jne    173d <verif_laterala+0x63d>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    173d <verif_laterala+0x63d>
cmp    $0x2,%r9d
je     155b <verif_laterala+0x45b>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
lea    -0x1(%rsi),%eax
cltq
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0xffffffffffffffff,%rcx
jmp    157e <verif_laterala+0x47e>
cmp    $0x2,%r9d
je     15b1 <verif_laterala+0x4b1>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%esi
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdx,%rdi
jmp    186d <verif_laterala+0x76d>
cmp    $0x2,%r9d
je     15e0 <verif_laterala+0x4e0>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%esi
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdx,%rdi
jmp    1846 <verif_laterala+0x746>
cmp    $0x2,%r9d
je     160f <verif_laterala+0x50f>
cmp    $0x1,%r9d
jne    1649 <verif_laterala+0x549>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0xffffffffffffffff,%r10
lea    0x1(%rsi),%ecx
jmp    1634 <verif_laterala+0x534>
cmp    $0x2,%r9d
je     1680 <verif_laterala+0x580>
cmp    $0x1,%r9d
jne    16ba <verif_laterala+0x5ba>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0xffffffffffffffff,%r10
lea    -0x1(%rsi),%ecx
jmp    16a5 <verif_laterala+0x5a5>
cmp    $0x2,%r9d
je     1701 <verif_laterala+0x601>
cmp    $0x1,%r9d
jne    173d <verif_laterala+0x63d>
lea    0x1(%rsi),%eax
cltq
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0xffffffffffffffff,%r10
lea    -0x1(%rsi),%ecx
jmp    1728 <verif_laterala+0x628>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%rcx
jmp    14ba <verif_laterala+0x3ba>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x2,%rcx
add    $0x1,%esi
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdx,%rdi
jmp    188b <verif_laterala+0x78b>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x2,%rcx
add    $0xffffffff,%esi
jmp    14bd <verif_laterala+0x3bd>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    1649 <verif_laterala+0x549>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    16ba <verif_laterala+0x5ba>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
jmp    173d <verif_laterala+0x63d>
lea    -0x1(%rsi),%eax
cltq
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%rcx
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdi,%rdx
cmpl   $0x0,(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
lea    0x1(%rsi),%edx
movslq %edx,%rdx
imul   $0x78,%rdx,%rdx
add    %rdi,%rdx
cmpl   $0x0,(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x2,%esi
jmp    14bd <verif_laterala+0x3bd>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x8(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%esi
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdx,%rdi
jmp    18a8 <verif_laterala+0x7a8>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rdx
add    %rdi,%rdx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rdx,%rcx,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%esi
movslq %esi,%rdx
imul   $0x78,%rdx,%rdx
add    %rdx,%rdi
jmp    1815 <verif_laterala+0x715>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%r10
lea    -0x1(%rsi),%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
lea    0x3(%r8),%eax
test   %r8d,%r8d
cmovns %r8d,%eax
and    $0xfffffffc,%eax
sub    %eax,%r8d
cmp    $0x3,%r8d
ja     18b3 <verif_laterala+0x7b3>
lea    0x9d1(%rip),%rax
movslq (%rax,%r8,4),%rcx
add    %rax,%rcx
jmp    *%rcx
cmp    $0x2,%r9d
jne    17e3 <verif_laterala+0x6e3>
jmp    16f9 <verif_laterala+0x5f9>
movslq %esi,%rax
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%r10
lea    0x1(%rsi),%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
lea    0x3(%r8),%eax
test   %r8d,%r8d
cmovns %r8d,%eax
and    $0xfffffffc,%eax
sub    %eax,%r8d
cmp    $0x3,%r8d
ja     18b3 <verif_laterala+0x7b3>
lea    0x950(%rip),%rax
movslq (%rax,%r8,4),%rcx
add    %rax,%rcx
jmp    *%rcx
cmp    $0x2,%r9d
je     178a <verif_laterala+0x68a>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
add    $0x1,%esi
jmp    1879 <verif_laterala+0x779>
lea    -0x1(%rsi),%eax
cltq
movslq %edx,%r10
imul   $0x78,%rax,%rcx
add    %rdi,%rcx
mov    $0x1,%eax
cmpl   $0x0,0x4(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
add    $0x1,%r10
lea    0x1(%rsi),%ecx
movslq %ecx,%rcx
imul   $0x78,%rcx,%rcx
add    %rdi,%rcx
cmpl   $0x0,(%rcx,%r10,4)
jne    1820 <verif_laterala+0x720>
lea    0x3(%r8),%eax
test   %r8d,%r8d
cmovns %r8d,%eax
and    $0xfffffffc,%eax
sub    %eax,%r8d
cmp    $0x3,%r8d
ja     18b3 <verif_laterala+0x7b3>
lea    0x8bd(%rip),%rax
movslq (%rax,%r8,4),%rcx
add    %rax,%rcx
jmp    *%rcx
cmp    $0x2,%r9d
je     17aa <verif_laterala+0x6aa>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
add    $0x1,%esi
jmp    1834 <verif_laterala+0x734>
cmp    $0x2,%r9d
jne    1827 <verif_laterala+0x727>
add    $0x1,%esi
jmp    1803 <verif_laterala+0x703>
cmp    $0x2,%r9d
je     17b8 <verif_laterala+0x6b8>
cmp    $0x1,%r9d
je     1876 <verif_laterala+0x776>
jmp    18b3 <verif_laterala+0x7b3>
cmp    $0x2,%r9d
jne    17c7 <verif_laterala+0x6c7>
add    $0x1,%esi
jmp    1896 <verif_laterala+0x796>
cmp    $0x2,%r9d
jne    1827 <verif_laterala+0x727>
add    $0xffffffff,%esi
jmp    1803 <verif_laterala+0x703>
cmp    $0x2,%r9d
je     1876 <verif_laterala+0x776>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
add    $0xffffffff,%esi
jmp    185b <verif_laterala+0x75b>
cmp    $0x2,%r9d
je     1893 <verif_laterala+0x793>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
add    $0x1,%esi
jmp    185b <verif_laterala+0x75b>
cmp    $0x2,%r9d
je     1803 <verif_laterala+0x703>
cmp    $0x1,%r9d
je     1834 <verif_laterala+0x734>
jmp    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,0x8(%rdi,%rcx,4)
je     18b3 <verif_laterala+0x7b3>
ret
cmp    $0x2,%r9d
je     1893 <verif_laterala+0x793>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
add    $0xffffffff,%esi
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,-0x4(%rdi,%rcx,4)
jne    1820 <verif_laterala+0x720>
jmp    18b3 <verif_laterala+0x7b3>
cmp    $0x2,%r9d
je     1896 <verif_laterala+0x796>
cmp    $0x1,%r9d
jne    18b3 <verif_laterala+0x7b3>
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,-0x8(%rdi,%rcx,4)
jne    1820 <verif_laterala+0x720>
jmp    18b3 <verif_laterala+0x7b3>
add    $0xffffffff,%esi
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,(%rdi,%rcx,4)
jne    1820 <verif_laterala+0x720>
jmp    18b3 <verif_laterala+0x7b3>
add    $0xffffffff,%esi
movslq %esi,%rax
movslq %edx,%rcx
imul   $0x78,%rax,%rax
add    %rax,%rdi
mov    $0x1,%eax
cmpl   $0x0,0x4(%rdi,%rcx,4)
jne    1820 <verif_laterala+0x720>
xor    %eax,%eax
ret

LLVM IR (-O0):
define i32 @verif_laterala([30 x i32]* %0, i32 %1, i32 %2, i32 %3, i32 %4, i32 %5) {
%7 = alloca i32
%8 = alloca [30 x i32]*
%9 = alloca i32
%10 = alloca i32
%11 = alloca i32
%12 = alloca i32
%13 = alloca i32
store [30 x i32]* %0, [30 x i32]** %8
store i32 %1, i32* %9
store i32 %2, i32* %10
store i32 %3, i32* %11
store i32 %4, i32* %12
store i32 %5, i32* %13
%14 = load i32, i32* %11
%15 = icmp eq i32 %14, 1
br i1 %15, label %16, label %73
16: ; preds = %6
%17 = load i32, i32* %13
%18 = icmp eq i32 %17, 1
br i1 %18, label %19, label %44
19: ; preds = %16
%20 = load [30 x i32]*, [30 x i32]** %8
%21 = load i32, i32* %9
%22 = sext i32 %21 to i64
%23 = getelementptr inbounds [30 x i32], [30 x i32]* %20, i64 %22
%24 = load i32, i32* %10
%25 = sub nsw i32 %24, 2
%26 = sext i32 %25 to i64
%27 = getelementptr inbounds [30 x i32], [30 x i32]* %23, i64 0, i64 %26
%28 = load i32, i32* %27
%29 = icmp ne i32 %28, 0
br i1 %29, label %42, label %30
30: ; preds = %19
%31 = load [30 x i32]*, [30 x i32]** %8
%32 = load i32, i32* %9
%33 = add nsw i32 %32, 1
%34 = sext i32 %33 to i64
%35 = getelementptr inbounds [30 x i32], [30 x i32]* %31, i64 %34
%36 = load i32, i32* %10
%37 = sub nsw i32 %36, 2
%38 = sext i32 %37 to i64
%39 = getelementptr inbounds [30 x i32], [30 x i32]* %35, i64 0, i64 %38
%40 = load i32, i32* %39
%41 = icmp ne i32 %40, 0
br i1 %41, label %42, label %43
42: ; preds = %30, %19
store i32 1, i32* %7
br label %1231
43: ; preds = %30
br label %44
44: ; preds = %43, %16
%45 = load i32, i32* %13
%46 = icmp eq i32 %45, 2
br i1 %46, label %47, label %72
47: ; preds = %44
%48 = load [30 x i32]*, [30 x i32]** %8
%49 = load i32, i32* %9
%50 = sext i32 %49 to i64
%51 = getelementptr inbounds [30 x i32], [30 x i32]* %48, i64 %50
%52 = load i32, i32* %10
%53 = add nsw i32 %52, 1
%54 = sext i32 %53 to i64
%55 = getelementptr inbounds [30 x i32], [30 x i32]* %51, i64 0, i64 %54
%56 = load i32, i32* %55
%57 = icmp ne i32 %56, 0
br i1 %57, label %70, label %58
58: ; preds = %47
%59 = load [30 x i32]*, [30 x i32]** %8
%60 = load i32, i32* %9
%61 = add nsw i32 %60, 1
%62 = sext i32 %61 to i64
%63 = getelementptr inbounds [30 x i32], [30 x i32]* %59, i64 %62
%64 = load i32, i32* %10
%65 = add nsw i32 %64, 1
%66 = sext i32 %65 to i64
%67 = getelementptr inbounds [30 x i32], [30 x i32]* %63, i64 0, i64 %66
%68 = load i32, i32* %67
%69 = icmp ne i32 %68, 0
br i1 %69, label %70, label %71
70: ; preds = %58, %47
store i32 1, i32* %7
br label %1231
71: ; preds = %58
br label %72
72: ; preds = %71, %44
store i32 0, i32* %7
br label %1231
73: ; preds = %6
%74 = load i32, i32* %11
%75 = icmp eq i32 %74, 2
br i1 %75, label %76, label %219
76: ; preds = %73
%77 = load i32, i32* %12
%78 = srem i32 %77, 2
%79 = icmp eq i32 %78, 0
br i1 %79, label %80, label %113
80: ; preds = %76
%81 = load i32, i32* %13
%82 = icmp eq i32 %81, 1
br i1 %82, label %83, label %96
83: ; preds = %80
%84 = load [30 x i32]*, [30 x i32]** %8
%85 = load i32, i32* %9
%86 = sext i32 %85 to i64
%87 = getelementptr inbounds [30 x i32], [30 x i32]* %84, i64 %86
%88 = load i32, i32* %10
%89 = sub nsw i32 %88, 3
%90 = sext i32 %89 to i64
%91 = getelementptr inbounds [30 x i32], [30 x i32]* %87, i64 0, i64 %90
%92 = load i32, i32* %91
%93 = icmp ne i32 %92, 0
br i1 %93, label %94, label %95
94: ; preds = %83
store i32 1, i32* %7
br label %1231
95: ; preds = %83
br label %96
96: ; preds = %95, %80
%97 = load i32, i32* %13
%98 = icmp eq i32 %97, 2
br i1 %98, label %99, label %112
99: ; preds = %96
%100 = load [30 x i32]*, [30 x i32]** %8
%101 = load i32, i32* %9
%102 = sext i32 %101 to i64
%103 = getelementptr inbounds [30 x i32], [30 x i32]* %100, i64 %102
%104 = load i32, i32* %10
%105 = add nsw i32 %104, 2
%106 = sext i32 %105 to i64
%107 = getelementptr inbounds [30 x i32], [30 x i32]* %103, i64 0, i64 %106
%108 = load i32, i32* %107
%109 = icmp ne i32 %108, 0
br i1 %109, label %110, label %111
110: ; preds = %99
store i32 1, i32* %7
br label %1231
111: ; preds = %99
br label %112
112: ; preds = %111, %96
br label %218
113: ; preds = %76
%114 = load i32, i32* %13
%115 = icmp eq i32 %114, 1
br i1 %115, label %116, label %165
116: ; preds = %113
%117 = load [30 x i32]*, [30 x i32]** %8
%118 = load i32, i32* %9
%119 = sub nsw i32 %118, 1
%120 = sext i32 %119 to i64
%121 = getelementptr inbounds [30 x i32], [30 x i32]* %117, i64 %120
%122 = load i32, i32* %10
%123 = sub nsw i32 %122, 1
%124 = sext i32 %123 to i64
%125 = getelementptr inbounds [30 x i32], [30 x i32]* %121, i64 0, i64 %124
%126 = load i32, i32* %125
%127 = icmp ne i32 %126, 0
br i1 %127, label %163, label %128
128: ; preds = %116
%129 = load [30 x i32]*, [30 x i32]** %8
%130 = load i32, i32* %9
%131 = sext i32 %130 to i64
%132 = getelementptr inbounds [30 x i32], [30 x i32]* %129, i64 %131
%133 = load i32, i32* %10
%134 = sub nsw i32 %133, 1
%135 = sext i32 %134 to i64
%136 = getelementptr inbounds [30 x i32], [30 x i32]* %132, i64 0, i64 %135
%137 = load i32, i32* %136
%138 = icmp ne i32 %137, 0
br i1 %138, label %163, label %139
139: ; preds = %128
%140 = load [30 x i32]*, [30 x i32]** %8
%141 = load i32, i32* %9
%142 = add nsw i32 %141, 1
%143 = sext i32 %142 to i64
%144 = getelementptr inbounds [30 x i32], [30 x i32]* %140, i64 %143
%145 = load i32, i32* %10
%146 = sub nsw i32 %145, 1
%147 = sext i32 %146 to i64
%148 = getelementptr inbounds [30 x i32], [30 x i32]* %144, i64 0, i64 %147
%149 = load i32, i32* %148
%150 = icmp ne i32 %149, 0
br i1 %150, label %163, label %151
151: ; preds = %139
%152 = load [30 x i32]*, [30 x i32]** %8
%153 = load i32, i32* %9
%154 = add nsw i32 %153, 2
%155 = sext i32 %154 to i64
%156 = getelementptr inbounds [30 x i32], [30 x i32]* %152, i64 %155
%157 = load i32, i32* %10
%158 = sub nsw i32 %157, 1
%159 = sext i32 %158 to i64
%160 = getelementptr inbounds [30 x i32], [30 x i32]* %156, i64 0, i64 %159
%161 = load i32, i32* %160
%162 = icmp ne i32 %161, 0
br i1 %162, label %163, label %164
163: ; preds = %151, %139, %128, %116
store i32 1, i32* %7
br label %1231
164: ; preds = %151
br label %165
165: ; preds = %164, %113
%166 = load i32, i32* %13
%167 = icmp eq i32 %166, 2
br i1 %167, label %168, label %217
168: ; preds = %165
%169 = load [30 x i32]*, [30 x i32]** %8
%170 = load i32, i32* %9
%171 = sub nsw i32 %170, 1
%172 = sext i32 %171 to i64
%173 = getelementptr inbounds [30 x i32], [30 x i32]* %169, i64 %172
%174 = load i32, i32* %10
%175 = add nsw i32 %174, 1
%176 = sext i32 %175 to i64
%177 = getelementptr inbounds [30 x i32], [30 x i32]* %173, i64 0, i64 %176
%178 = load i32, i32* %177
%179 = icmp ne i32 %178, 0
br i1 %179, label %215, label %180
180: ; preds = %168
%181 = load [30 x i32]*, [30 x i32]** %8
%182 = load i32, i32* %9
%183 = sext i32 %182 to i64
%184 = getelementptr inbounds [30 x i32], [30 x i32]* %181, i64 %183
%185 = load i32, i32* %10
%186 = add nsw i32 %185, 1
%187 = sext i32 %186 to i64
%188 = getelementptr inbounds [30 x i32], [30 x i32]* %184, i64 0, i64 %187
%189 = load i32, i32* %188
%190 = icmp ne i32 %189, 0
br i1 %190, label %215, label %191
191: ; preds = %180
%192 = load [30 x i32]*, [30 x i32]** %8
%193 = load i32, i32* %9
%194 = add nsw i32 %193, 1
%195 = sext i32 %194 to i64
%196 = getelementptr inbounds [30 x i32], [30 x i32]* %192, i64 %195
%197 = load i32, i32* %10
%198 = add nsw i32 %197, 1
%199 = sext i32 %198 to i64
%200 = getelementptr inbounds [30 x i32], [30 x i32]* %196, i64 0, i64 %199
%201 = load i32, i32* %200
%202 = icmp ne i32 %201, 0
br i1 %202, label %215, label %203
203: ; preds = %191
%204 = load [30 x i32]*, [30 x i32]** %8
%205 = load i32, i32* %9
%206 = add nsw i32 %205, 2
%207 = sext i32 %206 to i64
%208 = getelementptr inbounds [30 x i32], [30 x i32]* %204, i64 %207
%209 = load i32, i32* %10
%210 = add nsw i32 %209, 1
%211 = sext i32 %210 to i64
%212 = getelementptr inbounds [30 x i32], [30 x i32]* %208, i64 0, i64 %211
%213 = load i32, i32* %212
%214 = icmp ne i32 %213, 0
br i1 %214, label %215, label %216
215: ; preds = %203, %191, %180, %168
store i32 1, i32* %7
br label %1231
216: ; preds = %203
br label %217
217: ; preds = %216, %165
br label %218
218: ; preds = %217, %112
store i32 0, i32* %7
br label %1231
219: ; preds = %73
%220 = load i32, i32* %11
%221 = icmp eq i32 %220, 3
br i1 %221, label %222, label %352
222: ; preds = %219
%223 = load i32, i32* %12
%224 = srem i32 %223, 2
%225 = icmp eq i32 %224, 0
br i1 %225, label %226, label %294
226: ; preds = %222
%227 = load i32, i32* %13
%228 = icmp eq i32 %227, 1
br i1 %228, label %229, label %265
229: ; preds = %226
%230 = load [30 x i32]*, [30 x i32]** %8
%231 = load i32, i32* %9
%232 = sub nsw i32 %231, 1
%233 = sext i32 %232 to i64
%234 = getelementptr inbounds [30 x i32], [30 x i32]* %230, i64 %233
%235 = load i32, i32* %10
%236 = sub nsw i32 %235, 1
%237 = sext i32 %236 to i64
%238 = getelementptr inbounds [30 x i32], [30 x i32]* %234, i64 0, i64 %237
%239 = load i32, i32* %238
%240 = icmp ne i32 %239, 0
br i1 %240, label %263, label %241
241: ; preds = %229
%242 = load [30 x i32]*, [30 x i32]** %8
%243 = load i32, i32* %9
%244 = sext i32 %243 to i64
%245 = getelementptr inbounds [30 x i32], [30 x i32]* %242, i64 %244
%246 = load i32, i32* %10
%247 = sub nsw i32 %246, 1
%248 = sext i32 %247 to i64
%249 = getelementptr inbounds [30 x i32], [30 x i32]* %245, i64 0, i64 %248
%250 = load i32, i32* %249
%251 = icmp ne i32 %250, 0
br i1 %251, label %263, label %252
252: ; preds = %241
%253 = load [30 x i32]*, [30 x i32]** %8
%254 = load i32, i32* %9
%255 = add nsw i32 %254, 1
%256 = sext i32 %255 to i64
%257 = getelementptr inbounds [30 x i32], [30 x i32]* %253, i64 %256
%258 = load i32, i32* %10
%259 = sext i32 %258 to i64
%260 = getelementptr inbounds [30 x i32], [30 x i32]* %257, i64 0, i64 %259
%261 = load i32, i32* %260
%262 = icmp ne i32 %261, 0
br i1 %262, label %263, label %264
263: ; preds = %252, %241, %229
store i32 1, i32* %7
br label %1231
264: ; preds = %252
br label %265
265: ; preds = %264, %226
%266 = load i32, i32* %13
%267 = icmp eq i32 %266, 2
br i1 %267, label %268, label %293
268: ; preds = %265
%269 = load [30 x i32]*, [30 x i32]** %8
%270 = load i32, i32* %9
%271 = sext i32 %270 to i64
%272 = getelementptr inbounds [30 x i32], [30 x i32]* %269, i64 %271
%273 = load i32, i32* %10
%274 = add nsw i32 %273, 2
%275 = sext i32 %274 to i64
%276 = getelementptr inbounds [30 x i32], [30 x i32]* %272, i64 0, i64 %275
%277 = load i32, i32* %276
%278 = icmp ne i32 %277, 0
br i1 %278, label %291, label %279
279: ; preds = %268
%280 = load [30 x i32]*, [30 x i32]** %8
%281 = load i32, i32* %9
%282 = add nsw i32 %281, 1
%283 = sext i32 %282 to i64
%284 = getelementptr inbounds [30 x i32], [30 x i32]* %280, i64 %283
%285 = load i32, i32* %10
%286 = add nsw i32 %285, 2
%287 = sext i32 %286 to i64
%288 = getelementptr inbounds [30 x i32], [30 x i32]* %284, i64 0, i64 %287
%289 = load i32, i32* %288
%290 = icmp ne i32 %289, 0
br i1 %290, label %291, label %292
291: ; preds = %279, %268
store i32 1, i32* %7
br label %1231
292: ; preds = %279
br label %293
293: ; preds = %292, %265
br label %351
294: ; preds = %222
%295 = load i32, i32* %13
%296 = icmp eq i32 %295, 1
br i1 %296, label %297, label %322
297: ; preds = %294
%298 = load [30 x i32]*, [30 x i32]** %8
%299 = load i32, i32* %9
%300 = sext i32 %299 to i64
%301 = getelementptr inbounds [30 x i32], [30 x i32]* %298, i64 %300
%302 = load i32, i32* %10
%303 = sub nsw i32 %302, 1
%304 = sext i32 %303 to i64
%305 = getelementptr inbounds [30 x i32], [30 x i32]* %301, i64 0, i64 %304
%306 = load i32, i32* %305
%307 = icmp ne i32 %306, 0
br i1 %307, label %320, label %308
308: ; preds = %297
%309 = load [30 x i32]*, [30 x i32]** %8
%310 = load i32, i32* %9
%311 = add nsw i32 %310, 1
%312 = sext i32 %311 to i64
%313 = getelementptr inbounds [30 x i32], [30 x i32]* %309, i64 %312
%314 = load i32, i32* %10
%315 = sub nsw i32 %314, 2
%316 = sext i32 %315 to i64
%317 = getelementptr inbounds [30 x i32], [30 x i32]* %313, i64 0, i64 %316
%318 = load i32, i32* %317
%319 = icmp ne i32 %318, 0
br i1 %319, label %320, label %321
320: ; preds = %308, %297
store i32 1, i32* %7
br label %1231
321: ; preds = %308
br label %322
322: ; preds = %321, %294
%323 = load i32, i32* %13
%324 = icmp eq i32 %323, 2
br i1 %324, label %325, label %350
325: ; preds = %322
%326 = load [30 x i32]*, [30 x i32]** %8
%327 = load i32, i32* %9
%328 = sext i32 %327 to i64
%329 = getelementptr inbounds [30 x i32], [30 x i32]* %326, i64 %328
%330 = load i32, i32* %10
%331 = add nsw i32 %330, 2
%332 = sext i32 %331 to i64
%333 = getelementptr inbounds [30 x i32], [30 x i32]* %329, i64 0, i64 %332
%334 = load i32, i32* %333
%335 = icmp ne i32 %334, 0
br i1 %335, label %348, label %336
336: ; preds = %325
%337 = load [30 x i32]*, [30 x i32]** %8
%338 = load i32, i32* %9
%339 = add nsw i32 %338, 1
%340 = sext i32 %339 to i64
%341 = getelementptr inbounds [30 x i32], [30 x i32]* %337, i64 %340
%342 = load i32, i32* %10
%343 = add nsw i32 %342, 1
%344 = sext i32 %343 to i64
%345 = getelementptr inbounds [30 x i32], [30 x i32]* %341, i64 0, i64 %344
%346 = load i32, i32* %345
%347 = icmp ne i32 %346, 0
br i1 %347, label %348, label %349
348: ; preds = %336, %325
store i32 1, i32* %7
br label %1231
349: ; preds = %336
br label %350
350: ; preds = %349, %322
br label %351
351: ; preds = %350, %293
store i32 0, i32* %7
br label %1231
352: ; preds = %219
%353 = load i32, i32* %11
%354 = icmp eq i32 %353, 4
br i1 %354, label %355, label %474
355: ; preds = %352
%356 = load i32, i32* %12
%357 = srem i32 %356, 2
%358 = icmp eq i32 %357, 0
br i1 %358, label %359, label %416
359: ; preds = %355
%360 = load i32, i32* %13
%361 = icmp eq i32 %360, 1
br i1 %361, label %362, label %387
362: ; preds = %359
%363 = load [30 x i32]*, [30 x i32]** %8
%364 = load i32, i32* %9
%365 = sext i32 %364 to i64
%366 = getelementptr inbounds [30 x i32], [30 x i32]* %363, i64 %365
%367 = load i32, i32* %10
%368 = sub nsw i32 %367, 1
%369 = sext i32 %368 to i64
%370 = getelementptr inbounds [30 x i32], [30 x i32]* %366, i64 0, i64 %369
%371 = load i32, i32* %370
%372 = icmp ne i32 %371, 0
br i1 %372, label %385, label %373
373: ; preds = %362
%374 = load [30 x i32]*, [30 x i32]** %8
%375 = load i32, i32* %9
%376 = add nsw i32 %375, 1
%377 = sext i32 %376 to i64
%378 = getelementptr inbounds [30 x i32], [30 x i32]* %374, i64 %377
%379 = load i32, i32* %10
%380 = sub nsw i32 %379, 1
%381 = sext i32 %380 to i64
%382 = getelementptr inbounds [30 x i32], [30 x i32]* %378, i64 0, i64 %381
%383 = load i32, i32* %382
%384 = icmp ne i32 %383, 0
br i1 %384, label %385, label %386
385: ; preds = %373, %362
store i32 1, i32* %7
br label %1231
386: ; preds = %373
br label %387
387: ; preds = %386, %359
%388 = load i32, i32* %13
%389 = icmp eq i32 %388, 2
br i1 %389, label %390, label %415
390: ; preds = %387
%391 = load [30 x i32]*, [30 x i32]** %8
%392 = load i32, i32* %9
%393 = sext i32 %392 to i64
%394 = getelementptr inbounds [30 x i32], [30 x i32]* %391, i64 %393
%395 = load i32, i32* %10
%396 = add nsw i32 %395, 2
%397 = sext i32 %396 to i64
%398 = getelementptr inbounds [30 x i32], [30 x i32]* %394, i64 0, i64 %397
%399 = load i32, i32* %398
%400 = icmp ne i32 %399, 0
br i1 %400, label %413, label %401
401: ; preds = %390
%402 = load [30 x i32]*, [30 x i32]** %8
%403 = load i32, i32* %9
%404 = sub nsw i32 %403, 1
%405 = sext i32 %404 to i64
%406 = getelementptr inbounds [30 x i32], [30 x i32]* %402, i64 %405
%407 = load i32, i32* %10
%408 = add nsw i32 %407, 2
%409 = sext i32 %408 to i64
%410 = getelementptr inbounds [30 x i32], [30 x i32]* %406, i64 0, i64 %409
%411 = load i32, i32* %410
%412 = icmp ne i32 %411, 0
br i1 %412, label %413, label %414
413: ; preds = %401, %390
store i32 1, i32* %7
br label %1231
414: ; preds = %401
br label %415
415: ; preds = %414, %387
br label %473
416: ; preds = %355
%417 = load i32, i32* %13
%418 = icmp eq i32 %417, 1
br i1 %418, label %419, label %444
419: ; preds = %416
%420 = load [30 x i32]*, [30 x i32]** %8
%421 = load i32, i32* %9
%422 = sext i32 %421 to i64
%423 = getelementptr inbounds [30 x i32], [30 x i32]* %420, i64 %422
%424 = load i32, i32* %10
%425 = sub nsw i32 %424, 2
%426 = sext i32 %425 to i64
%427 = getelementptr inbounds [30 x i32], [30 x i32]* %423, i64 0, i64 %426
%428 = load i32, i32* %427
%429 = icmp ne i32 %428, 0
br i1 %429, label %442, label %430
430: ; preds = %419
%431 = load [30 x i32]*, [30 x i32]** %8
%432 = load i32, i32* %9
%433 = add nsw i32 %432, 1
%434 = sext i32 %433 to i64
%435 = getelementptr inbounds [30 x i32], [30 x i32]* %431, i64 %434
%436 = load i32, i32* %10
%437 = sub nsw i32 %436, 1
%438 = sext i32 %437 to i64
%439 = getelementptr inbounds [30 x i32], [30 x i32]* %435, i64 0, i64 %438
%440 = load i32, i32* %439
%441 = icmp ne i32 %440, 0
br i1 %441, label %442, label %443
442: ; preds = %430, %419
store i32 1, i32* %7
br label %1231
443: ; preds = %430
br label %444
444: ; preds = %443, %416
%445 = load i32, i32* %13
%446 = icmp eq i32 %445, 2
br i1 %446, label %447, label %472
447: ; preds = %444
%448 = load [30 x i32]*, [30 x i32]** %8
%449 = load i32, i32* %9
%450 = sext i32 %449 to i64
%451 = getelementptr inbounds [30 x i32], [30 x i32]* %448, i64 %450
%452 = load i32, i32* %10
%453 = add nsw i32 %452, 1
%454 = sext i32 %453 to i64
%455 = getelementptr inbounds [30 x i32], [30 x i32]* %451, i64 0, i64 %454
%456 = load i32, i32* %455
%457 = icmp ne i32 %456, 0
br i1 %457, label %470, label %458
458: ; preds = %447
%459 = load [30 x i32]*, [30 x i32]** %8
%460 = load i32, i32* %9
%461 = add nsw i32 %460, 1
%462 = sext i32 %461 to i64
%463 = getelementptr inbounds [30 x i32], [30 x i32]* %459, i64 %462
%464 = load i32, i32* %10
%465 = add nsw i32 %464, 2
%466 = sext i32 %465 to i64
%467 = getelementptr inbounds [30 x i32], [30 x i32]* %463, i64 0, i64 %466
%468 = load i32, i32* %467
%469 = icmp ne i32 %468, 0
br i1 %469, label %470, label %471
470: ; preds = %458, %447
store i32 1, i32* %7
br label %1231
471: ; preds = %458
br label %472
472: ; preds = %471, %444
br label %473
473: ; preds = %472, %415
store i32 0, i32* %7
br label %1231
474: ; preds = %352
%475 = load i32, i32* %11
%476 = icmp eq i32 %475, 5
br i1 %476, label %477, label %726
477: ; preds = %474
%478 = load i32, i32* %12
%479 = srem i32 %478, 2
%480 = icmp eq i32 %479, 0
br i1 %480, label %481, label %514
481: ; preds = %477
%482 = load i32, i32* %13
%483 = icmp eq i32 %482, 1
br i1 %483, label %484, label %497
484: ; preds = %481
%485 = load [30 x i32]*, [30 x i32]** %8
%486 = load i32, i32* %9
%487 = sext i32 %486 to i64
%488 = getelementptr inbounds [30 x i32], [30 x i32]* %485, i64 %487
%489 = load i32, i32* %10
%490 = sub nsw i32 %489, 2
%491 = sext i32 %490 to i64
%492 = getelementptr inbounds [30 x i32], [30 x i32]* %488, i64 0, i64 %491
%493 = load i32, i32* %492
%494 = icmp ne i32 %493, 0
br i1 %494, label %495, label %496
495: ; preds = %484
store i32 1, i32* %7
br label %1231
496: ; preds = %484
br label %497
497: ; preds = %496, %481
%498 = load i32, i32* %13
%499 = icmp eq i32 %498, 2
br i1 %499, label %500, label %513
500: ; preds = %497
%501 = load [30 x i32]*, [30 x i32]** %8
%502 = load i32, i32* %9
%503 = sext i32 %502 to i64
%504 = getelementptr inbounds [30 x i32], [30 x i32]* %501, i64 %503
%505 = load i32, i32* %10
%506 = add nsw i32 %505, 2
%507 = sext i32 %506 to i64
%508 = getelementptr inbounds [30 x i32], [30 x i32]* %504, i64 0, i64 %507
%509 = load i32, i32* %508
%510 = icmp ne i32 %509, 0
br i1 %510, label %511, label %512
511: ; preds = %500
store i32 1, i32* %7
br label %1231
512: ; preds = %500
br label %513
513: ; preds = %512, %497
br label %571
514: ; preds = %477
%515 = load i32, i32* %13
%516 = icmp eq i32 %515, 1
br i1 %516, label %517, label %542
517: ; preds = %514
%518 = load [30 x i32]*, [30 x i32]** %8
%519 = load i32, i32* %9
%520 = sext i32 %519 to i64
%521 = getelementptr inbounds [30 x i32], [30 x i32]* %518, i64 %520
%522 = load i32, i32* %10
%523 = sub nsw i32 %522, 1
%524 = sext i32 %523 to i64
%525 = getelementptr inbounds [30 x i32], [30 x i32]* %521, i64 0, i64 %524
%526 = load i32, i32* %525
%527 = icmp ne i32 %526, 0
br i1 %527, label %540, label %528
528: ; preds = %517
%529 = load [30 x i32]*, [30 x i32]** %8
%530 = load i32, i32* %9
%531 = add nsw i32 %530, 1
%532 = sext i32 %531 to i64
%533 = getelementptr inbounds [30 x i32], [30 x i32]* %529, i64 %532
%534 = load i32, i32* %10
%535 = sub nsw i32 %534, 1
%536 = sext i32 %535 to i64
%537 = getelementptr inbounds [30 x i32], [30 x i32]* %533, i64 0, i64 %536
%538 = load i32, i32* %537
%539 = icmp ne i32 %538, 0
br i1 %539, label %540, label %541
540: ; preds = %528, %517
store i32 1, i32* %7
br label %1231
541: ; preds = %528
br label %542
542: ; preds = %541, %514
%543 = load i32, i32* %13
%544 = icmp eq i32 %543, 2
br i1 %544, label %545, label %570
545: ; preds = %542
%546 = load [30 x i32]*, [30 x i32]** %8
%547 = load i32, i32* %9
%548 = sext i32 %547 to i64
%549 = getelementptr inbounds [30 x i32], [30 x i32]* %546, i64 %548
%550 = load i32, i32* %10
%551 = add nsw i32 %550, 1
%552 = sext i32 %551 to i64
%553 = getelementptr inbounds [30 x i32], [30 x i32]* %549, i64 0, i64 %552
%554 = load i32, i32* %553
%555 = icmp ne i32 %554, 0
br i1 %555, label %568, label %556
556: ; preds = %545
%557 = load [30 x i32]*, [30 x i32]** %8
%558 = load i32, i32* %9
%559 = sub nsw i32 %558, 1
%560 = sext i32 %559 to i64
%561 = getelementptr inbounds [30 x i32], [30 x i32]* %557, i64 %560
%562 = load i32, i32* %10
%563 = add nsw i32 %562, 1
%564 = sext i32 %563 to i64
%565 = getelementptr inbounds [30 x i32], [30 x i32]* %561, i64 0, i64 %564
%566 = load i32, i32* %565
%567 = icmp ne i32 %566, 0
br i1 %567, label %568, label %569
568: ; preds = %556, %545
store i32 1, i32* %7
br label %1231
569: ; preds = %556
br label %570
570: ; preds = %569, %542
br label %571
571: ; preds = %570, %513
%572 = load i32, i32* %12
%573 = srem i32 %572, 4
%574 = icmp eq i32 %573, 0
br i1 %574, label %575, label %609
575: ; preds = %571
%576 = load i32, i32* %13
%577 = icmp eq i32 %576, 1
br i1 %577, label %578, label %592
578: ; preds = %575
%579 = load [30 x i32]*, [30 x i32]** %8
%580 = load i32, i32* %9
%581 = add nsw i32 %580, 1
%582 = sext i32 %581 to i64
%583 = getelementptr inbounds [30 x i32], [30 x i32]* %579, i64 %582
%584 = load i32, i32* %10
%585 = sub nsw i32 %584, 2
%586 = sext i32 %585 to i64
%587 = getelementptr inbounds [30 x i32], [30 x i32]* %583, i64 0, i64 %586
%588 = load i32, i32* %587
%589 = icmp ne i32 %588, 0
br i1 %589, label %590, label %591
590: ; preds = %578
store i32 1, i32* %7
br label %1231
591: ; preds = %578
br label %592
592: ; preds = %591, %575
%593 = load i32, i32* %13
%594 = icmp eq i32 %593, 2
br i1 %594, label %595, label %608
595: ; preds = %592
%596 = load [30 x i32]*, [30 x i32]** %8
%597 = load i32, i32* %9
%598 = add nsw i32 %597, 1
%599 = sext i32 %598 to i64
%600 = getelementptr inbounds [30 x i32], [30 x i32]* %596, i64 %599
%601 = load i32, i32* %10
%602 = sext i32 %601 to i64
%603 = getelementptr inbounds [30 x i32], [30 x i32]* %600, i64 0, i64 %602
%604 = load i32, i32* %603
%605 = icmp ne i32 %604, 0
br i1 %605, label %606, label %607
606: ; preds = %595
store i32 1, i32* %7
br label %1231
607: ; preds = %595
br label %608
608: ; preds = %607, %592
br label %609
609: ; preds = %608, %571
%610 = load i32, i32* %12
%611 = srem i32 %610, 4
%612 = icmp eq i32 %611, 1
br i1 %612, label %613, label %648
613: ; preds = %609
%614 = load i32, i32* %13
%615 = icmp eq i32 %614, 1
br i1 %615, label %616, label %630
616: ; preds = %613
%617 = load [30 x i32]*, [30 x i32]** %8
%618 = load i32, i32* %9
%619 = sub nsw i32 %618, 1
%620 = sext i32 %619 to i64
%621 = getelementptr inbounds [30 x i32], [30 x i32]* %617, i64 %620
%622 = load i32, i32* %10
%623 = sub nsw i32 %622, 1
%624 = sext i32 %623 to i64
%625 = getelementptr inbounds [30 x i32], [30 x i32]* %621, i64 0, i64 %624
%626 = load i32, i32* %625
%627 = icmp ne i32 %626, 0
br i1 %627, label %628, label %629
628: ; preds = %616
store i32 1, i32* %7
br label %1231
629: ; preds = %616
br label %630
630: ; preds = %629, %613
%631 = load i32, i32* %13
%632 = icmp eq i32 %631, 2
br i1 %632, label %633, label %647
633: ; preds = %630
%634 = load [30 x i32]*, [30 x i32]** %8
%635 = load i32, i32* %9
%636 = add nsw i32 %635, 1
%637 = sext i32 %636 to i64
%638 = getelementptr inbounds [30 x i32], [30 x i32]* %634, i64 %637
%639 = load i32, i32* %10
%640 = add nsw i32 %639, 2
%641 = sext i32 %640 to i64
%642 = getelementptr inbounds [30 x i32], [30 x i32]* %638, i64 0, i64 %641
%643 = load i32, i32* %642
%644 = icmp ne i32 %643, 0
br i1 %644, label %645, label %646
645: ; preds = %633
store i32 1, i32* %7
br label %1231
646: ; preds = %633
br label %647
647: ; preds = %646, %630
br label %648
648: ; preds = %647, %609
%649 = load i32, i32* %12
%650 = srem i32 %649, 4
%651 = icmp eq i32 %650, 2
br i1 %651, label %652, label %686
652: ; preds = %648
%653 = load i32, i32* %13
%654 = icmp eq i32 %653, 1
br i1 %654, label %655, label %668
655: ; preds = %652
%656 = load [30 x i32]*, [30 x i32]** %8
%657 = load i32, i32* %9
%658 = sub nsw i32 %657, 1
%659 = sext i32 %658 to i64
%660 = getelementptr inbounds [30 x i32], [30 x i32]* %656, i64 %659
%661 = load i32, i32* %10
%662 = sext i32 %661 to i64
%663 = getelementptr inbounds [30 x i32], [30 x i32]* %660, i64 0, i64 %662
%664 = load i32, i32* %663
%665 = icmp ne i32 %664, 0
br i1 %665, label %666, label %667
666: ; preds = %655
store i32 1, i32* %7
br label %1231
667: ; preds = %655
br label %668
668: ; preds = %667, %652
%669 = load i32, i32* %13
%670 = icmp eq i32 %669, 2
br i1 %670, label %671, label %685
671: ; preds = %668
%672 = load [30 x i32]*, [30 x i32]** %8
%673 = load i32, i32* %9
%674 = sub nsw i32 %673, 1
%675 = sext i32 %674 to i64
%676 = getelementptr inbounds [30 x i32], [30 x i32]* %672, i64 %675
%677 = load i32, i32* %10
%678 = add nsw i32 %677, 2
%679 = sext i32 %678 to i64
%680 = getelementptr inbounds [30 x i32], [30 x i32]* %676, i64 0, i64 %679
%681 = load i32, i32* %680
%682 = icmp ne i32 %681, 0
br i1 %682, label %683, label %684
683: ; preds = %671
store i32 1, i32* %7
br label %1231
684: ; preds = %671
br label %685
685: ; preds = %684, %668
br label %686
686: ; preds = %685, %648
%687 = load i32, i32* %12
%688 = srem i32 %687, 4
%689 = icmp eq i32 %688, 3
br i1 %689, label %690, label %725
690: ; preds = %686
%691 = load i32, i32* %13
%692 = icmp eq i32 %691, 1
br i1 %692, label %693, label %707
693: ; preds = %690
%694 = load [30 x i32]*, [30 x i32]** %8
%695 = load i32, i32* %9
%696 = sub nsw i32 %695, 1
%697 = sext i32 %696 to i64
%698 = getelementptr inbounds [30 x i32], [30 x i32]* %694, i64 %697
%699 = load i32, i32* %10
%700 = sub nsw i32 %699, 2
%701 = sext i32 %700 to i64
%702 = getelementptr inbounds [30 x i32], [30 x i32]* %698, i64 0, i64 %701
%703 = load i32, i32* %702
%704 = icmp ne i32 %703, 0
br i1 %704, label %705, label %706
705: ; preds = %693
store i32 1, i32* %7
br label %1231
706: ; preds = %693
br label %707
707: ; preds = %706, %690
%708 = load i32, i32* %13
%709 = icmp eq i32 %708, 2
br i1 %709, label %710, label %724
710: ; preds = %707
%711 = load [30 x i32]*, [30 x i32]** %8
%712 = load i32, i32* %9
%713 = add nsw i32 %712, 1
%714 = sext i32 %713 to i64
%715 = getelementptr inbounds [30 x i32], [30 x i32]* %711, i64 %714
%716 = load i32, i32* %10
%717 = add nsw i32 %716, 1
%718 = sext i32 %717 to i64
%719 = getelementptr inbounds [30 x i32], [30 x i32]* %715, i64 0, i64 %718
%720 = load i32, i32* %719
%721 = icmp ne i32 %720, 0
br i1 %721, label %722, label %723
722: ; preds = %710
store i32 1, i32* %7
br label %1231
723: ; preds = %710
br label %724
724: ; preds = %723, %707
br label %725
725: ; preds = %724, %686
br label %726
726: ; preds = %725, %474
%727 = load i32, i32* %11
%728 = icmp eq i32 %727, 6
br i1 %728, label %729, label %978
729: ; preds = %726
%730 = load i32, i32* %12
%731 = srem i32 %730, 2
%732 = icmp eq i32 %731, 0
br i1 %732, label %733, label %766
733: ; preds = %729
%734 = load i32, i32* %13
%735 = icmp eq i32 %734, 1
br i1 %735, label %736, label %749
736: ; preds = %733
%737 = load [30 x i32]*, [30 x i32]** %8
%738 = load i32, i32* %9
%739 = sext i32 %738 to i64
%740 = getelementptr inbounds [30 x i32], [30 x i32]* %737, i64 %739
%741 = load i32, i32* %10
%742 = sub nsw i32 %741, 2
%743 = sext i32 %742 to i64
%744 = getelementptr inbounds [30 x i32], [30 x i32]* %740, i64 0, i64 %743
%745 = load i32, i32* %744
%746 = icmp ne i32 %745, 0
br i1 %746, label %747, label %748
747: ; preds = %736
store i32 1, i32* %7
br label %1231
748: ; preds = %736
br label %749
749: ; preds = %748, %733
%750 = load i32, i32* %13
%751 = icmp eq i32 %750, 2
br i1 %751, label %752, label %765
752: ; preds = %749
%753 = load [30 x i32]*, [30 x i32]** %8
%754 = load i32, i32* %9
%755 = sext i32 %754 to i64
%756 = getelementptr inbounds [30 x i32], [30 x i32]* %753, i64 %755
%757 = load i32, i32* %10
%758 = add nsw i32 %757, 2
%759 = sext i32 %758 to i64
%760 = getelementptr inbounds [30 x i32], [30 x i32]* %756, i64 0, i64 %759
%761 = load i32, i32* %760
%762 = icmp ne i32 %761, 0
br i1 %762, label %763, label %764
763: ; preds = %752
store i32 1, i32* %7
br label %1231
764: ; preds = %752
br label %765
765: ; preds = %764, %749
br label %823
766: ; preds = %729
%767 = load i32, i32* %13
%768 = icmp eq i32 %767, 1
br i1 %768, label %769, label %794
769: ; preds = %766
%770 = load [30 x i32]*, [30 x i32]** %8
%771 = load i32, i32* %9
%772 = sext i32 %771 to i64
%773 = getelementptr inbounds [30 x i32], [30 x i32]* %770, i64 %772
%774 = load i32, i32* %10
%775 = sub nsw i32 %774, 1
%776 = sext i32 %775 to i64
%777 = getelementptr inbounds [30 x i32], [30 x i32]* %773, i64 0, i64 %776
%778 = load i32, i32* %777
%779 = icmp ne i32 %778, 0
br i1 %779, label %792, label %780
780: ; preds = %769
%781 = load [30 x i32]*, [30 x i32]** %8
%782 = load i32, i32* %9
%783 = sub nsw i32 %782, 1
%784 = sext i32 %783 to i64
%785 = getelementptr inbounds [30 x i32], [30 x i32]* %781, i64 %784
%786 = load i32, i32* %10
%787 = sub nsw i32 %786, 1
%788 = sext i32 %787 to i64
%789 = getelementptr inbounds [30 x i32], [30 x i32]* %785, i64 0, i64 %788
%790 = load i32, i32* %789
%791 = icmp ne i32 %790, 0
br i1 %791, label %792, label %793
792: ; preds = %780, %769
store i32 1, i32* %7
br label %1231
793: ; preds = %780
br label %794
794: ; preds = %793, %766
%795 = load i32, i32* %13
%796 = icmp eq i32 %795, 2
br i1 %796, label %797, label %822
797: ; preds = %794
%798 = load [30 x i32]*, [30 x i32]** %8
%799 = load i32, i32* %9
%800 = sext i32 %799 to i64
%801 = getelementptr inbounds [30 x i32], [30 x i32]* %798, i64 %800
%802 = load i32, i32* %10
%803 = add nsw i32 %802, 1
%804 = sext i32 %803 to i64
%805 = getelementptr inbounds [30 x i32], [30 x i32]* %801, i64 0, i64 %804
%806 = load i32, i32* %805
%807 = icmp ne i32 %806, 0
br i1 %807, label %820, label %808
808: ; preds = %797
%809 = load [30 x i32]*, [30 x i32]** %8
%810 = load i32, i32* %9
%811 = add nsw i32 %810, 1
%812 = sext i32 %811 to i64
%813 = getelementptr inbounds [30 x i32], [30 x i32]* %809, i64 %812
%814 = load i32, i32* %10
%815 = add nsw i32 %814, 1
%816 = sext i32 %815 to i64
%817 = getelementptr inbounds [30 x i32], [30 x i32]* %813, i64 0, i64 %816
%818 = load i32, i32* %817
%819 = icmp ne i32 %818, 0
br i1 %819, label %820, label %821
820: ; preds = %808, %797
store i32 1, i32* %7
br label %1231
821: ; preds = %808
br label %822
822: ; preds = %821, %794
br label %823
823: ; preds = %822, %765
%824 = load i32, i32* %12
%825 = srem i32 %824, 4
%826 = icmp eq i32 %825, 0
br i1 %826, label %827, label %861
827: ; preds = %823
%828 = load i32, i32* %13
%829 = icmp eq i32 %828, 1
br i1 %829, label %830, label %843
830: ; preds = %827
%831 = load [30 x i32]*, [30 x i32]** %8
%832 = load i32, i32* %9
%833 = add nsw i32 %832, 1
%834 = sext i32 %833 to i64
%835 = getelementptr inbounds [30 x i32], [30 x i32]* %831, i64 %834
%836 = load i32, i32* %10
%837 = sext i32 %836 to i64
%838 = getelementptr inbounds [30 x i32], [30 x i32]* %835, i64 0, i64 %837
%839 = load i32, i32* %838
%840 = icmp ne i32 %839, 0
br i1 %840, label %841, label %842
841: ; preds = %830
store i32 1, i32* %7
br label %1231
842: ; preds = %830
br label %843
843: ; preds = %842, %827
%844 = load i32, i32* %13
%845 = icmp eq i32 %844, 2
br i1 %845, label %846, label %860
846: ; preds = %843
%847 = load [30 x i32]*, [30 x i32]** %8
%848 = load i32, i32* %9
%849 = add nsw i32 %848, 1
%850 = sext i32 %849 to i64
%851 = getelementptr inbounds [30 x i32], [30 x i32]* %847, i64 %850
%852 = load i32, i32* %10
%853 = add nsw i32 %852, 2
%854 = sext i32 %853 to i64
%855 = getelementptr inbounds [30 x i32], [30 x i32]* %851, i64 0, i64 %854
%856 = load i32, i32* %855
%857 = icmp ne i32 %856, 0
br i1 %857, label %858, label %859
858: ; preds = %846
store i32 1, i32* %7
br label %1231
859: ; preds = %846
br label %860
860: ; preds = %859, %843
br label %861
861: ; preds = %860, %823
%862 = load i32, i32* %12
%863 = srem i32 %862, 4
%864 = icmp eq i32 %863, 1
br i1 %864, label %865, label %900
865: ; preds = %861
%866 = load i32, i32* %13
%867 = icmp eq i32 %866, 1
br i1 %867, label %868, label %882
868: ; preds = %865
%869 = load [30 x i32]*, [30 x i32]** %8
%870 = load i32, i32* %9
%871 = sub nsw i32 %870, 1
%872 = sext i32 %871 to i64
%873 = getelementptr inbounds [30 x i32], [30 x i32]* %869, i64 %872
%874 = load i32, i32* %10
%875 = sub nsw i32 %874, 1
%876 = sext i32 %875 to i64
%877 = getelementptr inbounds [30 x i32], [30 x i32]* %873, i64 0, i64 %876
%878 = load i32, i32* %877
%879 = icmp ne i32 %878, 0
br i1 %879, label %880, label %881
880: ; preds = %868
store i32 1, i32* %7
br label %1231
881: ; preds = %868
br label %882
882: ; preds = %881, %865
%883 = load i32, i32* %13
%884 = icmp eq i32 %883, 2
br i1 %884, label %885, label %899
885: ; preds = %882
%886 = load [30 x i32]*, [30 x i32]** %8
%887 = load i32, i32* %9
%888 = sub nsw i32 %887, 1
%889 = sext i32 %888 to i64
%890 = getelementptr inbounds [30 x i32], [30 x i32]* %886, i64 %889
%891 = load i32, i32* %10
%892 = add nsw i32 %891, 2
%893 = sext i32 %892 to i64
%894 = getelementptr inbounds [30 x i32], [30 x i32]* %890, i64 0, i64 %893
%895 = load i32, i32* %894
%896 = icmp ne i32 %895, 0
br i1 %896, label %897, label %898
897: ; preds = %885
store i32 1, i32* %7
br label %1231
898: ; preds = %885
br label %899
899: ; preds = %898, %882
br label %900
900: ; preds = %899, %861
%901 = load i32, i32* %12
%902 = srem i32 %901, 4
%903 = icmp eq i32 %902, 2
br i1 %903, label %904, label %938
904: ; preds = %900
%905 = load i32, i32* %13
%906 = icmp eq i32 %905, 1
br i1 %906, label %907, label %921
907: ; preds = %904
%908 = load [30 x i32]*, [30 x i32]** %8
%909 = load i32, i32* %9
%910 = sub nsw i32 %909, 1
%911 = sext i32 %910 to i64
%912 = getelementptr inbounds [30 x i32], [30 x i32]* %908, i64 %911
%913 = load i32, i32* %10
%914 = sub nsw i32 %913, 2
%915 = sext i32 %914 to i64
%916 = getelementptr inbounds [30 x i32], [30 x i32]* %912, i64 0, i64 %915
%917 = load i32, i32* %916
%918 = icmp ne i32 %917, 0
br i1 %918, label %919, label %920
919: ; preds = %907
store i32 1, i32* %7
br label %1231
920: ; preds = %907
br label %921
921: ; preds = %920, %904
%922 = load i32, i32* %13
%923 = icmp eq i32 %922, 2
br i1 %923, label %924, label %937
924: ; preds = %921
%925 = load [30 x i32]*, [30 x i32]** %8
%926 = load i32, i32* %9
%927 = sub nsw i32 %926, 1
%928 = sext i32 %927 to i64
%929 = getelementptr inbounds [30 x i32], [30 x i32]* %925, i64 %928
%930 = load i32, i32* %10
%931 = sext i32 %930 to i64
%932 = getelementptr inbounds [30 x i32], [30 x i32]* %929, i64 0, i64 %931
%933 = load i32, i32* %932
%934 = icmp ne i32 %933, 0
br i1 %934, label %935, label %936
935: ; preds = %924
store i32 1, i32* %7
br label %1231
936: ; preds = %924
br label %937
937: ; preds = %936, %921
br label %938
938: ; preds = %937, %900
%939 = load i32, i32* %12
%940 = srem i32 %939, 4
%941 = icmp eq i32 %940, 3
br i1 %941, label %942, label %977
942: ; preds = %938
%943 = load i32, i32* %13
%944 = icmp eq i32 %943, 1
br i1 %944, label %945, label %959
945: ; preds = %942
%946 = load [30 x i32]*, [30 x i32]** %8
%947 = load i32, i32* %9
%948 = add nsw i32 %947, 1
%949 = sext i32 %948 to i64
%950 = getelementptr inbounds [30 x i32], [30 x i32]* %946, i64 %949
%951 = load i32, i32* %10
%952 = sub nsw i32 %951, 2
%953 = sext i32 %952 to i64
%954 = getelementptr inbounds [30 x i32], [30 x i32]* %950, i64 0, i64 %953
%955 = load i32, i32* %954
%956 = icmp ne i32 %955, 0
br i1 %956, label %957, label %958
957: ; preds = %945
store i32 1, i32* %7
br label %1231
958: ; preds = %945
br label %959
959: ; preds = %958, %942
%960 = load i32, i32* %13
%961 = icmp eq i32 %960, 2
br i1 %961, label %962, label %976
962: ; preds = %959
%963 = load [30 x i32]*, [30 x i32]** %8
%964 = load i32, i32* %9
%965 = sub nsw i32 %964, 1
%966 = sext i32 %965 to i64
%967 = getelementptr inbounds [30 x i32], [30 x i32]* %963, i64 %966
%968 = load i32, i32* %10
%969 = add nsw i32 %968, 1
%970 = sext i32 %969 to i64
%971 = getelementptr inbounds [30 x i32], [30 x i32]* %967, i64 0, i64 %970
%972 = load i32, i32* %971
%973 = icmp ne i32 %972, 0
br i1 %973, label %974, label %975
974: ; preds = %962
store i32 1, i32* %7
br label %1231
975: ; preds = %962
br label %976
976: ; preds = %975, %959
br label %977
977: ; preds = %976, %938
br label %978
978: ; preds = %977, %726
%979 = load i32, i32* %11
%980 = icmp eq i32 %979, 7
br i1 %980, label %981, label %1230
981: ; preds = %978
%982 = load i32, i32* %12
%983 = srem i32 %982, 2
%984 = icmp eq i32 %983, 0
br i1 %984, label %985, label %1018
985: ; preds = %981
%986 = load i32, i32* %13
%987 = icmp eq i32 %986, 1
br i1 %987, label %988, label %1001
988: ; preds = %985
%989 = load [30 x i32]*, [30 x i32]** %8
%990 = load i32, i32* %9
%991 = sext i32 %990 to i64
%992 = getelementptr inbounds [30 x i32], [30 x i32]* %989, i64 %991
%993 = load i32, i32* %10
%994 = sub nsw i32 %993, 2
%995 = sext i32 %994 to i64
%996 = getelementptr inbounds [30 x i32], [30 x i32]* %992, i64 0, i64 %995
%997 = load i32, i32* %996
%998 = icmp ne i32 %997, 0
br i1 %998, label %999, label %1000
999: ; preds = %988
store i32 1, i32* %7
br label %1231
1000: ; preds = %988
br label %1001
1001: ; preds = %1000, %985
%1002 = load i32, i32* %13
%1003 = icmp eq i32 %1002, 2
br i1 %1003, label %1004, label %1017
1004: ; preds = %1001
%1005 = load [30 x i32]*, [30 x i32]** %8
%1006 = load i32, i32* %9
%1007 = sext i32 %1006 to i64
%1008 = getelementptr inbounds [30 x i32], [30 x i32]* %1005, i64 %1007
%1009 = load i32, i32* %10
%1010 = add nsw i32 %1009, 2
%1011 = sext i32 %1010 to i64
%1012 = getelementptr inbounds [30 x i32], [30 x i32]* %1008, i64 0, i64 %1011
%1013 = load i32, i32* %1012
%1014 = icmp ne i32 %1013, 0
br i1 %1014, label %1015, label %1016
1015: ; preds = %1004
store i32 1, i32* %7
br label %1231
1016: ; preds = %1004
br label %1017
1017: ; preds = %1016, %1001
br label %1077
1018: ; preds = %981
%1019 = load i32, i32* %13
%1020 = icmp eq i32 %1019, 1
br i1 %1020, label %1021, label %1047
1021: ; preds = %1018
%1022 = load [30 x i32]*, [30 x i32]** %8
%1023 = load i32, i32* %9
%1024 = add nsw i32 %1023, 1
%1025 = sext i32 %1024 to i64
%1026 = getelementptr inbounds [30 x i32], [30 x i32]* %1022, i64 %1025
%1027 = load i32, i32* %10
%1028 = sub nsw i32 %1027, 1
%1029 = sext i32 %1028 to i64
%1030 = getelementptr inbounds [30 x i32], [30 x i32]* %1026, i64 0, i64 %1029
%1031 = load i32, i32* %1030
%1032 = icmp ne i32 %1031, 0
br i1 %1032, label %1045, label %1033
1033: ; preds = %1021
%1034 = load [30 x i32]*, [30 x i32]** %8
%1035 = load i32, i32* %9
%1036 = sub nsw i32 %1035, 1
%1037 = sext i32 %1036 to i64
%1038 = getelementptr inbounds [30 x i32], [30 x i32]* %1034, i64 %1037
%1039 = load i32, i32* %10
%1040 = sub nsw i32 %1039, 1
%1041 = sext i32 %1040 to i64
%1042 = getelementptr inbounds [30 x i32], [30 x i32]* %1038, i64 0, i64 %1041
%1043 = load i32, i32* %1042
%1044 = icmp ne i32 %1043, 0
br i1 %1044, label %1045, label %1046
1045: ; preds = %1033, %1021
store i32 1, i32* %7
br label %1231
1046: ; preds = %1033
br label %1047
1047: ; preds = %1046, %1018
%1048 = load i32, i32* %13
%1049 = icmp eq i32 %1048, 2
br i1 %1049, label %1050, label %1076
1050: ; preds = %1047
%1051 = load [30 x i32]*, [30 x i32]** %8
%1052 = load i32, i32* %9
%1053 = sub nsw i32 %1052, 1
%1054 = sext i32 %1053 to i64
%1055 = getelementptr inbounds [30 x i32], [30 x i32]* %1051, i64 %1054
%1056 = load i32, i32* %10
%1057 = add nsw i32 %1056, 1
%1058 = sext i32 %1057 to i64
%1059 = getelementptr inbounds [30 x i32], [30 x i32]* %1055, i64 0, i64 %1058
%1060 = load i32, i32* %1059
%1061 = icmp ne i32 %1060, 0
br i1 %1061, label %1074, label %1062
1062: ; preds = %1050
%1063 = load [30 x i32]*, [30 x i32]** %8
%1064 = load i32, i32* %9
%1065 = add nsw i32 %1064, 1
%1066 = sext i32 %1065 to i64
%1067 = getelementptr inbounds [30 x i32], [30 x i32]* %1063, i64 %1066
%1068 = load i32, i32* %10
%1069 = add nsw i32 %1068, 1
%1070 = sext i32 %1069 to i64
%1071 = getelementptr inbounds [30 x i32], [30 x i32]* %1067, i64 0, i64 %1070
%1072 = load i32, i32* %1071
%1073 = icmp ne i32 %1072, 0
br i1 %1073, label %1074, label %1075
1074: ; preds = %1062, %1050
store i32 1, i32* %7
br label %1231
1075: ; preds = %1062
br label %1076
1076: ; preds = %1075, %1047
br label %1077
1077: ; preds = %1076, %1017
%1078 = load i32, i32* %12
%1079 = srem i32 %1078, 4
%1080 = icmp eq i32 %1079, 0
br i1 %1080, label %1081, label %1116
1081: ; preds = %1077
%1082 = load i32, i32* %13
%1083 = icmp eq i32 %1082, 1
br i1 %1083, label %1084, label %1098
1084: ; preds = %1081
%1085 = load [30 x i32]*, [30 x i32]** %8
%1086 = load i32, i32* %9
%1087 = add nsw i32 %1086, 1
%1088 = sext i32 %1087 to i64
%1089 = getelementptr inbounds [30 x i32], [30 x i32]* %1085, i64 %1088
%1090 = load i32, i32* %10
%1091 = sub nsw i32 %1090, 1
%1092 = sext i32 %1091 to i64
%1093 = getelementptr inbounds [30 x i32], [30 x i32]* %1089, i64 0, i64 %1092
%1094 = load i32, i32* %1093
%1095 = icmp ne i32 %1094, 0
br i1 %1095, label %1096, label %1097
1096: ; preds = %1084
store i32 1, i32* %7
br label %1231
1097: ; preds = %1084
br label %1098
1098: ; preds = %1097, %1081
%1099 = load i32, i32* %13
%1100 = icmp eq i32 %1099, 2
br i1 %1100, label %1101, label %1115
1101: ; preds = %1098
%1102 = load [30 x i32]*, [30 x i32]** %8
%1103 = load i32, i32* %9
%1104 = add nsw i32 %1103, 1
%1105 = sext i32 %1104 to i64
%1106 = getelementptr inbounds [30 x i32], [30 x i32]* %1102, i64 %1105
%1107 = load i32, i32* %10
%1108 = add nsw i32 %1107, 1
%1109 = sext i32 %1108 to i64
%1110 = getelementptr inbounds [30 x i32], [30 x i32]* %1106, i64 0, i64 %1109
%1111 = load i32, i32* %1110
%1112 = icmp ne i32 %1111, 0
br i1 %1112, label %1113, label %1114
1113: ; preds = %1101
store i32 1, i32* %7
br label %1231
1114: ; preds = %1101
br label %1115
1115: ; preds = %1114, %1098
br label %1116
1116: ; preds = %1115, %1077
%1117 = load i32, i32* %12
%1118 = srem i32 %1117, 4
%1119 = icmp eq i32 %1118, 1
br i1 %1119, label %1120, label %1153
1120: ; preds = %1116
%1121 = load i32, i32* %13
%1122 = icmp eq i32 %1121, 1
br i1 %1122, label %1123, label %1136
1123: ; preds = %1120
%1124 = load [30 x i32]*, [30 x i32]** %8
%1125 = load i32, i32* %9
%1126 = sext i32 %1125 to i64
%1127 = getelementptr inbounds [30 x i32], [30 x i32]* %1124, i64 %1126
%1128 = load i32, i32* %10
%1129 = sub nsw i32 %1128, 1
%1130 = sext i32 %1129 to i64
%1131 = getelementptr inbounds [30 x i32], [30 x i32]* %1127, i64 0, i64 %1130
%1132 = load i32, i32* %1131
%1133 = icmp ne i32 %1132, 0
br i1 %1133, label %1134, label %1135
1134: ; preds = %1123
store i32 1, i32* %7
br label %1231
1135: ; preds = %1123
br label %1136
1136: ; preds = %1135, %1120
%1137 = load i32, i32* %13
%1138 = icmp eq i32 %1137, 2
br i1 %1138, label %1139, label %1152
1139: ; preds = %1136
%1140 = load [30 x i32]*, [30 x i32]** %8
%1141 = load i32, i32* %9
%1142 = sext i32 %1141 to i64
%1143 = getelementptr inbounds [30 x i32], [30 x i32]* %1140, i64 %1142
%1144 = load i32, i32* %10
%1145 = add nsw i32 %1144, 2
%1146 = sext i32 %1145 to i64
%1147 = getelementptr inbounds [30 x i32], [30 x i32]* %1143, i64 0, i64 %1146
%1148 = load i32, i32* %1147
%1149 = icmp ne i32 %1148, 0
br i1 %1149, label %1150, label %1151
1150: ; preds = %1139
store i32 1, i32* %7
br label %1231
1151: ; preds = %1139
br label %1152
1152: ; preds = %1151, %1136
br label %1153
1153: ; preds = %1152, %1116
%1154 = load i32, i32* %12
%1155 = srem i32 %1154, 4
%1156 = icmp eq i32 %1155, 2
br i1 %1156, label %1157, label %1192
1157: ; preds = %1153
%1158 = load i32, i32* %13
%1159 = icmp eq i32 %1158, 1
br i1 %1159, label %1160, label %1174
1160: ; preds = %1157
%1161 = load [30 x i32]*, [30 x i32]** %8
%1162 = load i32, i32* %9
%1163 = sub nsw i32 %1162, 1
%1164 = sext i32 %1163 to i64
%1165 = getelementptr inbounds [30 x i32], [30 x i32]* %1161, i64 %1164
%1166 = load i32, i32* %10
%1167 = sub nsw i32 %1166, 1
%1168 = sext i32 %1167 to i64
%1169 = getelementptr inbounds [30 x i32], [30 x i32]* %1165, i64 0, i64 %1168
%1170 = load i32, i32* %1169
%1171 = icmp ne i32 %1170, 0
br i1 %1171, label %1172, label %1173
1172: ; preds = %1160
store i32 1, i32* %7
br label %1231
1173: ; preds = %1160
br label %1174
1174: ; preds = %1173, %1157
%1175 = load i32, i32* %13
%1176 = icmp eq i32 %1175, 2
br i1 %1176, label %1177, label %1191
1177: ; preds = %1174
%1178 = load [30 x i32]*, [30 x i32]** %8
%1179 = load i32, i32* %9
%1180 = sub nsw i32 %1179, 1
%1181 = sext i32 %1180 to i64
%1182 = getelementptr inbounds [30 x i32], [30 x i32]* %1178, i64 %1181
%1183 = load i32, i32* %10
%1184 = add nsw i32 %1183, 1
%1185 = sext i32 %1184 to i64
%1186 = getelementptr inbounds [30 x i32], [30 x i32]* %1182, i64 0, i64 %1185
%1187 = load i32, i32* %1186
%1188 = icmp ne i32 %1187, 0
br i1 %1188, label %1189, label %1190
1189: ; preds = %1177
store i32 1, i32* %7
br label %1231
1190: ; preds = %1177
br label %1191
1191: ; preds = %1190, %1174
br label %1192
1192: ; preds = %1191, %1153
%1193 = load i32, i32* %12
%1194 = srem i32 %1193, 4
%1195 = icmp eq i32 %1194, 3
br i1 %1195, label %1196, label %1229
1196: ; preds = %1192
%1197 = load i32, i32* %13
%1198 = icmp eq i32 %1197, 1
br i1 %1198, label %1199, label %1212
1199: ; preds = %1196
%1200 = load [30 x i32]*, [30 x i32]** %8
%1201 = load i32, i32* %9
%1202 = sext i32 %1201 to i64
%1203 = getelementptr inbounds [30 x i32], [30 x i32]* %1200, i64 %1202
%1204 = load i32, i32* %10
%1205 = sub nsw i32 %1204, 2
%1206 = sext i32 %1205 to i64
%1207 = getelementptr inbounds [30 x i32], [30 x i32]* %1203, i64 0, i64 %1206
%1208 = load i32, i32* %1207
%1209 = icmp ne i32 %1208, 0
br i1 %1209, label %1210, label %1211
1210: ; preds = %1199
store i32 1, i32* %7
br label %1231
1211: ; preds = %1199
br label %1212
1212: ; preds = %1211, %1196
%1213 = load i32, i32* %13
%1214 = icmp eq i32 %1213, 2
br i1 %1214, label %1215, label %1228
1215: ; preds = %1212
%1216 = load [30 x i32]*, [30 x i32]** %8
%1217 = load i32, i32* %9
%1218 = sext i32 %1217 to i64
%1219 = getelementptr inbounds [30 x i32], [30 x i32]* %1216, i64 %1218
%1220 = load i32, i32* %10
%1221 = add nsw i32 %1220, 1
%1222 = sext i32 %1221 to i64
%1223 = getelementptr inbounds [30 x i32], [30 x i32]* %1219, i64 0, i64 %1222
%1224 = load i32, i32* %1223
%1225 = icmp ne i32 %1224, 0
br i1 %1225, label %1226, label %1227
1226: ; preds = %1215
store i32 1, i32* %7
br label %1231
1227: ; preds = %1215
br label %1228
1228: ; preds = %1227, %1212
br label %1229
1229: ; preds = %1228, %1192
br label %1230
1230: ; preds = %1229, %978
store i32 0, i32* %7
br label %1231
1231: ; preds = %1230, %1226, %1210, %1189, %1172, %1150, %1134, %1113, %1096, %1074, %1045, %1015, %999, %974, %957, %935, %919, %897, %880, %858, %841, %820, %792, %763, %747, %722, %705, %683, %666, %645, %628, %606, %590, %568, %540, %511, %495, %473, %470, %442, %413, %385, %351, %348, %320, %291, %263, %218, %215, %163, %110, %94, %72, %70, %42
%1232 = load i32, i32* %7
ret i32 %1232
}

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