#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ exit(int);
int /*<<< orphan*/ printf(char *);
int main() {
  int i, a[128];
#pragma acc data copy(a)
  {
#pragma acc parallel loop if (1)
    for (i = 0; i < 128; i++) {
      a[i] = 13;
    }
  }
  for (i = 0; i < 128; i++) {
    if (a[i] != 13) {
      exit(1);
    }
  }
#pragma acc data copy(a)
  {
#pragma acc kernels if (0)
    for (i = 0; i < 128; i++) {
      a[i] = i * 31;
    }
    for (i = 0; i < 128; i++) {
      if (a[i] != i * 31) {
        exit(2);
      }
    }
  }
  int flag = 2;
#pragma acc data copy(a)
  {
#pragma acc kernels if (flag)
    for (i = 0; i < 128; i++) {
      a[i] = i * 17;
    }
    for (i = 0; i < 128; i++) {
      if (a[i] != 13) {
        exit(3);
      }
    }
  }
  for (i = 0; i < 128; i++) {
    if (a[i] != i * 17) {
      exit(4);
    }
  }
  flag = 0;
#pragma acc data copy(a)
  {
#pragma acc kernels if (flag)
    for (i = 0; i < 128; i++) {
      a[i] = i * 19;
    }
    for (i = 0; i < 128; i++) {
      if (a[i] != i * 19) {
        exit(5);
      }
    }
  }
  for (i = 0; i < 128; i++) {
    if (a[i] != i * 17) {
      exit(6);
    }
  }
  printf("PASS\n");
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x220,%rsp
movl   $0x0,-0x4(%rbp)
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    1163 <main+0x43>
movslq -0x8(%rbp),%rax
movl   $0xd,-0x210(%rbp,%rax,4)
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1139 <main+0x19>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    11a6 <main+0x86>
movslq -0x8(%rbp),%rax
cmpl   $0xd,-0x210(%rbp,%rax,4)
0d
je     1193 <main+0x73>
mov    $0x1,%edi
call   1040 <exit@plt>
jmp    1198 <main+0x78>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    116a <main+0x4a>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    11d7 <main+0xb7>
imul   $0x1f,-0x8(%rbp),%ecx
movslq -0x8(%rbp),%rax
mov    %ecx,-0x210(%rbp,%rax,4)
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    11ad <main+0x8d>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    121f <main+0xff>
movslq -0x8(%rbp),%rax
mov    -0x210(%rbp,%rax,4),%eax
imul   $0x1f,-0x8(%rbp),%ecx
cmp    %ecx,%eax
je     120c <main+0xec>
mov    $0x2,%edi
call   1040 <exit@plt>
jmp    1211 <main+0xf1>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    11de <main+0xbe>
movl   $0x2,-0x214(%rbp)
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    125a <main+0x13a>
imul   $0x11,-0x8(%rbp),%ecx
movslq -0x8(%rbp),%rax
mov    %ecx,-0x210(%rbp,%rax,4)
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1230 <main+0x110>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    129d <main+0x17d>
movslq -0x8(%rbp),%rax
cmpl   $0xd,-0x210(%rbp,%rax,4)
0d
je     128a <main+0x16a>
mov    $0x3,%edi
call   1040 <exit@plt>
jmp    128f <main+0x16f>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1261 <main+0x141>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    12e5 <main+0x1c5>
movslq -0x8(%rbp),%rax
mov    -0x210(%rbp,%rax,4),%eax
imul   $0x11,-0x8(%rbp),%ecx
cmp    %ecx,%eax
je     12d2 <main+0x1b2>
mov    $0x4,%edi
call   1040 <exit@plt>
jmp    12d7 <main+0x1b7>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    12a4 <main+0x184>
movl   $0x0,-0x214(%rbp)
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    1320 <main+0x200>
imul   $0x13,-0x8(%rbp),%ecx
movslq -0x8(%rbp),%rax
mov    %ecx,-0x210(%rbp,%rax,4)
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    12f6 <main+0x1d6>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    1368 <main+0x248>
movslq -0x8(%rbp),%rax
mov    -0x210(%rbp,%rax,4),%eax
imul   $0x13,-0x8(%rbp),%ecx
cmp    %ecx,%eax
je     1355 <main+0x235>
mov    $0x5,%edi
call   1040 <exit@plt>
jmp    135a <main+0x23a>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1327 <main+0x207>
movl   $0x0,-0x8(%rbp)
cmpl   $0x80,-0x8(%rbp)
jge    13b0 <main+0x290>
movslq -0x8(%rbp),%rax
mov    -0x210(%rbp,%rax,4),%eax
imul   $0x11,-0x8(%rbp),%ecx
cmp    %ecx,%eax
je     139d <main+0x27d>
mov    $0x6,%edi
call   1040 <exit@plt>
jmp    13a2 <main+0x282>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    136f <main+0x24f>
lea    0xc49(%rip),%rdi
call   1030 <printf@plt>
xor    %eax,%eax
add    $0x220,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
sub    $0x208,%rsp
movaps 0xed2(%rip),%xmm0
movaps %xmm0,(%rsp)
movaps %xmm0,0x10(%rsp)
movaps %xmm0,0x20(%rsp)
movaps %xmm0,0x30(%rsp)
movaps %xmm0,0x40(%rsp)
movaps %xmm0,0x50(%rsp)
movaps %xmm0,0x60(%rsp)
movaps %xmm0,0x70(%rsp)
movaps %xmm0,0x80(%rsp)
movaps %xmm0,0x90(%rsp)
movaps %xmm0,0xa0(%rsp)
movaps %xmm0,0xb0(%rsp)
movaps %xmm0,0xc0(%rsp)
movaps %xmm0,0xd0(%rsp)
movaps %xmm0,0xe0(%rsp)
movaps %xmm0,0xf0(%rsp)
movaps %xmm0,0x100(%rsp)
movaps %xmm0,0x110(%rsp)
movaps %xmm0,0x120(%rsp)
movaps %xmm0,0x130(%rsp)
movaps %xmm0,0x140(%rsp)
movaps %xmm0,0x150(%rsp)
movaps %xmm0,0x160(%rsp)
movaps %xmm0,0x170(%rsp)
movaps %xmm0,0x180(%rsp)
movaps %xmm0,0x190(%rsp)
movaps %xmm0,0x1a0(%rsp)
movaps %xmm0,0x1b0(%rsp)
movaps %xmm0,0x1c0(%rsp)
movaps %xmm0,0x1d0(%rsp)
movaps %xmm0,0x1e0(%rsp)
movaps %xmm0,0x1f0(%rsp)
xor    %eax,%eax
nopw   0x0(%rax,%rax,1)
cmpl   $0xd,(%rsp,%rax,4)
jne    1972 <main+0x852>
cmpl   $0xd,0x4(%rsp,%rax,4)
jne    1972 <main+0x852>
cmpl   $0xd,0x8(%rsp,%rax,4)
jne    1972 <main+0x852>
cmpl   $0xd,0xc(%rsp,%rax,4)
jne    1972 <main+0x852>
add    $0x4,%rax
cmp    $0x80,%rax
jne    1220 <main+0x100>
movaps 0xdb2(%rip),%xmm0
movaps %xmm0,(%rsp)
movaps 0xdb7(%rip),%xmm0
movaps %xmm0,0x10(%rsp)
movaps 0xdbb(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
movaps 0xdbf(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movaps 0xdc3(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
movaps 0xdc7(%rip),%xmm0
movaps %xmm0,0x50(%rsp)
movaps 0xdcb(%rip),%xmm0
movaps %xmm0,0x60(%rsp)
movaps 0xdcf(%rip),%xmm0
movaps %xmm0,0x70(%rsp)
movaps 0xdd3(%rip),%xmm0
movaps %xmm0,0x80(%rsp)
movaps 0xdd4(%rip),%xmm0
movaps %xmm0,0x90(%rsp)
movaps 0xdd5(%rip),%xmm0
movaps %xmm0,0xa0(%rsp)
movaps 0xdd6(%rip),%xmm0
movaps %xmm0,0xb0(%rsp)
movaps 0xdd7(%rip),%xmm0
movaps %xmm0,0xc0(%rsp)
movaps 0xdd8(%rip),%xmm0
movaps %xmm0,0xd0(%rsp)
movaps 0xdd9(%rip),%xmm0
movaps %xmm0,0xe0(%rsp)
movaps 0xdda(%rip),%xmm0
movaps %xmm0,0xf0(%rsp)
movaps 0xddb(%rip),%xmm0
movaps %xmm0,0x100(%rsp)
movaps 0xddc(%rip),%xmm0
movaps %xmm0,0x110(%rsp)
movaps 0xddd(%rip),%xmm0
movaps %xmm0,0x120(%rsp)
movaps 0xdde(%rip),%xmm0
movaps %xmm0,0x130(%rsp)
movaps 0xddf(%rip),%xmm0
movaps %xmm0,0x140(%rsp)
movaps 0xde0(%rip),%xmm0
movaps %xmm0,0x150(%rsp)
movaps 0xde1(%rip),%xmm0
movaps %xmm0,0x160(%rsp)
movaps 0xde2(%rip),%xmm0
movaps %xmm0,0x170(%rsp)
movaps 0xde3(%rip),%xmm0
movaps %xmm0,0x180(%rsp)
movaps 0xde4(%rip),%xmm0
movaps %xmm0,0x190(%rsp)
movaps 0xde5(%rip),%xmm0
movaps %xmm0,0x1a0(%rsp)
movaps 0xde6(%rip),%xmm0
movaps %xmm0,0x1b0(%rsp)
movaps 0xde7(%rip),%xmm0
movaps %xmm0,0x1c0(%rsp)
movaps 0xde8(%rip),%xmm0
movaps %xmm0,0x1d0(%rsp)
movaps 0xde9(%rip),%xmm0
movaps %xmm0,0x1e0(%rsp)
movaps 0xdea(%rip),%xmm0
movaps %xmm0,0x1f0(%rsp)
lea    0xc(%rsp),%rax
mov    $0x3e,%ecx
nopl   0x0(%rax,%rax,1)
mov    -0xc(%rax),%edx
lea    -0x3e(%rcx),%rsi
cmp    %rdx,%rsi
jne    197c <main+0x85c>
mov    -0x8(%rax),%edx
lea    -0x1f(%rcx),%rsi
cmp    %rdx,%rsi
jne    197c <main+0x85c>
mov    -0x4(%rax),%edx
cmp    %rdx,%rcx
jne    197c <main+0x85c>
mov    (%rax),%edx
lea    0x1f(%rcx),%rsi
cmp    %rdx,%rsi
jne    197c <main+0x85c>
add    $0x10,%rax
add    $0x7c,%rcx
cmp    $0xfbe,%rcx
jne    1430 <main+0x310>
movaps 0xd8d(%rip),%xmm0
movaps %xmm0,(%rsp)
movaps 0xd92(%rip),%xmm0
movaps %xmm0,0x10(%rsp)
movaps 0xd96(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
movaps 0xd9a(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movaps 0xd9e(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
movaps 0xda2(%rip),%xmm0
movaps %xmm0,0x50(%rsp)
movaps 0xda6(%rip),%xmm0
movaps %xmm0,0x60(%rsp)
movaps 0xdaa(%rip),%xmm0
movaps %xmm0,0x70(%rsp)
movaps 0xdae(%rip),%xmm0
movaps %xmm0,0x80(%rsp)
movaps 0xdaf(%rip),%xmm0
movaps %xmm0,0x90(%rsp)
movaps 0xdb0(%rip),%xmm0
movaps %xmm0,0xa0(%rsp)
movaps 0xdb1(%rip),%xmm0
movaps %xmm0,0xb0(%rsp)
movaps 0xdb2(%rip),%xmm0
movaps %xmm0,0xc0(%rsp)
movaps 0xdb3(%rip),%xmm0
movaps %xmm0,0xd0(%rsp)
movaps 0xdb4(%rip),%xmm0
movaps %xmm0,0xe0(%rsp)
movaps 0xdb5(%rip),%xmm0
movaps %xmm0,0xf0(%rsp)
movaps 0xdb6(%rip),%xmm0
movaps %xmm0,0x100(%rsp)
movaps 0xdb7(%rip),%xmm0
movaps %xmm0,0x110(%rsp)
movaps 0xdb8(%rip),%xmm0
movaps %xmm0,0x120(%rsp)
movaps 0xdb9(%rip),%xmm0
movaps %xmm0,0x130(%rsp)
movaps 0xdba(%rip),%xmm0
movaps %xmm0,0x140(%rsp)
movaps 0xdbb(%rip),%xmm0
movaps %xmm0,0x150(%rsp)
movaps 0xdbc(%rip),%xmm0
movaps %xmm0,0x160(%rsp)
movaps 0xdbd(%rip),%xmm0
movaps %xmm0,0x170(%rsp)
movaps 0xdbe(%rip),%xmm0
movaps %xmm0,0x180(%rsp)
movaps 0xdbf(%rip),%xmm0
movaps %xmm0,0x190(%rsp)
movaps 0xdc0(%rip),%xmm0
movaps %xmm0,0x1a0(%rsp)
movaps 0xdc1(%rip),%xmm0
movaps %xmm0,0x1b0(%rsp)
movaps 0xdc2(%rip),%xmm0
movaps %xmm0,0x1c0(%rsp)
movaps 0xdc3(%rip),%xmm0
movaps %xmm0,0x1d0(%rsp)
movaps 0xdc4(%rip),%xmm0
movaps %xmm0,0x1e0(%rsp)
movaps 0xdc5(%rip),%xmm0
movaps %xmm0,0x1f0(%rsp)
xor    %eax,%eax
cs nopw 0x0(%rax,%rax,1)
nop
cmpl   $0xd,(%rsp,%rax,4)
jne    1986 <main+0x866>
cmpl   $0xd,0x4(%rsp,%rax,4)
jne    1986 <main+0x866>
cmpl   $0xd,0x8(%rsp,%rax,4)
jne    1986 <main+0x866>
cmpl   $0xd,0xc(%rsp,%rax,4)
jne    1986 <main+0x866>
add    $0x4,%rax
cmp    $0x80,%rax
jne    1650 <main+0x530>
lea    0xc(%rsp),%rax
mov    $0x22,%ecx
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
mov    -0xc(%rax),%edx
lea    -0x22(%rcx),%rsi
cmp    %rdx,%rsi
jne    1990 <main+0x870>
mov    -0x8(%rax),%edx
lea    -0x11(%rcx),%rsi
cmp    %rdx,%rsi
jne    1990 <main+0x870>
mov    -0x4(%rax),%edx
cmp    %rdx,%rcx
jne    1990 <main+0x870>
mov    (%rax),%edx
lea    0x11(%rcx),%rsi
cmp    %rdx,%rsi
jne    1990 <main+0x870>
add    $0x10,%rax
add    $0x44,%rcx
cmp    $0x8a2,%rcx
jne    16a0 <main+0x580>
movaps 0xd1d(%rip),%xmm0
movaps %xmm0,(%rsp)
movaps 0xd22(%rip),%xmm0
movaps %xmm0,0x10(%rsp)
movaps 0xd26(%rip),%xmm0
movaps %xmm0,0x20(%rsp)
movaps 0xd2a(%rip),%xmm0
movaps %xmm0,0x30(%rsp)
movaps 0xd2e(%rip),%xmm0
movaps %xmm0,0x40(%rsp)
movaps 0xd32(%rip),%xmm0
movaps %xmm0,0x50(%rsp)
movaps 0xd36(%rip),%xmm0
movaps %xmm0,0x60(%rsp)
movaps 0xd3a(%rip),%xmm0
movaps %xmm0,0x70(%rsp)
movaps 0xd3e(%rip),%xmm0
movaps %xmm0,0x80(%rsp)
movaps 0xd3f(%rip),%xmm0
movaps %xmm0,0x90(%rsp)
movaps 0xd40(%rip),%xmm0
movaps %xmm0,0xa0(%rsp)
movaps 0xd41(%rip),%xmm0
movaps %xmm0,0xb0(%rsp)
movaps 0xd42(%rip),%xmm0
movaps %xmm0,0xc0(%rsp)
movaps 0xd43(%rip),%xmm0
movaps %xmm0,0xd0(%rsp)
movaps 0xd44(%rip),%xmm0
movaps %xmm0,0xe0(%rsp)
movaps 0xd45(%rip),%xmm0
movaps %xmm0,0xf0(%rsp)
movaps 0xd46(%rip),%xmm0
movaps %xmm0,0x100(%rsp)
movaps 0xd47(%rip),%xmm0
movaps %xmm0,0x110(%rsp)
movaps 0xd48(%rip),%xmm0
movaps %xmm0,0x120(%rsp)
movaps 0xd49(%rip),%xmm0
movaps %xmm0,0x130(%rsp)
movaps 0xd4a(%rip),%xmm0
movaps %xmm0,0x140(%rsp)
movaps 0xd4b(%rip),%xmm0
movaps %xmm0,0x150(%rsp)
movaps 0xd4c(%rip),%xmm0
movaps %xmm0,0x160(%rsp)
movaps 0xd4d(%rip),%xmm0
movaps %xmm0,0x170(%rsp)
movaps 0xd4e(%rip),%xmm0
movaps %xmm0,0x180(%rsp)
movaps 0xd4f(%rip),%xmm0
movaps %xmm0,0x190(%rsp)
movaps 0xd50(%rip),%xmm0
movaps %xmm0,0x1a0(%rsp)
movaps 0xd51(%rip),%xmm0
movaps %xmm0,0x1b0(%rsp)
movaps 0xd52(%rip),%xmm0
movaps %xmm0,0x1c0(%rsp)
movaps 0xd53(%rip),%xmm0
movaps %xmm0,0x1d0(%rsp)
movaps 0xd54(%rip),%xmm0
movaps %xmm0,0x1e0(%rsp)
movaps 0xd55(%rip),%xmm0
movaps %xmm0,0x1f0(%rsp)
lea    0xc(%rsp),%rax
mov    $0x26,%ecx
nopl   (%rax)
mov    -0xc(%rax),%edx
lea    -0x26(%rcx),%rsi
cmp    %rdx,%rsi
jne    199a <main+0x87a>
mov    -0x8(%rax),%edx
lea    -0x13(%rcx),%rsi
cmp    %rdx,%rsi
jne    199a <main+0x87a>
mov    -0x4(%rax),%edx
cmp    %rdx,%rcx
jne    199a <main+0x87a>
mov    (%rax),%edx
lea    0x13(%rcx),%rsi
cmp    %rdx,%rsi
jne    199a <main+0x87a>
add    $0x10,%rax
add    $0x4c,%rcx
cmp    $0x9a6,%rcx
jne    18c0 <main+0x7a0>
lea    0xc(%rsp),%rax
mov    $0x22,%ecx
cs nopw 0x0(%rax,%rax,1)
mov    -0xc(%rax),%edx
lea    -0x22(%rcx),%rsi
cmp    %rdx,%rsi
jne    19a4 <main+0x884>
mov    -0x8(%rax),%edx
lea    -0x11(%rcx),%rsi
cmp    %rdx,%rsi
jne    19a4 <main+0x884>
mov    -0x4(%rax),%edx
cmp    %rdx,%rcx
jne    19a4 <main+0x884>
mov    (%rax),%edx
lea    0x11(%rcx),%rsi
cmp    %rdx,%rsi
jne    19a4 <main+0x884>
add    $0x10,%rax
add    $0x44,%rcx
cmp    $0x8a2,%rcx
jne    1920 <main+0x800>
lea    0xcad(%rip),%rdi
call   1030 <puts@plt>
xor    %eax,%eax
add    $0x208,%rsp
ret
mov    $0x1,%edi
call   1040 <exit@plt>
mov    $0x2,%edi
call   1040 <exit@plt>
mov    $0x3,%edi
call   1040 <exit@plt>
mov    $0x4,%edi
call   1040 <exit@plt>
mov    $0x5,%edi
call   1040 <exit@plt>
mov    $0x6,%edi
call   1040 <exit@plt>

LLVM IR (-O0):
@.str = [6 x i8] c"PASS\0A\00"
define i32 @main() {
%1 = alloca i32
%2 = alloca i32
%3 = alloca [128 x i32]
%4 = alloca i32
store i32 0, i32* %1
store i32 0, i32* %2
br label %5
5: ; preds = %12, %0
%6 = load i32, i32* %2
%7 = icmp slt i32 %6, 128
br i1 %7, label %8, label %15
8: ; preds = %5
%9 = load i32, i32* %2
%10 = sext i32 %9 to i64
%11 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %10
store i32 13, i32* %11
br label %12
12: ; preds = %8
%13 = load i32, i32* %2
%14 = add nsw i32 %13, 1
store i32 %14, i32* %2
br label %5
15: ; preds = %5
store i32 0, i32* %2
br label %16
16: ; preds = %28, %15
%17 = load i32, i32* %2
%18 = icmp slt i32 %17, 128
br i1 %18, label %19, label %31
19: ; preds = %16
%20 = load i32, i32* %2
%21 = sext i32 %20 to i64
%22 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %21
%23 = load i32, i32* %22
%24 = icmp ne i32 %23, 13
br i1 %24, label %25, label %27
25: ; preds = %19
%26 = call i32 @exit(i32 1)
unreachable
27: ; preds = %19
br label %28
28: ; preds = %27
%29 = load i32, i32* %2
%30 = add nsw i32 %29, 1
store i32 %30, i32* %2
br label %16
31: ; preds = %16
store i32 0, i32* %2
br label %32
32: ; preds = %41, %31
%33 = load i32, i32* %2
%34 = icmp slt i32 %33, 128
br i1 %34, label %35, label %44
35: ; preds = %32
%36 = load i32, i32* %2
%37 = mul nsw i32 %36, 31
%38 = load i32, i32* %2
%39 = sext i32 %38 to i64
%40 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %39
store i32 %37, i32* %40
br label %41
41: ; preds = %35
%42 = load i32, i32* %2
%43 = add nsw i32 %42, 1
store i32 %43, i32* %2
br label %32
44: ; preds = %32
store i32 0, i32* %2
br label %45
45: ; preds = %59, %44
%46 = load i32, i32* %2
%47 = icmp slt i32 %46, 128
br i1 %47, label %48, label %62
48: ; preds = %45
%49 = load i32, i32* %2
%50 = sext i32 %49 to i64
%51 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %50
%52 = load i32, i32* %51
%53 = load i32, i32* %2
%54 = mul nsw i32 %53, 31
%55 = icmp ne i32 %52, %54
br i1 %55, label %56, label %58
56: ; preds = %48
%57 = call i32 @exit(i32 2)
unreachable
58: ; preds = %48
br label %59
59: ; preds = %58
%60 = load i32, i32* %2
%61 = add nsw i32 %60, 1
store i32 %61, i32* %2
br label %45
62: ; preds = %45
store i32 2, i32* %4
store i32 0, i32* %2
br label %63
63: ; preds = %72, %62
%64 = load i32, i32* %2
%65 = icmp slt i32 %64, 128
br i1 %65, label %66, label %75
66: ; preds = %63
%67 = load i32, i32* %2
%68 = mul nsw i32 %67, 17
%69 = load i32, i32* %2
%70 = sext i32 %69 to i64
%71 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %70
store i32 %68, i32* %71
br label %72
72: ; preds = %66
%73 = load i32, i32* %2
%74 = add nsw i32 %73, 1
store i32 %74, i32* %2
br label %63
75: ; preds = %63
store i32 0, i32* %2
br label %76
76: ; preds = %88, %75
%77 = load i32, i32* %2
%78 = icmp slt i32 %77, 128
br i1 %78, label %79, label %91
79: ; preds = %76
%80 = load i32, i32* %2
%81 = sext i32 %80 to i64
%82 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %81
%83 = load i32, i32* %82
%84 = icmp ne i32 %83, 13
br i1 %84, label %85, label %87
85: ; preds = %79
%86 = call i32 @exit(i32 3)
unreachable
87: ; preds = %79
br label %88
88: ; preds = %87
%89 = load i32, i32* %2
%90 = add nsw i32 %89, 1
store i32 %90, i32* %2
br label %76
91: ; preds = %76
store i32 0, i32* %2
br label %92
92: ; preds = %106, %91
%93 = load i32, i32* %2
%94 = icmp slt i32 %93, 128
br i1 %94, label %95, label %109
95: ; preds = %92
%96 = load i32, i32* %2
%97 = sext i32 %96 to i64
%98 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %97
%99 = load i32, i32* %98
%100 = load i32, i32* %2
%101 = mul nsw i32 %100, 17
%102 = icmp ne i32 %99, %101
br i1 %102, label %103, label %105
103: ; preds = %95
%104 = call i32 @exit(i32 4)
unreachable
105: ; preds = %95
br label %106
106: ; preds = %105
%107 = load i32, i32* %2
%108 = add nsw i32 %107, 1
store i32 %108, i32* %2
br label %92
109: ; preds = %92
store i32 0, i32* %4
store i32 0, i32* %2
br label %110
110: ; preds = %119, %109
%111 = load i32, i32* %2
%112 = icmp slt i32 %111, 128
br i1 %112, label %113, label %122
113: ; preds = %110
%114 = load i32, i32* %2
%115 = mul nsw i32 %114, 19
%116 = load i32, i32* %2
%117 = sext i32 %116 to i64
%118 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %117
store i32 %115, i32* %118
br label %119
119: ; preds = %113
%120 = load i32, i32* %2
%121 = add nsw i32 %120, 1
store i32 %121, i32* %2
br label %110
122: ; preds = %110
store i32 0, i32* %2
br label %123
123: ; preds = %137, %122
%124 = load i32, i32* %2
%125 = icmp slt i32 %124, 128
br i1 %125, label %126, label %140
126: ; preds = %123
%127 = load i32, i32* %2
%128 = sext i32 %127 to i64
%129 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %128
%130 = load i32, i32* %129
%131 = load i32, i32* %2
%132 = mul nsw i32 %131, 19
%133 = icmp ne i32 %130, %132
br i1 %133, label %134, label %136
134: ; preds = %126
%135 = call i32 @exit(i32 5)
unreachable
136: ; preds = %126
br label %137
137: ; preds = %136
%138 = load i32, i32* %2
%139 = add nsw i32 %138, 1
store i32 %139, i32* %2
br label %123
140: ; preds = %123
store i32 0, i32* %2
br label %141
141: ; preds = %155, %140
%142 = load i32, i32* %2
%143 = icmp slt i32 %142, 128
br i1 %143, label %144, label %158
144: ; preds = %141
%145 = load i32, i32* %2
%146 = sext i32 %145 to i64
%147 = getelementptr inbounds [128 x i32], [128 x i32]* %3, i64 0, i64 %146
%148 = load i32, i32* %147
%149 = load i32, i32* %2
%150 = mul nsw i32 %149, 17
%151 = icmp ne i32 %148, %150
br i1 %151, label %152, label %154
152: ; preds = %144
%153 = call i32 @exit(i32 6)
unreachable
154: ; preds = %144
br label %155
155: ; preds = %154
%156 = load i32, i32* %2
%157 = add nsw i32 %156, 1
store i32 %157, i32* %2
br label %141
158: ; preds = %141
%159 = call i32 @printf(i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i64 0, i64 0))
ret i32 0
}

LLVM IR (-O2):
@str = [5 x i8] c"PASS\00"
define i32 @main() {
%1 = alloca [128 x i32]
%2 = bitcast [128 x i32]* %1 to i8*
%3 = bitcast [128 x i32]* %1 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %3
%4 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 4
%5 = bitcast i32* %4 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %5
%6 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 8
%7 = bitcast i32* %6 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %7
%8 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 12
%9 = bitcast i32* %8 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %9
%10 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 16
%11 = bitcast i32* %10 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %11
%12 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 20
%13 = bitcast i32* %12 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %13
%14 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 24
%15 = bitcast i32* %14 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %15
%16 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 28
%17 = bitcast i32* %16 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %17
%18 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 32
%19 = bitcast i32* %18 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %19
%20 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 36
%21 = bitcast i32* %20 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %21
%22 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 40
%23 = bitcast i32* %22 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %23
%24 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 44
%25 = bitcast i32* %24 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %25
%26 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 48
%27 = bitcast i32* %26 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %27
%28 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 52
%29 = bitcast i32* %28 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %29
%30 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 56
%31 = bitcast i32* %30 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %31
%32 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 60
%33 = bitcast i32* %32 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %33
%34 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 64
%35 = bitcast i32* %34 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %35
%36 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 68
%37 = bitcast i32* %36 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %37
%38 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 72
%39 = bitcast i32* %38 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %39
%40 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 76
%41 = bitcast i32* %40 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %41
%42 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 80
%43 = bitcast i32* %42 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %43
%44 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 84
%45 = bitcast i32* %44 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %45
%46 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 88
%47 = bitcast i32* %46 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %47
%48 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 92
%49 = bitcast i32* %48 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %49
%50 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 96
%51 = bitcast i32* %50 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %51
%52 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 100
%53 = bitcast i32* %52 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %53
%54 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 104
%55 = bitcast i32* %54 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %55
%56 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 108
%57 = bitcast i32* %56 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %57
%58 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 112
%59 = bitcast i32* %58 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %59
%60 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 116
%61 = bitcast i32* %60 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %61
%62 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 120
%63 = bitcast i32* %62 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %63
%64 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 124
%65 = bitcast i32* %64 to <4 x i32>*
store <4 x i32> <i32 13, i32 13, i32 13, i32 13>, <4 x i32>* %65
br label %148
66: ; preds = %148
%67 = or i64 %149, 1
%68 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %67
%69 = load i32, i32* %68
%70 = icmp eq i32 %69, 13
br i1 %70, label %71, label %153
71: ; preds = %66
%72 = or i64 %149, 2
%73 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %72
%74 = load i32, i32* %73
%75 = icmp eq i32 %74, 13
br i1 %75, label %76, label %153
76: ; preds = %71
%77 = or i64 %149, 3
%78 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %77
%79 = load i32, i32* %78
%80 = icmp eq i32 %79, 13
br i1 %80, label %81, label %153
81: ; preds = %76
%82 = add nuw nsw i64 %149, 4
%83 = icmp eq i64 %82, 128
br i1 %83, label %84, label %148
84: ; preds = %81
%85 = bitcast [128 x i32]* %1 to <4 x i32>*
store <4 x i32> <i32 0, i32 31, i32 62, i32 93>, <4 x i32>* %85
%86 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 4
%87 = bitcast i32* %86 to <4 x i32>*
store <4 x i32> <i32 124, i32 155, i32 186, i32 217>, <4 x i32>* %87
%88 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 8
%89 = bitcast i32* %88 to <4 x i32>*
store <4 x i32> <i32 248, i32 279, i32 310, i32 341>, <4 x i32>* %89
%90 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 12
%91 = bitcast i32* %90 to <4 x i32>*
store <4 x i32> <i32 372, i32 403, i32 434, i32 465>, <4 x i32>* %91
%92 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 16
%93 = bitcast i32* %92 to <4 x i32>*
store <4 x i32> <i32 496, i32 527, i32 558, i32 589>, <4 x i32>* %93
%94 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 20
%95 = bitcast i32* %94 to <4 x i32>*
store <4 x i32> <i32 620, i32 651, i32 682, i32 713>, <4 x i32>* %95
%96 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 24
%97 = bitcast i32* %96 to <4 x i32>*
store <4 x i32> <i32 744, i32 775, i32 806, i32 837>, <4 x i32>* %97
%98 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 28
%99 = bitcast i32* %98 to <4 x i32>*
store <4 x i32> <i32 868, i32 899, i32 930, i32 961>, <4 x i32>* %99
%100 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 32
%101 = bitcast i32* %100 to <4 x i32>*
store <4 x i32> <i32 992, i32 1023, i32 1054, i32 1085>, <4 x i32>* %101
%102 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 36
%103 = bitcast i32* %102 to <4 x i32>*
store <4 x i32> <i32 1116, i32 1147, i32 1178, i32 1209>, <4 x i32>* %103
%104 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 40
%105 = bitcast i32* %104 to <4 x i32>*
store <4 x i32> <i32 1240, i32 1271, i32 1302, i32 1333>, <4 x i32>* %105
%106 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 44
%107 = bitcast i32* %106 to <4 x i32>*
store <4 x i32> <i32 1364, i32 1395, i32 1426, i32 1457>, <4 x i32>* %107
%108 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 48
%109 = bitcast i32* %108 to <4 x i32>*
store <4 x i32> <i32 1488, i32 1519, i32 1550, i32 1581>, <4 x i32>* %109
%110 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 52
%111 = bitcast i32* %110 to <4 x i32>*
store <4 x i32> <i32 1612, i32 1643, i32 1674, i32 1705>, <4 x i32>* %111
%112 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 56
%113 = bitcast i32* %112 to <4 x i32>*
store <4 x i32> <i32 1736, i32 1767, i32 1798, i32 1829>, <4 x i32>* %113
%114 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 60
%115 = bitcast i32* %114 to <4 x i32>*
store <4 x i32> <i32 1860, i32 1891, i32 1922, i32 1953>, <4 x i32>* %115
%116 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 64
%117 = bitcast i32* %116 to <4 x i32>*
store <4 x i32> <i32 1984, i32 2015, i32 2046, i32 2077>, <4 x i32>* %117
%118 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 68
%119 = bitcast i32* %118 to <4 x i32>*
store <4 x i32> <i32 2108, i32 2139, i32 2170, i32 2201>, <4 x i32>* %119
%120 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 72
%121 = bitcast i32* %120 to <4 x i32>*
store <4 x i32> <i32 2232, i32 2263, i32 2294, i32 2325>, <4 x i32>* %121
%122 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 76
%123 = bitcast i32* %122 to <4 x i32>*
store <4 x i32> <i32 2356, i32 2387, i32 2418, i32 2449>, <4 x i32>* %123
%124 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 80
%125 = bitcast i32* %124 to <4 x i32>*
store <4 x i32> <i32 2480, i32 2511, i32 2542, i32 2573>, <4 x i32>* %125
%126 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 84
%127 = bitcast i32* %126 to <4 x i32>*
store <4 x i32> <i32 2604, i32 2635, i32 2666, i32 2697>, <4 x i32>* %127
%128 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 88
%129 = bitcast i32* %128 to <4 x i32>*
store <4 x i32> <i32 2728, i32 2759, i32 2790, i32 2821>, <4 x i32>* %129
%130 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 92
%131 = bitcast i32* %130 to <4 x i32>*
store <4 x i32> <i32 2852, i32 2883, i32 2914, i32 2945>, <4 x i32>* %131
%132 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 96
%133 = bitcast i32* %132 to <4 x i32>*
store <4 x i32> <i32 2976, i32 3007, i32 3038, i32 3069>, <4 x i32>* %133
%134 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 100
%135 = bitcast i32* %134 to <4 x i32>*
store <4 x i32> <i32 3100, i32 3131, i32 3162, i32 3193>, <4 x i32>* %135
%136 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 104
%137 = bitcast i32* %136 to <4 x i32>*
store <4 x i32> <i32 3224, i32 3255, i32 3286, i32 3317>, <4 x i32>* %137
%138 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 108
%139 = bitcast i32* %138 to <4 x i32>*
store <4 x i32> <i32 3348, i32 3379, i32 3410, i32 3441>, <4 x i32>* %139
%140 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 112
%141 = bitcast i32* %140 to <4 x i32>*
store <4 x i32> <i32 3472, i32 3503, i32 3534, i32 3565>, <4 x i32>* %141
%142 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 116
%143 = bitcast i32* %142 to <4 x i32>*
store <4 x i32> <i32 3596, i32 3627, i32 3658, i32 3689>, <4 x i32>* %143
%144 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 120
%145 = bitcast i32* %144 to <4 x i32>*
store <4 x i32> <i32 3720, i32 3751, i32 3782, i32 3813>, <4 x i32>* %145
%146 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 124
%147 = bitcast i32* %146 to <4 x i32>*
store <4 x i32> <i32 3844, i32 3875, i32 3906, i32 3937>, <4 x i32>* %147
br label %243
148: ; preds = %81, %0
%149 = phi i64 [ 0, %0 ], [ %82, %81 ]
%150 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %149
%151 = load i32, i32* %150
%152 = icmp eq i32 %151, 13
br i1 %152, label %66, label %153
153: ; preds = %76, %71, %66, %148
%154 = tail call i32 @exit(i32 1)
unreachable
155: ; preds = %243
%156 = or i64 %244, 1
%157 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %156
%158 = load i32, i32* %157
%159 = mul nuw nsw i64 %156, 31
%160 = zext i32 %158 to i64
%161 = icmp eq i64 %159, %160
br i1 %161, label %162, label %250
162: ; preds = %155
%163 = or i64 %244, 2
%164 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %163
%165 = load i32, i32* %164
%166 = mul nuw nsw i64 %163, 31
%167 = zext i32 %165 to i64
%168 = icmp eq i64 %166, %167
br i1 %168, label %169, label %250
169: ; preds = %162
%170 = or i64 %244, 3
%171 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %170
%172 = load i32, i32* %171
%173 = mul nuw nsw i64 %170, 31
%174 = zext i32 %172 to i64
%175 = icmp eq i64 %173, %174
br i1 %175, label %176, label %250
176: ; preds = %169
%177 = add nuw nsw i64 %244, 4
%178 = icmp eq i64 %177, 128
br i1 %178, label %179, label %243
179: ; preds = %176
%180 = bitcast [128 x i32]* %1 to <4 x i32>*
store <4 x i32> <i32 0, i32 17, i32 34, i32 51>, <4 x i32>* %180
%181 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 4
%182 = bitcast i32* %181 to <4 x i32>*
store <4 x i32> <i32 68, i32 85, i32 102, i32 119>, <4 x i32>* %182
%183 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 8
%184 = bitcast i32* %183 to <4 x i32>*
store <4 x i32> <i32 136, i32 153, i32 170, i32 187>, <4 x i32>* %184
%185 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 12
%186 = bitcast i32* %185 to <4 x i32>*
store <4 x i32> <i32 204, i32 221, i32 238, i32 255>, <4 x i32>* %186
%187 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 16
%188 = bitcast i32* %187 to <4 x i32>*
store <4 x i32> <i32 272, i32 289, i32 306, i32 323>, <4 x i32>* %188
%189 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 20
%190 = bitcast i32* %189 to <4 x i32>*
store <4 x i32> <i32 340, i32 357, i32 374, i32 391>, <4 x i32>* %190
%191 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 24
%192 = bitcast i32* %191 to <4 x i32>*
store <4 x i32> <i32 408, i32 425, i32 442, i32 459>, <4 x i32>* %192
%193 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 28
%194 = bitcast i32* %193 to <4 x i32>*
store <4 x i32> <i32 476, i32 493, i32 510, i32 527>, <4 x i32>* %194
%195 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 32
%196 = bitcast i32* %195 to <4 x i32>*
store <4 x i32> <i32 544, i32 561, i32 578, i32 595>, <4 x i32>* %196
%197 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 36
%198 = bitcast i32* %197 to <4 x i32>*
store <4 x i32> <i32 612, i32 629, i32 646, i32 663>, <4 x i32>* %198
%199 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 40
%200 = bitcast i32* %199 to <4 x i32>*
store <4 x i32> <i32 680, i32 697, i32 714, i32 731>, <4 x i32>* %200
%201 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 44
%202 = bitcast i32* %201 to <4 x i32>*
store <4 x i32> <i32 748, i32 765, i32 782, i32 799>, <4 x i32>* %202
%203 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 48
%204 = bitcast i32* %203 to <4 x i32>*
store <4 x i32> <i32 816, i32 833, i32 850, i32 867>, <4 x i32>* %204
%205 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 52
%206 = bitcast i32* %205 to <4 x i32>*
store <4 x i32> <i32 884, i32 901, i32 918, i32 935>, <4 x i32>* %206
%207 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 56
%208 = bitcast i32* %207 to <4 x i32>*
store <4 x i32> <i32 952, i32 969, i32 986, i32 1003>, <4 x i32>* %208
%209 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 60
%210 = bitcast i32* %209 to <4 x i32>*
store <4 x i32> <i32 1020, i32 1037, i32 1054, i32 1071>, <4 x i32>* %210
%211 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 64
%212 = bitcast i32* %211 to <4 x i32>*
store <4 x i32> <i32 1088, i32 1105, i32 1122, i32 1139>, <4 x i32>* %212
%213 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 68
%214 = bitcast i32* %213 to <4 x i32>*
store <4 x i32> <i32 1156, i32 1173, i32 1190, i32 1207>, <4 x i32>* %214
%215 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 72
%216 = bitcast i32* %215 to <4 x i32>*
store <4 x i32> <i32 1224, i32 1241, i32 1258, i32 1275>, <4 x i32>* %216
%217 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 76
%218 = bitcast i32* %217 to <4 x i32>*
store <4 x i32> <i32 1292, i32 1309, i32 1326, i32 1343>, <4 x i32>* %218
%219 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 80
%220 = bitcast i32* %219 to <4 x i32>*
store <4 x i32> <i32 1360, i32 1377, i32 1394, i32 1411>, <4 x i32>* %220
%221 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 84
%222 = bitcast i32* %221 to <4 x i32>*
store <4 x i32> <i32 1428, i32 1445, i32 1462, i32 1479>, <4 x i32>* %222
%223 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 88
%224 = bitcast i32* %223 to <4 x i32>*
store <4 x i32> <i32 1496, i32 1513, i32 1530, i32 1547>, <4 x i32>* %224
%225 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 92
%226 = bitcast i32* %225 to <4 x i32>*
store <4 x i32> <i32 1564, i32 1581, i32 1598, i32 1615>, <4 x i32>* %226
%227 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 96
%228 = bitcast i32* %227 to <4 x i32>*
store <4 x i32> <i32 1632, i32 1649, i32 1666, i32 1683>, <4 x i32>* %228
%229 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 100
%230 = bitcast i32* %229 to <4 x i32>*
store <4 x i32> <i32 1700, i32 1717, i32 1734, i32 1751>, <4 x i32>* %230
%231 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 104
%232 = bitcast i32* %231 to <4 x i32>*
store <4 x i32> <i32 1768, i32 1785, i32 1802, i32 1819>, <4 x i32>* %232
%233 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 108
%234 = bitcast i32* %233 to <4 x i32>*
store <4 x i32> <i32 1836, i32 1853, i32 1870, i32 1887>, <4 x i32>* %234
%235 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 112
%236 = bitcast i32* %235 to <4 x i32>*
store <4 x i32> <i32 1904, i32 1921, i32 1938, i32 1955>, <4 x i32>* %236
%237 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 116
%238 = bitcast i32* %237 to <4 x i32>*
store <4 x i32> <i32 1972, i32 1989, i32 2006, i32 2023>, <4 x i32>* %238
%239 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 120
%240 = bitcast i32* %239 to <4 x i32>*
store <4 x i32> <i32 2040, i32 2057, i32 2074, i32 2091>, <4 x i32>* %240
%241 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 124
%242 = bitcast i32* %241 to <4 x i32>*
store <4 x i32> <i32 2108, i32 2125, i32 2142, i32 2159>, <4 x i32>* %242
br label %270
243: ; preds = %176, %84
%244 = phi i64 [ 0, %84 ], [ %177, %176 ]
%245 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %244
%246 = load i32, i32* %245
%247 = mul nuw nsw i64 %244, 31
%248 = zext i32 %246 to i64
%249 = icmp eq i64 %247, %248
br i1 %249, label %155, label %250
250: ; preds = %169, %162, %155, %243
%251 = tail call i32 @exit(i32 2)
unreachable
252: ; preds = %270
%253 = or i64 %271, 1
%254 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %253
%255 = load i32, i32* %254
%256 = icmp eq i32 %255, 13
br i1 %256, label %257, label %275
257: ; preds = %252
%258 = or i64 %271, 2
%259 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %258
%260 = load i32, i32* %259
%261 = icmp eq i32 %260, 13
br i1 %261, label %262, label %275
262: ; preds = %257
%263 = or i64 %271, 3
%264 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %263
%265 = load i32, i32* %264
%266 = icmp eq i32 %265, 13
br i1 %266, label %267, label %275
267: ; preds = %262
%268 = add nuw nsw i64 %271, 4
%269 = icmp eq i64 %268, 128
br i1 %269, label %365, label %270
270: ; preds = %267, %179
%271 = phi i64 [ 0, %179 ], [ %268, %267 ]
%272 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %271
%273 = load i32, i32* %272
%274 = icmp eq i32 %273, 13
br i1 %274, label %252, label %275
275: ; preds = %262, %257, %252, %270
%276 = tail call i32 @exit(i32 3)
unreachable
277: ; preds = %365
%278 = or i64 %366, 1
%279 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %278
%280 = load i32, i32* %279
%281 = mul nuw nsw i64 %278, 17
%282 = zext i32 %280 to i64
%283 = icmp eq i64 %281, %282
br i1 %283, label %284, label %372
284: ; preds = %277
%285 = or i64 %366, 2
%286 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %285
%287 = load i32, i32* %286
%288 = mul nuw nsw i64 %285, 17
%289 = zext i32 %287 to i64
%290 = icmp eq i64 %288, %289
br i1 %290, label %291, label %372
291: ; preds = %284
%292 = or i64 %366, 3
%293 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %292
%294 = load i32, i32* %293
%295 = mul nuw nsw i64 %292, 17
%296 = zext i32 %294 to i64
%297 = icmp eq i64 %295, %296
br i1 %297, label %298, label %372
298: ; preds = %291
%299 = add nuw nsw i64 %366, 4
%300 = icmp eq i64 %299, 128
br i1 %300, label %301, label %365
301: ; preds = %298
%302 = bitcast [128 x i32]* %1 to <4 x i32>*
store <4 x i32> <i32 0, i32 19, i32 38, i32 57>, <4 x i32>* %302
%303 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 4
%304 = bitcast i32* %303 to <4 x i32>*
store <4 x i32> <i32 76, i32 95, i32 114, i32 133>, <4 x i32>* %304
%305 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 8
%306 = bitcast i32* %305 to <4 x i32>*
store <4 x i32> <i32 152, i32 171, i32 190, i32 209>, <4 x i32>* %306
%307 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 12
%308 = bitcast i32* %307 to <4 x i32>*
store <4 x i32> <i32 228, i32 247, i32 266, i32 285>, <4 x i32>* %308
%309 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 16
%310 = bitcast i32* %309 to <4 x i32>*
store <4 x i32> <i32 304, i32 323, i32 342, i32 361>, <4 x i32>* %310
%311 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 20
%312 = bitcast i32* %311 to <4 x i32>*
store <4 x i32> <i32 380, i32 399, i32 418, i32 437>, <4 x i32>* %312
%313 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 24
%314 = bitcast i32* %313 to <4 x i32>*
store <4 x i32> <i32 456, i32 475, i32 494, i32 513>, <4 x i32>* %314
%315 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 28
%316 = bitcast i32* %315 to <4 x i32>*
store <4 x i32> <i32 532, i32 551, i32 570, i32 589>, <4 x i32>* %316
%317 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 32
%318 = bitcast i32* %317 to <4 x i32>*
store <4 x i32> <i32 608, i32 627, i32 646, i32 665>, <4 x i32>* %318
%319 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 36
%320 = bitcast i32* %319 to <4 x i32>*
store <4 x i32> <i32 684, i32 703, i32 722, i32 741>, <4 x i32>* %320
%321 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 40
%322 = bitcast i32* %321 to <4 x i32>*
store <4 x i32> <i32 760, i32 779, i32 798, i32 817>, <4 x i32>* %322
%323 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 44
%324 = bitcast i32* %323 to <4 x i32>*
store <4 x i32> <i32 836, i32 855, i32 874, i32 893>, <4 x i32>* %324
%325 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 48
%326 = bitcast i32* %325 to <4 x i32>*
store <4 x i32> <i32 912, i32 931, i32 950, i32 969>, <4 x i32>* %326
%327 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 52
%328 = bitcast i32* %327 to <4 x i32>*
store <4 x i32> <i32 988, i32 1007, i32 1026, i32 1045>, <4 x i32>* %328
%329 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 56
%330 = bitcast i32* %329 to <4 x i32>*
store <4 x i32> <i32 1064, i32 1083, i32 1102, i32 1121>, <4 x i32>* %330
%331 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 60
%332 = bitcast i32* %331 to <4 x i32>*
store <4 x i32> <i32 1140, i32 1159, i32 1178, i32 1197>, <4 x i32>* %332
%333 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 64
%334 = bitcast i32* %333 to <4 x i32>*
store <4 x i32> <i32 1216, i32 1235, i32 1254, i32 1273>, <4 x i32>* %334
%335 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 68
%336 = bitcast i32* %335 to <4 x i32>*
store <4 x i32> <i32 1292, i32 1311, i32 1330, i32 1349>, <4 x i32>* %336
%337 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 72
%338 = bitcast i32* %337 to <4 x i32>*
store <4 x i32> <i32 1368, i32 1387, i32 1406, i32 1425>, <4 x i32>* %338
%339 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 76
%340 = bitcast i32* %339 to <4 x i32>*
store <4 x i32> <i32 1444, i32 1463, i32 1482, i32 1501>, <4 x i32>* %340
%341 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 80
%342 = bitcast i32* %341 to <4 x i32>*
store <4 x i32> <i32 1520, i32 1539, i32 1558, i32 1577>, <4 x i32>* %342
%343 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 84
%344 = bitcast i32* %343 to <4 x i32>*
store <4 x i32> <i32 1596, i32 1615, i32 1634, i32 1653>, <4 x i32>* %344
%345 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 88
%346 = bitcast i32* %345 to <4 x i32>*
store <4 x i32> <i32 1672, i32 1691, i32 1710, i32 1729>, <4 x i32>* %346
%347 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 92
%348 = bitcast i32* %347 to <4 x i32>*
store <4 x i32> <i32 1748, i32 1767, i32 1786, i32 1805>, <4 x i32>* %348
%349 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 96
%350 = bitcast i32* %349 to <4 x i32>*
store <4 x i32> <i32 1824, i32 1843, i32 1862, i32 1881>, <4 x i32>* %350
%351 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 100
%352 = bitcast i32* %351 to <4 x i32>*
store <4 x i32> <i32 1900, i32 1919, i32 1938, i32 1957>, <4 x i32>* %352
%353 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 104
%354 = bitcast i32* %353 to <4 x i32>*
store <4 x i32> <i32 1976, i32 1995, i32 2014, i32 2033>, <4 x i32>* %354
%355 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 108
%356 = bitcast i32* %355 to <4 x i32>*
store <4 x i32> <i32 2052, i32 2071, i32 2090, i32 2109>, <4 x i32>* %356
%357 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 112
%358 = bitcast i32* %357 to <4 x i32>*
store <4 x i32> <i32 2128, i32 2147, i32 2166, i32 2185>, <4 x i32>* %358
%359 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 116
%360 = bitcast i32* %359 to <4 x i32>*
store <4 x i32> <i32 2204, i32 2223, i32 2242, i32 2261>, <4 x i32>* %360
%361 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 120
%362 = bitcast i32* %361 to <4 x i32>*
store <4 x i32> <i32 2280, i32 2299, i32 2318, i32 2337>, <4 x i32>* %362
%363 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 124
%364 = bitcast i32* %363 to <4 x i32>*
store <4 x i32> <i32 2356, i32 2375, i32 2394, i32 2413>, <4 x i32>* %364
br label %398
365: ; preds = %267, %298
%366 = phi i64 [ %299, %298 ], [ 0, %267 ]
%367 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %366
%368 = load i32, i32* %367
%369 = mul nuw nsw i64 %366, 17
%370 = zext i32 %368 to i64
%371 = icmp eq i64 %369, %370
br i1 %371, label %277, label %372
372: ; preds = %291, %284, %277, %365
%373 = tail call i32 @exit(i32 4)
unreachable
374: ; preds = %398
%375 = or i64 %399, 1
%376 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %375
%377 = load i32, i32* %376
%378 = mul nuw nsw i64 %375, 19
%379 = zext i32 %377 to i64
%380 = icmp eq i64 %378, %379
br i1 %380, label %381, label %405
381: ; preds = %374
%382 = or i64 %399, 2
%383 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %382
%384 = load i32, i32* %383
%385 = mul nuw nsw i64 %382, 19
%386 = zext i32 %384 to i64
%387 = icmp eq i64 %385, %386
br i1 %387, label %388, label %405
388: ; preds = %381
%389 = or i64 %399, 3
%390 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %389
%391 = load i32, i32* %390
%392 = mul nuw nsw i64 %389, 19
%393 = zext i32 %391 to i64
%394 = icmp eq i64 %392, %393
br i1 %394, label %395, label %405
395: ; preds = %388
%396 = add nuw nsw i64 %399, 4
%397 = icmp eq i64 %396, 128
br i1 %397, label %431, label %398
398: ; preds = %395, %301
%399 = phi i64 [ 0, %301 ], [ %396, %395 ]
%400 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %399
%401 = load i32, i32* %400
%402 = mul nuw nsw i64 %399, 19
%403 = zext i32 %401 to i64
%404 = icmp eq i64 %402, %403
br i1 %404, label %374, label %405
405: ; preds = %388, %381, %374, %398
%406 = tail call i32 @exit(i32 5)
unreachable
407: ; preds = %431
%408 = or i64 %432, 1
%409 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %408
%410 = load i32, i32* %409
%411 = mul nuw nsw i64 %408, 17
%412 = zext i32 %410 to i64
%413 = icmp eq i64 %411, %412
br i1 %413, label %414, label %438
414: ; preds = %407
%415 = or i64 %432, 2
%416 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %415
%417 = load i32, i32* %416
%418 = mul nuw nsw i64 %415, 17
%419 = zext i32 %417 to i64
%420 = icmp eq i64 %418, %419
br i1 %420, label %421, label %438
421: ; preds = %414
%422 = or i64 %432, 3
%423 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %422
%424 = load i32, i32* %423
%425 = mul nuw nsw i64 %422, 17
%426 = zext i32 %424 to i64
%427 = icmp eq i64 %425, %426
br i1 %427, label %428, label %438
428: ; preds = %421
%429 = add nuw nsw i64 %432, 4
%430 = icmp eq i64 %429, 128
br i1 %430, label %440, label %431
431: ; preds = %395, %428
%432 = phi i64 [ %429, %428 ], [ 0, %395 ]
%433 = getelementptr inbounds [128 x i32], [128 x i32]* %1, i64 0, i64 %432
%434 = load i32, i32* %433
%435 = mul nuw nsw i64 %432, 17
%436 = zext i32 %434 to i64
%437 = icmp eq i64 %435, %436
br i1 %437, label %407, label %438
438: ; preds = %421, %414, %407, %431
%439 = tail call i32 @exit(i32 6)
unreachable
440: ; preds = %428
%441 = tail call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([5 x i8], [5 x i8]* @str, i64 0, i64 0))
ret i32 0
}