program sample
    implicit none
    character(100)::s,t
    integer(8) :: i,j,m,n,a,b
    integer(8) :: x(26),y(26)
  
    read(*,*) s
    read(*,*) t
    x(:)=0
    y(:)=0
    m=len_trim(s)
    n=len_trim(t)
    do i=1,m
        a=ichar(s(i:i))-96
        x(a)=x(a)+1
    end do
    do i=1,n
        a=ichar(t(i:i))-96
        y(a)=y(a)+1
    end do
    do i=1,26
        if(x(i)/=0)then
            a=i
            exit
        end if
    end do
    do i=26,1,-1
        if(y(i)/=0)then
            b=i
            exit
        end if
    end do
    
    if(a>b)then
        write(*,*)'No'
    else if(a<b)then
        write(*,*)'Yes'
    else if(x(a)/=m .or. y(b)/=n)then
        write(*,*)'No'
    elseif(n>m)then
        write(*,*)'Yes'
    elseif(n<=m)then
        write(*,*)'No'
    end if

  
    stop
end program sample
  


; ModuleID = 'FIRModule'
source_filename = "FIRModule"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-linux-gnu"

@_QFEs = internal global [100 x i8] undef
@_QFEt = internal global [100 x i8] undef
@_QFEx = internal unnamed_addr global [26 x i64] undef
@_QFEy = internal unnamed_addr global [26 x i64] undef
@_QQcl.87286c20817ea066c914fe76e87f6d79 = linkonce constant [73 x i8] c"/home/ubuntu/Downloads/TheStack_IR/Collated/Fortran/Source_6561/source.f\00"
@_QQcl.4E6F = linkonce constant [2 x i8] c"No"
@_QQcl.596573 = linkonce constant [3 x i8] c"Yes"
@_QQEnvironmentDefaults = local_unnamed_addr constant ptr null

; Function Attrs: noreturn
define void @_QQmain() local_unnamed_addr #0 {
.preheader48.preheader:
  %0 = tail call ptr @_FortranAioBeginExternalListInput(i32 -1, ptr nonnull @_QQcl.87286c20817ea066c914fe76e87f6d79, i32 7)
  %1 = tail call i1 @_FortranAioInputAscii(ptr %0, ptr nonnull @_QFEs, i64 100)
  %2 = tail call i32 @_FortranAioEndIoStatement(ptr %0)
  %3 = tail call ptr @_FortranAioBeginExternalListInput(i32 -1, ptr nonnull @_QQcl.87286c20817ea066c914fe76e87f6d79, i32 8)
  %4 = tail call i1 @_FortranAioInputAscii(ptr %3, ptr nonnull @_QFEt, i64 100)
  %5 = tail call i32 @_FortranAioEndIoStatement(ptr %3)
  tail call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(208) @_QFEx, i8 0, i64 208, i1 false), !tbaa !3
  tail call void @llvm.memset.p0.i64(ptr noundef nonnull align 16 dereferenceable(208) @_QFEy, i8 0, i64 208, i1 false), !tbaa !3
  br label %.preheader47

.preheader47:                                     ; preds = %.preheader48.preheader, %.preheader47
  %6 = phi i64 [ %10, %.preheader47 ], [ 99, %.preheader48.preheader ]
  %7 = getelementptr [100 x [1 x i8]], ptr @_QFEs, i64 0, i64 %6
  %8 = load i8, ptr %7, align 1, !tbaa !3
  %9 = icmp eq i8 %8, 32
  %10 = add nsw i64 %6, -1
  %11 = icmp ne i64 %6, 0
  %12 = and i1 %9, %11
  br i1 %12, label %.preheader47, label %13

13:                                               ; preds = %.preheader47
  %14 = shl i64 %6, 32
  %sext = add i64 %14, 4294967296
  %15 = ashr exact i64 %sext, 32
  br label %16

16:                                               ; preds = %13, %16
  %17 = phi i64 [ 99, %13 ], [ %21, %16 ]
  %18 = getelementptr [100 x [1 x i8]], ptr @_QFEt, i64 0, i64 %17
  %19 = load i8, ptr %18, align 1, !tbaa !3
  %20 = icmp eq i8 %19, 32
  %21 = add nsw i64 %17, -1
  %22 = icmp ne i64 %17, 0
  %23 = and i1 %20, %22
  br i1 %23, label %16, label %24

