#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*/ printf(char *);
int /*<<< orphan*/ scanf(char *, int *);
int main() {
  int entrada;
  scanf("%d", &entrada);
  switch (entrada) {
  case 1:
    printf("Nome: ACRE\nSigla: AC\nCapital: RIO BRANCO\nRegiao: NORTE\n");
    break;
  case 2:
    printf("Nome: ALAGOAS\nSigla: AL\nCapital: MACEIO\nRegiao: NORDESTE\n");
    break;
  case 3:
    printf("Nome: AMAPA\nSigla: AP\nCapital: MACAPA\nRegiao: NORTE\n");
    break;
  case 4:
    printf("Nome: AMAZONAS\nSigla: AM\nCapital: MANAUS\nRegiao: NORTE\n");
    break;
  case 5:
    printf("Nome: BAHIA\nSigla: BA\nCapital: SALVADOR\nRegiao: NORDESTE\n");
    break;
  case 6:
    printf("Nome: CEARA\nSigla: CE\nCapital: FORTALEZA\nRegiao: NORDESTE\n");
    break;
  case 7:
    printf(
        "Nome: ESPIRITO SANTO\nSigla: ES\nCapital: VITORIA\nRegiao: SUDESTE\n");
    break;
  case 8:
    printf("Nome: GOIAS\nSigla: GO\nCapital: GOIANIA\nRegiao: CENTRO-OESTE\n");
    break;
  case 9:
    printf("Nome: MARANHAO\nSigla: MA\nCapital: SAO LUIS\nRegiao: NORDESTE\n");
    break;
  case 10:
    printf("Nome: MATO GROSSO\nSigla: MT\nCapital: CUIABA\nRegiao: "
           "CENTRO-OESTE\n");
    break;
  case 11:
    printf("Nome: MATO GROSSO DO SUL\nSigla: MS\nCapital: CAMPO "
           "GRANDE\nRegiao: CENTRO-OESTE\n");
    break;
  case 12:
    printf("Nome: MINAS GERAIS\nSigla: MG\nCapital: BELO HORIZONTE\nRegiao: "
           "SUDESTE\n");
    break;
  case 13:
    printf("Nome: PARA\nSigla: PA\nCapital: BELÉM\nRegiao: NORTE\n");
    break;
  case 14:
    printf(
        "Nome: PARAIBA\nSigla: PB\nCapital: JOAO PESSOA\nRegiao: NORDESTE\n");
    break;
  case 15:
    printf("Nome: PARANA\nSigla: PR\nCapital: CURITIBA\nRegiao: SUL\n");
    break;
  case 16:
    printf("Nome: PERNAMBUCO\nSigla: PE\nCapital: RECIFE\nRegiao: NORDESTE\n");
    break;
  case 17:
    printf("Nome: PIAUI\nSigla: PI\nCapital: TERESINA\nRegiao: NORDESTE\n");
    break;
  case 18:
    printf("Nome: RIO DE JANEIRO\nSigla: RJ\nCapital: RIO DE JANEIRO\nRegiao: "
           "SUDOESTE\n");
    break;
  case 19:
    printf("Nome: RIO GRANDE DO NORTE\nSigla: RN\nCapital: NATAL\nRegiao: "
           "NORDESTE\n");
    break;
  case 20:
    printf("Nome: RIO GRANDE DO SUL\nSigla: RS\nCapital: PORTO ALEGRE\nRegiao: "
           "SUL\n");
    break;
  case 21:
    printf("Nome: RONDÔNIA\nSigla: RO\nCapital: PORTO VELHO\nRegiao: NORTE\n");
    break;
  case 22:
    printf("Nome: RORAIMA\nSigla: RR\nCapital: BOA VISTA\nRegiao: NORTE\n");
    break;
  case 23:
    printf("Nome: SANTA CATARINA\nSigla: SC\nCapital: FLORIANOPOLIS\nRegiao: "
           "SUL\n");
    break;
  case 24:
    printf("Nome: SAO PAULO\nSigla: SP\nCapital: SAO PAULO\nRegiao: SUDESTE\n");
    break;
  case 25:
    printf("Nome: SERGIPE\nSigla: SE\nCapital: ARACAJU\nRegiao: NORDESTE\n");
    break;
  case 26:
    printf("Nome: TOCANTINS\nSigla: TO\nCapital: PALMAS\nRegiao: NORTE\n");
    break;
  default:
    printf("INEXISTENTE");
    break;
  }
  return 0;
}


