int main() {
  int sobe, letras, Num, mais, i, letra[27];
  char entra[1001] = {'\0'};
  scanf("%d", &Num);
  for (mais = 0; mais < Num; mais++) {
    letras = 0;
    sobe = 0;
    memset(&letra, 0, sizeof(letra));
    for (i = 0; i < strlen(entra); i++)
      entra[i] = '\0';
    getchar();
    gets(entra);
    getchar();
    while (entra[sobe]) {
      if (entra[sobe] == 'a' && letra[1] == 0) {
        letras++;
        letra[1] = 1;
      } else if (entra[sobe] == 'b' && letra[2] == 0) {
        letras++;
        letra[2] = 1;
      } else if (entra[sobe] == 'c' && letra[3] == 0) {
        letras++;
        letra[3] = 1;
      } else if (entra[sobe] == 'd' && letra[4] == 0) {
        letras++;
        letra[4] = 1;
      } else if (entra[sobe] == 'e' && letra[5] == 0) {
        letras++;
        letra[5] = 1;
      } else if (entra[sobe] == 'f' && letra[6] == 0) {
        letras++;
        letra[6] = 1;
      } else if (entra[sobe] == 'g' && letra[7] == 0) {
        letras++;
        letra[7] = 1;
      } else if (entra[sobe] == 'h' && letra[8] == 0) {
        letras++;
        letra[8] = 1;
      } else if (entra[sobe] == 'i' && letra[9] == 0) {
        letras++;
        letra[9] = 1;
      } else if (entra[sobe] == 'j' && letra[10] == 0) {
        letras++;
        letra[10] = 1;
      } else if (entra[sobe] == 'k' && letra[11] == 0) {
        letras++;
        letra[11] = 1;
      } else if (entra[sobe] == 'l' && letra[12] == 0) {
        letras++;
        letra[12] = 1;
      } else if (entra[sobe] == 'm' && letra[13] == 0) {
        letras++;
        letra[13] = 1;
      } else if (entra[sobe] == 'n' && letra[14] == 0) {
        letras++;
        letra[14] = 1;
      } else if (entra[sobe] == 'o' && letra[15] == 0) {
        letras++;
        letra[15] = 1;
      } else if (entra[sobe] == 'p' && letra[16] == 0) {
        letras++;
        letra[16] = 1;
      } else if (entra[sobe] == 'q' && letra[17] == 0) {
        letras++;
        letra[17] = 1;
      } else if (entra[sobe] == 'r' && letra[18] == 0) {
        letras++;
        letra[18] = 1;
      } else if (entra[sobe] == 's' && letra[19] == 0) {
        letras++;
        letra[19] = 1;
      } else if (entra[sobe] == 't' && letra[20] == 0) {
        letras++;
        letra[20] = 1;
      } else if (entra[sobe] == 'u' && letra[21] == 0) {
        letras++;
        letra[21] = 1;
      } else if (entra[sobe] == 'v' && letra[22] == 0) {
        letras++;
        letra[22] = 1;
      } else if (entra[sobe] == 'w' && letra[23] == 0) {
        letras++;
        letra[23] = 1;
      } else if (entra[sobe] == 'x' && letra[24] == 0) {
        letras++;
        letra[24] = 1;
      } else if (entra[sobe] == 'y' && letra[25] == 0) {
        letras++;
        letra[25] = 1;
      } else if (entra[sobe] == 'z' && letra[26] == 0) {
        letras++;
        letra[26] = 1;
      }
      sobe++;
    }
    if (letras == 26)
      printf("frase completa\n");
    else if (letras >= 13)
      printf("frase quase completa\n");
    else if (letras < 13)
      printf("frase mal elaborada\n");
  }
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x490,%rsp
movl   $0x0,-0x4(%rbp)
lea    -0x480(%rbp),%rdi
xor    %esi,%esi
mov    $0x3e9,%edx
call   1050 <memset@plt>
lea    0xe74(%rip),%rdi
lea    -0x10(%rbp),%rsi
mov    $0x0,%al
call   1080 <scanf@plt>
movl   $0x0,-0x14(%rbp)
mov    -0x14(%rbp),%eax
cmp    -0x10(%rbp),%eax
jge    1893 <main+0x733>
movl   $0x0,-0xc(%rbp)
movl   $0x0,-0x8(%rbp)
lea    -0x90(%rbp),%rdi
xor    %esi,%esi
mov    $0x6c,%edx
call   1050 <memset@plt>
movl   $0x0,-0x18(%rbp)
movslq -0x18(%rbp),%rax
mov    %rax,-0x488(%rbp)
lea    -0x480(%rbp),%rdi
call   1030 <strlen@plt>
mov    %rax,%rcx
mov    -0x488(%rbp),%rax
cmp    %rcx,%rax
jae    1216 <main+0xb6>
movslq -0x18(%rbp),%rax
movb   $0x0,-0x480(%rbp,%rax,1)
mov    -0x18(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x18(%rbp)
jmp    11d2 <main+0x72>
mov    $0x0,%al
call   1060 <getchar@plt>
lea    -0x480(%rbp),%rdi
mov    $0x0,%al
call   1070 <gets@plt>
mov    $0x0,%al
call   1060 <getchar@plt>
movslq -0x8(%rbp),%rax
cmpb   $0x0,-0x480(%rbp,%rax,1)
je     1824 <main+0x6c4>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x61,%eax
jne    127e <main+0x11e>
cmpl   $0x0,-0x8c(%rbp)
jne    127e <main+0x11e>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x8c(%rbp)
jmp    1816 <main+0x6b6>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x62,%eax
jne    12b8 <main+0x158>
cmpl   $0x0,-0x88(%rbp)
jne    12b8 <main+0x158>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x88(%rbp)
jmp    1811 <main+0x6b1>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x63,%eax
jne    12f2 <main+0x192>
cmpl   $0x0,-0x84(%rbp)
jne    12f2 <main+0x192>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x84(%rbp)
jmp    180c <main+0x6ac>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x64,%eax
jne    1326 <main+0x1c6>
cmpl   $0x0,-0x80(%rbp)
jne    1326 <main+0x1c6>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x80(%rbp)
jmp    1807 <main+0x6a7>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x65,%eax
jne    135a <main+0x1fa>
cmpl   $0x0,-0x7c(%rbp)
jne    135a <main+0x1fa>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x7c(%rbp)
jmp    1802 <main+0x6a2>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x66,%eax
jne    138e <main+0x22e>
cmpl   $0x0,-0x78(%rbp)
jne    138e <main+0x22e>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x78(%rbp)
jmp    17fd <main+0x69d>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x67,%eax
jne    13c2 <main+0x262>
cmpl   $0x0,-0x74(%rbp)
jne    13c2 <main+0x262>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x74(%rbp)
jmp    17f8 <main+0x698>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x68,%eax
jne    13f6 <main+0x296>
cmpl   $0x0,-0x70(%rbp)
jne    13f6 <main+0x296>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x70(%rbp)
jmp    17f3 <main+0x693>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x69,%eax
jne    142a <main+0x2ca>
cmpl   $0x0,-0x6c(%rbp)
jne    142a <main+0x2ca>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x6c(%rbp)
jmp    17ee <main+0x68e>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6a,%eax
jne    145e <main+0x2fe>
cmpl   $0x0,-0x68(%rbp)
jne    145e <main+0x2fe>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x68(%rbp)
jmp    17e9 <main+0x689>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6b,%eax
jne    1492 <main+0x332>
cmpl   $0x0,-0x64(%rbp)
jne    1492 <main+0x332>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x64(%rbp)
jmp    17e4 <main+0x684>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6c,%eax
jne    14c6 <main+0x366>
cmpl   $0x0,-0x60(%rbp)
jne    14c6 <main+0x366>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x60(%rbp)
jmp    17df <main+0x67f>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6d,%eax
jne    14fa <main+0x39a>
cmpl   $0x0,-0x5c(%rbp)
jne    14fa <main+0x39a>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x5c(%rbp)
jmp    17da <main+0x67a>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6e,%eax
jne    152e <main+0x3ce>
cmpl   $0x0,-0x58(%rbp)
jne    152e <main+0x3ce>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x58(%rbp)
jmp    17d5 <main+0x675>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x6f,%eax
jne    1562 <main+0x402>
cmpl   $0x0,-0x54(%rbp)
jne    1562 <main+0x402>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x54(%rbp)
jmp    17d0 <main+0x670>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x70,%eax
jne    1596 <main+0x436>
cmpl   $0x0,-0x50(%rbp)
jne    1596 <main+0x436>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x50(%rbp)
jmp    17cb <main+0x66b>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x71,%eax
jne    15ca <main+0x46a>
cmpl   $0x0,-0x4c(%rbp)
jne    15ca <main+0x46a>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x4c(%rbp)
jmp    17c6 <main+0x666>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x72,%eax
jne    15fe <main+0x49e>
cmpl   $0x0,-0x48(%rbp)
jne    15fe <main+0x49e>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x48(%rbp)
jmp    17c1 <main+0x661>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x73,%eax
jne    1632 <main+0x4d2>
cmpl   $0x0,-0x44(%rbp)
jne    1632 <main+0x4d2>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x44(%rbp)
jmp    17bc <main+0x65c>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x74,%eax
jne    1666 <main+0x506>
cmpl   $0x0,-0x40(%rbp)
jne    1666 <main+0x506>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x40(%rbp)
jmp    17b7 <main+0x657>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x75,%eax
jne    169a <main+0x53a>
cmpl   $0x0,-0x3c(%rbp)
jne    169a <main+0x53a>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x3c(%rbp)
jmp    17b2 <main+0x652>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x76,%eax
jne    16ce <main+0x56e>
cmpl   $0x0,-0x38(%rbp)
jne    16ce <main+0x56e>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x38(%rbp)
jmp    17ad <main+0x64d>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x77,%eax
jne    1702 <main+0x5a2>
cmpl   $0x0,-0x34(%rbp)
jne    1702 <main+0x5a2>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x34(%rbp)
jmp    17a8 <main+0x648>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x78,%eax
jne    1736 <main+0x5d6>
cmpl   $0x0,-0x30(%rbp)
jne    1736 <main+0x5d6>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x30(%rbp)
jmp    17a3 <main+0x643>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x79,%eax
jne    176a <main+0x60a>
cmpl   $0x0,-0x2c(%rbp)
jne    176a <main+0x60a>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x2c(%rbp)
jmp    179e <main+0x63e>
movslq -0x8(%rbp),%rax
movsbl -0x480(%rbp,%rax,1),%eax
ff
cmp    $0x7a,%eax
jne    1799 <main+0x639>
cmpl   $0x0,-0x28(%rbp)
jne    1799 <main+0x639>
mov    -0xc(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0xc(%rbp)
movl   $0x1,-0x28(%rbp)
jmp    179e <main+0x63e>
jmp    17a3 <main+0x643>
jmp    17a8 <main+0x648>
jmp    17ad <main+0x64d>
jmp    17b2 <main+0x652>
jmp    17b7 <main+0x657>
jmp    17bc <main+0x65c>
jmp    17c1 <main+0x661>
jmp    17c6 <main+0x666>
jmp    17cb <main+0x66b>
jmp    17d0 <main+0x670>
jmp    17d5 <main+0x675>
jmp    17da <main+0x67a>
jmp    17df <main+0x67f>
jmp    17e4 <main+0x684>
jmp    17e9 <main+0x689>
jmp    17ee <main+0x68e>
jmp    17f3 <main+0x693>
jmp    17f8 <main+0x698>
jmp    17fd <main+0x69d>
jmp    1802 <main+0x6a2>
jmp    1807 <main+0x6a7>
jmp    180c <main+0x6ac>
jmp    1811 <main+0x6b1>
jmp    1816 <main+0x6b6>
mov    -0x8(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x8(%rbp)
jmp    1232 <main+0xd2>
cmpl   $0x1a,-0xc(%rbp)
jne    1841 <main+0x6e1>
lea    0x7ce(%rip),%rdi
mov    $0x0,%al
call   1040 <printf@plt>
jmp    1880 <main+0x720>
cmpl   $0xd,-0xc(%rbp)
jl     185e <main+0x6fe>
lea    0x7c1(%rip),%rdi
mov    $0x0,%al
call   1040 <printf@plt>
jmp    187b <main+0x71b>
cmpl   $0xd,-0xc(%rbp)
jge    1876 <main+0x716>
lea    0x7ba(%rip),%rdi
mov    $0x0,%al
call   1040 <printf@plt>
jmp    187b <main+0x71b>
jmp    1880 <main+0x720>
jmp    1885 <main+0x725>
mov    -0x14(%rbp),%eax
add    $0x1,%eax
mov    %eax,-0x14(%rbp)
jmp    119e <main+0x3e>
xor    %eax,%eax
add    $0x490,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rbp
push   %r15
push   %r14
push   %r13
push   %r12
push   %rbx
sub    $0x448,%rsp
lea    0x50(%rsp),%rdi
mov    $0x3e9,%edx
xor    %esi,%esi
call   1050 <memset@plt>
lea    0xe77(%rip),%rdi
lea    0x4c(%rsp),%rsi
xor    %eax,%eax
call   1080 <scanf@plt>
cmpl   $0x0,0x4c(%rsp)
jle    15d0 <main+0x470>
lea    0x50(%rsp),%rbx
xor    %eax,%eax
xor    %r13d,%r13d
test   %al,%al
je     11d6 <main+0x76>
xchg   %ax,%ax
xor    %ebp,%ebp
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
movb   $0x0,0x50(%rsp,%rbp,1)
add    $0x1,%rbp
mov    %rbx,%rdi
call   1040 <strlen@plt>
cmp    %rbp,%rax
ja     11c0 <main+0x60>
xor    %eax,%eax
call   1060 <getchar@plt>
mov    %rbx,%rdi
xor    %eax,%eax
call   1070 <gets@plt>
xor    %eax,%eax
call   1060 <getchar@plt>
mov    0x50(%rsp),%r11b
test   %r11b,%r11b
je     15a8 <main+0x448>
xor    %edx,%edx
lea    0x51(%rsp),%rcx
movl   $0x0,0xc(%rsp)
movl   $0x0,0x10(%rsp)
movl   $0x0,0x14(%rsp)
movl   $0x0,0x18(%rsp)
movl   $0x0,0x1c(%rsp)
movl   $0x0,0x20(%rsp)
movl   $0x0,0x24(%rsp)
movl   $0x0,0x28(%rsp)
movl   $0x0,0x2c(%rsp)
movl   $0x0,0x30(%rsp)
movl   $0x0,0x34(%rsp)
movl   $0x0,0x38(%rsp)
movl   $0x0,0x3c(%rsp)
movl   $0x0,0x40(%rsp)
movl   $0x0,0x44(%rsp)
movl   $0x0,0x48(%rsp)
xor    %esi,%esi
xor    %edi,%edi
xor    %ebp,%ebp
xor    %r15d,%r15d
xor    %r14d,%r14d
xor    %r12d,%r12d
xor    %r8d,%r8d
xor    %r9d,%r9d
xor    %r10d,%r10d
xor    %eax,%eax
jmp    12ba <main+0x15a>
nop
add    $0x1,%eax
mov    $0x1,%r10d
movzbl (%rcx),%r11d
add    $0x1,%rcx
test   %r11b,%r11b
je     1590 <main+0x430>
cmp    $0x61,%r11b
jne    12c5 <main+0x165>
test   %r10d,%r10d
je     12a0 <main+0x140>
cmp    $0x62,%r11b
jne    12e0 <main+0x180>
test   %r9d,%r9d
jne    12e0 <main+0x180>
add    $0x1,%eax
mov    $0x1,%r9d
jmp    12a9 <main+0x149>
nopl   0x0(%rax,%rax,1)
cmp    $0x63,%r11b
jne    12f6 <main+0x196>
test   %r8d,%r8d
jne    12f6 <main+0x196>
add    $0x1,%eax
mov    $0x1,%r8d
jmp    12a9 <main+0x149>
cmp    $0x64,%r11b
jne    130c <main+0x1ac>
test   %r12d,%r12d
jne    130c <main+0x1ac>
add    $0x1,%eax
mov    $0x1,%r12d
jmp    12a9 <main+0x149>
cmp    $0x65,%r11b
jne    1322 <main+0x1c2>
test   %r14d,%r14d
jne    1322 <main+0x1c2>
add    $0x1,%eax
mov    $0x1,%r14d
jmp    12a9 <main+0x149>
cmp    $0x66,%r11b
jne    133b <main+0x1db>
test   %r15d,%r15d
jne    133b <main+0x1db>
add    $0x1,%eax
mov    $0x1,%r15d
jmp    12a9 <main+0x149>
cmp    $0x67,%r11b
jne    1352 <main+0x1f2>
test   %ebp,%ebp
jne    1352 <main+0x1f2>
add    $0x1,%eax
mov    $0x1,%ebp
jmp    12a9 <main+0x149>
cmp    $0x68,%r11b
jne    1369 <main+0x209>
test   %edi,%edi
jne    1369 <main+0x209>
add    $0x1,%eax
mov    $0x1,%edi
jmp    12a9 <main+0x149>
cmp    $0x69,%r11b
jne    1380 <main+0x220>
test   %esi,%esi
jne    1380 <main+0x220>
add    $0x1,%eax
mov    $0x1,%esi
jmp    12a9 <main+0x149>
cmp    $0x6a,%r11b
jne    139d <main+0x23d>
cmpl   $0x0,0x48(%rsp)
jne    139d <main+0x23d>
add    $0x1,%eax
movl   $0x1,0x48(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x6b,%r11b
jne    13ba <main+0x25a>
cmpl   $0x0,0x44(%rsp)
jne    13ba <main+0x25a>
add    $0x1,%eax
movl   $0x1,0x44(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x6c,%r11b
jne    13d7 <main+0x277>
cmpl   $0x0,0x40(%rsp)
jne    13d7 <main+0x277>
add    $0x1,%eax
movl   $0x1,0x40(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x6d,%r11b
jne    13f4 <main+0x294>
cmpl   $0x0,0x3c(%rsp)
jne    13f4 <main+0x294>
add    $0x1,%eax
movl   $0x1,0x3c(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x6e,%r11b
jne    1411 <main+0x2b1>
cmpl   $0x0,0x38(%rsp)
jne    1411 <main+0x2b1>
add    $0x1,%eax
movl   $0x1,0x38(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x6f,%r11b
jne    142e <main+0x2ce>
cmpl   $0x0,0x34(%rsp)
jne    142e <main+0x2ce>
add    $0x1,%eax
movl   $0x1,0x34(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x70,%r11b
jne    144b <main+0x2eb>
cmpl   $0x0,0x30(%rsp)
jne    144b <main+0x2eb>
add    $0x1,%eax
movl   $0x1,0x30(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x71,%r11b
jne    1468 <main+0x308>
cmpl   $0x0,0x2c(%rsp)
jne    1468 <main+0x308>
add    $0x1,%eax
movl   $0x1,0x2c(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x72,%r11b
jne    1485 <main+0x325>
cmpl   $0x0,0x28(%rsp)
jne    1485 <main+0x325>
add    $0x1,%eax
movl   $0x1,0x28(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x73,%r11b
jne    14a2 <main+0x342>
cmpl   $0x0,0x24(%rsp)
jne    14a2 <main+0x342>
add    $0x1,%eax
movl   $0x1,0x24(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x74,%r11b
jne    14bf <main+0x35f>
cmpl   $0x0,0x20(%rsp)
jne    14bf <main+0x35f>
add    $0x1,%eax
movl   $0x1,0x20(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x75,%r11b
jne    14dc <main+0x37c>
cmpl   $0x0,0x1c(%rsp)
jne    14dc <main+0x37c>
add    $0x1,%eax
movl   $0x1,0x1c(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x76,%r11b
jne    14f9 <main+0x399>
cmpl   $0x0,0x18(%rsp)
jne    14f9 <main+0x399>
add    $0x1,%eax
movl   $0x1,0x18(%rsp)
jmp    12a9 <main+0x149>
cmp    $0x77,%r11b
jne    1516 <main+0x3b6>
cmpl   $0x0,0x14(%rsp)
jne    1516 <main+0x3b6>
add    $0x1,%eax
movl   $0x1,0x14(%rsp)
jmp    12a9 <main+0x149>
mov    %esi,0x8(%rsp)
cmp    $0x78,%r11b
jne    1534 <main+0x3d4>
cmpl   $0x0,0x10(%rsp)
jne    1534 <main+0x3d4>
add    $0x1,%eax
movl   $0x1,0x10(%rsp)
jmp    1578 <main+0x418>
cmp    $0x79,%r11b
jne    154e <main+0x3ee>
cmpl   $0x0,0xc(%rsp)
jne    154e <main+0x3ee>
add    $0x1,%eax
movl   $0x1,0xc(%rsp)
jmp    1578 <main+0x418>
cmp    $0x7a,%r11b
sete   0x7(%rsp)
test   %edx,%edx
mov    %edx,%esi
sete   %r11b
and    0x7(%rsp),%r11b
movzbl %r11b,%r11d
add    %r11d,%eax
test   %r11b,%r11b
mov    $0x1,%edx
cmovne %edx,%esi
mov    %esi,%edx
mov    0x8(%rsp),%esi
jmp    12a9 <main+0x149>
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax,%rax,1)
lea    0xa95(%rip),%rdi
cmp    $0x1a,%eax
je     15af <main+0x44f>
lea    0xa74(%rip),%rdi
cmp    $0xc,%eax
jg     15af <main+0x44f>
lea    0xa54(%rip),%rdi
call   1030 <puts@plt>
add    $0x1,%r13d
cmp    0x4c(%rsp),%r13d
jge    15d0 <main+0x470>
mov    0x50(%rsp),%al
test   %al,%al
jne    11b0 <main+0x50>
jmp    11d6 <main+0x76>
xor    %eax,%eax
add    $0x448,%rsp
pop    %rbx
pop    %r12
pop    %r13
pop    %r14
pop    %r15
pop    %rbp
ret

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

LLVM IR (-O2):
@.str = [3 x i8] c"%d\00"
@str = [20 x i8] c"frase mal elaborada\00"
@str.4 = [21 x i8] c"frase quase completa\00"
@str.5 = [15 x i8] c"frase completa\00"
define i32 @main() {
%1 = alloca i32
%2 = alloca [1001 x i8]
%3 = bitcast i32* %1 to i8*
%4 = getelementptr inbounds [1001 x i8], [1001 x i8]* %2, i64 0, i64 0
%5 = call i32 (i8*, ...) @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str, i64 0, i64 0), i32* %1)
%6 = load i32, i32* %1
%7 = icmp sgt i32 %6, 0
br i1 %7, label %8, label %255
8: ; preds = %0, %253
%9 = phi i8 [ %254, %253 ], [ 0, %0 ]
%10 = phi i32 [ %250, %253 ], [ 0, %0 ]
%11 = icmp eq i8 %9, 0
br i1 %11, label %18, label %12
12: ; preds = %8, %12
%13 = phi i64 [ %15, %12 ], [ 0, %8 ]
%14 = getelementptr inbounds [1001 x i8], [1001 x i8]* %2, i64 0, i64 %13
store i8 0, i8* %14
%15 = add nuw nsw i64 %13, 1
%16 = call i64 @strlen(i8* %4)
%17 = icmp ugt i64 %16, %15
br i1 %17, label %12, label %18
18: ; preds = %12, %8
%19 = call i32 (...) @getchar()
%20 = call i32 (i8*, ...) bitcast (i32 (...)* @gets to i32 (i8*, ...)*)(i8* %4)
%21 = call i32 (...) @getchar()
%22 = load i8, i8* %4
%23 = icmp eq i8 %22, 0
br i1 %23, label %246, label %24
24: ; preds = %18, %210
%25 = phi i64 [ %238, %210 ], [ 0, %18 ]
%26 = phi i8 [ %240, %210 ], [ %22, %18 ]
%27 = phi i32 [ %237, %210 ], [ 0, %18 ]
%28 = phi i32 [ %236, %210 ], [ 0, %18 ]
%29 = phi i32 [ %235, %210 ], [ 0, %18 ]
%30 = phi i32 [ %234, %210 ], [ 0, %18 ]
%31 = phi i32 [ %233, %210 ], [ 0, %18 ]
%32 = phi i32 [ %232, %210 ], [ 0, %18 ]
%33 = phi i32 [ %231, %210 ], [ 0, %18 ]
%34 = phi i32 [ %230, %210 ], [ 0, %18 ]
%35 = phi i32 [ %229, %210 ], [ 0, %18 ]
%36 = phi i32 [ %228, %210 ], [ 0, %18 ]
%37 = phi i32 [ %227, %210 ], [ 0, %18 ]
%38 = phi i32 [ %226, %210 ], [ 0, %18 ]
%39 = phi i32 [ %225, %210 ], [ 0, %18 ]
%40 = phi i32 [ %224, %210 ], [ 0, %18 ]
%41 = phi i32 [ %223, %210 ], [ 0, %18 ]
%42 = phi i32 [ %222, %210 ], [ 0, %18 ]
%43 = phi i32 [ %221, %210 ], [ 0, %18 ]
%44 = phi i32 [ %220, %210 ], [ 0, %18 ]
%45 = phi i32 [ %219, %210 ], [ 0, %18 ]
%46 = phi i32 [ %218, %210 ], [ 0, %18 ]
%47 = phi i32 [ %217, %210 ], [ 0, %18 ]
%48 = phi i32 [ %216, %210 ], [ 0, %18 ]
%49 = phi i32 [ %215, %210 ], [ 0, %18 ]
%50 = phi i32 [ %214, %210 ], [ 0, %18 ]
%51 = phi i32 [ %213, %210 ], [ 0, %18 ]
%52 = phi i32 [ %212, %210 ], [ 0, %18 ]
%53 = phi i32 [ %211, %210 ], [ 0, %18 ]
%54 = icmp eq i8 %26, 97
%55 = icmp eq i32 %52, 0
%56 = select i1 %54, i1 %55, i1 false
br i1 %56, label %57, label %59
57: ; preds = %24
%58 = add nsw i32 %53, 1
br label %210
59: ; preds = %24
%60 = icmp eq i8 %26, 98
%61 = icmp eq i32 %51, 0
%62 = select i1 %60, i1 %61, i1 false
br i1 %62, label %63, label %65
63: ; preds = %59
%64 = add nsw i32 %53, 1
br label %210
65: ; preds = %59
%66 = icmp eq i8 %26, 99
%67 = icmp eq i32 %50, 0
%68 = select i1 %66, i1 %67, i1 false
br i1 %68, label %69, label %71
69: ; preds = %65
%70 = add nsw i32 %53, 1
br label %210
71: ; preds = %65
%72 = icmp eq i8 %26, 100
%73 = icmp eq i32 %49, 0
%74 = select i1 %72, i1 %73, i1 false
br i1 %74, label %75, label %77
75: ; preds = %71
%76 = add nsw i32 %53, 1
br label %210
77: ; preds = %71
%78 = icmp eq i8 %26, 101
%79 = icmp eq i32 %48, 0
%80 = select i1 %78, i1 %79, i1 false
br i1 %80, label %81, label %83
81: ; preds = %77
%82 = add nsw i32 %53, 1
br label %210
83: ; preds = %77
%84 = icmp eq i8 %26, 102
%85 = icmp eq i32 %47, 0
%86 = select i1 %84, i1 %85, i1 false
br i1 %86, label %87, label %89
87: ; preds = %83
%88 = add nsw i32 %53, 1
br label %210
89: ; preds = %83
%90 = icmp eq i8 %26, 103
%91 = icmp eq i32 %46, 0
%92 = select i1 %90, i1 %91, i1 false
br i1 %92, label %93, label %95
93: ; preds = %89
%94 = add nsw i32 %53, 1
br label %210
95: ; preds = %89
%96 = icmp eq i8 %26, 104
%97 = icmp eq i32 %45, 0
%98 = select i1 %96, i1 %97, i1 false
br i1 %98, label %99, label %101
99: ; preds = %95
%100 = add nsw i32 %53, 1
br label %210
101: ; preds = %95
%102 = icmp eq i8 %26, 105
%103 = icmp eq i32 %44, 0
%104 = select i1 %102, i1 %103, i1 false
br i1 %104, label %105, label %107
105: ; preds = %101
%106 = add nsw i32 %53, 1
br label %210
107: ; preds = %101
%108 = icmp eq i8 %26, 106
%109 = icmp eq i32 %43, 0
%110 = select i1 %108, i1 %109, i1 false
br i1 %110, label %111, label %113
111: ; preds = %107
%112 = add nsw i32 %53, 1
br label %210
113: ; preds = %107
%114 = icmp eq i8 %26, 107
%115 = icmp eq i32 %42, 0
%116 = select i1 %114, i1 %115, i1 false
br i1 %116, label %117, label %119
117: ; preds = %113
%118 = add nsw i32 %53, 1
br label %210
119: ; preds = %113
%120 = icmp eq i8 %26, 108
%121 = icmp eq i32 %41, 0
%122 = select i1 %120, i1 %121, i1 false
br i1 %122, label %123, label %125
123: ; preds = %119
%124 = add nsw i32 %53, 1
br label %210
125: ; preds = %119
%126 = icmp eq i8 %26, 109
%127 = icmp eq i32 %40, 0
%128 = select i1 %126, i1 %127, i1 false
br i1 %128, label %129, label %131
129: ; preds = %125
%130 = add nsw i32 %53, 1
br label %210
131: ; preds = %125
%132 = icmp eq i8 %26, 110
%133 = icmp eq i32 %39, 0
%134 = select i1 %132, i1 %133, i1 false
br i1 %134, label %135, label %137
135: ; preds = %131
%136 = add nsw i32 %53, 1
br label %210
137: ; preds = %131
%138 = icmp eq i8 %26, 111
%139 = icmp eq i32 %38, 0
%140 = select i1 %138, i1 %139, i1 false
br i1 %140, label %141, label %143
141: ; preds = %137
%142 = add nsw i32 %53, 1
br label %210
143: ; preds = %137
%144 = icmp eq i8 %26, 112
%145 = icmp eq i32 %37, 0
%146 = select i1 %144, i1 %145, i1 false
br i1 %146, label %147, label %149
147: ; preds = %143
%148 = add nsw i32 %53, 1
br label %210
149: ; preds = %143
%150 = icmp eq i8 %26, 113
%151 = icmp eq i32 %36, 0
%152 = select i1 %150, i1 %151, i1 false
br i1 %152, label %153, label %155
153: ; preds = %149
%154 = add nsw i32 %53, 1
br label %210
155: ; preds = %149
%156 = icmp eq i8 %26, 114
%157 = icmp eq i32 %35, 0
%158 = select i1 %156, i1 %157, i1 false
br i1 %158, label %159, label %161
159: ; preds = %155
%160 = add nsw i32 %53, 1
br label %210
161: ; preds = %155
%162 = icmp eq i8 %26, 115
%163 = icmp eq i32 %34, 0
%164 = select i1 %162, i1 %163, i1 false
br i1 %164, label %165, label %167
165: ; preds = %161
%166 = add nsw i32 %53, 1
br label %210
167: ; preds = %161
%168 = icmp eq i8 %26, 116
%169 = icmp eq i32 %33, 0
%170 = select i1 %168, i1 %169, i1 false
br i1 %170, label %171, label %173
171: ; preds = %167
%172 = add nsw i32 %53, 1
br label %210
173: ; preds = %167
%174 = icmp eq i8 %26, 117
%175 = icmp eq i32 %32, 0
%176 = select i1 %174, i1 %175, i1 false
br i1 %176, label %177, label %179
177: ; preds = %173
%178 = add nsw i32 %53, 1
br label %210
179: ; preds = %173
%180 = icmp eq i8 %26, 118
%181 = icmp eq i32 %31, 0
%182 = select i1 %180, i1 %181, i1 false
br i1 %182, label %183, label %185
183: ; preds = %179
%184 = add nsw i32 %53, 1
br label %210
185: ; preds = %179
%186 = icmp eq i8 %26, 119
%187 = icmp eq i32 %30, 0
%188 = select i1 %186, i1 %187, i1 false
br i1 %188, label %189, label %191
189: ; preds = %185
%190 = add nsw i32 %53, 1
br label %210
191: ; preds = %185
%192 = icmp eq i8 %26, 120
%193 = icmp eq i32 %29, 0
%194 = select i1 %192, i1 %193, i1 false
br i1 %194, label %195, label %197
195: ; preds = %191
%196 = add nsw i32 %53, 1
br label %210
197: ; preds = %191
%198 = icmp eq i8 %26, 121
%199 = icmp eq i32 %28, 0
%200 = select i1 %198, i1 %199, i1 false
br i1 %200, label %201, label %203
201: ; preds = %197
%202 = add nsw i32 %53, 1
br label %210
203: ; preds = %197
%204 = icmp eq i8 %26, 122
%205 = icmp eq i32 %27, 0
%206 = select i1 %204, i1 %205, i1 false
%207 = zext i1 %206 to i32
%208 = add nsw i32 %53, %207
%209 = select i1 %206, i32 1, i32 %27
br label %210
210: ; preds = %203, %63, %75, %87, %99, %111, %123, %135, %147, %159, %171, %183, %195, %201, %189, %177, %165, %153, %141, %129, %117, %105, %93, %81, %69, %57
%211 = phi i32 [ %58, %57 ], [ %64, %63 ], [ %70, %69 ], [ %76, %75 ], [ %82, %81 ], [ %88, %87 ], [ %94, %93 ], [ %100, %99 ], [ %106, %105 ], [ %112, %111 ], [ %118, %117 ], [ %124, %123 ], [ %130, %129 ], [ %136, %135 ], [ %142, %141 ], [ %148, %147 ], [ %154, %153 ], [ %160, %159 ], [ %166, %165 ], [ %172, %171 ], [ %178, %177 ], [ %184, %183 ], [ %190, %189 ], [ %196, %195 ], [ %202, %201 ], [ %208, %203 ]
%212 = phi i32 [ 1, %57 ], [ %52, %63 ], [ %52, %69 ], [ %52, %75 ], [ %52, %81 ], [ %52, %87 ], [ %52, %93 ], [ %52, %99 ], [ %52, %105 ], [ %52, %111 ], [ %52, %117 ], [ %52, %123 ], [ %52, %129 ], [ %52, %135 ], [ %52, %141 ], [ %52, %147 ], [ %52, %153 ], [ %52, %159 ], [ %52, %165 ], [ %52, %171 ], [ %52, %177 ], [ %52, %183 ], [ %52, %189 ], [ %52, %195 ], [ %52, %201 ], [ %52, %203 ]
%213 = phi i32 [ %51, %57 ], [ 1, %63 ], [ %51, %69 ], [ %51, %75 ], [ %51, %81 ], [ %51, %87 ], [ %51, %93 ], [ %51, %99 ], [ %51, %105 ], [ %51, %111 ], [ %51, %117 ], [ %51, %123 ], [ %51, %129 ], [ %51, %135 ], [ %51, %141 ], [ %51, %147 ], [ %51, %153 ], [ %51, %159 ], [ %51, %165 ], [ %51, %171 ], [ %51, %177 ], [ %51, %183 ], [ %51, %189 ], [ %51, %195 ], [ %51, %201 ], [ %51, %203 ]
%214 = phi i32 [ %50, %57 ], [ %50, %63 ], [ 1, %69 ], [ %50, %75 ], [ %50, %81 ], [ %50, %87 ], [ %50, %93 ], [ %50, %99 ], [ %50, %105 ], [ %50, %111 ], [ %50, %117 ], [ %50, %123 ], [ %50, %129 ], [ %50, %135 ], [ %50, %141 ], [ %50, %147 ], [ %50, %153 ], [ %50, %159 ], [ %50, %165 ], [ %50, %171 ], [ %50, %177 ], [ %50, %183 ], [ %50, %189 ], [ %50, %195 ], [ %50, %201 ], [ %50, %203 ]
%215 = phi i32 [ %49, %57 ], [ %49, %63 ], [ %49, %69 ], [ 1, %75 ], [ %49, %81 ], [ %49, %87 ], [ %49, %93 ], [ %49, %99 ], [ %49, %105 ], [ %49, %111 ], [ %49, %117 ], [ %49, %123 ], [ %49, %129 ], [ %49, %135 ], [ %49, %141 ], [ %49, %147 ], [ %49, %153 ], [ %49, %159 ], [ %49, %165 ], [ %49, %171 ], [ %49, %177 ], [ %49, %183 ], [ %49, %189 ], [ %49, %195 ], [ %49, %201 ], [ %49, %203 ]
%216 = phi i32 [ %48, %57 ], [ %48, %63 ], [ %48, %69 ], [ %48, %75 ], [ 1, %81 ], [ %48, %87 ], [ %48, %93 ], [ %48, %99 ], [ %48, %105 ], [ %48, %111 ], [ %48, %117 ], [ %48, %123 ], [ %48, %129 ], [ %48, %135 ], [ %48, %141 ], [ %48, %147 ], [ %48, %153 ], [ %48, %159 ], [ %48, %165 ], [ %48, %171 ], [ %48, %177 ], [ %48, %183 ], [ %48, %189 ], [ %48, %195 ], [ %48, %201 ], [ %48, %203 ]
%217 = phi i32 [ %47, %57 ], [ %47, %63 ], [ %47, %69 ], [ %47, %75 ], [ %47, %81 ], [ 1, %87 ], [ %47, %93 ], [ %47, %99 ], [ %47, %105 ], [ %47, %111 ], [ %47, %117 ], [ %47, %123 ], [ %47, %129 ], [ %47, %135 ], [ %47, %141 ], [ %47, %147 ], [ %47, %153 ], [ %47, %159 ], [ %47, %165 ], [ %47, %171 ], [ %47, %177 ], [ %47, %183 ], [ %47, %189 ], [ %47, %195 ], [ %47, %201 ], [ %47, %203 ]
%218 = phi i32 [ %46, %57 ], [ %46, %63 ], [ %46, %69 ], [ %46, %75 ], [ %46, %81 ], [ %46, %87 ], [ 1, %93 ], [ %46, %99 ], [ %46, %105 ], [ %46, %111 ], [ %46, %117 ], [ %46, %123 ], [ %46, %129 ], [ %46, %135 ], [ %46, %141 ], [ %46, %147 ], [ %46, %153 ], [ %46, %159 ], [ %46, %165 ], [ %46, %171 ], [ %46, %177 ], [ %46, %183 ], [ %46, %189 ], [ %46, %195 ], [ %46, %201 ], [ %46, %203 ]
%219 = phi i32 [ %45, %57 ], [ %45, %63 ], [ %45, %69 ], [ %45, %75 ], [ %45, %81 ], [ %45, %87 ], [ %45, %93 ], [ 1, %99 ], [ %45, %105 ], [ %45, %111 ], [ %45, %117 ], [ %45, %123 ], [ %45, %129 ], [ %45, %135 ], [ %45, %141 ], [ %45, %147 ], [ %45, %153 ], [ %45, %159 ], [ %45, %165 ], [ %45, %171 ], [ %45, %177 ], [ %45, %183 ], [ %45, %189 ], [ %45, %195 ], [ %45, %201 ], [ %45, %203 ]
%220 = phi i32 [ %44, %57 ], [ %44, %63 ], [ %44, %69 ], [ %44, %75 ], [ %44, %81 ], [ %44, %87 ], [ %44, %93 ], [ %44, %99 ], [ 1, %105 ], [ %44, %111 ], [ %44, %117 ], [ %44, %123 ], [ %44, %129 ], [ %44, %135 ], [ %44, %141 ], [ %44, %147 ], [ %44, %153 ], [ %44, %159 ], [ %44, %165 ], [ %44, %171 ], [ %44, %177 ], [ %44, %183 ], [ %44, %189 ], [ %44, %195 ], [ %44, %201 ], [ %44, %203 ]
%221 = phi i32 [ %43, %57 ], [ %43, %63 ], [ %43, %69 ], [ %43, %75 ], [ %43, %81 ], [ %43, %87 ], [ %43, %93 ], [ %43, %99 ], [ %43, %105 ], [ 1, %111 ], [ %43, %117 ], [ %43, %123 ], [ %43, %129 ], [ %43, %135 ], [ %43, %141 ], [ %43, %147 ], [ %43, %153 ], [ %43, %159 ], [ %43, %165 ], [ %43, %171 ], [ %43, %177 ], [ %43, %183 ], [ %43, %189 ], [ %43, %195 ], [ %43, %201 ], [ %43, %203 ]
%222 = phi i32 [ %42, %57 ], [ %42, %63 ], [ %42, %69 ], [ %42, %75 ], [ %42, %81 ], [ %42, %87 ], [ %42, %93 ], [ %42, %99 ], [ %42, %105 ], [ %42, %111 ], [ 1, %117 ], [ %42, %123 ], [ %42, %129 ], [ %42, %135 ], [ %42, %141 ], [ %42, %147 ], [ %42, %153 ], [ %42, %159 ], [ %42, %165 ], [ %42, %171 ], [ %42, %177 ], [ %42, %183 ], [ %42, %189 ], [ %42, %195 ], [ %42, %201 ], [ %42, %203 ]
%223 = phi i32 [ %41, %57 ], [ %41, %63 ], [ %41, %69 ], [ %41, %75 ], [ %41, %81 ], [ %41, %87 ], [ %41, %93 ], [ %41, %99 ], [ %41, %105 ], [ %41, %111 ], [ %41, %117 ], [ 1, %123 ], [ %41, %129 ], [ %41, %135 ], [ %41, %141 ], [ %41, %147 ], [ %41, %153 ], [ %41, %159 ], [ %41, %165 ], [ %41, %171 ], [ %41, %177 ], [ %41, %183 ], [ %41, %189 ], [ %41, %195 ], [ %41, %201 ], [ %41, %203 ]
%224 = phi i32 [ %40, %57 ], [ %40, %63 ], [ %40, %69 ], [ %40, %75 ], [ %40, %81 ], [ %40, %87 ], [ %40, %93 ], [ %40, %99 ], [ %40, %105 ], [ %40, %111 ], [ %40, %117 ], [ %40, %123 ], [ 1, %129 ], [ %40, %135 ], [ %40, %141 ], [ %40, %147 ], [ %40, %153 ], [ %40, %159 ], [ %40, %165 ], [ %40, %171 ], [ %40, %177 ], [ %40, %183 ], [ %40, %189 ], [ %40, %195 ], [ %40, %201 ], [ %40, %203 ]
%225 = phi i32 [ %39, %57 ], [ %39, %63 ], [ %39, %69 ], [ %39, %75 ], [ %39, %81 ], [ %39, %87 ], [ %39, %93 ], [ %39, %99 ], [ %39, %105 ], [ %39, %111 ], [ %39, %117 ], [ %39, %123 ], [ %39, %129 ], [ 1, %135 ], [ %39, %141 ], [ %39, %147 ], [ %39, %153 ], [ %39, %159 ], [ %39, %165 ], [ %39, %171 ], [ %39, %177 ], [ %39, %183 ], [ %39, %189 ], [ %39, %195 ], [ %39, %201 ], [ %39, %203 ]
%226 = phi i32 [ %38, %57 ], [ %38, %63 ], [ %38, %69 ], [ %38, %75 ], [ %38, %81 ], [ %38, %87 ], [ %38, %93 ], [ %38, %99 ], [ %38, %105 ], [ %38, %111 ], [ %38, %117 ], [ %38, %123 ], [ %38, %129 ], [ %38, %135 ], [ 1, %141 ], [ %38, %147 ], [ %38, %153 ], [ %38, %159 ], [ %38, %165 ], [ %38, %171 ], [ %38, %177 ], [ %38, %183 ], [ %38, %189 ], [ %38, %195 ], [ %38, %201 ], [ %38, %203 ]
%227 = phi i32 [ %37, %57 ], [ %37, %63 ], [ %37, %69 ], [ %37, %75 ], [ %37, %81 ], [ %37, %87 ], [ %37, %93 ], [ %37, %99 ], [ %37, %105 ], [ %37, %111 ], [ %37, %117 ], [ %37, %123 ], [ %37, %129 ], [ %37, %135 ], [ %37, %141 ], [ 1, %147 ], [ %37, %153 ], [ %37, %159 ], [ %37, %165 ], [ %37, %171 ], [ %37, %177 ], [ %37, %183 ], [ %37, %189 ], [ %37, %195 ], [ %37, %201 ], [ %37, %203 ]
%228 = phi i32 [ %36, %57 ], [ %36, %63 ], [ %36, %69 ], [ %36, %75 ], [ %36, %81 ], [ %36, %87 ], [ %36, %93 ], [ %36, %99 ], [ %36, %105 ], [ %36, %111 ], [ %36, %117 ], [ %36, %123 ], [ %36, %129 ], [ %36, %135 ], [ %36, %141 ], [ %36, %147 ], [ 1, %153 ], [ %36, %159 ], [ %36, %165 ], [ %36, %171 ], [ %36, %177 ], [ %36, %183 ], [ %36, %189 ], [ %36, %195 ], [ %36, %201 ], [ %36, %203 ]
%229 = phi i32 [ %35, %57 ], [ %35, %63 ], [ %35, %69 ], [ %35, %75 ], [ %35, %81 ], [ %35, %87 ], [ %35, %93 ], [ %35, %99 ], [ %35, %105 ], [ %35, %111 ], [ %35, %117 ], [ %35, %123 ], [ %35, %129 ], [ %35, %135 ], [ %35, %141 ], [ %35, %147 ], [ %35, %153 ], [ 1, %159 ], [ %35, %165 ], [ %35, %171 ], [ %35, %177 ], [ %35, %183 ], [ %35, %189 ], [ %35, %195 ], [ %35, %201 ], [ %35, %203 ]
%230 = phi i32 [ %34, %57 ], [ %34, %63 ], [ %34, %69 ], [ %34, %75 ], [ %34, %81 ], [ %34, %87 ], [ %34, %93 ], [ %34, %99 ], [ %34, %105 ], [ %34, %111 ], [ %34, %117 ], [ %34, %123 ], [ %34, %129 ], [ %34, %135 ], [ %34, %141 ], [ %34, %147 ], [ %34, %153 ], [ %34, %159 ], [ 1, %165 ], [ %34, %171 ], [ %34, %177 ], [ %34, %183 ], [ %34, %189 ], [ %34, %195 ], [ %34, %201 ], [ %34, %203 ]
%231 = phi i32 [ %33, %57 ], [ %33, %63 ], [ %33, %69 ], [ %33, %75 ], [ %33, %81 ], [ %33, %87 ], [ %33, %93 ], [ %33, %99 ], [ %33, %105 ], [ %33, %111 ], [ %33, %117 ], [ %33, %123 ], [ %33, %129 ], [ %33, %135 ], [ %33, %141 ], [ %33, %147 ], [ %33, %153 ], [ %33, %159 ], [ %33, %165 ], [ 1, %171 ], [ %33, %177 ], [ %33, %183 ], [ %33, %189 ], [ %33, %195 ], [ %33, %201 ], [ %33, %203 ]
%232 = phi i32 [ %32, %57 ], [ %32, %63 ], [ %32, %69 ], [ %32, %75 ], [ %32, %81 ], [ %32, %87 ], [ %32, %93 ], [ %32, %99 ], [ %32, %105 ], [ %32, %111 ], [ %32, %117 ], [ %32, %123 ], [ %32, %129 ], [ %32, %135 ], [ %32, %141 ], [ %32, %147 ], [ %32, %153 ], [ %32, %159 ], [ %32, %165 ], [ %32, %171 ], [ 1, %177 ], [ %32, %183 ], [ %32, %189 ], [ %32, %195 ], [ %32, %201 ], [ %32, %203 ]
%233 = phi i32 [ %31, %57 ], [ %31, %63 ], [ %31, %69 ], [ %31, %75 ], [ %31, %81 ], [ %31, %87 ], [ %31, %93 ], [ %31, %99 ], [ %31, %105 ], [ %31, %111 ], [ %31, %117 ], [ %31, %123 ], [ %31, %129 ], [ %31, %135 ], [ %31, %141 ], [ %31, %147 ], [ %31, %153 ], [ %31, %159 ], [ %31, %165 ], [ %31, %171 ], [ %31, %177 ], [ 1, %183 ], [ %31, %189 ], [ %31, %195 ], [ %31, %201 ], [ %31, %203 ]
%234 = phi i32 [ %30, %57 ], [ %30, %63 ], [ %30, %69 ], [ %30, %75 ], [ %30, %81 ], [ %30, %87 ], [ %30, %93 ], [ %30, %99 ], [ %30, %105 ], [ %30, %111 ], [ %30, %117 ], [ %30, %123 ], [ %30, %129 ], [ %30, %135 ], [ %30, %141 ], [ %30, %147 ], [ %30, %153 ], [ %30, %159 ], [ %30, %165 ], [ %30, %171 ], [ %30, %177 ], [ %30, %183 ], [ 1, %189 ], [ %30, %195 ], [ %30, %201 ], [ %30, %203 ]
%235 = phi i32 [ %29, %57 ], [ %29, %63 ], [ %29, %69 ], [ %29, %75 ], [ %29, %81 ], [ %29, %87 ], [ %29, %93 ], [ %29, %99 ], [ %29, %105 ], [ %29, %111 ], [ %29, %117 ], [ %29, %123 ], [ %29, %129 ], [ %29, %135 ], [ %29, %141 ], [ %29, %147 ], [ %29, %153 ], [ %29, %159 ], [ %29, %165 ], [ %29, %171 ], [ %29, %177 ], [ %29, %183 ], [ %29, %189 ], [ 1, %195 ], [ %29, %201 ], [ %29, %203 ]
%236 = phi i32 [ %28, %57 ], [ %28, %63 ], [ %28, %69 ], [ %28, %75 ], [ %28, %81 ], [ %28, %87 ], [ %28, %93 ], [ %28, %99 ], [ %28, %105 ], [ %28, %111 ], [ %28, %117 ], [ %28, %123 ], [ %28, %129 ], [ %28, %135 ], [ %28, %141 ], [ %28, %147 ], [ %28, %153 ], [ %28, %159 ], [ %28, %165 ], [ %28, %171 ], [ %28, %177 ], [ %28, %183 ], [ %28, %189 ], [ %28, %195 ], [ 1, %201 ], [ %28, %203 ]
%237 = phi i32 [ %27, %57 ], [ %27, %63 ], [ %27, %69 ], [ %27, %75 ], [ %27, %81 ], [ %27, %87 ], [ %27, %93 ], [ %27, %99 ], [ %27, %105 ], [ %27, %111 ], [ %27, %117 ], [ %27, %123 ], [ %27, %129 ], [ %27, %135 ], [ %27, %141 ], [ %27, %147 ], [ %27, %153 ], [ %27, %159 ], [ %27, %165 ], [ %27, %171 ], [ %27, %177 ], [ %27, %183 ], [ %27, %189 ], [ %27, %195 ], [ %27, %201 ], [ %209, %203 ]
%238 = add nuw i64 %25, 1
%239 = getelementptr inbounds [1001 x i8], [1001 x i8]* %2, i64 0, i64 %238
%240 = load i8, i8* %239
%241 = icmp eq i8 %240, 0
br i1 %241, label %242, label %24
242: ; preds = %210
%243 = icmp eq i32 %211, 26
br i1 %243, label %247, label %244
244: ; preds = %242
%245 = icmp sgt i32 %211, 12
br i1 %245, label %247, label %246
246: ; preds = %18, %244
br label %247
247: ; preds = %244, %242, %246
%248 = phi i8* [ getelementptr inbounds ([20 x i8], [20 x i8]* @str, i64 0, i64 0), %246 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @str.5, i64 0, i64 0), %242 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @str.4, i64 0, i64 0), %244 ]
%249 = call i32 @puts(i8* dereferenceable(1) %248)
%250 = add nuw nsw i32 %10, 1
%251 = load i32, i32* %1
%252 = icmp slt i32 %250, %251
br i1 %252, label %253, label %255
253: ; preds = %247
%254 = load i8, i8* %4
br label %8
255: ; preds = %247, %0
ret i32 0
}