24:                                               ; preds = %16
  %25 = select i1 %9, i64 0, i64 %15
  %26 = shl i64 %17, 32
  %sext43 = add i64 %26, 4294967296
  %27 = ashr exact i64 %sext43, 32
  %28 = select i1 %20, i64 0, i64 %27
  %29 = icmp sgt i64 %25, 0
  br i1 %29, label %.lr.ph.preheader, label %.preheader46

.lr.ph.preheader:                                 ; preds = %24
  %xtraiter = and i64 %25, 1
  %30 = icmp eq i64 %25, 1
  br i1 %30, label %..preheader46_crit_edge.unr-lcssa, label %.lr.ph.preheader.new

.lr.ph.preheader.new:                             ; preds = %.lr.ph.preheader
  %unroll_iter = and i64 %25, -2
  br label %.lr.ph

..preheader46_crit_edge.unr-lcssa:                ; preds = %.lr.ph, %.lr.ph.preheader
  %.unpack45.lcssa.ph = phi i8 [ undef, %.lr.ph.preheader ], [ %.unpack45.1, %.lr.ph ]
  %.unr = phi i64 [ 1, %.lr.ph.preheader ], [ %56, %.lr.ph ]
  %lcmp.mod.not = icmp eq i64 %xtraiter, 0
  br i1 %lcmp.mod.not, label %..preheader46_crit_edge, label %.lr.ph.epil

.lr.ph.epil:                                      ; preds = %..preheader46_crit_edge.unr-lcssa
  %31 = add nsw i64 %.unr, -1
  %32 = getelementptr [100 x [1 x i8]], ptr @_QFEs, i64 0, i64 %31
  %.unpack45.epil = load i8, ptr %32, align 1, !tbaa !3
  %33 = zext i8 %.unpack45.epil to i64
  %34 = add nsw i64 %33, -97
  %35 = getelementptr [26 x i64], ptr @_QFEx, i64 0, i64 %34
  %36 = load i64, ptr %35, align 8, !tbaa !3
  %37 = add i64 %36, 1
  store i64 %37, ptr %35, align 8, !tbaa !3
  br label %..preheader46_crit_edge

..preheader46_crit_edge:                          ; preds = %..preheader46_crit_edge.unr-lcssa, %.lr.ph.epil
  %.unpack45.lcssa = phi i8 [ %.unpack45.lcssa.ph, %..preheader46_crit_edge.unr-lcssa ], [ %.unpack45.epil, %.lr.ph.epil ]
  %38 = zext i8 %.unpack45.lcssa to i64
  %39 = add nsw i64 %38, -96
  br label %.preheader46

.preheader46:                                     ; preds = %..preheader46_crit_edge, %24
  %.033.lcssa = phi i64 [ %39, %..preheader46_crit_edge ], [ undef, %24 ]
  %40 = icmp sgt i64 %28, 0
  br i1 %40, label %.lr.ph53.preheader, label %.preheader

.lr.ph53.preheader:                               ; preds = %.preheader46
  %xtraiter80 = and i64 %28, 1
  %41 = icmp eq i64 %28, 1
  br i1 %41, label %..preheader_crit_edge.unr-lcssa, label %.lr.ph53.preheader.new

.lr.ph53.preheader.new:                           ; preds = %.lr.ph53.preheader
  %unroll_iter84 = and i64 %28, -2
  br label %.lr.ph53