x86 assembly (clang, -O0):
<main>:
push   %rbp
mov    %rsp,%rbp
sub    $0x10,%rsp
movl   $0x0,-0x4(%rbp)
lea    0xf32(%rip),%rdi
lea    -0x8(%rbp),%rsi
call   1040 <scanf@plt>
mov    -0x8(%rbp),%eax
add    $0xffffffff,%eax
mov    %eax,%ecx
mov    %rcx,-0x10(%rbp)
sub    $0x19,%eax
ja     1322 <main+0x202>
mov    -0x10(%rbp),%rax
lea    0xea1(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0xefc(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xf23(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xf4c(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xf70(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xf97(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xfc0(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0xfea(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x101a(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1046(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1072(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x10a3(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x10e1(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1116(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1139(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1167(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x118c(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x11b8(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x11e1(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1219(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x124d(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1281(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x12ae(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x12d7(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1309(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1336(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1360(%rip),%rdi
call   1030 <printf@plt>
jmp    132e <main+0x20e>
lea    0x1388(%rip),%rdi
call   1030 <printf@plt>
xor    %eax,%eax
add    $0x10,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<main>:
push   %rax
lea    0xf30(%rip),%rdi
lea    0x4(%rsp),%rsi
call   1050 <scanf@plt>
mov    0x4(%rsp),%eax
add    $0xffffffff,%eax
cmp    $0x19,%eax
ja     116a <main+0x3a>
lea    0xeab(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x1507(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xefa(%rip),%rdi
call   1040 <printf@plt>
jmp    127d <main+0x14d>
lea    0x14b1(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1471(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x142e(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x13e9(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x13a3(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1357(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x130f(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x12c7(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x127a(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1220(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x11cf(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1193(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x114c(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x110e(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x10c9(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1087(%rip),%rdi
jmp    1278 <main+0x148>
lea    0x1036(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xfe9(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xf9c(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xf56(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xf14(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xec9(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xe83(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xe40(%rip),%rdi
jmp    1278 <main+0x148>
lea    0xdff(%rip),%rdi
call   1030 <puts@plt>
xor    %eax,%eax
pop    %rcx
ret

LLVM IR (-O0):
@.str = [3 x i8] c"%d\00"
@.str.1 = [56 x i8] c"Nome: ACRE\0ASigla: AC\0ACapital: RIO BRANCO\0ARegiao: NORTE\0A\00"
@.str.2 = [58 x i8] c"Nome: ALAGOAS\0ASigla: AL\0ACapital: MACEIO\0ARegiao: NORDESTE\0A\00"
@.str.3 = [53 x i8] c"Nome: AMAPA\0ASigla: AP\0ACapital: MACAPA\0ARegiao: NORTE\0A\00"
@.str.4 = [56 x i8] c"Nome: AMAZONAS\0ASigla: AM\0ACapital: MANAUS\0ARegiao: NORTE\0A\00"
@.str.5 = [58 x i8] c"Nome: BAHIA\0ASigla: BA\0ACapital: SALVADOR\0ARegiao: NORDESTE\0A\00"
@.str.6 = [59 x i8] c"Nome: CEARA\0ASigla: CE\0ACapital: FORTALEZA\0ARegiao: NORDESTE\0A\00"
@.str.7 = [65 x i8] c"Nome: ESPIRITO SANTO\0ASigla: ES\0ACapital: VITORIA\0ARegiao: SUDESTE\0A\00"
@.str.8 = [61 x i8] c"Nome: GOIAS\0ASigla: GO\0ACapital: GOIANIA\0ARegiao: CENTRO-OESTE\0A\00"
@.str.9 = [61 x i8] c"Nome: MARANHAO\0ASigla: MA\0ACapital: SAO LUIS\0ARegiao: NORDESTE\0A\00"
@.str.10 = [66 x i8] c"Nome: MATO GROSSO\0ASigla: MT\0ACapital: CUIABA\0ARegiao: CENTRO-OESTE\0A\00"
@.str.11 = [79 x i8] c"Nome: MATO GROSSO DO SUL\0ASigla: MS\0ACapital: CAMPO GRANDE\0ARegiao: CENTRO-OESTE\0A\00"
@.str.12 = [70 x i8] c"Nome: MINAS GERAIS\0ASigla: MG\0ACapital: BELO HORIZONTE\0ARegiao: SUDESTE\0A\00"
@.str.13 = [52 x i8] c"Nome: PARA\0ASigla: PA\0ACapital: BEL\C3\89M\0ARegiao: NORTE\0A\00"
@.str.14 = [63 x i8] c"Nome: PARAIBA\0ASigla: PB\0ACapital: JOAO PESSOA\0ARegiao: NORDESTE\0A\00"
@.str.15 = [54 x i8] c"Nome: PARANA\0ASigla: PR\0ACapital: CURITIBA\0ARegiao: SUL\0A\00"
@.str.16 = [61 x i8] c"Nome: PERNAMBUCO\0ASigla: PE\0ACapital: RECIFE\0ARegiao: NORDESTE\0A\00"
@.str.17 = [58 x i8] c"Nome: PIAUI\0ASigla: PI\0ACapital: TERESINA\0ARegiao: NORDESTE\0A\00"
@.str.18 = [73 x i8] c"Nome: RIO DE JANEIRO\0ASigla: RJ\0ACapital: RIO DE JANEIRO\0ARegiao: SUDOESTE\0A\00"
@.str.19 = [69 x i8] c"Nome: RIO GRANDE DO NORTE\0ASigla: RN\0ACapital: NATAL\0ARegiao: NORDESTE\0A\00"
@.str.20 = [69 x i8] c"Nome: RIO GRANDE DO SUL\0ASigla: RS\0ACapital: PORTO ALEGRE\0ARegiao: SUL\0A\00"
@.str.21 = [62 x i8] c"Nome: ROND\C3\94NIA\0ASigla: RO\0ACapital: PORTO VELHO\0ARegiao: NORTE\0A\00"
@.str.22 = [58 x i8] c"Nome: RORAIMA\0ASigla: RR\0ACapital: BOA VISTA\0ARegiao: NORTE\0A\00"
@.str.23 = [67 x i8] c"Nome: SANTA CATARINA\0ASigla: SC\0ACapital: FLORIANOPOLIS\0ARegiao: SUL\0A\00"
@.str.24 = [62 x i8] c"Nome: SAO PAULO\0ASigla: SP\0ACapital: SAO PAULO\0ARegiao: SUDESTE\0A\00"
@.str.25 = [59 x i8] c"Nome: SERGIPE\0ASigla: SE\0ACapital: ARACAJU\0ARegiao: NORDESTE\0A\00"
@.str.26 = [57 x i8] c"Nome: TOCANTINS\0ASigla: TO\0ACapital: PALMAS\0ARegiao: NORTE\0A\00"
@.str.27 = [12 x i8] c"INEXISTENTE\00"
define i32 @main() {
%1 = alloca i32
%2 = alloca i32
store i32 0, i32* %1
%3 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str, i64 0, i64 0), i32* %2)
%4 = load i32, i32* %2
switch i32 %4, label %57 [
i32 1, label %5
i32 2, label %7
i32 3, label %9
i32 4, label %11
i32 5, label %13
i32 6, label %15
i32 7, label %17
i32 8, label %19
i32 9, label %21
i32 10, label %23
i32 11, label %25
i32 12, label %27
i32 13, label %29
i32 14, label %31
i32 15, label %33
i32 16, label %35
i32 17, label %37
i32 18, label %39
i32 19, label %41
i32 20, label %43
i32 21, label %45
i32 22, label %47
i32 23, label %49
i32 24, label %51
i32 25, label %53
i32 26, label %55
]
5: ; preds = %0
%6 = call i32 @printf(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.1, i64 0, i64 0))
br label %59
7: ; preds = %0
%8 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.2, i64 0, i64 0))
br label %59
9: ; preds = %0
%10 = call i32 @printf(i8* getelementptr inbounds ([53 x i8], [53 x i8]* @.str.3, i64 0, i64 0))
br label %59
11: ; preds = %0
%12 = call i32 @printf(i8* getelementptr inbounds ([56 x i8], [56 x i8]* @.str.4, i64 0, i64 0))
br label %59
13: ; preds = %0
%14 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.5, i64 0, i64 0))
br label %59
15: ; preds = %0
%16 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.6, i64 0, i64 0))
br label %59
17: ; preds = %0
%18 = call i32 @printf(i8* getelementptr inbounds ([65 x i8], [65 x i8]* @.str.7, i64 0, i64 0))
br label %59
19: ; preds = %0
%20 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.8, i64 0, i64 0))
br label %59
21: ; preds = %0
%22 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.9, i64 0, i64 0))
br label %59
23: ; preds = %0
%24 = call i32 @printf(i8* getelementptr inbounds ([66 x i8], [66 x i8]* @.str.10, i64 0, i64 0))
br label %59
25: ; preds = %0
%26 = call i32 @printf(i8* getelementptr inbounds ([79 x i8], [79 x i8]* @.str.11, i64 0, i64 0))
br label %59
27: ; preds = %0
%28 = call i32 @printf(i8* getelementptr inbounds ([70 x i8], [70 x i8]* @.str.12, i64 0, i64 0))
br label %59
29: ; preds = %0
%30 = call i32 @printf(i8* getelementptr inbounds ([52 x i8], [52 x i8]* @.str.13, i64 0, i64 0))
br label %59
31: ; preds = %0
%32 = call i32 @printf(i8* getelementptr inbounds ([63 x i8], [63 x i8]* @.str.14, i64 0, i64 0))
br label %59
33: ; preds = %0
%34 = call i32 @printf(i8* getelementptr inbounds ([54 x i8], [54 x i8]* @.str.15, i64 0, i64 0))
br label %59
35: ; preds = %0
%36 = call i32 @printf(i8* getelementptr inbounds ([61 x i8], [61 x i8]* @.str.16, i64 0, i64 0))
br label %59
37: ; preds = %0
%38 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.17, i64 0, i64 0))
br label %59
39: ; preds = %0
%40 = call i32 @printf(i8* getelementptr inbounds ([73 x i8], [73 x i8]* @.str.18, i64 0, i64 0))
br label %59
41: ; preds = %0
%42 = call i32 @printf(i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.19, i64 0, i64 0))
br label %59
43: ; preds = %0
%44 = call i32 @printf(i8* getelementptr inbounds ([69 x i8], [69 x i8]* @.str.20, i64 0, i64 0))
br label %59
45: ; preds = %0
%46 = call i32 @printf(i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.21, i64 0, i64 0))
br label %59
47: ; preds = %0
%48 = call i32 @printf(i8* getelementptr inbounds ([58 x i8], [58 x i8]* @.str.22, i64 0, i64 0))
br label %59
49: ; preds = %0
%50 = call i32 @printf(i8* getelementptr inbounds ([67 x i8], [67 x i8]* @.str.23, i64 0, i64 0))
br label %59
51: ; preds = %0
%52 = call i32 @printf(i8* getelementptr inbounds ([62 x i8], [62 x i8]* @.str.24, i64 0, i64 0))
br label %59
53: ; preds = %0
%54 = call i32 @printf(i8* getelementptr inbounds ([59 x i8], [59 x i8]* @.str.25, i64 0, i64 0))
br label %59
55: ; preds = %0
%56 = call i32 @printf(i8* getelementptr inbounds ([57 x i8], [57 x i8]* @.str.26, i64 0, i64 0))
br label %59
57: ; preds = %0
%58 = call i32 @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.27, i64 0, i64 0))
br label %59
59: ; preds = %57, %55, %53, %51, %49, %47, %45, %43, %41, %39, %37, %35, %33, %31, %29, %27, %25, %23, %21, %19, %17, %15, %13, %11, %9, %7, %5
ret i32 0
}

LLVM IR (-O2):
@.str = [3 x i8] c"%d\00"
@.str.27 = [12 x i8] c"INEXISTENTE\00"
@str = [56 x i8] c"Nome: TOCANTINS\0ASigla: TO\0ACapital: PALMAS\0ARegiao: NORTE\00"
@str.28 = [58 x i8] c"Nome: SERGIPE\0ASigla: SE\0ACapital: ARACAJU\0ARegiao: NORDESTE\00"
@str.29 = [61 x i8] c"Nome: SAO PAULO\0ASigla: SP\0ACapital: SAO PAULO\0ARegiao: SUDESTE\00"
@str.30 = [66 x i8] c"Nome: SANTA CATARINA\0ASigla: SC\0ACapital: FLORIANOPOLIS\0ARegiao: SUL\00"
@str.31 = [57 x i8] c"Nome: RORAIMA\0ASigla: RR\0ACapital: BOA VISTA\0ARegiao: NORTE\00"
@str.32 = [61 x i8] c"Nome: ROND\C3\94NIA\0ASigla: RO\0ACapital: PORTO VELHO\0ARegiao: NORTE\00"
@str.33 = [68 x i8] c"Nome: RIO GRANDE DO SUL\0ASigla: RS\0ACapital: PORTO ALEGRE\0ARegiao: SUL\00"
@str.34 = [68 x i8] c"Nome: RIO GRANDE DO NORTE\0ASigla: RN\0ACapital: NATAL\0ARegiao: NORDESTE\00"
@str.35 = [72 x i8] c"Nome: RIO DE JANEIRO\0ASigla: RJ\0ACapital: RIO DE JANEIRO\0ARegiao: SUDOESTE\00"
@str.36 = [57 x i8] c"Nome: PIAUI\0ASigla: PI\0ACapital: TERESINA\0ARegiao: NORDESTE\00"
@str.37 = [60 x i8] c"Nome: PERNAMBUCO\0ASigla: PE\0ACapital: RECIFE\0ARegiao: NORDESTE\00"
@str.38 = [53 x i8] c"Nome: PARANA\0ASigla: PR\0ACapital: CURITIBA\0ARegiao: SUL\00"
@str.39 = [62 x i8] c"Nome: PARAIBA\0ASigla: PB\0ACapital: JOAO PESSOA\0ARegiao: NORDESTE\00"
@str.40 = [51 x i8] c"Nome: PARA\0ASigla: PA\0ACapital: BEL\C3\89M\0ARegiao: NORTE\00"
@str.41 = [69 x i8] c"Nome: MINAS GERAIS\0ASigla: MG\0ACapital: BELO HORIZONTE\0ARegiao: SUDESTE\00"
@str.42 = [78 x i8] c"Nome: MATO GROSSO DO SUL\0ASigla: MS\0ACapital: CAMPO GRANDE\0ARegiao: CENTRO-OESTE\00"
@str.43 = [65 x i8] c"Nome: MATO GROSSO\0ASigla: MT\0ACapital: CUIABA\0ARegiao: CENTRO-OESTE\00"
@str.44 = [60 x i8] c"Nome: MARANHAO\0ASigla: MA\0ACapital: SAO LUIS\0ARegiao: NORDESTE\00"
@str.45 = [60 x i8] c"Nome: GOIAS\0ASigla: GO\0ACapital: GOIANIA\0ARegiao: CENTRO-OESTE\00"
@str.46 = [64 x i8] c"Nome: ESPIRITO SANTO\0ASigla: ES\0ACapital: VITORIA\0ARegiao: SUDESTE\00"
@str.47 = [58 x i8] c"Nome: CEARA\0ASigla: CE\0ACapital: FORTALEZA\0ARegiao: NORDESTE\00"
@str.48 = [57 x i8] c"Nome: BAHIA\0ASigla: BA\0ACapital: SALVADOR\0ARegiao: NORDESTE\00"
@str.49 = [55 x i8] c"Nome: AMAZONAS\0ASigla: AM\0ACapital: MANAUS\0ARegiao: NORTE\00"
@str.50 = [52 x i8] c"Nome: AMAPA\0ASigla: AP\0ACapital: MACAPA\0ARegiao: NORTE\00"
@str.51 = [57 x i8] c"Nome: ALAGOAS\0ASigla: AL\0ACapital: MACEIO\0ARegiao: NORDESTE\00"
@str.52 = [55 x i8] c"Nome: ACRE\0ASigla: AC\0ACapital: RIO BRANCO\0ARegiao: NORTE\00"
define i32 @main() {
%1 = alloca i32
%2 = bitcast i32* %1 to i8*
%3 = call i32 @scanf(i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str, i64 0, i64 0), i32* %1)
%4 = load i32, i32* %1
switch i32 %4, label %57 [
i32 1, label %5
i32 2, label %7
i32 3, label %9
i32 4, label %11
i32 5, label %13
i32 6, label %15
i32 7, label %17
i32 8, label %19
i32 9, label %21
i32 10, label %23
i32 11, label %25
i32 12, label %27
i32 13, label %29
i32 14, label %31
i32 15, label %33
i32 16, label %35
i32 17, label %37
i32 18, label %39
i32 19, label %41
i32 20, label %43
i32 21, label %45
i32 22, label %47
i32 23, label %49
i32 24, label %51
i32 25, label %53
i32 26, label %55
]
5: ; preds = %0
%6 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @str.52, i64 0, i64 0))
br label %59
7: ; preds = %0
%8 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @str.51, i64 0, i64 0))
br label %59
9: ; preds = %0
%10 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([52 x i8], [52 x i8]* @str.50, i64 0, i64 0))
br label %59
11: ; preds = %0
%12 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([55 x i8], [55 x i8]* @str.49, i64 0, i64 0))
br label %59
13: ; preds = %0
%14 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @str.48, i64 0, i64 0))
br label %59
15: ; preds = %0
%16 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @str.47, i64 0, i64 0))
br label %59
17: ; preds = %0
%18 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([64 x i8], [64 x i8]* @str.46, i64 0, i64 0))
br label %59
19: ; preds = %0
%20 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @str.45, i64 0, i64 0))
br label %59
21: ; preds = %0
%22 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @str.44, i64 0, i64 0))
br label %59
23: ; preds = %0
%24 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([65 x i8], [65 x i8]* @str.43, i64 0, i64 0))
br label %59
25: ; preds = %0
%26 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([78 x i8], [78 x i8]* @str.42, i64 0, i64 0))
br label %59
27: ; preds = %0
%28 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([69 x i8], [69 x i8]* @str.41, i64 0, i64 0))
br label %59
29: ; preds = %0
%30 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([51 x i8], [51 x i8]* @str.40, i64 0, i64 0))
br label %59
31: ; preds = %0
%32 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([62 x i8], [62 x i8]* @str.39, i64 0, i64 0))
br label %59
33: ; preds = %0
%34 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([53 x i8], [53 x i8]* @str.38, i64 0, i64 0))
br label %59
35: ; preds = %0
%36 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([60 x i8], [60 x i8]* @str.37, i64 0, i64 0))
br label %59
37: ; preds = %0
%38 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @str.36, i64 0, i64 0))
br label %59
39: ; preds = %0
%40 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([72 x i8], [72 x i8]* @str.35, i64 0, i64 0))
br label %59
41: ; preds = %0
%42 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([68 x i8], [68 x i8]* @str.34, i64 0, i64 0))
br label %59
43: ; preds = %0
%44 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([68 x i8], [68 x i8]* @str.33, i64 0, i64 0))
br label %59
45: ; preds = %0
%46 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @str.32, i64 0, i64 0))
br label %59
47: ; preds = %0
%48 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([57 x i8], [57 x i8]* @str.31, i64 0, i64 0))
br label %59
49: ; preds = %0
%50 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([66 x i8], [66 x i8]* @str.30, i64 0, i64 0))
br label %59
51: ; preds = %0
%52 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([61 x i8], [61 x i8]* @str.29, i64 0, i64 0))
br label %59
53: ; preds = %0
%54 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([58 x i8], [58 x i8]* @str.28, i64 0, i64 0))
br label %59
55: ; preds = %0
%56 = call i32 @puts(i8* dereferenceable(1) getelementptr inbounds ([56 x i8], [56 x i8]* @str, i64 0, i64 0))
br label %59
57: ; preds = %0
%58 = call i32 @printf(i8* dereferenceable(1) getelementptr inbounds ([12 x i8], [12 x i8]* @.str.27, i64 0, i64 0))
br label %59
59: ; preds = %57, %55, %53, %51, %49, %47, %45, %43, %41, %39, %37, %35, %33, %31, %29, %27, %25, %23, %21, %19, %17, %15, %13, %11, %9, %7, %5
ret i32 0
}