; ModuleID = 'LFortran'
source_filename = "LFortran"

@0 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@1 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@2 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@3 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@4 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@5 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@6 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@7 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@8 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@9 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@10 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@11 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@12 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@13 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@14 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@15 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@16 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@17 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@18 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@19 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@20 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@21 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@22 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@23 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@24 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@25 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@26 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@27 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@28 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@29 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@30 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@31 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@32 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@33 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@34 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@35 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@36 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@37 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@38 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@39 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@40 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@41 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@42 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@43 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@44 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1
@45 = private unnamed_addr constant [11 x i8] c"ERROR STOP\00", align 1
@46 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@47 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 1

define i32 @main(i32 %0, i8** %1) {
.entry:
  %i = alloca i32, align 4
  %j = alloca i32, align 4
  call void @_lpython_call_initial_functions(i32 %0, i8** %1)
  %a = alloca [3 x i1], align 1
  %b = alloca [4 x i1], align 1
  %c = alloca [4 x i1], align 1
  %i1 = alloca i32, align 4
  %j2 = alloca i32, align 4
  %2 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 0
  store i1 true, i1* %2, align 1
  store i32 1, i32* %i1, align 4
  br label %loop.head

loop.head:                                        ; preds = %loop.body, %.entry
  %3 = load i32, i32* %i1, align 4
  %4 = add i32 %3, 1
  %5 = icmp sle i32 %4, 3
  br i1 %5, label %loop.body, label %loop.end

loop.body:                                        ; preds = %loop.head
  %6 = load i32, i32* %i1, align 4
  %7 = add i32 %6, 1
  store i32 %7, i32* %i1, align 4
  %8 = load i32, i32* %i1, align 4
  %9 = sub i32 %8, 1
  %10 = mul i32 1, %9
  %11 = add i32 0, %10
  %12 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 %11
  %13 = load i32, i32* %i1, align 4
  %14 = sub i32 %13, 1
  %15 = sub i32 %14, 1
  %16 = mul i32 1, %15
  %17 = add i32 0, %16
  %18 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 %17
  %19 = load i1, i1* %18, align 1
  %20 = xor i1 %19, true
  store i1 %20, i1* %12, align 1
  br label %loop.head

loop.end:                                         ; preds = %loop.head
  %21 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 0
  %22 = load i1, i1* %21, align 1
  %23 = xor i1 %22, true
  br i1 %23, label %then, label %else

then:                                             ; preds = %loop.end
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @2, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @0, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @1, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont

else:                                             ; preds = %loop.end
  br label %ifcont

ifcont:                                           ; preds = %else, %then
  %24 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 1
  %25 = load i1, i1* %24, align 1
  br i1 %25, label %then3, label %else4

then3:                                            ; preds = %ifcont
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @5, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @3, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @4, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont5

else4:                                            ; preds = %ifcont
  br label %ifcont5

ifcont5:                                          ; preds = %else4, %then3
  %26 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 2
  %27 = load i1, i1* %26, align 1
  %28 = xor i1 %27, true
  br i1 %28, label %then6, label %else7

then6:                                            ; preds = %ifcont5
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @8, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @6, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @7, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont8

else7:                                            ; preds = %ifcont5
  br label %ifcont8

ifcont8:                                          ; preds = %else7, %then6
  %29 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 0
  store i1 false, i1* %29, align 1
  store i32 11, i32* %i1, align 4
  br label %loop.head9

loop.head9:                                       ; preds = %loop.body10, %ifcont8
  %30 = load i32, i32* %i1, align 4
  %31 = add i32 %30, 1
  %32 = icmp sle i32 %31, 14
  br i1 %32, label %loop.body10, label %loop.end11

loop.body10:                                      ; preds = %loop.head9
  %33 = load i32, i32* %i1, align 4
  %34 = add i32 %33, 1
  store i32 %34, i32* %i1, align 4
  %35 = load i32, i32* %i1, align 4
  %36 = sub i32 %35, 10
  %37 = sub i32 %36, 1
  %38 = mul i32 1, %37
  %39 = add i32 0, %38
  %40 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 %39
  %41 = load i32, i32* %i1, align 4
  %42 = sub i32 %41, 10
  %43 = sub i32 %42, 1
  %44 = sub i32 %43, 1
  %45 = mul i32 1, %44
  %46 = add i32 0, %45
  %47 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 %46
  %48 = load i1, i1* %47, align 1
  %49 = xor i1 %48, true
  store i1 %49, i1* %40, align 1
  br label %loop.head9

loop.end11:                                       ; preds = %loop.head9
  %50 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 0
  %51 = load i1, i1* %50, align 1
  br i1 %51, label %then12, label %else13

then12:                                           ; preds = %loop.end11
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @11, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @9, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @10, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont14

else13:                                           ; preds = %loop.end11
  br label %ifcont14

ifcont14:                                         ; preds = %else13, %then12
  %52 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 1
  %53 = load i1, i1* %52, align 1
  %54 = xor i1 %53, true
  br i1 %54, label %then15, label %else16

then15:                                           ; preds = %ifcont14
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @14, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @12, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @13, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont17

else16:                                           ; preds = %ifcont14
  br label %ifcont17

ifcont17:                                         ; preds = %else16, %then15
  %55 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 2
  %56 = load i1, i1* %55, align 1
  br i1 %56, label %then18, label %else19

then18:                                           ; preds = %ifcont17
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @17, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @15, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @16, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont20

else19:                                           ; preds = %ifcont17
  br label %ifcont20

ifcont20:                                         ; preds = %else19, %then18
  %57 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 3
  %58 = load i1, i1* %57, align 1
  %59 = xor i1 %58, true
  br i1 %59, label %then21, label %else22

then21:                                           ; preds = %ifcont20
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @20, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @18, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @19, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont23

else22:                                           ; preds = %ifcont20
  br label %ifcont23

ifcont23:                                         ; preds = %else22, %then21
  store i32 0, i32* %i1, align 4
  br label %loop.head24

loop.head24:                                      ; preds = %loop.body25, %ifcont23
  %60 = load i32, i32* %i1, align 4
  %61 = add i32 %60, 1
  %62 = icmp sle i32 %61, 3
  br i1 %62, label %loop.body25, label %loop.end26

loop.body25:                                      ; preds = %loop.head24
  %63 = load i32, i32* %i1, align 4
  %64 = add i32 %63, 1
  store i32 %64, i32* %i1, align 4
  %65 = load i32, i32* %i1, align 4
  %66 = sub i32 %65, 1
  %67 = mul i32 1, %66
  %68 = add i32 0, %67
  %69 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 %68
  %70 = load i32, i32* %i1, align 4
  %71 = sub i32 %70, 1
  %72 = mul i32 1, %71
  %73 = add i32 0, %72
  %74 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 %73
  %75 = load i1, i1* %74, align 1
  %76 = icmp eq i1 %75, false
  %77 = select i1 %76, i1 %75, i1 false
  store i1 %77, i1* %69, align 1
  br label %loop.head24

loop.end26:                                       ; preds = %loop.head24
  %78 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 0
  %79 = load i1, i1* %78, align 1
  br i1 %79, label %then27, label %else28

then27:                                           ; preds = %loop.end26
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @23, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @21, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @22, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont29

else28:                                           ; preds = %loop.end26
  br label %ifcont29

ifcont29:                                         ; preds = %else28, %then27
  %80 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 1
  %81 = load i1, i1* %80, align 1
  br i1 %81, label %then30, label %else31

then30:                                           ; preds = %ifcont29
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @26, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @24, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @25, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont32

else31:                                           ; preds = %ifcont29
  br label %ifcont32

ifcont32:                                         ; preds = %else31, %then30
  %82 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 2
  %83 = load i1, i1* %82, align 1
  br i1 %83, label %then33, label %else34

then33:                                           ; preds = %ifcont32
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @29, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @27, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @28, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont35

else34:                                           ; preds = %ifcont32
  br label %ifcont35

ifcont35:                                         ; preds = %else34, %then33
  %84 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 3
  %85 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 0
  %86 = load i1, i1* %85, align 1
  %87 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 1
  %88 = load i1, i1* %87, align 1
  %89 = icmp eq i1 %86, false
  %90 = select i1 %89, i1 %88, i1 %86
  %91 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 2
  %92 = load i1, i1* %91, align 1
  %93 = icmp eq i1 %90, false
  %94 = select i1 %93, i1 %92, i1 %90
  %95 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 0
  %96 = load i1, i1* %95, align 1
  %97 = icmp eq i1 %94, false
  %98 = select i1 %97, i1 %96, i1 %94
  store i1 %98, i1* %84, align 1
  %99 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 3
  %100 = load i1, i1* %99, align 1
  %101 = xor i1 %100, true
  br i1 %101, label %then36, label %else37

then36:                                           ; preds = %ifcont35
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @32, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @30, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @31, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont38

else37:                                           ; preds = %ifcont35
  br label %ifcont38

ifcont38:                                         ; preds = %else37, %then36
  %102 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 3
  %103 = getelementptr [3 x i1], [3 x i1]* %a, i32 0, i32 0
  %104 = load i1, i1* %103, align 1
  store i1 %104, i1* %102, align 1
  %105 = getelementptr [4 x i1], [4 x i1]* %b, i32 0, i32 3
  %106 = load i1, i1* %105, align 1
  %107 = xor i1 %106, true
  br i1 %107, label %then39, label %else40

then39:                                           ; preds = %ifcont38
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @35, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @33, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @34, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont41

else40:                                           ; preds = %ifcont38
  br label %ifcont41

ifcont41:                                         ; preds = %else40, %then39
  store i32 0, i32* %i1, align 4
  br label %loop.head42

loop.head42:                                      ; preds = %loop.end49, %ifcont41
  %108 = load i32, i32* %i1, align 4
  %109 = add i32 %108, 1
  %110 = icmp sle i32 %109, 2
  br i1 %110, label %loop.body43, label %loop.end50

loop.body43:                                      ; preds = %loop.head42
  %111 = load i32, i32* %i1, align 4
  %112 = add i32 %111, 1
  store i32 %112, i32* %i1, align 4
  store i32 0, i32* %j2, align 4
  br label %loop.head44

loop.head44:                                      ; preds = %ifcont48, %loop.body43
  %113 = load i32, i32* %j2, align 4
  %114 = add i32 %113, 1
  %115 = icmp sle i32 %114, 2
  br i1 %115, label %loop.body45, label %loop.end49

loop.body45:                                      ; preds = %loop.head44
  %116 = load i32, i32* %j2, align 4
  %117 = add i32 %116, 1
  store i32 %117, i32* %j2, align 4
  %118 = load i32, i32* %i1, align 4
  %119 = load i32, i32* %j2, align 4
  %120 = add i32 %118, %119
  %121 = load i32, i32* %i1, align 4
  %122 = load i32, i32* %j2, align 4
  %123 = add i32 %121, %122
  %124 = sdiv i32 %123, 2
  %125 = mul i32 2, %124
  %126 = sub i32 %120, %125
  %127 = icmp eq i32 %126, 1
  br i1 %127, label %then46, label %else47

then46:                                           ; preds = %loop.body45
  %128 = load i32, i32* %i1, align 4
  %129 = load i32, i32* %j2, align 4
  %130 = sub i32 %128, 1
  %131 = mul i32 1, %130
  %132 = add i32 0, %131
  %133 = sub i32 %129, 1
  %134 = mul i32 2, %133
  %135 = add i32 %132, %134
  %136 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 %135
  store i1 true, i1* %136, align 1
  br label %ifcont48

else47:                                           ; preds = %loop.body45
  %137 = load i32, i32* %i1, align 4
  %138 = load i32, i32* %j2, align 4
  %139 = sub i32 %137, 1
  %140 = mul i32 1, %139
  %141 = add i32 0, %140
  %142 = sub i32 %138, 1
  %143 = mul i32 2, %142
  %144 = add i32 %141, %143
  %145 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 %144
  store i1 false, i1* %145, align 1
  br label %ifcont48

ifcont48:                                         ; preds = %else47, %then46
  br label %loop.head44

loop.end49:                                       ; preds = %loop.head44
  br label %loop.head42

loop.end50:                                       ; preds = %loop.head42
  %146 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 0
  %147 = load i1, i1* %146, align 1
  br i1 %147, label %then51, label %else52

then51:                                           ; preds = %loop.end50
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @38, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @36, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @37, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont53

else52:                                           ; preds = %loop.end50
  br label %ifcont53

ifcont53:                                         ; preds = %else52, %then51
  %148 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 2
  %149 = load i1, i1* %148, align 1
  %150 = xor i1 %149, true
  br i1 %150, label %then54, label %else55

then54:                                           ; preds = %ifcont53
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @41, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @39, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @40, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont56

else55:                                           ; preds = %ifcont53
  br label %ifcont56

ifcont56:                                         ; preds = %else55, %then54
  %151 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 1
  %152 = load i1, i1* %151, align 1
  %153 = xor i1 %152, true
  br i1 %153, label %then57, label %else58

then57:                                           ; preds = %ifcont56
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @44, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @42, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @43, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont59

else58:                                           ; preds = %ifcont56
  br label %ifcont59

ifcont59:                                         ; preds = %else58, %then57
  %154 = getelementptr [4 x i1], [4 x i1]* %c, i32 0, i32 3
  %155 = load i1, i1* %154, align 1
  br i1 %155, label %then60, label %else61

then60:                                           ; preds = %ifcont59
  call void (i8*, ...) @_lcompilers_print_error(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @47, i32 0, i32 0), i8* getelementptr inbounds ([11 x i8], [11 x i8]* @45, i32 0, i32 0), i8* getelementptr inbounds ([2 x i8], [2 x i8]* @46, i32 0, i32 0))
  call void @exit(i32 1)
  br label %ifcont62

else61:                                           ; preds = %ifcont59
  br label %ifcont62

ifcont62:                                         ; preds = %else61, %then60
  call void @_lpython_free_argv()
  br label %return

return:                                           ; preds = %ifcont62
  ret i32 0
}

declare void @_lpython_call_initial_functions(i32, i8**)

declare void @_lcompilers_print_error(i8*, ...)

declare void @exit(i32)

declare void @_lpython_free_argv()