.lr.ph:                                           ; preds = %.lr.ph, %.lr.ph.preheader.new
  %42 = phi i64 [ 1, %.lr.ph.preheader.new ], [ %56, %.lr.ph ]
  %niter = phi i64 [ 0, %.lr.ph.preheader.new ], [ %niter.next.1, %.lr.ph ]
  %43 = add nsw i64 %42, -1
  %44 = getelementptr [100 x [1 x i8]], ptr @_QFEs, i64 0, i64 %43
  %.unpack45 = load i8, ptr %44, align 1, !tbaa !3
  %45 = zext i8 %.unpack45 to i64
  %46 = add nsw i64 %45, -97
  %47 = getelementptr [26 x i64], ptr @_QFEx, i64 0, i64 %46
  %48 = load i64, ptr %47, align 8, !tbaa !3
  %49 = add i64 %48, 1
  store i64 %49, ptr %47, align 8, !tbaa !3
  %50 = getelementptr [100 x [1 x i8]], ptr @_QFEs, i64 0, i64 %42
  %.unpack45.1 = load i8, ptr %50, align 1, !tbaa !3
  %51 = zext i8 %.unpack45.1 to i64
  %52 = add nsw i64 %51, -97
  %53 = getelementptr [26 x i64], ptr @_QFEx, i64 0, i64 %52
  %54 = load i64, ptr %53, align 8, !tbaa !3
  %55 = add i64 %54, 1
  store i64 %55, ptr %53, align 8, !tbaa !3
  %56 = add nuw nsw i64 %42, 2
  %niter.next.1 = add nuw i64 %niter, 2
  %niter.ncmp.1 = icmp eq i64 %niter.next.1, %unroll_iter
  br i1 %niter.ncmp.1, label %..preheader46_crit_edge.unr-lcssa, label %.lr.ph

..preheader_crit_edge.unr-lcssa:                  ; preds = %.lr.ph53, %.lr.ph53.preheader
  %.unpack.lcssa.ph = phi i8 [ undef, %.lr.ph53.preheader ], [ %.unpack.1, %.lr.ph53 ]
  %.unr81 = phi i64 [ 1, %.lr.ph53.preheader ], [ %81, %.lr.ph53 ]
  %lcmp.mod82.not = icmp eq i64 %xtraiter80, 0
  br i1 %lcmp.mod82.not, label %..preheader_crit_edge, label %.lr.ph53.epil

.lr.ph53.epil:                                    ; preds = %..preheader_crit_edge.unr-lcssa
  %57 = add nsw i64 %.unr81, -1
  %58 = getelementptr [100 x [1 x i8]], ptr @_QFEt, i64 0, i64 %57
  %.unpack.epil = load i8, ptr %58, align 1, !tbaa !3
  %59 = zext i8 %.unpack.epil to i64
  %60 = add nsw i64 %59, -97
  %61 = getelementptr [26 x i64], ptr @_QFEy, i64 0, i64 %60
  %62 = load i64, ptr %61, align 8, !tbaa !3
  %63 = add i64 %62, 1
  store i64 %63, ptr %61, align 8, !tbaa !3
  br label %..preheader_crit_edge

..preheader_crit_edge:                            ; preds = %..preheader_crit_edge.unr-lcssa, %.lr.ph53.epil
  %.unpack.lcssa = phi i8 [ %.unpack.lcssa.ph, %..preheader_crit_edge.unr-lcssa ], [ %.unpack.epil, %.lr.ph53.epil ]
  %64 = zext i8 %.unpack.lcssa to i64
  %65 = add nsw i64 %64, -96
  br label %.preheader

.preheader:                                       ; preds = %..preheader_crit_edge, %.preheader46
  %.134.lcssa = phi i64 [ %65, %..preheader_crit_edge ], [ %.033.lcssa, %.preheader46 ]
  %66 = load i64, ptr @_QFEx, align 16, !tbaa !3
  %.not44 = icmp eq i64 %66, 0
  br i1 %.not44, label %82, label %132

.lr.ph53:                                         ; preds = %.lr.ph53, %.lr.ph53.preheader.new
  %67 = phi i64 [ 1, %.lr.ph53.preheader.new ], [ %81, %.lr.ph53 ]
  %niter85 = phi i64 [ 0, %.lr.ph53.preheader.new ], [ %niter85.next.1, %.lr.ph53 ]
  %68 = add nsw i64 %67, -1
  %69 = getelementptr [100 x [1 x i8]], ptr @_QFEt, i64 0, i64 %68
  %.unpack = load i8, ptr %69, align 1, !tbaa !3
  %70 = zext i8 %.unpack to i64
  %71 = add nsw i64 %70, -97
  %72 = getelementptr [26 x i64], ptr @_QFEy, i64 0, i64 %71
  %73 = load i64, ptr %72, align 8, !tbaa !3
  %74 = add i64 %73, 1
  store i64 %74, ptr %72, align 8, !tbaa !3
  %75 = getelementptr [100 x [1 x i8]], ptr @_QFEt, i64 0, i64 %67
  %.unpack.1 = load i8, ptr %75, align 1, !tbaa !3
  %76 = zext i8 %.unpack.1 to i64
  %77 = add nsw i64 %76, -97
  %78 = getelementptr [26 x i64], ptr @_QFEy, i64 0, i64 %77
  %79 = load i64, ptr %78, align 8, !tbaa !3
  %80 = add i64 %79, 1
  store i64 %80, ptr %78, align 8, !tbaa !3
  %81 = add nuw nsw i64 %67, 2
  %niter85.next.1 = add nuw i64 %niter85, 2
  %niter85.ncmp.1 = icmp eq i64 %niter85.next.1, %unroll_iter84
  br i1 %niter85.ncmp.1, label %..preheader_crit_edge.unr-lcssa, label %.lr.ph53

82:                                               ; preds = %.preheader
  %83 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 1), align 8, !tbaa !3
  %.not44.1 = icmp eq i64 %83, 0
  br i1 %.not44.1, label %84, label %132

84:                                               ; preds = %82
  %85 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 2), align 16, !tbaa !3
  %.not44.2 = icmp eq i64 %85, 0
  br i1 %.not44.2, label %86, label %132

86:                                               ; preds = %84
  %87 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 3), align 8, !tbaa !3
  %.not44.3 = icmp eq i64 %87, 0
  br i1 %.not44.3, label %88, label %132

88:                                               ; preds = %86
  %89 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 4), align 16, !tbaa !3
  %.not44.4 = icmp eq i64 %89, 0
  br i1 %.not44.4, label %90, label %132

90:                                               ; preds = %88
  %91 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 5), align 8, !tbaa !3
  %.not44.5 = icmp eq i64 %91, 0
  br i1 %.not44.5, label %92, label %132

92:                                               ; preds = %90
  %93 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 6), align 16, !tbaa !3
  %.not44.6 = icmp eq i64 %93, 0
  br i1 %.not44.6, label %94, label %132

94:                                               ; preds = %92
  %95 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 7), align 8, !tbaa !3
  %.not44.7 = icmp eq i64 %95, 0
  br i1 %.not44.7, label %96, label %132

96:                                               ; preds = %94
  %97 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 8), align 16, !tbaa !3
  %.not44.8 = icmp eq i64 %97, 0
  br i1 %.not44.8, label %98, label %132

98:                                               ; preds = %96
  %99 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 9), align 8, !tbaa !3
  %.not44.9 = icmp eq i64 %99, 0
  br i1 %.not44.9, label %100, label %132

100:                                              ; preds = %98
  %101 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 10), align 16, !tbaa !3
  %.not44.10 = icmp eq i64 %101, 0
  br i1 %.not44.10, label %102, label %132

102:                                              ; preds = %100
  %103 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 11), align 8, !tbaa !3
  %.not44.11 = icmp eq i64 %103, 0
  br i1 %.not44.11, label %104, label %132

104:                                              ; preds = %102
  %105 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 12), align 16, !tbaa !3
  %.not44.12 = icmp eq i64 %105, 0
  br i1 %.not44.12, label %106, label %132

106:                                              ; preds = %104
  %107 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 13), align 8, !tbaa !3
  %.not44.13 = icmp eq i64 %107, 0
  br i1 %.not44.13, label %108, label %132

108:                                              ; preds = %106
  %109 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 14), align 16, !tbaa !3
  %.not44.14 = icmp eq i64 %109, 0
  br i1 %.not44.14, label %110, label %132

110:                                              ; preds = %108
  %111 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 15), align 8, !tbaa !3
  %.not44.15 = icmp eq i64 %111, 0
  br i1 %.not44.15, label %112, label %132

112:                                              ; preds = %110
  %113 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 16), align 16, !tbaa !3
  %.not44.16 = icmp eq i64 %113, 0
  br i1 %.not44.16, label %114, label %132

114:                                              ; preds = %112
  %115 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 17), align 8, !tbaa !3
  %.not44.17 = icmp eq i64 %115, 0
  br i1 %.not44.17, label %116, label %132

116:                                              ; preds = %114
  %117 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 18), align 16, !tbaa !3
  %.not44.18 = icmp eq i64 %117, 0
  br i1 %.not44.18, label %118, label %132

118:                                              ; preds = %116
  %119 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 19), align 8, !tbaa !3
  %.not44.19 = icmp eq i64 %119, 0
  br i1 %.not44.19, label %120, label %132

120:                                              ; preds = %118
  %121 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 20), align 16, !tbaa !3
  %.not44.20 = icmp eq i64 %121, 0
  br i1 %.not44.20, label %122, label %132

122:                                              ; preds = %120
  %123 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 21), align 8, !tbaa !3
  %.not44.21 = icmp eq i64 %123, 0
  br i1 %.not44.21, label %124, label %132

124:                                              ; preds = %122
  %125 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 22), align 16, !tbaa !3
  %.not44.22 = icmp eq i64 %125, 0
  br i1 %.not44.22, label %126, label %132

126:                                              ; preds = %124
  %127 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 23), align 8, !tbaa !3
  %.not44.23 = icmp eq i64 %127, 0
  br i1 %.not44.23, label %128, label %132

128:                                              ; preds = %126
  %129 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 24), align 16, !tbaa !3
  %.not44.24 = icmp eq i64 %129, 0
  br i1 %.not44.24, label %130, label %132

130:                                              ; preds = %128
  %131 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEx, i64 0, i64 25), align 8, !tbaa !3
  %.not44.25 = icmp eq i64 %131, 0
  %spec.select = select i1 %.not44.25, i64 %.134.lcssa, i64 26
  br label %132

132:                                              ; preds = %130, %128, %126, %124, %122, %120, %118, %116, %114, %112, %110, %108, %106, %104, %102, %100, %98, %96, %94, %92, %90, %88, %86, %84, %82, %.preheader
  %.2 = phi i64 [ 1, %.preheader ], [ 2, %82 ], [ 3, %84 ], [ 4, %86 ], [ 5, %88 ], [ 6, %90 ], [ 7, %92 ], [ 8, %94 ], [ 9, %96 ], [ 10, %98 ], [ 11, %100 ], [ 12, %102 ], [ 13, %104 ], [ 14, %106 ], [ 15, %108 ], [ 16, %110 ], [ 17, %112 ], [ 18, %114 ], [ 19, %116 ], [ 20, %118 ], [ 21, %120 ], [ 22, %122 ], [ 23, %124 ], [ 24, %126 ], [ 25, %128 ], [ %spec.select, %130 ]
  %133 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 25), align 8, !tbaa !3
  %.not = icmp eq i64 %133, 0
  br i1 %.not, label %134, label %184

134:                                              ; preds = %132
  %135 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 24), align 16, !tbaa !3
  %.not.1 = icmp eq i64 %135, 0
  br i1 %.not.1, label %136, label %184

136:                                              ; preds = %134
  %137 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 23), align 8, !tbaa !3
  %.not.2 = icmp eq i64 %137, 0
  br i1 %.not.2, label %138, label %184

138:                                              ; preds = %136
  %139 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 22), align 16, !tbaa !3
  %.not.3 = icmp eq i64 %139, 0
  br i1 %.not.3, label %140, label %184

140:                                              ; preds = %138
  %141 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 21), align 8, !tbaa !3
  %.not.4 = icmp eq i64 %141, 0
  br i1 %.not.4, label %142, label %184

142:                                              ; preds = %140
  %143 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 20), align 16, !tbaa !3
  %.not.5 = icmp eq i64 %143, 0
  br i1 %.not.5, label %144, label %184

144:                                              ; preds = %142
  %145 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 19), align 8, !tbaa !3
  %.not.6 = icmp eq i64 %145, 0
  br i1 %.not.6, label %146, label %184

146:                                              ; preds = %144
  %147 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 18), align 16, !tbaa !3
  %.not.7 = icmp eq i64 %147, 0
  br i1 %.not.7, label %148, label %184

148:                                              ; preds = %146
  %149 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 17), align 8, !tbaa !3
  %.not.8 = icmp eq i64 %149, 0
  br i1 %.not.8, label %150, label %184

150:                                              ; preds = %148
  %151 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 16), align 16, !tbaa !3
  %.not.9 = icmp eq i64 %151, 0
  br i1 %.not.9, label %152, label %184

152:                                              ; preds = %150
  %153 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 15), align 8, !tbaa !3
  %.not.10 = icmp eq i64 %153, 0
  br i1 %.not.10, label %154, label %184

154:                                              ; preds = %152
  %155 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 14), align 16, !tbaa !3
  %.not.11 = icmp eq i64 %155, 0
  br i1 %.not.11, label %156, label %184

156:                                              ; preds = %154
  %157 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 13), align 8, !tbaa !3
  %.not.12 = icmp eq i64 %157, 0
  br i1 %.not.12, label %158, label %184

158:                                              ; preds = %156
  %159 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 12), align 16, !tbaa !3
  %.not.13 = icmp eq i64 %159, 0
  br i1 %.not.13, label %160, label %184

160:                                              ; preds = %158
  %161 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 11), align 8, !tbaa !3
  %.not.14 = icmp eq i64 %161, 0
  br i1 %.not.14, label %162, label %184

162:                                              ; preds = %160
  %163 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 10), align 16, !tbaa !3
  %.not.15 = icmp eq i64 %163, 0
  br i1 %.not.15, label %164, label %184

164:                                              ; preds = %162
  %165 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 9), align 8, !tbaa !3
  %.not.16 = icmp eq i64 %165, 0
  br i1 %.not.16, label %166, label %184

166:                                              ; preds = %164
  %167 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 8), align 16, !tbaa !3
  %.not.17 = icmp eq i64 %167, 0
  br i1 %.not.17, label %168, label %184

168:                                              ; preds = %166
  %169 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 7), align 8, !tbaa !3
  %.not.18 = icmp eq i64 %169, 0
  br i1 %.not.18, label %170, label %184

170:                                              ; preds = %168
  %171 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 6), align 16, !tbaa !3
  %.not.19 = icmp eq i64 %171, 0
  br i1 %.not.19, label %172, label %184

172:                                              ; preds = %170
  %173 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 5), align 8, !tbaa !3
  %.not.20 = icmp eq i64 %173, 0
  br i1 %.not.20, label %174, label %184

174:                                              ; preds = %172
  %175 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 4), align 16, !tbaa !3
  %.not.21 = icmp eq i64 %175, 0
  br i1 %.not.21, label %176, label %184

176:                                              ; preds = %174
  %177 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 3), align 8, !tbaa !3
  %.not.22 = icmp eq i64 %177, 0
  br i1 %.not.22, label %178, label %184

178:                                              ; preds = %176
  %179 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 2), align 16, !tbaa !3
  %.not.23 = icmp eq i64 %179, 0
  br i1 %.not.23, label %180, label %184

180:                                              ; preds = %178
  %181 = load i64, ptr getelementptr inbounds ([26 x i64], ptr @_QFEy, i64 0, i64 1), align 8, !tbaa !3
  %.not.24 = icmp eq i64 %181, 0
  br i1 %.not.24, label %182, label %184

182:                                              ; preds = %180
  %183 = load i64, ptr @_QFEy, align 16, !tbaa !3
  %.not.25 = icmp ne i64 %183, 0
  %spec.select69 = zext i1 %.not.25 to i64
  br label %184

184:                                              ; preds = %182, %180, %178, %176, %174, %172, %170, %168, %166, %164, %162, %160, %158, %156, %154, %152, %150, %148, %146, %144, %142, %140, %138, %136, %134, %132
  %.1.lcssa = phi i64 [ 26, %132 ], [ 25, %134 ], [ 24, %136 ], [ 23, %138 ], [ 22, %140 ], [ 21, %142 ], [ 20, %144 ], [ 19, %146 ], [ 18, %148 ], [ 17, %150 ], [ 16, %152 ], [ 15, %154 ], [ 14, %156 ], [ 13, %158 ], [ 12, %160 ], [ 11, %162 ], [ 10, %164 ], [ 9, %166 ], [ 8, %168 ], [ 7, %170 ], [ 6, %172 ], [ 5, %174 ], [ 4, %176 ], [ 3, %178 ], [ 2, %180 ], [ %spec.select69, %182 ]
  %185 = icmp sgt i64 %.2, %.1.lcssa
  br i1 %185, label %200, label %186

186:                                              ; preds = %184
  %187 = icmp slt i64 %.2, %.1.lcssa
  br i1 %187, label %200, label %188

188:                                              ; preds = %186
  %189 = add nsw i64 %.2, -1
  %190 = getelementptr [26 x i64], ptr @_QFEx, i64 0, i64 %189
  %191 = load i64, ptr %190, align 8, !tbaa !3
  %192 = icmp ne i64 %191, %25
  %193 = add nsw i64 %.1.lcssa, -1
  %194 = getelementptr [26 x i64], ptr @_QFEy, i64 0, i64 %193
  %195 = load i64, ptr %194, align 8, !tbaa !3
  %196 = icmp ne i64 %195, %28
  %197 = or i1 %192, %196
  br i1 %197, label %200, label %198

198:                                              ; preds = %188
  %199 = icmp sgt i64 %28, %25
  %. = select i1 %199, i32 41, i32 43
  %.72 = select i1 %199, i64 3, i64 2
  %_QQcl.596573._QQcl.4E6F = select i1 %199, ptr @_QQcl.596573, ptr @_QQcl.4E6F
  br label %200

200:                                              ; preds = %198, %188, %186, %184
  %.sink = phi i32 [ 35, %184 ], [ 37, %186 ], [ 39, %188 ], [ %., %198 ]
  %.sink71 = phi i64 [ 2, %184 ], [ 3, %186 ], [ 2, %188 ], [ %.72, %198 ]
  %_QQcl.4E6F.sink = phi ptr [ @_QQcl.4E6F, %184 ], [ @_QQcl.596573, %186 ], [ @_QQcl.4E6F, %188 ], [ %_QQcl.596573._QQcl.4E6F, %198 ]
  %201 = tail call ptr @_FortranAioBeginExternalListOutput(i32 -1, ptr nonnull @_QQcl.87286c20817ea066c914fe76e87f6d79, i32 %.sink)
  %202 = tail call i1 @_FortranAioOutputAscii(ptr %201, ptr nonnull %_QQcl.4E6F.sink, i64 %.sink71)
  %203 = tail call i32 @_FortranAioEndIoStatement(ptr %201)
  %204 = tail call {} @_FortranAStopStatement(i32 0, i1 false, i1 false)
  unreachable
}

declare ptr @_FortranAioBeginExternalListInput(i32, ptr, i32) local_unnamed_addr

declare i1 @_FortranAioInputAscii(ptr, ptr, i64) local_unnamed_addr

declare i32 @_FortranAioEndIoStatement(ptr) local_unnamed_addr

declare ptr @_FortranAioBeginExternalListOutput(i32, ptr, i32) local_unnamed_addr

declare i1 @_FortranAioOutputAscii(ptr, ptr, i64) local_unnamed_addr

declare {} @_FortranAStopStatement(i32, i1, i1) local_unnamed_addr

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: write)
declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1 immarg) #1

attributes #0 = { noreturn }
attributes #1 = { nocallback nofree nounwind willreturn memory(argmem: write) }

!llvm.module.flags = !{!0, !1, !2}

!0 = !{i32 2, !"Debug Info Version", i32 3}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{!4, !4, i64 0}
!4 = !{!"any data access", !5, i64 0}
!5 = !{!"any access", !6, i64 0}
!6 = !{!"Flang Type TBAA Root"}
