; LLVM IR from abeaumont/competitive-programming :: kattis (timebomb)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.std::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::basic_ostream" = type { ptr, %"class.std::basic_ios" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }

@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str = external hidden unnamed_addr constant [4 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [4 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.4 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [8 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef i32 @main() #0 personality ptr @__gxx_personality_v0 {
  %1 = alloca i32, align 4
  %2 = alloca [5 x %"class.std::__cxx11::basic_string"], align 16
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca ptr, align 8
  %6 = alloca i32, align 4
  %7 = alloca i32, align 4
  %8 = alloca %"class.std::__cxx11::basic_string", align 8
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca i1, align 1
  %11 = alloca i1, align 1
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca i1, align 1
  %14 = alloca i1, align 1
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca i1, align 1
  %17 = alloca i1, align 1
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca i1, align 1
  %20 = alloca i1, align 1
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca i1, align 1
  %24 = alloca i1, align 1
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca i1, align 1
  %27 = alloca i1, align 1
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca i1, align 1
  %30 = alloca i1, align 1
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca i1, align 1
  %33 = alloca i1, align 1
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca i1, align 1
  %37 = alloca i1, align 1
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca i1, align 1
  %40 = alloca i1, align 1
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca i1, align 1
  %43 = alloca i1, align 1
  %44 = alloca %"class.std::__cxx11::basic_string", align 8
  %45 = alloca i1, align 1
  %46 = alloca i1, align 1
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca i1, align 1
  %50 = alloca i1, align 1
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca i1, align 1
  %53 = alloca i1, align 1
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca i1, align 1
  %56 = alloca i1, align 1
  %57 = alloca %"class.std::__cxx11::basic_string", align 8
  %58 = alloca i1, align 1
  %59 = alloca i1, align 1
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca i1, align 1
  %63 = alloca i1, align 1
  %64 = alloca %"class.std::__cxx11::basic_string", align 8
  %65 = alloca i1, align 1
  %66 = alloca i1, align 1
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca i1, align 1
  %69 = alloca i1, align 1
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca i1, align 1
  %72 = alloca i1, align 1
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca i1, align 1
  %76 = alloca i1, align 1
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca i1, align 1
  %79 = alloca i1, align 1
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca i1, align 1
  %82 = alloca i1, align 1
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca i1, align 1
  %85 = alloca i1, align 1
  %86 = alloca %"class.std::__cxx11::basic_string", align 8
  %87 = alloca %"class.std::__cxx11::basic_string", align 8
  %88 = alloca i1, align 1
  %89 = alloca i1, align 1
  %90 = alloca %"class.std::__cxx11::basic_string", align 8
  %91 = alloca i1, align 1
  %92 = alloca i1, align 1
  %93 = alloca %"class.std::__cxx11::basic_string", align 8
  %94 = alloca i1, align 1
  %95 = alloca i1, align 1
  %96 = alloca %"class.std::__cxx11::basic_string", align 8
  %97 = alloca i1, align 1
  %98 = alloca i1, align 1
  %99 = alloca %"class.std::__cxx11::basic_string", align 8
  %100 = alloca %"class.std::__cxx11::basic_string", align 8
  %101 = alloca i1, align 1
  %102 = alloca i1, align 1
  %103 = alloca %"class.std::__cxx11::basic_string", align 8
  %104 = alloca i1, align 1
  %105 = alloca i1, align 1
  %106 = alloca %"class.std::__cxx11::basic_string", align 8
  %107 = alloca i1, align 1
  %108 = alloca i1, align 1
  %109 = alloca %"class.std::__cxx11::basic_string", align 8
  %110 = alloca i1, align 1
  %111 = alloca i1, align 1
  %112 = alloca %"class.std::__cxx11::basic_string", align 8
  %113 = alloca %"class.std::__cxx11::basic_string", align 8
  %114 = alloca i1, align 1
  %115 = alloca i1, align 1
  %116 = alloca %"class.std::__cxx11::basic_string", align 8
  %117 = alloca i1, align 1
  %118 = alloca i1, align 1
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca i1, align 1
  %121 = alloca i1, align 1
  %122 = alloca %"class.std::__cxx11::basic_string", align 8
  %123 = alloca i1, align 1
  %124 = alloca i1, align 1
  %125 = alloca %"class.std::__cxx11::basic_string", align 8
  %126 = alloca %"class.std::__cxx11::basic_string", align 8
  %127 = alloca i1, align 1
  %128 = alloca i1, align 1
  %129 = alloca %"class.std::__cxx11::basic_string", align 8
  %130 = alloca i1, align 1
  %131 = alloca i1, align 1
  %132 = alloca %"class.std::__cxx11::basic_string", align 8
  %133 = alloca i1, align 1
  %134 = alloca i1, align 1
  %135 = alloca %"class.std::__cxx11::basic_string", align 8
  %136 = alloca i1, align 1
  %137 = alloca i1, align 1
  store i32 0, ptr %1, align 4
  call void @llvm.lifetime.start.p0(i64 160, ptr %2) #6
  %138 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i32 0, i32 0
  %139 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %138, i64 5
  br label %140

140:                                              ; preds = %140, %0
  %141 = phi ptr [ %138, %0 ], [ %142, %140 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %141) #6
  %142 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %141, i64 1
  %143 = icmp eq ptr %142, %139
  br i1 %143, label %144, label %140

144:                                              ; preds = %140
  call void @llvm.lifetime.start.p0(i64 4, ptr %3) #6
  store i32 0, ptr %3, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %4) #6
  store i32 0, ptr %4, align 4, !tbaa !5
  br label %145

145:                                              ; preds = %155, %144
  %146 = load i32, ptr %4, align 4, !tbaa !5
  %147 = icmp slt i32 %146, 5
  br i1 %147, label %149, label %148

148:                                              ; preds = %145
  call void @llvm.lifetime.end.p0(i64 4, ptr %4) #6
  br label %162

149:                                              ; preds = %145
  %150 = load i32, ptr %4, align 4, !tbaa !5
  %151 = sext i32 %150 to i64
  %152 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 %151
  %153 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %152)
          to label %154 unwind label %158

154:                                              ; preds = %149
  br label %155

155:                                              ; preds = %154
  %156 = load i32, ptr %4, align 4, !tbaa !5
  %157 = add nsw i32 %156, 1
  store i32 %157, ptr %4, align 4, !tbaa !5
  br label %145, !llvm.loop !9

158:                                              ; preds = %149
  %159 = landingpad { ptr, i32 }
          cleanup
  %160 = extractvalue { ptr, i32 } %159, 0
  store ptr %160, ptr %5, align 8
  %161 = extractvalue { ptr, i32 } %159, 1
  store i32 %161, ptr %6, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %4) #6
  br label %1590

162:                                              ; preds = %148
  call void @llvm.lifetime.start.p0(i64 4, ptr %7) #6
  store i32 0, ptr %7, align 4, !tbaa !5
  br label %163

163:                                              ; preds = %1560, %162
  %164 = load i32, ptr %7, align 4, !tbaa !5
  %165 = sext i32 %164 to i64
  %166 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %167 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %166) #6
  %168 = icmp ult i64 %165, %167
  br i1 %168, label %170, label %169

169:                                              ; preds = %163
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  br label %1564

170:                                              ; preds = %163
  call void @llvm.lifetime.start.p0(i64 32, ptr %8) #6
  %171 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %172 = load i32, ptr %7, align 4, !tbaa !5
  %173 = sext i32 %172 to i64
  store i1 false, ptr %10, align 1
  store i1 false, ptr %11, align 1
  store i1 false, ptr %13, align 1
  store i1 false, ptr %14, align 1
  store i1 false, ptr %16, align 1
  store i1 false, ptr %17, align 1
  store i1 false, ptr %19, align 1
  store i1 false, ptr %20, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %8, ptr noundef nonnull align 8 dereferenceable(32) %171, i64 noundef %173, i64 noundef 3)
          to label %174 unwind label %234

174:                                              ; preds = %170
  %175 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef @.str)
          to label %176 unwind label %238

176:                                              ; preds = %174
  br i1 %175, label %177, label %205

177:                                              ; preds = %176
  call void @llvm.lifetime.start.p0(i64 32, ptr %9) #6
  store i1 true, ptr %10, align 1
  %178 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %179 = load i32, ptr %7, align 4, !tbaa !5
  %180 = sext i32 %179 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %9, ptr noundef nonnull align 8 dereferenceable(32) %178, i64 noundef %180, i64 noundef 3)
          to label %181 unwind label %242

181:                                              ; preds = %177
  store i1 true, ptr %11, align 1
  %182 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef @.str.1)
          to label %183 unwind label %246

183:                                              ; preds = %181
  br i1 %182, label %184, label %205

184:                                              ; preds = %183
  call void @llvm.lifetime.start.p0(i64 32, ptr %12) #6
  store i1 true, ptr %13, align 1
  %185 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %186 = load i32, ptr %7, align 4, !tbaa !5
  %187 = sext i32 %186 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %12, ptr noundef nonnull align 8 dereferenceable(32) %185, i64 noundef %187, i64 noundef 3)
          to label %188 unwind label %250

188:                                              ; preds = %184
  store i1 true, ptr %14, align 1
  %189 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef @.str.1)
          to label %190 unwind label %254

190:                                              ; preds = %188
  br i1 %189, label %191, label %205

191:                                              ; preds = %190
  call void @llvm.lifetime.start.p0(i64 32, ptr %15) #6
  store i1 true, ptr %16, align 1
  %192 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %193 = load i32, ptr %7, align 4, !tbaa !5
  %194 = sext i32 %193 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %15, ptr noundef nonnull align 8 dereferenceable(32) %192, i64 noundef %194, i64 noundef 3)
          to label %195 unwind label %258

195:                                              ; preds = %191
  store i1 true, ptr %17, align 1
  %196 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef @.str.1)
          to label %197 unwind label %262

197:                                              ; preds = %195
  br i1 %196, label %198, label %205

198:                                              ; preds = %197
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #6
  store i1 true, ptr %19, align 1
  %199 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %200 = load i32, ptr %7, align 4, !tbaa !5
  %201 = sext i32 %200 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef nonnull align 8 dereferenceable(32) %199, i64 noundef %201, i64 noundef 3)
          to label %202 unwind label %266

202:                                              ; preds = %198
  store i1 true, ptr %20, align 1
  %203 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef @.str)
          to label %204 unwind label %270

204:                                              ; preds = %202
  br label %205

205:                                              ; preds = %204, %197, %190, %183, %176
  %206 = phi i1 [ false, %197 ], [ false, %190 ], [ false, %183 ], [ false, %176 ], [ %203, %204 ]
  %207 = load i1, ptr %20, align 1
  br i1 %207, label %208, label %209

208:                                              ; preds = %205
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  br label %209

209:                                              ; preds = %208, %205
  %210 = load i1, ptr %19, align 1
  br i1 %210, label %211, label %212

211:                                              ; preds = %209
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #6
  br label %212

212:                                              ; preds = %211, %209
  %213 = load i1, ptr %17, align 1
  br i1 %213, label %214, label %215

214:                                              ; preds = %212
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #6
  br label %215

215:                                              ; preds = %214, %212
  %216 = load i1, ptr %16, align 1
  br i1 %216, label %217, label %218

217:                                              ; preds = %215
  call void @llvm.lifetime.end.p0(i64 32, ptr %15) #6
  br label %218

218:                                              ; preds = %217, %215
  %219 = load i1, ptr %14, align 1
  br i1 %219, label %220, label %221

220:                                              ; preds = %218
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  br label %221

221:                                              ; preds = %220, %218
  %222 = load i1, ptr %13, align 1
  br i1 %222, label %223, label %224

223:                                              ; preds = %221
  call void @llvm.lifetime.end.p0(i64 32, ptr %12) #6
  br label %224

224:                                              ; preds = %223, %221
  %225 = load i1, ptr %11, align 1
  br i1 %225, label %226, label %227

226:                                              ; preds = %224
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  br label %227

227:                                              ; preds = %226, %224
  %228 = load i1, ptr %10, align 1
  br i1 %228, label %229, label %230

229:                                              ; preds = %227
  call void @llvm.lifetime.end.p0(i64 32, ptr %9) #6
  br label %230

230:                                              ; preds = %229, %227
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %8) #6
  br i1 %206, label %231, label %307

231:                                              ; preds = %230
  %232 = load i32, ptr %3, align 4, !tbaa !5
  %233 = mul nsw i32 %232, 10
  store i32 %233, ptr %3, align 4, !tbaa !5
  br label %1559

234:                                              ; preds = %170
  %235 = landingpad { ptr, i32 }
          cleanup
  %236 = extractvalue { ptr, i32 } %235, 0
  store ptr %236, ptr %5, align 8
  %237 = extractvalue { ptr, i32 } %235, 1
  store i32 %237, ptr %6, align 4
  br label %306

238:                                              ; preds = %174
  %239 = landingpad { ptr, i32 }
          cleanup
  %240 = extractvalue { ptr, i32 } %239, 0
  store ptr %240, ptr %5, align 8
  %241 = extractvalue { ptr, i32 } %239, 1
  store i32 %241, ptr %6, align 4
  br label %305

242:                                              ; preds = %177
  %243 = landingpad { ptr, i32 }
          cleanup
  %244 = extractvalue { ptr, i32 } %243, 0
  store ptr %244, ptr %5, align 8
  %245 = extractvalue { ptr, i32 } %243, 1
  store i32 %245, ptr %6, align 4
  br label %301

246:                                              ; preds = %181
  %247 = landingpad { ptr, i32 }
          cleanup
  %248 = extractvalue { ptr, i32 } %247, 0
  store ptr %248, ptr %5, align 8
  %249 = extractvalue { ptr, i32 } %247, 1
  store i32 %249, ptr %6, align 4
  br label %297

250:                                              ; preds = %184
  %251 = landingpad { ptr, i32 }
          cleanup
  %252 = extractvalue { ptr, i32 } %251, 0
  store ptr %252, ptr %5, align 8
  %253 = extractvalue { ptr, i32 } %251, 1
  store i32 %253, ptr %6, align 4
  br label %293

254:                                              ; preds = %188
  %255 = landingpad { ptr, i32 }
          cleanup
  %256 = extractvalue { ptr, i32 } %255, 0
  store ptr %256, ptr %5, align 8
  %257 = extractvalue { ptr, i32 } %255, 1
  store i32 %257, ptr %6, align 4
  br label %289

258:                                              ; preds = %191
  %259 = landingpad { ptr, i32 }
          cleanup
  %260 = extractvalue { ptr, i32 } %259, 0
  store ptr %260, ptr %5, align 8
  %261 = extractvalue { ptr, i32 } %259, 1
  store i32 %261, ptr %6, align 4
  br label %285

262:                                              ; preds = %195
  %263 = landingpad { ptr, i32 }
          cleanup
  %264 = extractvalue { ptr, i32 } %263, 0
  store ptr %264, ptr %5, align 8
  %265 = extractvalue { ptr, i32 } %263, 1
  store i32 %265, ptr %6, align 4
  br label %281

266:                                              ; preds = %198
  %267 = landingpad { ptr, i32 }
          cleanup
  %268 = extractvalue { ptr, i32 } %267, 0
  store ptr %268, ptr %5, align 8
  %269 = extractvalue { ptr, i32 } %267, 1
  store i32 %269, ptr %6, align 4
  br label %277

270:                                              ; preds = %202
  %271 = landingpad { ptr, i32 }
          cleanup
  %272 = extractvalue { ptr, i32 } %271, 0
  store ptr %272, ptr %5, align 8
  %273 = extractvalue { ptr, i32 } %271, 1
  store i32 %273, ptr %6, align 4
  %274 = load i1, ptr %20, align 1
  br i1 %274, label %275, label %276

275:                                              ; preds = %270
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  br label %276

276:                                              ; preds = %275, %270
  br label %277

277:                                              ; preds = %276, %266
  %278 = load i1, ptr %19, align 1
  br i1 %278, label %279, label %280

279:                                              ; preds = %277
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #6
  br label %280

280:                                              ; preds = %279, %277
  br label %281

281:                                              ; preds = %280, %262
  %282 = load i1, ptr %17, align 1
  br i1 %282, label %283, label %284

283:                                              ; preds = %281
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #6
  br label %284

284:                                              ; preds = %283, %281
  br label %285

285:                                              ; preds = %284, %258
  %286 = load i1, ptr %16, align 1
  br i1 %286, label %287, label %288

287:                                              ; preds = %285
  call void @llvm.lifetime.end.p0(i64 32, ptr %15) #6
  br label %288

288:                                              ; preds = %287, %285
  br label %289

289:                                              ; preds = %288, %254
  %290 = load i1, ptr %14, align 1
  br i1 %290, label %291, label %292

291:                                              ; preds = %289
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  br label %292

292:                                              ; preds = %291, %289
  br label %293

293:                                              ; preds = %292, %250
  %294 = load i1, ptr %13, align 1
  br i1 %294, label %295, label %296

295:                                              ; preds = %293
  call void @llvm.lifetime.end.p0(i64 32, ptr %12) #6
  br label %296

296:                                              ; preds = %295, %293
  br label %297

297:                                              ; preds = %296, %246
  %298 = load i1, ptr %11, align 1
  br i1 %298, label %299, label %300

299:                                              ; preds = %297
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  br label %300

300:                                              ; preds = %299, %297
  br label %301

301:                                              ; preds = %300, %242
  %302 = load i1, ptr %10, align 1
  br i1 %302, label %303, label %304

303:                                              ; preds = %301
  call void @llvm.lifetime.end.p0(i64 32, ptr %9) #6
  br label %304

304:                                              ; preds = %303, %301
  br label %305

305:                                              ; preds = %304, %238
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  br label %306

306:                                              ; preds = %305, %234
  call void @llvm.lifetime.end.p0(i64 32, ptr %8) #6
  br label %1563

307:                                              ; preds = %230
  call void @llvm.lifetime.start.p0(i64 32, ptr %21) #6
  %308 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %309 = load i32, ptr %7, align 4, !tbaa !5
  %310 = sext i32 %309 to i64
  store i1 false, ptr %23, align 1
  store i1 false, ptr %24, align 1
  store i1 false, ptr %26, align 1
  store i1 false, ptr %27, align 1
  store i1 false, ptr %29, align 1
  store i1 false, ptr %30, align 1
  store i1 false, ptr %32, align 1
  store i1 false, ptr %33, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %21, ptr noundef nonnull align 8 dereferenceable(32) %308, i64 noundef %310, i64 noundef 3)
          to label %311 unwind label %372

311:                                              ; preds = %307
  %312 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef @.str.2)
          to label %313 unwind label %376

313:                                              ; preds = %311
  br i1 %312, label %314, label %342

314:                                              ; preds = %313
  call void @llvm.lifetime.start.p0(i64 32, ptr %22) #6
  store i1 true, ptr %23, align 1
  %315 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %316 = load i32, ptr %7, align 4, !tbaa !5
  %317 = sext i32 %316 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %22, ptr noundef nonnull align 8 dereferenceable(32) %315, i64 noundef %317, i64 noundef 3)
          to label %318 unwind label %380

318:                                              ; preds = %314
  store i1 true, ptr %24, align 1
  %319 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef @.str.2)
          to label %320 unwind label %384

320:                                              ; preds = %318
  br i1 %319, label %321, label %342

321:                                              ; preds = %320
  call void @llvm.lifetime.start.p0(i64 32, ptr %25) #6
  store i1 true, ptr %26, align 1
  %322 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %323 = load i32, ptr %7, align 4, !tbaa !5
  %324 = sext i32 %323 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %25, ptr noundef nonnull align 8 dereferenceable(32) %322, i64 noundef %324, i64 noundef 3)
          to label %325 unwind label %388

325:                                              ; preds = %321
  store i1 true, ptr %27, align 1
  %326 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef @.str.2)
          to label %327 unwind label %392

327:                                              ; preds = %325
  br i1 %326, label %328, label %342

328:                                              ; preds = %327
  call void @llvm.lifetime.start.p0(i64 32, ptr %28) #6
  store i1 true, ptr %29, align 1
  %329 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %330 = load i32, ptr %7, align 4, !tbaa !5
  %331 = sext i32 %330 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %28, ptr noundef nonnull align 8 dereferenceable(32) %329, i64 noundef %331, i64 noundef 3)
          to label %332 unwind label %396

332:                                              ; preds = %328
  store i1 true, ptr %30, align 1
  %333 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef @.str.2)
          to label %334 unwind label %400

334:                                              ; preds = %332
  br i1 %333, label %335, label %342

335:                                              ; preds = %334
  call void @llvm.lifetime.start.p0(i64 32, ptr %31) #6
  store i1 true, ptr %32, align 1
  %336 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %337 = load i32, ptr %7, align 4, !tbaa !5
  %338 = sext i32 %337 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %31, ptr noundef nonnull align 8 dereferenceable(32) %336, i64 noundef %338, i64 noundef 3)
          to label %339 unwind label %404

339:                                              ; preds = %335
  store i1 true, ptr %33, align 1
  %340 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef @.str.2)
          to label %341 unwind label %408

341:                                              ; preds = %339
  br label %342

342:                                              ; preds = %341, %334, %327, %320, %313
  %343 = phi i1 [ false, %334 ], [ false, %327 ], [ false, %320 ], [ false, %313 ], [ %340, %341 ]
  %344 = load i1, ptr %33, align 1
  br i1 %344, label %345, label %346

345:                                              ; preds = %342
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  br label %346

346:                                              ; preds = %345, %342
  %347 = load i1, ptr %32, align 1
  br i1 %347, label %348, label %349

348:                                              ; preds = %346
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #6
  br label %349

349:                                              ; preds = %348, %346
  %350 = load i1, ptr %30, align 1
  br i1 %350, label %351, label %352

351:                                              ; preds = %349
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  br label %352

352:                                              ; preds = %351, %349
  %353 = load i1, ptr %29, align 1
  br i1 %353, label %354, label %355

354:                                              ; preds = %352
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #6
  br label %355

355:                                              ; preds = %354, %352
  %356 = load i1, ptr %27, align 1
  br i1 %356, label %357, label %358

357:                                              ; preds = %355
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #6
  br label %358

358:                                              ; preds = %357, %355
  %359 = load i1, ptr %26, align 1
  br i1 %359, label %360, label %361

360:                                              ; preds = %358
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #6
  br label %361

361:                                              ; preds = %360, %358
  %362 = load i1, ptr %24, align 1
  br i1 %362, label %363, label %364

363:                                              ; preds = %361
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  br label %364

364:                                              ; preds = %363, %361
  %365 = load i1, ptr %23, align 1
  br i1 %365, label %366, label %367

366:                                              ; preds = %364
  call void @llvm.lifetime.end.p0(i64 32, ptr %22) #6
  br label %367

367:                                              ; preds = %366, %364
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #6
  br i1 %343, label %368, label %445

368:                                              ; preds = %367
  %369 = load i32, ptr %3, align 4, !tbaa !5
  %370 = mul nsw i32 %369, 10
  %371 = add nsw i32 %370, 1
  store i32 %371, ptr %3, align 4, !tbaa !5
  br label %1558

372:                                              ; preds = %307
  %373 = landingpad { ptr, i32 }
          cleanup
  %374 = extractvalue { ptr, i32 } %373, 0
  store ptr %374, ptr %5, align 8
  %375 = extractvalue { ptr, i32 } %373, 1
  store i32 %375, ptr %6, align 4
  br label %444

376:                                              ; preds = %311
  %377 = landingpad { ptr, i32 }
          cleanup
  %378 = extractvalue { ptr, i32 } %377, 0
  store ptr %378, ptr %5, align 8
  %379 = extractvalue { ptr, i32 } %377, 1
  store i32 %379, ptr %6, align 4
  br label %443

380:                                              ; preds = %314
  %381 = landingpad { ptr, i32 }
          cleanup
  %382 = extractvalue { ptr, i32 } %381, 0
  store ptr %382, ptr %5, align 8
  %383 = extractvalue { ptr, i32 } %381, 1
  store i32 %383, ptr %6, align 4
  br label %439

384:                                              ; preds = %318
  %385 = landingpad { ptr, i32 }
          cleanup
  %386 = extractvalue { ptr, i32 } %385, 0
  store ptr %386, ptr %5, align 8
  %387 = extractvalue { ptr, i32 } %385, 1
  store i32 %387, ptr %6, align 4
  br label %435

388:                                              ; preds = %321
  %389 = landingpad { ptr, i32 }
          cleanup
  %390 = extractvalue { ptr, i32 } %389, 0
  store ptr %390, ptr %5, align 8
  %391 = extractvalue { ptr, i32 } %389, 1
  store i32 %391, ptr %6, align 4
  br label %431

392:                                              ; preds = %325
  %393 = landingpad { ptr, i32 }
          cleanup
  %394 = extractvalue { ptr, i32 } %393, 0
  store ptr %394, ptr %5, align 8
  %395 = extractvalue { ptr, i32 } %393, 1
  store i32 %395, ptr %6, align 4
  br label %427

396:                                              ; preds = %328
  %397 = landingpad { ptr, i32 }
          cleanup
  %398 = extractvalue { ptr, i32 } %397, 0
  store ptr %398, ptr %5, align 8
  %399 = extractvalue { ptr, i32 } %397, 1
  store i32 %399, ptr %6, align 4
  br label %423

400:                                              ; preds = %332
  %401 = landingpad { ptr, i32 }
          cleanup
  %402 = extractvalue { ptr, i32 } %401, 0
  store ptr %402, ptr %5, align 8
  %403 = extractvalue { ptr, i32 } %401, 1
  store i32 %403, ptr %6, align 4
  br label %419

404:                                              ; preds = %335
  %405 = landingpad { ptr, i32 }
          cleanup
  %406 = extractvalue { ptr, i32 } %405, 0
  store ptr %406, ptr %5, align 8
  %407 = extractvalue { ptr, i32 } %405, 1
  store i32 %407, ptr %6, align 4
  br label %415

408:                                              ; preds = %339
  %409 = landingpad { ptr, i32 }
          cleanup
  %410 = extractvalue { ptr, i32 } %409, 0
  store ptr %410, ptr %5, align 8
  %411 = extractvalue { ptr, i32 } %409, 1
  store i32 %411, ptr %6, align 4
  %412 = load i1, ptr %33, align 1
  br i1 %412, label %413, label %414

413:                                              ; preds = %408
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  br label %414

414:                                              ; preds = %413, %408
  br label %415

415:                                              ; preds = %414, %404
  %416 = load i1, ptr %32, align 1
  br i1 %416, label %417, label %418

417:                                              ; preds = %415
  call void @llvm.lifetime.end.p0(i64 32, ptr %31) #6
  br label %418

418:                                              ; preds = %417, %415
  br label %419

419:                                              ; preds = %418, %400
  %420 = load i1, ptr %30, align 1
  br i1 %420, label %421, label %422

421:                                              ; preds = %419
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  br label %422

422:                                              ; preds = %421, %419
  br label %423

423:                                              ; preds = %422, %396
  %424 = load i1, ptr %29, align 1
  br i1 %424, label %425, label %426

425:                                              ; preds = %423
  call void @llvm.lifetime.end.p0(i64 32, ptr %28) #6
  br label %426

426:                                              ; preds = %425, %423
  br label %427

427:                                              ; preds = %426, %392
  %428 = load i1, ptr %27, align 1
  br i1 %428, label %429, label %430

429:                                              ; preds = %427
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #6
  br label %430

430:                                              ; preds = %429, %427
  br label %431

431:                                              ; preds = %430, %388
  %432 = load i1, ptr %26, align 1
  br i1 %432, label %433, label %434

433:                                              ; preds = %431
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #6
  br label %434

434:                                              ; preds = %433, %431
  br label %435

435:                                              ; preds = %434, %384
  %436 = load i1, ptr %24, align 1
  br i1 %436, label %437, label %438

437:                                              ; preds = %435
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  br label %438

438:                                              ; preds = %437, %435
  br label %439

439:                                              ; preds = %438, %380
  %440 = load i1, ptr %23, align 1
  br i1 %440, label %441, label %442

441:                                              ; preds = %439
  call void @llvm.lifetime.end.p0(i64 32, ptr %22) #6
  br label %442

442:                                              ; preds = %441, %439
  br label %443

443:                                              ; preds = %442, %376
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  br label %444

444:                                              ; preds = %443, %372
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #6
  br label %1563

445:                                              ; preds = %367
  call void @llvm.lifetime.start.p0(i64 32, ptr %34) #6
  %446 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %447 = load i32, ptr %7, align 4, !tbaa !5
  %448 = sext i32 %447 to i64
  store i1 false, ptr %36, align 1
  store i1 false, ptr %37, align 1
  store i1 false, ptr %39, align 1
  store i1 false, ptr %40, align 1
  store i1 false, ptr %42, align 1
  store i1 false, ptr %43, align 1
  store i1 false, ptr %45, align 1
  store i1 false, ptr %46, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %34, ptr noundef nonnull align 8 dereferenceable(32) %446, i64 noundef %448, i64 noundef 3)
          to label %449 unwind label %510

449:                                              ; preds = %445
  %450 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef @.str)
          to label %451 unwind label %514

451:                                              ; preds = %449
  br i1 %450, label %452, label %480

452:                                              ; preds = %451
  call void @llvm.lifetime.start.p0(i64 32, ptr %35) #6
  store i1 true, ptr %36, align 1
  %453 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %454 = load i32, ptr %7, align 4, !tbaa !5
  %455 = sext i32 %454 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %35, ptr noundef nonnull align 8 dereferenceable(32) %453, i64 noundef %455, i64 noundef 3)
          to label %456 unwind label %518

456:                                              ; preds = %452
  store i1 true, ptr %37, align 1
  %457 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef @.str.2)
          to label %458 unwind label %522

458:                                              ; preds = %456
  br i1 %457, label %459, label %480

459:                                              ; preds = %458
  call void @llvm.lifetime.start.p0(i64 32, ptr %38) #6
  store i1 true, ptr %39, align 1
  %460 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %461 = load i32, ptr %7, align 4, !tbaa !5
  %462 = sext i32 %461 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 8 dereferenceable(32) %460, i64 noundef %462, i64 noundef 3)
          to label %463 unwind label %526

463:                                              ; preds = %459
  store i1 true, ptr %40, align 1
  %464 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %38, ptr noundef @.str)
          to label %465 unwind label %530

465:                                              ; preds = %463
  br i1 %464, label %466, label %480

466:                                              ; preds = %465
  call void @llvm.lifetime.start.p0(i64 32, ptr %41) #6
  store i1 true, ptr %42, align 1
  %467 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %468 = load i32, ptr %7, align 4, !tbaa !5
  %469 = sext i32 %468 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %41, ptr noundef nonnull align 8 dereferenceable(32) %467, i64 noundef %469, i64 noundef 3)
          to label %470 unwind label %534

470:                                              ; preds = %466
  store i1 true, ptr %43, align 1
  %471 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.3)
          to label %472 unwind label %538

472:                                              ; preds = %470
  br i1 %471, label %473, label %480

473:                                              ; preds = %472
  call void @llvm.lifetime.start.p0(i64 32, ptr %44) #6
  store i1 true, ptr %45, align 1
  %474 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %475 = load i32, ptr %7, align 4, !tbaa !5
  %476 = sext i32 %475 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef nonnull align 8 dereferenceable(32) %474, i64 noundef %476, i64 noundef 3)
          to label %477 unwind label %542

477:                                              ; preds = %473
  store i1 true, ptr %46, align 1
  %478 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef @.str)
          to label %479 unwind label %546

479:                                              ; preds = %477
  br label %480

480:                                              ; preds = %479, %472, %465, %458, %451
  %481 = phi i1 [ false, %472 ], [ false, %465 ], [ false, %458 ], [ false, %451 ], [ %478, %479 ]
  %482 = load i1, ptr %46, align 1
  br i1 %482, label %483, label %484

483:                                              ; preds = %480
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  br label %484

484:                                              ; preds = %483, %480
  %485 = load i1, ptr %45, align 1
  br i1 %485, label %486, label %487

486:                                              ; preds = %484
  call void @llvm.lifetime.end.p0(i64 32, ptr %44) #6
  br label %487

487:                                              ; preds = %486, %484
  %488 = load i1, ptr %43, align 1
  br i1 %488, label %489, label %490

489:                                              ; preds = %487
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  br label %490

490:                                              ; preds = %489, %487
  %491 = load i1, ptr %42, align 1
  br i1 %491, label %492, label %493

492:                                              ; preds = %490
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #6
  br label %493

493:                                              ; preds = %492, %490
  %494 = load i1, ptr %40, align 1
  br i1 %494, label %495, label %496

495:                                              ; preds = %493
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  br label %496

496:                                              ; preds = %495, %493
  %497 = load i1, ptr %39, align 1
  br i1 %497, label %498, label %499

498:                                              ; preds = %496
  call void @llvm.lifetime.end.p0(i64 32, ptr %38) #6
  br label %499

499:                                              ; preds = %498, %496
  %500 = load i1, ptr %37, align 1
  br i1 %500, label %501, label %502

501:                                              ; preds = %499
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #6
  br label %502

502:                                              ; preds = %501, %499
  %503 = load i1, ptr %36, align 1
  br i1 %503, label %504, label %505

504:                                              ; preds = %502
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #6
  br label %505

505:                                              ; preds = %504, %502
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #6
  br i1 %481, label %506, label %583

506:                                              ; preds = %505
  %507 = load i32, ptr %3, align 4, !tbaa !5
  %508 = mul nsw i32 %507, 10
  %509 = add nsw i32 %508, 2
  store i32 %509, ptr %3, align 4, !tbaa !5
  br label %1557

510:                                              ; preds = %445
  %511 = landingpad { ptr, i32 }
          cleanup
  %512 = extractvalue { ptr, i32 } %511, 0
  store ptr %512, ptr %5, align 8
  %513 = extractvalue { ptr, i32 } %511, 1
  store i32 %513, ptr %6, align 4
  br label %582

514:                                              ; preds = %449
  %515 = landingpad { ptr, i32 }
          cleanup
  %516 = extractvalue { ptr, i32 } %515, 0
  store ptr %516, ptr %5, align 8
  %517 = extractvalue { ptr, i32 } %515, 1
  store i32 %517, ptr %6, align 4
  br label %581

518:                                              ; preds = %452
  %519 = landingpad { ptr, i32 }
          cleanup
  %520 = extractvalue { ptr, i32 } %519, 0
  store ptr %520, ptr %5, align 8
  %521 = extractvalue { ptr, i32 } %519, 1
  store i32 %521, ptr %6, align 4
  br label %577

522:                                              ; preds = %456
  %523 = landingpad { ptr, i32 }
          cleanup
  %524 = extractvalue { ptr, i32 } %523, 0
  store ptr %524, ptr %5, align 8
  %525 = extractvalue { ptr, i32 } %523, 1
  store i32 %525, ptr %6, align 4
  br label %573

526:                                              ; preds = %459
  %527 = landingpad { ptr, i32 }
          cleanup
  %528 = extractvalue { ptr, i32 } %527, 0
  store ptr %528, ptr %5, align 8
  %529 = extractvalue { ptr, i32 } %527, 1
  store i32 %529, ptr %6, align 4
  br label %569

530:                                              ; preds = %463
  %531 = landingpad { ptr, i32 }
          cleanup
  %532 = extractvalue { ptr, i32 } %531, 0
  store ptr %532, ptr %5, align 8
  %533 = extractvalue { ptr, i32 } %531, 1
  store i32 %533, ptr %6, align 4
  br label %565

534:                                              ; preds = %466
  %535 = landingpad { ptr, i32 }
          cleanup
  %536 = extractvalue { ptr, i32 } %535, 0
  store ptr %536, ptr %5, align 8
  %537 = extractvalue { ptr, i32 } %535, 1
  store i32 %537, ptr %6, align 4
  br label %561

538:                                              ; preds = %470
  %539 = landingpad { ptr, i32 }
          cleanup
  %540 = extractvalue { ptr, i32 } %539, 0
  store ptr %540, ptr %5, align 8
  %541 = extractvalue { ptr, i32 } %539, 1
  store i32 %541, ptr %6, align 4
  br label %557

542:                                              ; preds = %473
  %543 = landingpad { ptr, i32 }
          cleanup
  %544 = extractvalue { ptr, i32 } %543, 0
  store ptr %544, ptr %5, align 8
  %545 = extractvalue { ptr, i32 } %543, 1
  store i32 %545, ptr %6, align 4
  br label %553

546:                                              ; preds = %477
  %547 = landingpad { ptr, i32 }
          cleanup
  %548 = extractvalue { ptr, i32 } %547, 0
  store ptr %548, ptr %5, align 8
  %549 = extractvalue { ptr, i32 } %547, 1
  store i32 %549, ptr %6, align 4
  %550 = load i1, ptr %46, align 1
  br i1 %550, label %551, label %552

551:                                              ; preds = %546
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  br label %552

552:                                              ; preds = %551, %546
  br label %553

553:                                              ; preds = %552, %542
  %554 = load i1, ptr %45, align 1
  br i1 %554, label %555, label %556

555:                                              ; preds = %553
  call void @llvm.lifetime.end.p0(i64 32, ptr %44) #6
  br label %556

556:                                              ; preds = %555, %553
  br label %557

557:                                              ; preds = %556, %538
  %558 = load i1, ptr %43, align 1
  br i1 %558, label %559, label %560

559:                                              ; preds = %557
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  br label %560

560:                                              ; preds = %559, %557
  br label %561

561:                                              ; preds = %560, %534
  %562 = load i1, ptr %42, align 1
  br i1 %562, label %563, label %564

563:                                              ; preds = %561
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #6
  br label %564

564:                                              ; preds = %563, %561
  br label %565

565:                                              ; preds = %564, %530
  %566 = load i1, ptr %40, align 1
  br i1 %566, label %567, label %568

567:                                              ; preds = %565
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  br label %568

568:                                              ; preds = %567, %565
  br label %569

569:                                              ; preds = %568, %526
  %570 = load i1, ptr %39, align 1
  br i1 %570, label %571, label %572

571:                                              ; preds = %569
  call void @llvm.lifetime.end.p0(i64 32, ptr %38) #6
  br label %572

572:                                              ; preds = %571, %569
  br label %573

573:                                              ; preds = %572, %522
  %574 = load i1, ptr %37, align 1
  br i1 %574, label %575, label %576

575:                                              ; preds = %573
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #6
  br label %576

576:                                              ; preds = %575, %573
  br label %577

577:                                              ; preds = %576, %518
  %578 = load i1, ptr %36, align 1
  br i1 %578, label %579, label %580

579:                                              ; preds = %577
  call void @llvm.lifetime.end.p0(i64 32, ptr %35) #6
  br label %580

580:                                              ; preds = %579, %577
  br label %581

581:                                              ; preds = %580, %514
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  br label %582

582:                                              ; preds = %581, %510
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #6
  br label %1563

583:                                              ; preds = %505
  call void @llvm.lifetime.start.p0(i64 32, ptr %47) #6
  %584 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %585 = load i32, ptr %7, align 4, !tbaa !5
  %586 = sext i32 %585 to i64
  store i1 false, ptr %49, align 1
  store i1 false, ptr %50, align 1
  store i1 false, ptr %52, align 1
  store i1 false, ptr %53, align 1
  store i1 false, ptr %55, align 1
  store i1 false, ptr %56, align 1
  store i1 false, ptr %58, align 1
  store i1 false, ptr %59, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 8 dereferenceable(32) %584, i64 noundef %586, i64 noundef 3)
          to label %587 unwind label %648

587:                                              ; preds = %583
  %588 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef @.str)
          to label %589 unwind label %652

589:                                              ; preds = %587
  br i1 %588, label %590, label %618

590:                                              ; preds = %589
  call void @llvm.lifetime.start.p0(i64 32, ptr %48) #6
  store i1 true, ptr %49, align 1
  %591 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %592 = load i32, ptr %7, align 4, !tbaa !5
  %593 = sext i32 %592 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %48, ptr noundef nonnull align 8 dereferenceable(32) %591, i64 noundef %593, i64 noundef 3)
          to label %594 unwind label %656

594:                                              ; preds = %590
  store i1 true, ptr %50, align 1
  %595 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef @.str.2)
          to label %596 unwind label %660

596:                                              ; preds = %594
  br i1 %595, label %597, label %618

597:                                              ; preds = %596
  call void @llvm.lifetime.start.p0(i64 32, ptr %51) #6
  store i1 true, ptr %52, align 1
  %598 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %599 = load i32, ptr %7, align 4, !tbaa !5
  %600 = sext i32 %599 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %598, i64 noundef %600, i64 noundef 3)
          to label %601 unwind label %664

601:                                              ; preds = %597
  store i1 true, ptr %53, align 1
  %602 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef @.str)
          to label %603 unwind label %668

603:                                              ; preds = %601
  br i1 %602, label %604, label %618

604:                                              ; preds = %603
  call void @llvm.lifetime.start.p0(i64 32, ptr %54) #6
  store i1 true, ptr %55, align 1
  %605 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %606 = load i32, ptr %7, align 4, !tbaa !5
  %607 = sext i32 %606 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %54, ptr noundef nonnull align 8 dereferenceable(32) %605, i64 noundef %607, i64 noundef 3)
          to label %608 unwind label %672

608:                                              ; preds = %604
  store i1 true, ptr %56, align 1
  %609 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef @.str.2)
          to label %610 unwind label %676

610:                                              ; preds = %608
  br i1 %609, label %611, label %618

611:                                              ; preds = %610
  call void @llvm.lifetime.start.p0(i64 32, ptr %57) #6
  store i1 true, ptr %58, align 1
  %612 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %613 = load i32, ptr %7, align 4, !tbaa !5
  %614 = sext i32 %613 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %57, ptr noundef nonnull align 8 dereferenceable(32) %612, i64 noundef %614, i64 noundef 3)
          to label %615 unwind label %680

615:                                              ; preds = %611
  store i1 true, ptr %59, align 1
  %616 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef @.str)
          to label %617 unwind label %684

617:                                              ; preds = %615
  br label %618

618:                                              ; preds = %617, %610, %603, %596, %589
  %619 = phi i1 [ false, %610 ], [ false, %603 ], [ false, %596 ], [ false, %589 ], [ %616, %617 ]
  %620 = load i1, ptr %59, align 1
  br i1 %620, label %621, label %622

621:                                              ; preds = %618
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #6
  br label %622

622:                                              ; preds = %621, %618
  %623 = load i1, ptr %58, align 1
  br i1 %623, label %624, label %625

624:                                              ; preds = %622
  call void @llvm.lifetime.end.p0(i64 32, ptr %57) #6
  br label %625

625:                                              ; preds = %624, %622
  %626 = load i1, ptr %56, align 1
  br i1 %626, label %627, label %628

627:                                              ; preds = %625
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #6
  br label %628

628:                                              ; preds = %627, %625
  %629 = load i1, ptr %55, align 1
  br i1 %629, label %630, label %631

630:                                              ; preds = %628
  call void @llvm.lifetime.end.p0(i64 32, ptr %54) #6
  br label %631

631:                                              ; preds = %630, %628
  %632 = load i1, ptr %53, align 1
  br i1 %632, label %633, label %634

633:                                              ; preds = %631
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #6
  br label %634

634:                                              ; preds = %633, %631
  %635 = load i1, ptr %52, align 1
  br i1 %635, label %636, label %637

636:                                              ; preds = %634
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #6
  br label %637

637:                                              ; preds = %636, %634
  %638 = load i1, ptr %50, align 1
  br i1 %638, label %639, label %640

639:                                              ; preds = %637
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  br label %640

640:                                              ; preds = %639, %637
  %641 = load i1, ptr %49, align 1
  br i1 %641, label %642, label %643

642:                                              ; preds = %640
  call void @llvm.lifetime.end.p0(i64 32, ptr %48) #6
  br label %643

643:                                              ; preds = %642, %640
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #6
  br i1 %619, label %644, label %721

644:                                              ; preds = %643
  %645 = load i32, ptr %3, align 4, !tbaa !5
  %646 = mul nsw i32 %645, 10
  %647 = add nsw i32 %646, 3
  store i32 %647, ptr %3, align 4, !tbaa !5
  br label %1556

648:                                              ; preds = %583
  %649 = landingpad { ptr, i32 }
          cleanup
  %650 = extractvalue { ptr, i32 } %649, 0
  store ptr %650, ptr %5, align 8
  %651 = extractvalue { ptr, i32 } %649, 1
  store i32 %651, ptr %6, align 4
  br label %720

652:                                              ; preds = %587
  %653 = landingpad { ptr, i32 }
          cleanup
  %654 = extractvalue { ptr, i32 } %653, 0
  store ptr %654, ptr %5, align 8
  %655 = extractvalue { ptr, i32 } %653, 1
  store i32 %655, ptr %6, align 4
  br label %719

656:                                              ; preds = %590
  %657 = landingpad { ptr, i32 }
          cleanup
  %658 = extractvalue { ptr, i32 } %657, 0
  store ptr %658, ptr %5, align 8
  %659 = extractvalue { ptr, i32 } %657, 1
  store i32 %659, ptr %6, align 4
  br label %715

660:                                              ; preds = %594
  %661 = landingpad { ptr, i32 }
          cleanup
  %662 = extractvalue { ptr, i32 } %661, 0
  store ptr %662, ptr %5, align 8
  %663 = extractvalue { ptr, i32 } %661, 1
  store i32 %663, ptr %6, align 4
  br label %711

664:                                              ; preds = %597
  %665 = landingpad { ptr, i32 }
          cleanup
  %666 = extractvalue { ptr, i32 } %665, 0
  store ptr %666, ptr %5, align 8
  %667 = extractvalue { ptr, i32 } %665, 1
  store i32 %667, ptr %6, align 4
  br label %707

668:                                              ; preds = %601
  %669 = landingpad { ptr, i32 }
          cleanup
  %670 = extractvalue { ptr, i32 } %669, 0
  store ptr %670, ptr %5, align 8
  %671 = extractvalue { ptr, i32 } %669, 1
  store i32 %671, ptr %6, align 4
  br label %703

672:                                              ; preds = %604
  %673 = landingpad { ptr, i32 }
          cleanup
  %674 = extractvalue { ptr, i32 } %673, 0
  store ptr %674, ptr %5, align 8
  %675 = extractvalue { ptr, i32 } %673, 1
  store i32 %675, ptr %6, align 4
  br label %699

676:                                              ; preds = %608
  %677 = landingpad { ptr, i32 }
          cleanup
  %678 = extractvalue { ptr, i32 } %677, 0
  store ptr %678, ptr %5, align 8
  %679 = extractvalue { ptr, i32 } %677, 1
  store i32 %679, ptr %6, align 4
  br label %695

680:                                              ; preds = %611
  %681 = landingpad { ptr, i32 }
          cleanup
  %682 = extractvalue { ptr, i32 } %681, 0
  store ptr %682, ptr %5, align 8
  %683 = extractvalue { ptr, i32 } %681, 1
  store i32 %683, ptr %6, align 4
  br label %691

684:                                              ; preds = %615
  %685 = landingpad { ptr, i32 }
          cleanup
  %686 = extractvalue { ptr, i32 } %685, 0
  store ptr %686, ptr %5, align 8
  %687 = extractvalue { ptr, i32 } %685, 1
  store i32 %687, ptr %6, align 4
  %688 = load i1, ptr %59, align 1
  br i1 %688, label %689, label %690

689:                                              ; preds = %684
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #6
  br label %690

690:                                              ; preds = %689, %684
  br label %691

691:                                              ; preds = %690, %680
  %692 = load i1, ptr %58, align 1
  br i1 %692, label %693, label %694

693:                                              ; preds = %691
  call void @llvm.lifetime.end.p0(i64 32, ptr %57) #6
  br label %694

694:                                              ; preds = %693, %691
  br label %695

695:                                              ; preds = %694, %676
  %696 = load i1, ptr %56, align 1
  br i1 %696, label %697, label %698

697:                                              ; preds = %695
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #6
  br label %698

698:                                              ; preds = %697, %695
  br label %699

699:                                              ; preds = %698, %672
  %700 = load i1, ptr %55, align 1
  br i1 %700, label %701, label %702

701:                                              ; preds = %699
  call void @llvm.lifetime.end.p0(i64 32, ptr %54) #6
  br label %702

702:                                              ; preds = %701, %699
  br label %703

703:                                              ; preds = %702, %668
  %704 = load i1, ptr %53, align 1
  br i1 %704, label %705, label %706

705:                                              ; preds = %703
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #6
  br label %706

706:                                              ; preds = %705, %703
  br label %707

707:                                              ; preds = %706, %664
  %708 = load i1, ptr %52, align 1
  br i1 %708, label %709, label %710

709:                                              ; preds = %707
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #6
  br label %710

710:                                              ; preds = %709, %707
  br label %711

711:                                              ; preds = %710, %660
  %712 = load i1, ptr %50, align 1
  br i1 %712, label %713, label %714

713:                                              ; preds = %711
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  br label %714

714:                                              ; preds = %713, %711
  br label %715

715:                                              ; preds = %714, %656
  %716 = load i1, ptr %49, align 1
  br i1 %716, label %717, label %718

717:                                              ; preds = %715
  call void @llvm.lifetime.end.p0(i64 32, ptr %48) #6
  br label %718

718:                                              ; preds = %717, %715
  br label %719

719:                                              ; preds = %718, %652
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  br label %720

720:                                              ; preds = %719, %648
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #6
  br label %1563

721:                                              ; preds = %643
  call void @llvm.lifetime.start.p0(i64 32, ptr %60) #6
  %722 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %723 = load i32, ptr %7, align 4, !tbaa !5
  %724 = sext i32 %723 to i64
  store i1 false, ptr %62, align 1
  store i1 false, ptr %63, align 1
  store i1 false, ptr %65, align 1
  store i1 false, ptr %66, align 1
  store i1 false, ptr %68, align 1
  store i1 false, ptr %69, align 1
  store i1 false, ptr %71, align 1
  store i1 false, ptr %72, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %60, ptr noundef nonnull align 8 dereferenceable(32) %722, i64 noundef %724, i64 noundef 3)
          to label %725 unwind label %786

725:                                              ; preds = %721
  %726 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %60, ptr noundef @.str.1)
          to label %727 unwind label %790

727:                                              ; preds = %725
  br i1 %726, label %728, label %756

728:                                              ; preds = %727
  call void @llvm.lifetime.start.p0(i64 32, ptr %61) #6
  store i1 true, ptr %62, align 1
  %729 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %730 = load i32, ptr %7, align 4, !tbaa !5
  %731 = sext i32 %730 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %61, ptr noundef nonnull align 8 dereferenceable(32) %729, i64 noundef %731, i64 noundef 3)
          to label %732 unwind label %794

732:                                              ; preds = %728
  store i1 true, ptr %63, align 1
  %733 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef @.str.1)
          to label %734 unwind label %798

734:                                              ; preds = %732
  br i1 %733, label %735, label %756

735:                                              ; preds = %734
  call void @llvm.lifetime.start.p0(i64 32, ptr %64) #6
  store i1 true, ptr %65, align 1
  %736 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %737 = load i32, ptr %7, align 4, !tbaa !5
  %738 = sext i32 %737 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %64, ptr noundef nonnull align 8 dereferenceable(32) %736, i64 noundef %738, i64 noundef 3)
          to label %739 unwind label %802

739:                                              ; preds = %735
  store i1 true, ptr %66, align 1
  %740 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %64, ptr noundef @.str)
          to label %741 unwind label %806

741:                                              ; preds = %739
  br i1 %740, label %742, label %756

742:                                              ; preds = %741
  call void @llvm.lifetime.start.p0(i64 32, ptr %67) #6
  store i1 true, ptr %68, align 1
  %743 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %744 = load i32, ptr %7, align 4, !tbaa !5
  %745 = sext i32 %744 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %67, ptr noundef nonnull align 8 dereferenceable(32) %743, i64 noundef %745, i64 noundef 3)
          to label %746 unwind label %810

746:                                              ; preds = %742
  store i1 true, ptr %69, align 1
  %747 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef @.str.2)
          to label %748 unwind label %814

748:                                              ; preds = %746
  br i1 %747, label %749, label %756

749:                                              ; preds = %748
  call void @llvm.lifetime.start.p0(i64 32, ptr %70) #6
  store i1 true, ptr %71, align 1
  %750 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %751 = load i32, ptr %7, align 4, !tbaa !5
  %752 = sext i32 %751 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %70, ptr noundef nonnull align 8 dereferenceable(32) %750, i64 noundef %752, i64 noundef 3)
          to label %753 unwind label %818

753:                                              ; preds = %749
  store i1 true, ptr %72, align 1
  %754 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef @.str.2)
          to label %755 unwind label %822

755:                                              ; preds = %753
  br label %756

756:                                              ; preds = %755, %748, %741, %734, %727
  %757 = phi i1 [ false, %748 ], [ false, %741 ], [ false, %734 ], [ false, %727 ], [ %754, %755 ]
  %758 = load i1, ptr %72, align 1
  br i1 %758, label %759, label %760

759:                                              ; preds = %756
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #6
  br label %760

760:                                              ; preds = %759, %756
  %761 = load i1, ptr %71, align 1
  br i1 %761, label %762, label %763

762:                                              ; preds = %760
  call void @llvm.lifetime.end.p0(i64 32, ptr %70) #6
  br label %763

763:                                              ; preds = %762, %760
  %764 = load i1, ptr %69, align 1
  br i1 %764, label %765, label %766

765:                                              ; preds = %763
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #6
  br label %766

766:                                              ; preds = %765, %763
  %767 = load i1, ptr %68, align 1
  br i1 %767, label %768, label %769

768:                                              ; preds = %766
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #6
  br label %769

769:                                              ; preds = %768, %766
  %770 = load i1, ptr %66, align 1
  br i1 %770, label %771, label %772

771:                                              ; preds = %769
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #6
  br label %772

772:                                              ; preds = %771, %769
  %773 = load i1, ptr %65, align 1
  br i1 %773, label %774, label %775

774:                                              ; preds = %772
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #6
  br label %775

775:                                              ; preds = %774, %772
  %776 = load i1, ptr %63, align 1
  br i1 %776, label %777, label %778

777:                                              ; preds = %775
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #6
  br label %778

778:                                              ; preds = %777, %775
  %779 = load i1, ptr %62, align 1
  br i1 %779, label %780, label %781

780:                                              ; preds = %778
  call void @llvm.lifetime.end.p0(i64 32, ptr %61) #6
  br label %781

781:                                              ; preds = %780, %778
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %60) #6
  br i1 %757, label %782, label %859

782:                                              ; preds = %781
  %783 = load i32, ptr %3, align 4, !tbaa !5
  %784 = mul nsw i32 %783, 10
  %785 = add nsw i32 %784, 4
  store i32 %785, ptr %3, align 4, !tbaa !5
  br label %1555

786:                                              ; preds = %721
  %787 = landingpad { ptr, i32 }
          cleanup
  %788 = extractvalue { ptr, i32 } %787, 0
  store ptr %788, ptr %5, align 8
  %789 = extractvalue { ptr, i32 } %787, 1
  store i32 %789, ptr %6, align 4
  br label %858

790:                                              ; preds = %725
  %791 = landingpad { ptr, i32 }
          cleanup
  %792 = extractvalue { ptr, i32 } %791, 0
  store ptr %792, ptr %5, align 8
  %793 = extractvalue { ptr, i32 } %791, 1
  store i32 %793, ptr %6, align 4
  br label %857

794:                                              ; preds = %728
  %795 = landingpad { ptr, i32 }
          cleanup
  %796 = extractvalue { ptr, i32 } %795, 0
  store ptr %796, ptr %5, align 8
  %797 = extractvalue { ptr, i32 } %795, 1
  store i32 %797, ptr %6, align 4
  br label %853

798:                                              ; preds = %732
  %799 = landingpad { ptr, i32 }
          cleanup
  %800 = extractvalue { ptr, i32 } %799, 0
  store ptr %800, ptr %5, align 8
  %801 = extractvalue { ptr, i32 } %799, 1
  store i32 %801, ptr %6, align 4
  br label %849

802:                                              ; preds = %735
  %803 = landingpad { ptr, i32 }
          cleanup
  %804 = extractvalue { ptr, i32 } %803, 0
  store ptr %804, ptr %5, align 8
  %805 = extractvalue { ptr, i32 } %803, 1
  store i32 %805, ptr %6, align 4
  br label %845

806:                                              ; preds = %739
  %807 = landingpad { ptr, i32 }
          cleanup
  %808 = extractvalue { ptr, i32 } %807, 0
  store ptr %808, ptr %5, align 8
  %809 = extractvalue { ptr, i32 } %807, 1
  store i32 %809, ptr %6, align 4
  br label %841

810:                                              ; preds = %742
  %811 = landingpad { ptr, i32 }
          cleanup
  %812 = extractvalue { ptr, i32 } %811, 0
  store ptr %812, ptr %5, align 8
  %813 = extractvalue { ptr, i32 } %811, 1
  store i32 %813, ptr %6, align 4
  br label %837

814:                                              ; preds = %746
  %815 = landingpad { ptr, i32 }
          cleanup
  %816 = extractvalue { ptr, i32 } %815, 0
  store ptr %816, ptr %5, align 8
  %817 = extractvalue { ptr, i32 } %815, 1
  store i32 %817, ptr %6, align 4
  br label %833

818:                                              ; preds = %749
  %819 = landingpad { ptr, i32 }
          cleanup
  %820 = extractvalue { ptr, i32 } %819, 0
  store ptr %820, ptr %5, align 8
  %821 = extractvalue { ptr, i32 } %819, 1
  store i32 %821, ptr %6, align 4
  br label %829

822:                                              ; preds = %753
  %823 = landingpad { ptr, i32 }
          cleanup
  %824 = extractvalue { ptr, i32 } %823, 0
  store ptr %824, ptr %5, align 8
  %825 = extractvalue { ptr, i32 } %823, 1
  store i32 %825, ptr %6, align 4
  %826 = load i1, ptr %72, align 1
  br i1 %826, label %827, label %828

827:                                              ; preds = %822
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #6
  br label %828

828:                                              ; preds = %827, %822
  br label %829

829:                                              ; preds = %828, %818
  %830 = load i1, ptr %71, align 1
  br i1 %830, label %831, label %832

831:                                              ; preds = %829
  call void @llvm.lifetime.end.p0(i64 32, ptr %70) #6
  br label %832

832:                                              ; preds = %831, %829
  br label %833

833:                                              ; preds = %832, %814
  %834 = load i1, ptr %69, align 1
  br i1 %834, label %835, label %836

835:                                              ; preds = %833
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #6
  br label %836

836:                                              ; preds = %835, %833
  br label %837

837:                                              ; preds = %836, %810
  %838 = load i1, ptr %68, align 1
  br i1 %838, label %839, label %840

839:                                              ; preds = %837
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #6
  br label %840

840:                                              ; preds = %839, %837
  br label %841

841:                                              ; preds = %840, %806
  %842 = load i1, ptr %66, align 1
  br i1 %842, label %843, label %844

843:                                              ; preds = %841
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #6
  br label %844

844:                                              ; preds = %843, %841
  br label %845

845:                                              ; preds = %844, %802
  %846 = load i1, ptr %65, align 1
  br i1 %846, label %847, label %848

847:                                              ; preds = %845
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #6
  br label %848

848:                                              ; preds = %847, %845
  br label %849

849:                                              ; preds = %848, %798
  %850 = load i1, ptr %63, align 1
  br i1 %850, label %851, label %852

851:                                              ; preds = %849
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #6
  br label %852

852:                                              ; preds = %851, %849
  br label %853

853:                                              ; preds = %852, %794
  %854 = load i1, ptr %62, align 1
  br i1 %854, label %855, label %856

855:                                              ; preds = %853
  call void @llvm.lifetime.end.p0(i64 32, ptr %61) #6
  br label %856

856:                                              ; preds = %855, %853
  br label %857

857:                                              ; preds = %856, %790
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  br label %858

858:                                              ; preds = %857, %786
  call void @llvm.lifetime.end.p0(i64 32, ptr %60) #6
  br label %1563

859:                                              ; preds = %781
  call void @llvm.lifetime.start.p0(i64 32, ptr %73) #6
  %860 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %861 = load i32, ptr %7, align 4, !tbaa !5
  %862 = sext i32 %861 to i64
  store i1 false, ptr %75, align 1
  store i1 false, ptr %76, align 1
  store i1 false, ptr %78, align 1
  store i1 false, ptr %79, align 1
  store i1 false, ptr %81, align 1
  store i1 false, ptr %82, align 1
  store i1 false, ptr %84, align 1
  store i1 false, ptr %85, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %73, ptr noundef nonnull align 8 dereferenceable(32) %860, i64 noundef %862, i64 noundef 3)
          to label %863 unwind label %924

863:                                              ; preds = %859
  %864 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef @.str)
          to label %865 unwind label %928

865:                                              ; preds = %863
  br i1 %864, label %866, label %894

866:                                              ; preds = %865
  call void @llvm.lifetime.start.p0(i64 32, ptr %74) #6
  store i1 true, ptr %75, align 1
  %867 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %868 = load i32, ptr %7, align 4, !tbaa !5
  %869 = sext i32 %868 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %74, ptr noundef nonnull align 8 dereferenceable(32) %867, i64 noundef %869, i64 noundef 3)
          to label %870 unwind label %932

870:                                              ; preds = %866
  store i1 true, ptr %76, align 1
  %871 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef @.str.3)
          to label %872 unwind label %936

872:                                              ; preds = %870
  br i1 %871, label %873, label %894

873:                                              ; preds = %872
  call void @llvm.lifetime.start.p0(i64 32, ptr %77) #6
  store i1 true, ptr %78, align 1
  %874 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %875 = load i32, ptr %7, align 4, !tbaa !5
  %876 = sext i32 %875 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %77, ptr noundef nonnull align 8 dereferenceable(32) %874, i64 noundef %876, i64 noundef 3)
          to label %877 unwind label %940

877:                                              ; preds = %873
  store i1 true, ptr %79, align 1
  %878 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef @.str)
          to label %879 unwind label %944

879:                                              ; preds = %877
  br i1 %878, label %880, label %894

880:                                              ; preds = %879
  call void @llvm.lifetime.start.p0(i64 32, ptr %80) #6
  store i1 true, ptr %81, align 1
  %881 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %882 = load i32, ptr %7, align 4, !tbaa !5
  %883 = sext i32 %882 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %80, ptr noundef nonnull align 8 dereferenceable(32) %881, i64 noundef %883, i64 noundef 3)
          to label %884 unwind label %948

884:                                              ; preds = %880
  store i1 true, ptr %82, align 1
  %885 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef @.str.2)
          to label %886 unwind label %952

886:                                              ; preds = %884
  br i1 %885, label %887, label %894

887:                                              ; preds = %886
  call void @llvm.lifetime.start.p0(i64 32, ptr %83) #6
  store i1 true, ptr %84, align 1
  %888 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %889 = load i32, ptr %7, align 4, !tbaa !5
  %890 = sext i32 %889 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %83, ptr noundef nonnull align 8 dereferenceable(32) %888, i64 noundef %890, i64 noundef 3)
          to label %891 unwind label %956

891:                                              ; preds = %887
  store i1 true, ptr %85, align 1
  %892 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str)
          to label %893 unwind label %960

893:                                              ; preds = %891
  br label %894

894:                                              ; preds = %893, %886, %879, %872, %865
  %895 = phi i1 [ false, %886 ], [ false, %879 ], [ false, %872 ], [ false, %865 ], [ %892, %893 ]
  %896 = load i1, ptr %85, align 1
  br i1 %896, label %897, label %898

897:                                              ; preds = %894
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #6
  br label %898

898:                                              ; preds = %897, %894
  %899 = load i1, ptr %84, align 1
  br i1 %899, label %900, label %901

900:                                              ; preds = %898
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #6
  br label %901

901:                                              ; preds = %900, %898
  %902 = load i1, ptr %82, align 1
  br i1 %902, label %903, label %904

903:                                              ; preds = %901
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #6
  br label %904

904:                                              ; preds = %903, %901
  %905 = load i1, ptr %81, align 1
  br i1 %905, label %906, label %907

906:                                              ; preds = %904
  call void @llvm.lifetime.end.p0(i64 32, ptr %80) #6
  br label %907

907:                                              ; preds = %906, %904
  %908 = load i1, ptr %79, align 1
  br i1 %908, label %909, label %910

909:                                              ; preds = %907
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #6
  br label %910

910:                                              ; preds = %909, %907
  %911 = load i1, ptr %78, align 1
  br i1 %911, label %912, label %913

912:                                              ; preds = %910
  call void @llvm.lifetime.end.p0(i64 32, ptr %77) #6
  br label %913

913:                                              ; preds = %912, %910
  %914 = load i1, ptr %76, align 1
  br i1 %914, label %915, label %916

915:                                              ; preds = %913
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #6
  br label %916

916:                                              ; preds = %915, %913
  %917 = load i1, ptr %75, align 1
  br i1 %917, label %918, label %919

918:                                              ; preds = %916
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #6
  br label %919

919:                                              ; preds = %918, %916
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #6
  br i1 %895, label %920, label %997

920:                                              ; preds = %919
  %921 = load i32, ptr %3, align 4, !tbaa !5
  %922 = mul nsw i32 %921, 10
  %923 = add nsw i32 %922, 5
  store i32 %923, ptr %3, align 4, !tbaa !5
  br label %1554

924:                                              ; preds = %859
  %925 = landingpad { ptr, i32 }
          cleanup
  %926 = extractvalue { ptr, i32 } %925, 0
  store ptr %926, ptr %5, align 8
  %927 = extractvalue { ptr, i32 } %925, 1
  store i32 %927, ptr %6, align 4
  br label %996

928:                                              ; preds = %863
  %929 = landingpad { ptr, i32 }
          cleanup
  %930 = extractvalue { ptr, i32 } %929, 0
  store ptr %930, ptr %5, align 8
  %931 = extractvalue { ptr, i32 } %929, 1
  store i32 %931, ptr %6, align 4
  br label %995

932:                                              ; preds = %866
  %933 = landingpad { ptr, i32 }
          cleanup
  %934 = extractvalue { ptr, i32 } %933, 0
  store ptr %934, ptr %5, align 8
  %935 = extractvalue { ptr, i32 } %933, 1
  store i32 %935, ptr %6, align 4
  br label %991

936:                                              ; preds = %870
  %937 = landingpad { ptr, i32 }
          cleanup
  %938 = extractvalue { ptr, i32 } %937, 0
  store ptr %938, ptr %5, align 8
  %939 = extractvalue { ptr, i32 } %937, 1
  store i32 %939, ptr %6, align 4
  br label %987

940:                                              ; preds = %873
  %941 = landingpad { ptr, i32 }
          cleanup
  %942 = extractvalue { ptr, i32 } %941, 0
  store ptr %942, ptr %5, align 8
  %943 = extractvalue { ptr, i32 } %941, 1
  store i32 %943, ptr %6, align 4
  br label %983

944:                                              ; preds = %877
  %945 = landingpad { ptr, i32 }
          cleanup
  %946 = extractvalue { ptr, i32 } %945, 0
  store ptr %946, ptr %5, align 8
  %947 = extractvalue { ptr, i32 } %945, 1
  store i32 %947, ptr %6, align 4
  br label %979

948:                                              ; preds = %880
  %949 = landingpad { ptr, i32 }
          cleanup
  %950 = extractvalue { ptr, i32 } %949, 0
  store ptr %950, ptr %5, align 8
  %951 = extractvalue { ptr, i32 } %949, 1
  store i32 %951, ptr %6, align 4
  br label %975

952:                                              ; preds = %884
  %953 = landingpad { ptr, i32 }
          cleanup
  %954 = extractvalue { ptr, i32 } %953, 0
  store ptr %954, ptr %5, align 8
  %955 = extractvalue { ptr, i32 } %953, 1
  store i32 %955, ptr %6, align 4
  br label %971

956:                                              ; preds = %887
  %957 = landingpad { ptr, i32 }
          cleanup
  %958 = extractvalue { ptr, i32 } %957, 0
  store ptr %958, ptr %5, align 8
  %959 = extractvalue { ptr, i32 } %957, 1
  store i32 %959, ptr %6, align 4
  br label %967

960:                                              ; preds = %891
  %961 = landingpad { ptr, i32 }
          cleanup
  %962 = extractvalue { ptr, i32 } %961, 0
  store ptr %962, ptr %5, align 8
  %963 = extractvalue { ptr, i32 } %961, 1
  store i32 %963, ptr %6, align 4
  %964 = load i1, ptr %85, align 1
  br i1 %964, label %965, label %966

965:                                              ; preds = %960
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #6
  br label %966

966:                                              ; preds = %965, %960
  br label %967

967:                                              ; preds = %966, %956
  %968 = load i1, ptr %84, align 1
  br i1 %968, label %969, label %970

969:                                              ; preds = %967
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #6
  br label %970

970:                                              ; preds = %969, %967
  br label %971

971:                                              ; preds = %970, %952
  %972 = load i1, ptr %82, align 1
  br i1 %972, label %973, label %974

973:                                              ; preds = %971
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #6
  br label %974

974:                                              ; preds = %973, %971
  br label %975

975:                                              ; preds = %974, %948
  %976 = load i1, ptr %81, align 1
  br i1 %976, label %977, label %978

977:                                              ; preds = %975
  call void @llvm.lifetime.end.p0(i64 32, ptr %80) #6
  br label %978

978:                                              ; preds = %977, %975
  br label %979

979:                                              ; preds = %978, %944
  %980 = load i1, ptr %79, align 1
  br i1 %980, label %981, label %982

981:                                              ; preds = %979
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #6
  br label %982

982:                                              ; preds = %981, %979
  br label %983

983:                                              ; preds = %982, %940
  %984 = load i1, ptr %78, align 1
  br i1 %984, label %985, label %986

985:                                              ; preds = %983
  call void @llvm.lifetime.end.p0(i64 32, ptr %77) #6
  br label %986

986:                                              ; preds = %985, %983
  br label %987

987:                                              ; preds = %986, %936
  %988 = load i1, ptr %76, align 1
  br i1 %988, label %989, label %990

989:                                              ; preds = %987
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #6
  br label %990

990:                                              ; preds = %989, %987
  br label %991

991:                                              ; preds = %990, %932
  %992 = load i1, ptr %75, align 1
  br i1 %992, label %993, label %994

993:                                              ; preds = %991
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #6
  br label %994

994:                                              ; preds = %993, %991
  br label %995

995:                                              ; preds = %994, %928
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  br label %996

996:                                              ; preds = %995, %924
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #6
  br label %1563

997:                                              ; preds = %919
  call void @llvm.lifetime.start.p0(i64 32, ptr %86) #6
  %998 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %999 = load i32, ptr %7, align 4, !tbaa !5
  %1000 = sext i32 %999 to i64
  store i1 false, ptr %88, align 1
  store i1 false, ptr %89, align 1
  store i1 false, ptr %91, align 1
  store i1 false, ptr %92, align 1
  store i1 false, ptr %94, align 1
  store i1 false, ptr %95, align 1
  store i1 false, ptr %97, align 1
  store i1 false, ptr %98, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %86, ptr noundef nonnull align 8 dereferenceable(32) %998, i64 noundef %1000, i64 noundef 3)
          to label %1001 unwind label %1062

1001:                                             ; preds = %997
  %1002 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %86, ptr noundef @.str)
          to label %1003 unwind label %1066

1003:                                             ; preds = %1001
  br i1 %1002, label %1004, label %1032

1004:                                             ; preds = %1003
  call void @llvm.lifetime.start.p0(i64 32, ptr %87) #6
  store i1 true, ptr %88, align 1
  %1005 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %1006 = load i32, ptr %7, align 4, !tbaa !5
  %1007 = sext i32 %1006 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %87, ptr noundef nonnull align 8 dereferenceable(32) %1005, i64 noundef %1007, i64 noundef 3)
          to label %1008 unwind label %1070

1008:                                             ; preds = %1004
  store i1 true, ptr %89, align 1
  %1009 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %87, ptr noundef @.str.3)
          to label %1010 unwind label %1074

1010:                                             ; preds = %1008
  br i1 %1009, label %1011, label %1032

1011:                                             ; preds = %1010
  call void @llvm.lifetime.start.p0(i64 32, ptr %90) #6
  store i1 true, ptr %91, align 1
  %1012 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %1013 = load i32, ptr %7, align 4, !tbaa !5
  %1014 = sext i32 %1013 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %90, ptr noundef nonnull align 8 dereferenceable(32) %1012, i64 noundef %1014, i64 noundef 3)
          to label %1015 unwind label %1078

1015:                                             ; preds = %1011
  store i1 true, ptr %92, align 1
  %1016 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %90, ptr noundef @.str)
          to label %1017 unwind label %1082

1017:                                             ; preds = %1015
  br i1 %1016, label %1018, label %1032

1018:                                             ; preds = %1017
  call void @llvm.lifetime.start.p0(i64 32, ptr %93) #6
  store i1 true, ptr %94, align 1
  %1019 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %1020 = load i32, ptr %7, align 4, !tbaa !5
  %1021 = sext i32 %1020 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %93, ptr noundef nonnull align 8 dereferenceable(32) %1019, i64 noundef %1021, i64 noundef 3)
          to label %1022 unwind label %1086

1022:                                             ; preds = %1018
  store i1 true, ptr %95, align 1
  %1023 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %93, ptr noundef @.str.1)
          to label %1024 unwind label %1090

1024:                                             ; preds = %1022
  br i1 %1023, label %1025, label %1032

1025:                                             ; preds = %1024
  call void @llvm.lifetime.start.p0(i64 32, ptr %96) #6
  store i1 true, ptr %97, align 1
  %1026 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %1027 = load i32, ptr %7, align 4, !tbaa !5
  %1028 = sext i32 %1027 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %96, ptr noundef nonnull align 8 dereferenceable(32) %1026, i64 noundef %1028, i64 noundef 3)
          to label %1029 unwind label %1094

1029:                                             ; preds = %1025
  store i1 true, ptr %98, align 1
  %1030 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef @.str)
          to label %1031 unwind label %1098

1031:                                             ; preds = %1029
  br label %1032

1032:                                             ; preds = %1031, %1024, %1017, %1010, %1003
  %1033 = phi i1 [ false, %1024 ], [ false, %1017 ], [ false, %1010 ], [ false, %1003 ], [ %1030, %1031 ]
  %1034 = load i1, ptr %98, align 1
  br i1 %1034, label %1035, label %1036

1035:                                             ; preds = %1032
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #6
  br label %1036

1036:                                             ; preds = %1035, %1032
  %1037 = load i1, ptr %97, align 1
  br i1 %1037, label %1038, label %1039

1038:                                             ; preds = %1036
  call void @llvm.lifetime.end.p0(i64 32, ptr %96) #6
  br label %1039

1039:                                             ; preds = %1038, %1036
  %1040 = load i1, ptr %95, align 1
  br i1 %1040, label %1041, label %1042

1041:                                             ; preds = %1039
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #6
  br label %1042

1042:                                             ; preds = %1041, %1039
  %1043 = load i1, ptr %94, align 1
  br i1 %1043, label %1044, label %1045

1044:                                             ; preds = %1042
  call void @llvm.lifetime.end.p0(i64 32, ptr %93) #6
  br label %1045

1045:                                             ; preds = %1044, %1042
  %1046 = load i1, ptr %92, align 1
  br i1 %1046, label %1047, label %1048

1047:                                             ; preds = %1045
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #6
  br label %1048

1048:                                             ; preds = %1047, %1045
  %1049 = load i1, ptr %91, align 1
  br i1 %1049, label %1050, label %1051

1050:                                             ; preds = %1048
  call void @llvm.lifetime.end.p0(i64 32, ptr %90) #6
  br label %1051

1051:                                             ; preds = %1050, %1048
  %1052 = load i1, ptr %89, align 1
  br i1 %1052, label %1053, label %1054

1053:                                             ; preds = %1051
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #6
  br label %1054

1054:                                             ; preds = %1053, %1051
  %1055 = load i1, ptr %88, align 1
  br i1 %1055, label %1056, label %1057

1056:                                             ; preds = %1054
  call void @llvm.lifetime.end.p0(i64 32, ptr %87) #6
  br label %1057

1057:                                             ; preds = %1056, %1054
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %86) #6
  br i1 %1033, label %1058, label %1135

1058:                                             ; preds = %1057
  %1059 = load i32, ptr %3, align 4, !tbaa !5
  %1060 = mul nsw i32 %1059, 10
  %1061 = add nsw i32 %1060, 6
  store i32 %1061, ptr %3, align 4, !tbaa !5
  br label %1553

1062:                                             ; preds = %997
  %1063 = landingpad { ptr, i32 }
          cleanup
  %1064 = extractvalue { ptr, i32 } %1063, 0
  store ptr %1064, ptr %5, align 8
  %1065 = extractvalue { ptr, i32 } %1063, 1
  store i32 %1065, ptr %6, align 4
  br label %1134

1066:                                             ; preds = %1001
  %1067 = landingpad { ptr, i32 }
          cleanup
  %1068 = extractvalue { ptr, i32 } %1067, 0
  store ptr %1068, ptr %5, align 8
  %1069 = extractvalue { ptr, i32 } %1067, 1
  store i32 %1069, ptr %6, align 4
  br label %1133

1070:                                             ; preds = %1004
  %1071 = landingpad { ptr, i32 }
          cleanup
  %1072 = extractvalue { ptr, i32 } %1071, 0
  store ptr %1072, ptr %5, align 8
  %1073 = extractvalue { ptr, i32 } %1071, 1
  store i32 %1073, ptr %6, align 4
  br label %1129

1074:                                             ; preds = %1008
  %1075 = landingpad { ptr, i32 }
          cleanup
  %1076 = extractvalue { ptr, i32 } %1075, 0
  store ptr %1076, ptr %5, align 8
  %1077 = extractvalue { ptr, i32 } %1075, 1
  store i32 %1077, ptr %6, align 4
  br label %1125

1078:                                             ; preds = %1011
  %1079 = landingpad { ptr, i32 }
          cleanup
  %1080 = extractvalue { ptr, i32 } %1079, 0
  store ptr %1080, ptr %5, align 8
  %1081 = extractvalue { ptr, i32 } %1079, 1
  store i32 %1081, ptr %6, align 4
  br label %1121

1082:                                             ; preds = %1015
  %1083 = landingpad { ptr, i32 }
          cleanup
  %1084 = extractvalue { ptr, i32 } %1083, 0
  store ptr %1084, ptr %5, align 8
  %1085 = extractvalue { ptr, i32 } %1083, 1
  store i32 %1085, ptr %6, align 4
  br label %1117

1086:                                             ; preds = %1018
  %1087 = landingpad { ptr, i32 }
          cleanup
  %1088 = extractvalue { ptr, i32 } %1087, 0
  store ptr %1088, ptr %5, align 8
  %1089 = extractvalue { ptr, i32 } %1087, 1
  store i32 %1089, ptr %6, align 4
  br label %1113

1090:                                             ; preds = %1022
  %1091 = landingpad { ptr, i32 }
          cleanup
  %1092 = extractvalue { ptr, i32 } %1091, 0
  store ptr %1092, ptr %5, align 8
  %1093 = extractvalue { ptr, i32 } %1091, 1
  store i32 %1093, ptr %6, align 4
  br label %1109

1094:                                             ; preds = %1025
  %1095 = landingpad { ptr, i32 }
          cleanup
  %1096 = extractvalue { ptr, i32 } %1095, 0
  store ptr %1096, ptr %5, align 8
  %1097 = extractvalue { ptr, i32 } %1095, 1
  store i32 %1097, ptr %6, align 4
  br label %1105

1098:                                             ; preds = %1029
  %1099 = landingpad { ptr, i32 }
          cleanup
  %1100 = extractvalue { ptr, i32 } %1099, 0
  store ptr %1100, ptr %5, align 8
  %1101 = extractvalue { ptr, i32 } %1099, 1
  store i32 %1101, ptr %6, align 4
  %1102 = load i1, ptr %98, align 1
  br i1 %1102, label %1103, label %1104

1103:                                             ; preds = %1098
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #6
  br label %1104

1104:                                             ; preds = %1103, %1098
  br label %1105

1105:                                             ; preds = %1104, %1094
  %1106 = load i1, ptr %97, align 1
  br i1 %1106, label %1107, label %1108

1107:                                             ; preds = %1105
  call void @llvm.lifetime.end.p0(i64 32, ptr %96) #6
  br label %1108

1108:                                             ; preds = %1107, %1105
  br label %1109

1109:                                             ; preds = %1108, %1090
  %1110 = load i1, ptr %95, align 1
  br i1 %1110, label %1111, label %1112

1111:                                             ; preds = %1109
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #6
  br label %1112

1112:                                             ; preds = %1111, %1109
  br label %1113

1113:                                             ; preds = %1112, %1086
  %1114 = load i1, ptr %94, align 1
  br i1 %1114, label %1115, label %1116

1115:                                             ; preds = %1113
  call void @llvm.lifetime.end.p0(i64 32, ptr %93) #6
  br label %1116

1116:                                             ; preds = %1115, %1113
  br label %1117

1117:                                             ; preds = %1116, %1082
  %1118 = load i1, ptr %92, align 1
  br i1 %1118, label %1119, label %1120

1119:                                             ; preds = %1117
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #6
  br label %1120

1120:                                             ; preds = %1119, %1117
  br label %1121

1121:                                             ; preds = %1120, %1078
  %1122 = load i1, ptr %91, align 1
  br i1 %1122, label %1123, label %1124

1123:                                             ; preds = %1121
  call void @llvm.lifetime.end.p0(i64 32, ptr %90) #6
  br label %1124

1124:                                             ; preds = %1123, %1121
  br label %1125

1125:                                             ; preds = %1124, %1074
  %1126 = load i1, ptr %89, align 1
  br i1 %1126, label %1127, label %1128

1127:                                             ; preds = %1125
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #6
  br label %1128

1128:                                             ; preds = %1127, %1125
  br label %1129

1129:                                             ; preds = %1128, %1070
  %1130 = load i1, ptr %88, align 1
  br i1 %1130, label %1131, label %1132

1131:                                             ; preds = %1129
  call void @llvm.lifetime.end.p0(i64 32, ptr %87) #6
  br label %1132

1132:                                             ; preds = %1131, %1129
  br label %1133

1133:                                             ; preds = %1132, %1066
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  br label %1134

1134:                                             ; preds = %1133, %1062
  call void @llvm.lifetime.end.p0(i64 32, ptr %86) #6
  br label %1563

1135:                                             ; preds = %1057
  call void @llvm.lifetime.start.p0(i64 32, ptr %99) #6
  %1136 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %1137 = load i32, ptr %7, align 4, !tbaa !5
  %1138 = sext i32 %1137 to i64
  store i1 false, ptr %101, align 1
  store i1 false, ptr %102, align 1
  store i1 false, ptr %104, align 1
  store i1 false, ptr %105, align 1
  store i1 false, ptr %107, align 1
  store i1 false, ptr %108, align 1
  store i1 false, ptr %110, align 1
  store i1 false, ptr %111, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %99, ptr noundef nonnull align 8 dereferenceable(32) %1136, i64 noundef %1138, i64 noundef 3)
          to label %1139 unwind label %1200

1139:                                             ; preds = %1135
  %1140 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %99, ptr noundef @.str)
          to label %1141 unwind label %1204

1141:                                             ; preds = %1139
  br i1 %1140, label %1142, label %1170

1142:                                             ; preds = %1141
  call void @llvm.lifetime.start.p0(i64 32, ptr %100) #6
  store i1 true, ptr %101, align 1
  %1143 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %1144 = load i32, ptr %7, align 4, !tbaa !5
  %1145 = sext i32 %1144 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %100, ptr noundef nonnull align 8 dereferenceable(32) %1143, i64 noundef %1145, i64 noundef 3)
          to label %1146 unwind label %1208

1146:                                             ; preds = %1142
  store i1 true, ptr %102, align 1
  %1147 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %100, ptr noundef @.str.2)
          to label %1148 unwind label %1212

1148:                                             ; preds = %1146
  br i1 %1147, label %1149, label %1170

1149:                                             ; preds = %1148
  call void @llvm.lifetime.start.p0(i64 32, ptr %103) #6
  store i1 true, ptr %104, align 1
  %1150 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %1151 = load i32, ptr %7, align 4, !tbaa !5
  %1152 = sext i32 %1151 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %103, ptr noundef nonnull align 8 dereferenceable(32) %1150, i64 noundef %1152, i64 noundef 3)
          to label %1153 unwind label %1216

1153:                                             ; preds = %1149
  store i1 true, ptr %105, align 1
  %1154 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %103, ptr noundef @.str.2)
          to label %1155 unwind label %1220

1155:                                             ; preds = %1153
  br i1 %1154, label %1156, label %1170

1156:                                             ; preds = %1155
  call void @llvm.lifetime.start.p0(i64 32, ptr %106) #6
  store i1 true, ptr %107, align 1
  %1157 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %1158 = load i32, ptr %7, align 4, !tbaa !5
  %1159 = sext i32 %1158 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %106, ptr noundef nonnull align 8 dereferenceable(32) %1157, i64 noundef %1159, i64 noundef 3)
          to label %1160 unwind label %1224

1160:                                             ; preds = %1156
  store i1 true, ptr %108, align 1
  %1161 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %106, ptr noundef @.str.2)
          to label %1162 unwind label %1228

1162:                                             ; preds = %1160
  br i1 %1161, label %1163, label %1170

1163:                                             ; preds = %1162
  call void @llvm.lifetime.start.p0(i64 32, ptr %109) #6
  store i1 true, ptr %110, align 1
  %1164 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %1165 = load i32, ptr %7, align 4, !tbaa !5
  %1166 = sext i32 %1165 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %109, ptr noundef nonnull align 8 dereferenceable(32) %1164, i64 noundef %1166, i64 noundef 3)
          to label %1167 unwind label %1232

1167:                                             ; preds = %1163
  store i1 true, ptr %111, align 1
  %1168 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %109, ptr noundef @.str.2)
          to label %1169 unwind label %1236

1169:                                             ; preds = %1167
  br label %1170

1170:                                             ; preds = %1169, %1162, %1155, %1148, %1141
  %1171 = phi i1 [ false, %1162 ], [ false, %1155 ], [ false, %1148 ], [ false, %1141 ], [ %1168, %1169 ]
  %1172 = load i1, ptr %111, align 1
  br i1 %1172, label %1173, label %1174

1173:                                             ; preds = %1170
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #6
  br label %1174

1174:                                             ; preds = %1173, %1170
  %1175 = load i1, ptr %110, align 1
  br i1 %1175, label %1176, label %1177

1176:                                             ; preds = %1174
  call void @llvm.lifetime.end.p0(i64 32, ptr %109) #6
  br label %1177

1177:                                             ; preds = %1176, %1174
  %1178 = load i1, ptr %108, align 1
  br i1 %1178, label %1179, label %1180

1179:                                             ; preds = %1177
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  br label %1180

1180:                                             ; preds = %1179, %1177
  %1181 = load i1, ptr %107, align 1
  br i1 %1181, label %1182, label %1183

1182:                                             ; preds = %1180
  call void @llvm.lifetime.end.p0(i64 32, ptr %106) #6
  br label %1183

1183:                                             ; preds = %1182, %1180
  %1184 = load i1, ptr %105, align 1
  br i1 %1184, label %1185, label %1186

1185:                                             ; preds = %1183
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #6
  br label %1186

1186:                                             ; preds = %1185, %1183
  %1187 = load i1, ptr %104, align 1
  br i1 %1187, label %1188, label %1189

1188:                                             ; preds = %1186
  call void @llvm.lifetime.end.p0(i64 32, ptr %103) #6
  br label %1189

1189:                                             ; preds = %1188, %1186
  %1190 = load i1, ptr %102, align 1
  br i1 %1190, label %1191, label %1192

1191:                                             ; preds = %1189
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #6
  br label %1192

1192:                                             ; preds = %1191, %1189
  %1193 = load i1, ptr %101, align 1
  br i1 %1193, label %1194, label %1195

1194:                                             ; preds = %1192
  call void @llvm.lifetime.end.p0(i64 32, ptr %100) #6
  br label %1195

1195:                                             ; preds = %1194, %1192
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #6
  br i1 %1171, label %1196, label %1273

1196:                                             ; preds = %1195
  %1197 = load i32, ptr %3, align 4, !tbaa !5
  %1198 = mul nsw i32 %1197, 10
  %1199 = add nsw i32 %1198, 7
  store i32 %1199, ptr %3, align 4, !tbaa !5
  br label %1552

1200:                                             ; preds = %1135
  %1201 = landingpad { ptr, i32 }
          cleanup
  %1202 = extractvalue { ptr, i32 } %1201, 0
  store ptr %1202, ptr %5, align 8
  %1203 = extractvalue { ptr, i32 } %1201, 1
  store i32 %1203, ptr %6, align 4
  br label %1272

1204:                                             ; preds = %1139
  %1205 = landingpad { ptr, i32 }
          cleanup
  %1206 = extractvalue { ptr, i32 } %1205, 0
  store ptr %1206, ptr %5, align 8
  %1207 = extractvalue { ptr, i32 } %1205, 1
  store i32 %1207, ptr %6, align 4
  br label %1271

1208:                                             ; preds = %1142
  %1209 = landingpad { ptr, i32 }
          cleanup
  %1210 = extractvalue { ptr, i32 } %1209, 0
  store ptr %1210, ptr %5, align 8
  %1211 = extractvalue { ptr, i32 } %1209, 1
  store i32 %1211, ptr %6, align 4
  br label %1267

1212:                                             ; preds = %1146
  %1213 = landingpad { ptr, i32 }
          cleanup
  %1214 = extractvalue { ptr, i32 } %1213, 0
  store ptr %1214, ptr %5, align 8
  %1215 = extractvalue { ptr, i32 } %1213, 1
  store i32 %1215, ptr %6, align 4
  br label %1263

1216:                                             ; preds = %1149
  %1217 = landingpad { ptr, i32 }
          cleanup
  %1218 = extractvalue { ptr, i32 } %1217, 0
  store ptr %1218, ptr %5, align 8
  %1219 = extractvalue { ptr, i32 } %1217, 1
  store i32 %1219, ptr %6, align 4
  br label %1259

1220:                                             ; preds = %1153
  %1221 = landingpad { ptr, i32 }
          cleanup
  %1222 = extractvalue { ptr, i32 } %1221, 0
  store ptr %1222, ptr %5, align 8
  %1223 = extractvalue { ptr, i32 } %1221, 1
  store i32 %1223, ptr %6, align 4
  br label %1255

1224:                                             ; preds = %1156
  %1225 = landingpad { ptr, i32 }
          cleanup
  %1226 = extractvalue { ptr, i32 } %1225, 0
  store ptr %1226, ptr %5, align 8
  %1227 = extractvalue { ptr, i32 } %1225, 1
  store i32 %1227, ptr %6, align 4
  br label %1251

1228:                                             ; preds = %1160
  %1229 = landingpad { ptr, i32 }
          cleanup
  %1230 = extractvalue { ptr, i32 } %1229, 0
  store ptr %1230, ptr %5, align 8
  %1231 = extractvalue { ptr, i32 } %1229, 1
  store i32 %1231, ptr %6, align 4
  br label %1247

1232:                                             ; preds = %1163
  %1233 = landingpad { ptr, i32 }
          cleanup
  %1234 = extractvalue { ptr, i32 } %1233, 0
  store ptr %1234, ptr %5, align 8
  %1235 = extractvalue { ptr, i32 } %1233, 1
  store i32 %1235, ptr %6, align 4
  br label %1243

1236:                                             ; preds = %1167
  %1237 = landingpad { ptr, i32 }
          cleanup
  %1238 = extractvalue { ptr, i32 } %1237, 0
  store ptr %1238, ptr %5, align 8
  %1239 = extractvalue { ptr, i32 } %1237, 1
  store i32 %1239, ptr %6, align 4
  %1240 = load i1, ptr %111, align 1
  br i1 %1240, label %1241, label %1242

1241:                                             ; preds = %1236
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #6
  br label %1242

1242:                                             ; preds = %1241, %1236
  br label %1243

1243:                                             ; preds = %1242, %1232
  %1244 = load i1, ptr %110, align 1
  br i1 %1244, label %1245, label %1246

1245:                                             ; preds = %1243
  call void @llvm.lifetime.end.p0(i64 32, ptr %109) #6
  br label %1246

1246:                                             ; preds = %1245, %1243
  br label %1247

1247:                                             ; preds = %1246, %1228
  %1248 = load i1, ptr %108, align 1
  br i1 %1248, label %1249, label %1250

1249:                                             ; preds = %1247
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #6
  br label %1250

1250:                                             ; preds = %1249, %1247
  br label %1251

1251:                                             ; preds = %1250, %1224
  %1252 = load i1, ptr %107, align 1
  br i1 %1252, label %1253, label %1254

1253:                                             ; preds = %1251
  call void @llvm.lifetime.end.p0(i64 32, ptr %106) #6
  br label %1254

1254:                                             ; preds = %1253, %1251
  br label %1255

1255:                                             ; preds = %1254, %1220
  %1256 = load i1, ptr %105, align 1
  br i1 %1256, label %1257, label %1258

1257:                                             ; preds = %1255
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #6
  br label %1258

1258:                                             ; preds = %1257, %1255
  br label %1259

1259:                                             ; preds = %1258, %1216
  %1260 = load i1, ptr %104, align 1
  br i1 %1260, label %1261, label %1262

1261:                                             ; preds = %1259
  call void @llvm.lifetime.end.p0(i64 32, ptr %103) #6
  br label %1262

1262:                                             ; preds = %1261, %1259
  br label %1263

1263:                                             ; preds = %1262, %1212
  %1264 = load i1, ptr %102, align 1
  br i1 %1264, label %1265, label %1266

1265:                                             ; preds = %1263
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #6
  br label %1266

1266:                                             ; preds = %1265, %1263
  br label %1267

1267:                                             ; preds = %1266, %1208
  %1268 = load i1, ptr %101, align 1
  br i1 %1268, label %1269, label %1270

1269:                                             ; preds = %1267
  call void @llvm.lifetime.end.p0(i64 32, ptr %100) #6
  br label %1270

1270:                                             ; preds = %1269, %1267
  br label %1271

1271:                                             ; preds = %1270, %1204
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  br label %1272

1272:                                             ; preds = %1271, %1200
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #6
  br label %1563

1273:                                             ; preds = %1195
  call void @llvm.lifetime.start.p0(i64 32, ptr %112) #6
  %1274 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %1275 = load i32, ptr %7, align 4, !tbaa !5
  %1276 = sext i32 %1275 to i64
  store i1 false, ptr %114, align 1
  store i1 false, ptr %115, align 1
  store i1 false, ptr %117, align 1
  store i1 false, ptr %118, align 1
  store i1 false, ptr %120, align 1
  store i1 false, ptr %121, align 1
  store i1 false, ptr %123, align 1
  store i1 false, ptr %124, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %112, ptr noundef nonnull align 8 dereferenceable(32) %1274, i64 noundef %1276, i64 noundef 3)
          to label %1277 unwind label %1338

1277:                                             ; preds = %1273
  %1278 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %112, ptr noundef @.str)
          to label %1279 unwind label %1342

1279:                                             ; preds = %1277
  br i1 %1278, label %1280, label %1308

1280:                                             ; preds = %1279
  call void @llvm.lifetime.start.p0(i64 32, ptr %113) #6
  store i1 true, ptr %114, align 1
  %1281 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %1282 = load i32, ptr %7, align 4, !tbaa !5
  %1283 = sext i32 %1282 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %113, ptr noundef nonnull align 8 dereferenceable(32) %1281, i64 noundef %1283, i64 noundef 3)
          to label %1284 unwind label %1346

1284:                                             ; preds = %1280
  store i1 true, ptr %115, align 1
  %1285 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %113, ptr noundef @.str.1)
          to label %1286 unwind label %1350

1286:                                             ; preds = %1284
  br i1 %1285, label %1287, label %1308

1287:                                             ; preds = %1286
  call void @llvm.lifetime.start.p0(i64 32, ptr %116) #6
  store i1 true, ptr %117, align 1
  %1288 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %1289 = load i32, ptr %7, align 4, !tbaa !5
  %1290 = sext i32 %1289 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %116, ptr noundef nonnull align 8 dereferenceable(32) %1288, i64 noundef %1290, i64 noundef 3)
          to label %1291 unwind label %1354

1291:                                             ; preds = %1287
  store i1 true, ptr %118, align 1
  %1292 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %116, ptr noundef @.str)
          to label %1293 unwind label %1358

1293:                                             ; preds = %1291
  br i1 %1292, label %1294, label %1308

1294:                                             ; preds = %1293
  call void @llvm.lifetime.start.p0(i64 32, ptr %119) #6
  store i1 true, ptr %120, align 1
  %1295 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %1296 = load i32, ptr %7, align 4, !tbaa !5
  %1297 = sext i32 %1296 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %119, ptr noundef nonnull align 8 dereferenceable(32) %1295, i64 noundef %1297, i64 noundef 3)
          to label %1298 unwind label %1362

1298:                                             ; preds = %1294
  store i1 true, ptr %121, align 1
  %1299 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef @.str.1)
          to label %1300 unwind label %1366

1300:                                             ; preds = %1298
  br i1 %1299, label %1301, label %1308

1301:                                             ; preds = %1300
  call void @llvm.lifetime.start.p0(i64 32, ptr %122) #6
  store i1 true, ptr %123, align 1
  %1302 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %1303 = load i32, ptr %7, align 4, !tbaa !5
  %1304 = sext i32 %1303 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %122, ptr noundef nonnull align 8 dereferenceable(32) %1302, i64 noundef %1304, i64 noundef 3)
          to label %1305 unwind label %1370

1305:                                             ; preds = %1301
  store i1 true, ptr %124, align 1
  %1306 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %122, ptr noundef @.str)
          to label %1307 unwind label %1374

1307:                                             ; preds = %1305
  br label %1308

1308:                                             ; preds = %1307, %1300, %1293, %1286, %1279
  %1309 = phi i1 [ false, %1300 ], [ false, %1293 ], [ false, %1286 ], [ false, %1279 ], [ %1306, %1307 ]
  %1310 = load i1, ptr %124, align 1
  br i1 %1310, label %1311, label %1312

1311:                                             ; preds = %1308
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  br label %1312

1312:                                             ; preds = %1311, %1308
  %1313 = load i1, ptr %123, align 1
  br i1 %1313, label %1314, label %1315

1314:                                             ; preds = %1312
  call void @llvm.lifetime.end.p0(i64 32, ptr %122) #6
  br label %1315

1315:                                             ; preds = %1314, %1312
  %1316 = load i1, ptr %121, align 1
  br i1 %1316, label %1317, label %1318

1317:                                             ; preds = %1315
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #6
  br label %1318

1318:                                             ; preds = %1317, %1315
  %1319 = load i1, ptr %120, align 1
  br i1 %1319, label %1320, label %1321

1320:                                             ; preds = %1318
  call void @llvm.lifetime.end.p0(i64 32, ptr %119) #6
  br label %1321

1321:                                             ; preds = %1320, %1318
  %1322 = load i1, ptr %118, align 1
  br i1 %1322, label %1323, label %1324

1323:                                             ; preds = %1321
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #6
  br label %1324

1324:                                             ; preds = %1323, %1321
  %1325 = load i1, ptr %117, align 1
  br i1 %1325, label %1326, label %1327

1326:                                             ; preds = %1324
  call void @llvm.lifetime.end.p0(i64 32, ptr %116) #6
  br label %1327

1327:                                             ; preds = %1326, %1324
  %1328 = load i1, ptr %115, align 1
  br i1 %1328, label %1329, label %1330

1329:                                             ; preds = %1327
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %113) #6
  br label %1330

1330:                                             ; preds = %1329, %1327
  %1331 = load i1, ptr %114, align 1
  br i1 %1331, label %1332, label %1333

1332:                                             ; preds = %1330
  call void @llvm.lifetime.end.p0(i64 32, ptr %113) #6
  br label %1333

1333:                                             ; preds = %1332, %1330
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #6
  br i1 %1309, label %1334, label %1411

1334:                                             ; preds = %1333
  %1335 = load i32, ptr %3, align 4, !tbaa !5
  %1336 = mul nsw i32 %1335, 10
  %1337 = add nsw i32 %1336, 8
  store i32 %1337, ptr %3, align 4, !tbaa !5
  br label %1551

1338:                                             ; preds = %1273
  %1339 = landingpad { ptr, i32 }
          cleanup
  %1340 = extractvalue { ptr, i32 } %1339, 0
  store ptr %1340, ptr %5, align 8
  %1341 = extractvalue { ptr, i32 } %1339, 1
  store i32 %1341, ptr %6, align 4
  br label %1410

1342:                                             ; preds = %1277
  %1343 = landingpad { ptr, i32 }
          cleanup
  %1344 = extractvalue { ptr, i32 } %1343, 0
  store ptr %1344, ptr %5, align 8
  %1345 = extractvalue { ptr, i32 } %1343, 1
  store i32 %1345, ptr %6, align 4
  br label %1409

1346:                                             ; preds = %1280
  %1347 = landingpad { ptr, i32 }
          cleanup
  %1348 = extractvalue { ptr, i32 } %1347, 0
  store ptr %1348, ptr %5, align 8
  %1349 = extractvalue { ptr, i32 } %1347, 1
  store i32 %1349, ptr %6, align 4
  br label %1405

1350:                                             ; preds = %1284
  %1351 = landingpad { ptr, i32 }
          cleanup
  %1352 = extractvalue { ptr, i32 } %1351, 0
  store ptr %1352, ptr %5, align 8
  %1353 = extractvalue { ptr, i32 } %1351, 1
  store i32 %1353, ptr %6, align 4
  br label %1401

1354:                                             ; preds = %1287
  %1355 = landingpad { ptr, i32 }
          cleanup
  %1356 = extractvalue { ptr, i32 } %1355, 0
  store ptr %1356, ptr %5, align 8
  %1357 = extractvalue { ptr, i32 } %1355, 1
  store i32 %1357, ptr %6, align 4
  br label %1397

1358:                                             ; preds = %1291
  %1359 = landingpad { ptr, i32 }
          cleanup
  %1360 = extractvalue { ptr, i32 } %1359, 0
  store ptr %1360, ptr %5, align 8
  %1361 = extractvalue { ptr, i32 } %1359, 1
  store i32 %1361, ptr %6, align 4
  br label %1393

1362:                                             ; preds = %1294
  %1363 = landingpad { ptr, i32 }
          cleanup
  %1364 = extractvalue { ptr, i32 } %1363, 0
  store ptr %1364, ptr %5, align 8
  %1365 = extractvalue { ptr, i32 } %1363, 1
  store i32 %1365, ptr %6, align 4
  br label %1389

1366:                                             ; preds = %1298
  %1367 = landingpad { ptr, i32 }
          cleanup
  %1368 = extractvalue { ptr, i32 } %1367, 0
  store ptr %1368, ptr %5, align 8
  %1369 = extractvalue { ptr, i32 } %1367, 1
  store i32 %1369, ptr %6, align 4
  br label %1385

1370:                                             ; preds = %1301
  %1371 = landingpad { ptr, i32 }
          cleanup
  %1372 = extractvalue { ptr, i32 } %1371, 0
  store ptr %1372, ptr %5, align 8
  %1373 = extractvalue { ptr, i32 } %1371, 1
  store i32 %1373, ptr %6, align 4
  br label %1381

1374:                                             ; preds = %1305
  %1375 = landingpad { ptr, i32 }
          cleanup
  %1376 = extractvalue { ptr, i32 } %1375, 0
  store ptr %1376, ptr %5, align 8
  %1377 = extractvalue { ptr, i32 } %1375, 1
  store i32 %1377, ptr %6, align 4
  %1378 = load i1, ptr %124, align 1
  br i1 %1378, label %1379, label %1380

1379:                                             ; preds = %1374
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  br label %1380

1380:                                             ; preds = %1379, %1374
  br label %1381

1381:                                             ; preds = %1380, %1370
  %1382 = load i1, ptr %123, align 1
  br i1 %1382, label %1383, label %1384

1383:                                             ; preds = %1381
  call void @llvm.lifetime.end.p0(i64 32, ptr %122) #6
  br label %1384

1384:                                             ; preds = %1383, %1381
  br label %1385

1385:                                             ; preds = %1384, %1366
  %1386 = load i1, ptr %121, align 1
  br i1 %1386, label %1387, label %1388

1387:                                             ; preds = %1385
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #6
  br label %1388

1388:                                             ; preds = %1387, %1385
  br label %1389

1389:                                             ; preds = %1388, %1362
  %1390 = load i1, ptr %120, align 1
  br i1 %1390, label %1391, label %1392

1391:                                             ; preds = %1389
  call void @llvm.lifetime.end.p0(i64 32, ptr %119) #6
  br label %1392

1392:                                             ; preds = %1391, %1389
  br label %1393

1393:                                             ; preds = %1392, %1358
  %1394 = load i1, ptr %118, align 1
  br i1 %1394, label %1395, label %1396

1395:                                             ; preds = %1393
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #6
  br label %1396

1396:                                             ; preds = %1395, %1393
  br label %1397

1397:                                             ; preds = %1396, %1354
  %1398 = load i1, ptr %117, align 1
  br i1 %1398, label %1399, label %1400

1399:                                             ; preds = %1397
  call void @llvm.lifetime.end.p0(i64 32, ptr %116) #6
  br label %1400

1400:                                             ; preds = %1399, %1397
  br label %1401

1401:                                             ; preds = %1400, %1350
  %1402 = load i1, ptr %115, align 1
  br i1 %1402, label %1403, label %1404

1403:                                             ; preds = %1401
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %113) #6
  br label %1404

1404:                                             ; preds = %1403, %1401
  br label %1405

1405:                                             ; preds = %1404, %1346
  %1406 = load i1, ptr %114, align 1
  br i1 %1406, label %1407, label %1408

1407:                                             ; preds = %1405
  call void @llvm.lifetime.end.p0(i64 32, ptr %113) #6
  br label %1408

1408:                                             ; preds = %1407, %1405
  br label %1409

1409:                                             ; preds = %1408, %1342
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #6
  br label %1410

1410:                                             ; preds = %1409, %1338
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #6
  br label %1563

1411:                                             ; preds = %1333
  call void @llvm.lifetime.start.p0(i64 32, ptr %125) #6
  %1412 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 0
  %1413 = load i32, ptr %7, align 4, !tbaa !5
  %1414 = sext i32 %1413 to i64
  store i1 false, ptr %127, align 1
  store i1 false, ptr %128, align 1
  store i1 false, ptr %130, align 1
  store i1 false, ptr %131, align 1
  store i1 false, ptr %133, align 1
  store i1 false, ptr %134, align 1
  store i1 false, ptr %136, align 1
  store i1 false, ptr %137, align 1
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %125, ptr noundef nonnull align 8 dereferenceable(32) %1412, i64 noundef %1414, i64 noundef 3)
          to label %1415 unwind label %1476

1415:                                             ; preds = %1411
  %1416 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %125, ptr noundef @.str)
          to label %1417 unwind label %1480

1417:                                             ; preds = %1415
  br i1 %1416, label %1418, label %1446

1418:                                             ; preds = %1417
  call void @llvm.lifetime.start.p0(i64 32, ptr %126) #6
  store i1 true, ptr %127, align 1
  %1419 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 1
  %1420 = load i32, ptr %7, align 4, !tbaa !5
  %1421 = sext i32 %1420 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %126, ptr noundef nonnull align 8 dereferenceable(32) %1419, i64 noundef %1421, i64 noundef 3)
          to label %1422 unwind label %1484

1422:                                             ; preds = %1418
  store i1 true, ptr %128, align 1
  %1423 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %126, ptr noundef @.str.1)
          to label %1424 unwind label %1488

1424:                                             ; preds = %1422
  br i1 %1423, label %1425, label %1446

1425:                                             ; preds = %1424
  call void @llvm.lifetime.start.p0(i64 32, ptr %129) #6
  store i1 true, ptr %130, align 1
  %1426 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 2
  %1427 = load i32, ptr %7, align 4, !tbaa !5
  %1428 = sext i32 %1427 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %129, ptr noundef nonnull align 8 dereferenceable(32) %1426, i64 noundef %1428, i64 noundef 3)
          to label %1429 unwind label %1492

1429:                                             ; preds = %1425
  store i1 true, ptr %131, align 1
  %1430 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %129, ptr noundef @.str)
          to label %1431 unwind label %1496

1431:                                             ; preds = %1429
  br i1 %1430, label %1432, label %1446

1432:                                             ; preds = %1431
  call void @llvm.lifetime.start.p0(i64 32, ptr %132) #6
  store i1 true, ptr %133, align 1
  %1433 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 3
  %1434 = load i32, ptr %7, align 4, !tbaa !5
  %1435 = sext i32 %1434 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %132, ptr noundef nonnull align 8 dereferenceable(32) %1433, i64 noundef %1435, i64 noundef 3)
          to label %1436 unwind label %1500

1436:                                             ; preds = %1432
  store i1 true, ptr %134, align 1
  %1437 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %132, ptr noundef @.str.2)
          to label %1438 unwind label %1504

1438:                                             ; preds = %1436
  br i1 %1437, label %1439, label %1446

1439:                                             ; preds = %1438
  call void @llvm.lifetime.start.p0(i64 32, ptr %135) #6
  store i1 true, ptr %136, align 1
  %1440 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i64 0, i64 4
  %1441 = load i32, ptr %7, align 4, !tbaa !5
  %1442 = sext i32 %1441 to i64
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %135, ptr noundef nonnull align 8 dereferenceable(32) %1440, i64 noundef %1442, i64 noundef 3)
          to label %1443 unwind label %1508

1443:                                             ; preds = %1439
  store i1 true, ptr %137, align 1
  %1444 = invoke noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %135, ptr noundef @.str)
          to label %1445 unwind label %1512

1445:                                             ; preds = %1443
  br label %1446

1446:                                             ; preds = %1445, %1438, %1431, %1424, %1417
  %1447 = phi i1 [ false, %1438 ], [ false, %1431 ], [ false, %1424 ], [ false, %1417 ], [ %1444, %1445 ]
  %1448 = load i1, ptr %137, align 1
  br i1 %1448, label %1449, label %1450

1449:                                             ; preds = %1446
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %135) #6
  br label %1450

1450:                                             ; preds = %1449, %1446
  %1451 = load i1, ptr %136, align 1
  br i1 %1451, label %1452, label %1453

1452:                                             ; preds = %1450
  call void @llvm.lifetime.end.p0(i64 32, ptr %135) #6
  br label %1453

1453:                                             ; preds = %1452, %1450
  %1454 = load i1, ptr %134, align 1
  br i1 %1454, label %1455, label %1456

1455:                                             ; preds = %1453
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #6
  br label %1456

1456:                                             ; preds = %1455, %1453
  %1457 = load i1, ptr %133, align 1
  br i1 %1457, label %1458, label %1459

1458:                                             ; preds = %1456
  call void @llvm.lifetime.end.p0(i64 32, ptr %132) #6
  br label %1459

1459:                                             ; preds = %1458, %1456
  %1460 = load i1, ptr %131, align 1
  br i1 %1460, label %1461, label %1462

1461:                                             ; preds = %1459
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #6
  br label %1462

1462:                                             ; preds = %1461, %1459
  %1463 = load i1, ptr %130, align 1
  br i1 %1463, label %1464, label %1465

1464:                                             ; preds = %1462
  call void @llvm.lifetime.end.p0(i64 32, ptr %129) #6
  br label %1465

1465:                                             ; preds = %1464, %1462
  %1466 = load i1, ptr %128, align 1
  br i1 %1466, label %1467, label %1468

1467:                                             ; preds = %1465
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #6
  br label %1468

1468:                                             ; preds = %1467, %1465
  %1469 = load i1, ptr %127, align 1
  br i1 %1469, label %1470, label %1471

1470:                                             ; preds = %1468
  call void @llvm.lifetime.end.p0(i64 32, ptr %126) #6
  br label %1471

1471:                                             ; preds = %1470, %1468
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #6
  br i1 %1447, label %1472, label %1549

1472:                                             ; preds = %1471
  %1473 = load i32, ptr %3, align 4, !tbaa !5
  %1474 = mul nsw i32 %1473, 10
  %1475 = add nsw i32 %1474, 9
  store i32 %1475, ptr %3, align 4, !tbaa !5
  br label %1550

1476:                                             ; preds = %1411
  %1477 = landingpad { ptr, i32 }
          cleanup
  %1478 = extractvalue { ptr, i32 } %1477, 0
  store ptr %1478, ptr %5, align 8
  %1479 = extractvalue { ptr, i32 } %1477, 1
  store i32 %1479, ptr %6, align 4
  br label %1548

1480:                                             ; preds = %1415
  %1481 = landingpad { ptr, i32 }
          cleanup
  %1482 = extractvalue { ptr, i32 } %1481, 0
  store ptr %1482, ptr %5, align 8
  %1483 = extractvalue { ptr, i32 } %1481, 1
  store i32 %1483, ptr %6, align 4
  br label %1547

1484:                                             ; preds = %1418
  %1485 = landingpad { ptr, i32 }
          cleanup
  %1486 = extractvalue { ptr, i32 } %1485, 0
  store ptr %1486, ptr %5, align 8
  %1487 = extractvalue { ptr, i32 } %1485, 1
  store i32 %1487, ptr %6, align 4
  br label %1543

1488:                                             ; preds = %1422
  %1489 = landingpad { ptr, i32 }
          cleanup
  %1490 = extractvalue { ptr, i32 } %1489, 0
  store ptr %1490, ptr %5, align 8
  %1491 = extractvalue { ptr, i32 } %1489, 1
  store i32 %1491, ptr %6, align 4
  br label %1539

1492:                                             ; preds = %1425
  %1493 = landingpad { ptr, i32 }
          cleanup
  %1494 = extractvalue { ptr, i32 } %1493, 0
  store ptr %1494, ptr %5, align 8
  %1495 = extractvalue { ptr, i32 } %1493, 1
  store i32 %1495, ptr %6, align 4
  br label %1535

1496:                                             ; preds = %1429
  %1497 = landingpad { ptr, i32 }
          cleanup
  %1498 = extractvalue { ptr, i32 } %1497, 0
  store ptr %1498, ptr %5, align 8
  %1499 = extractvalue { ptr, i32 } %1497, 1
  store i32 %1499, ptr %6, align 4
  br label %1531

1500:                                             ; preds = %1432
  %1501 = landingpad { ptr, i32 }
          cleanup
  %1502 = extractvalue { ptr, i32 } %1501, 0
  store ptr %1502, ptr %5, align 8
  %1503 = extractvalue { ptr, i32 } %1501, 1
  store i32 %1503, ptr %6, align 4
  br label %1527

1504:                                             ; preds = %1436
  %1505 = landingpad { ptr, i32 }
          cleanup
  %1506 = extractvalue { ptr, i32 } %1505, 0
  store ptr %1506, ptr %5, align 8
  %1507 = extractvalue { ptr, i32 } %1505, 1
  store i32 %1507, ptr %6, align 4
  br label %1523

1508:                                             ; preds = %1439
  %1509 = landingpad { ptr, i32 }
          cleanup
  %1510 = extractvalue { ptr, i32 } %1509, 0
  store ptr %1510, ptr %5, align 8
  %1511 = extractvalue { ptr, i32 } %1509, 1
  store i32 %1511, ptr %6, align 4
  br label %1519

1512:                                             ; preds = %1443
  %1513 = landingpad { ptr, i32 }
          cleanup
  %1514 = extractvalue { ptr, i32 } %1513, 0
  store ptr %1514, ptr %5, align 8
  %1515 = extractvalue { ptr, i32 } %1513, 1
  store i32 %1515, ptr %6, align 4
  %1516 = load i1, ptr %137, align 1
  br i1 %1516, label %1517, label %1518

1517:                                             ; preds = %1512
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %135) #6
  br label %1518

1518:                                             ; preds = %1517, %1512
  br label %1519

1519:                                             ; preds = %1518, %1508
  %1520 = load i1, ptr %136, align 1
  br i1 %1520, label %1521, label %1522

1521:                                             ; preds = %1519
  call void @llvm.lifetime.end.p0(i64 32, ptr %135) #6
  br label %1522

1522:                                             ; preds = %1521, %1519
  br label %1523

1523:                                             ; preds = %1522, %1504
  %1524 = load i1, ptr %134, align 1
  br i1 %1524, label %1525, label %1526

1525:                                             ; preds = %1523
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #6
  br label %1526

1526:                                             ; preds = %1525, %1523
  br label %1527

1527:                                             ; preds = %1526, %1500
  %1528 = load i1, ptr %133, align 1
  br i1 %1528, label %1529, label %1530

1529:                                             ; preds = %1527
  call void @llvm.lifetime.end.p0(i64 32, ptr %132) #6
  br label %1530

1530:                                             ; preds = %1529, %1527
  br label %1531

1531:                                             ; preds = %1530, %1496
  %1532 = load i1, ptr %131, align 1
  br i1 %1532, label %1533, label %1534

1533:                                             ; preds = %1531
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %129) #6
  br label %1534

1534:                                             ; preds = %1533, %1531
  br label %1535

1535:                                             ; preds = %1534, %1492
  %1536 = load i1, ptr %130, align 1
  br i1 %1536, label %1537, label %1538

1537:                                             ; preds = %1535
  call void @llvm.lifetime.end.p0(i64 32, ptr %129) #6
  br label %1538

1538:                                             ; preds = %1537, %1535
  br label %1539

1539:                                             ; preds = %1538, %1488
  %1540 = load i1, ptr %128, align 1
  br i1 %1540, label %1541, label %1542

1541:                                             ; preds = %1539
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #6
  br label %1542

1542:                                             ; preds = %1541, %1539
  br label %1543

1543:                                             ; preds = %1542, %1484
  %1544 = load i1, ptr %127, align 1
  br i1 %1544, label %1545, label %1546

1545:                                             ; preds = %1543
  call void @llvm.lifetime.end.p0(i64 32, ptr %126) #6
  br label %1546

1546:                                             ; preds = %1545, %1543
  br label %1547

1547:                                             ; preds = %1546, %1480
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  br label %1548

1548:                                             ; preds = %1547, %1476
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #6
  br label %1563

1549:                                             ; preds = %1471
  store i32 -1, ptr %3, align 4, !tbaa !5
  br label %1550

1550:                                             ; preds = %1549, %1472
  br label %1551

1551:                                             ; preds = %1550, %1334
  br label %1552

1552:                                             ; preds = %1551, %1196
  br label %1553

1553:                                             ; preds = %1552, %1058
  br label %1554

1554:                                             ; preds = %1553, %920
  br label %1555

1555:                                             ; preds = %1554, %782
  br label %1556

1556:                                             ; preds = %1555, %644
  br label %1557

1557:                                             ; preds = %1556, %506
  br label %1558

1558:                                             ; preds = %1557, %368
  br label %1559

1559:                                             ; preds = %1558, %231
  br label %1560

1560:                                             ; preds = %1559
  %1561 = load i32, ptr %7, align 4, !tbaa !5
  %1562 = add nsw i32 %1561, 4
  store i32 %1562, ptr %7, align 4, !tbaa !5
  br label %163, !llvm.loop !11

1563:                                             ; preds = %1548, %1410, %1272, %1134, %996, %858, %720, %582, %444, %306
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  br label %1590

1564:                                             ; preds = %169
  %1565 = load i32, ptr %3, align 4, !tbaa !5
  %1566 = icmp slt i32 %1565, 0
  br i1 %1566, label %1571, label %1567

1567:                                             ; preds = %1564
  %1568 = load i32, ptr %3, align 4, !tbaa !5
  %1569 = srem i32 %1568, 6
  %1570 = icmp ne i32 %1569, 0
  br i1 %1570, label %1571, label %1578

1571:                                             ; preds = %1567, %1564
  %1572 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.4)
          to label %1573 unwind label %1574

1573:                                             ; preds = %1571
  br label %1581

1574:                                             ; preds = %1578, %1571
  %1575 = landingpad { ptr, i32 }
          cleanup
  %1576 = extractvalue { ptr, i32 } %1575, 0
  store ptr %1576, ptr %5, align 8
  %1577 = extractvalue { ptr, i32 } %1575, 1
  store i32 %1577, ptr %6, align 4
  br label %1590

1578:                                             ; preds = %1567
  %1579 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.5)
          to label %1580 unwind label %1574

1580:                                             ; preds = %1578
  br label %1581

1581:                                             ; preds = %1580, %1573
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #6
  %1582 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i32 0, i32 0
  %1583 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %1582, i64 5
  br label %1584

1584:                                             ; preds = %1584, %1581
  %1585 = phi ptr [ %1583, %1581 ], [ %1586, %1584 ]
  %1586 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %1585, i64 -1
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1586) #6
  %1587 = icmp eq ptr %1586, %1582
  br i1 %1587, label %1588, label %1584

1588:                                             ; preds = %1584
  call void @llvm.lifetime.end.p0(i64 160, ptr %2) #6
  %1589 = load i32, ptr %1, align 4
  ret i32 %1589

1590:                                             ; preds = %1574, %1563, %158
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #6
  %1591 = getelementptr inbounds [5 x %"class.std::__cxx11::basic_string"], ptr %2, i32 0, i32 0
  %1592 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %1591, i64 5
  br label %1593

1593:                                             ; preds = %1593, %1590
  %1594 = phi ptr [ %1592, %1590 ], [ %1595, %1593 ]
  %1595 = getelementptr inbounds %"class.std::__cxx11::basic_string", ptr %1594, i64 -1
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1595) #6
  %1596 = icmp eq ptr %1595, %1591
  br i1 %1596, label %1597, label %1593

1597:                                             ; preds = %1593
  call void @llvm.lifetime.end.p0(i64 160, ptr %2) #6
  br label %1598

1598:                                             ; preds = %1597
  %1599 = load ptr, ptr %5, align 8
  %1600 = load i32, ptr %6, align 4
  %1601 = insertvalue { ptr, i32 } poison, ptr %1599, 0
  %1602 = insertvalue { ptr, i32 } %1601, i32 %1600, 1
  resume { ptr, i32 } %1602
}

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) #3

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #4

; Function Attrs: mustprogress uwtable
declare void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef, i64 noundef) #5 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #3

attributes #0 = { mustprogress norecurse uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = distinct !{!9, !10}
!10 = !{!"llvm.loop.mustprogress"}
!11 = distinct !{!11, !10}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.std::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::basic_ostream" = type { ptr, %"class.std::basic_ios" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }

@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str = external hidden unnamed_addr constant [4 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [4 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.4 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [8 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef i32 @main() local_unnamed_addr #0 personality ptr @__gxx_personality_v0 {
.preheader687.preheader:
  %0 = alloca [5 x %"class.std::__cxx11::basic_string"], align 16
  %1 = alloca %"class.std::__cxx11::basic_string", align 8
  %2 = alloca %"class.std::__cxx11::basic_string", align 8
  %3 = alloca %"class.std::__cxx11::basic_string", align 8
  %4 = alloca %"class.std::__cxx11::basic_string", align 8
  %5 = alloca %"class.std::__cxx11::basic_string", align 8
  %6 = alloca %"class.std::__cxx11::basic_string", align 8
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca %"class.std::__cxx11::basic_string", align 8
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca %"class.std::__cxx11::basic_string", align 8
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca %"class.std::__cxx11::basic_string", align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::__cxx11::basic_string", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca %"class.std::__cxx11::basic_string", align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::__cxx11::basic_string", align 8
  %37 = alloca %"class.std::__cxx11::basic_string", align 8
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca %"class.std::__cxx11::basic_string", align 8
  %43 = alloca %"class.std::__cxx11::basic_string", align 8
  %44 = alloca %"class.std::__cxx11::basic_string", align 8
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  call void @llvm.lifetime.start.p0(i64 160, ptr nonnull %0) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %0) #6
  %.ptr.1 = getelementptr inbounds i8, ptr %0, i64 32
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1) #6
  %.ptr.2 = getelementptr inbounds i8, ptr %0, i64 64
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2) #6
  %.ptr.3 = getelementptr inbounds i8, ptr %0, i64 96
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3) #6
  %.ptr.4 = getelementptr inbounds i8, ptr %0, i64 128
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4) #6
  %51 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %0)
          to label %.preheader687.1 unwind label %57

.preheader687.1:                                  ; preds = %.preheader687.preheader
  %52 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1)
          to label %.preheader687.2 unwind label %57

.preheader687.2:                                  ; preds = %.preheader687.1
  %53 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2)
          to label %.preheader687.3 unwind label %57

.preheader687.3:                                  ; preds = %.preheader687.2
  %54 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3)
          to label %.preheader687.4 unwind label %57

.preheader687.4:                                  ; preds = %.preheader687.3
  %55 = invoke noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16) @_ZSt3cin, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4)
          to label %.preheader unwind label %57

.preheader:                                       ; preds = %.preheader687.4
  %56 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #6
  %.not741 = icmp eq i64 %56, 0
  br i1 %.not741, label %._crit_edge, label %.lr.ph

57:                                               ; preds = %.preheader687.4, %.preheader687.3, %.preheader687.2, %.preheader687.1, %.preheader687.preheader
  %58 = landingpad { ptr, i32 }
          cleanup
  br label %381

._crit_edge:                                      ; preds = %371, %.preheader
  %.0343.lcssa = phi i32 [ 0, %.preheader ], [ %.1344, %371 ]
  %59 = icmp sgt i32 %.0343.lcssa, -1
  %60 = urem i32 %.0343.lcssa, 6
  %.not = icmp eq i32 %60, 0
  %or.cond = and i1 %59, %.not
  %61 = select i1 %or.cond, ptr @.str.5, ptr @.str.4
  %62 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull %61)
          to label %376 unwind label %374

.lr.ph:                                           ; preds = %.preheader, %371
  %indvars.iv = phi i64 [ %indvars.iv.next, %371 ], [ 0, %.preheader ]
  %.0343739 = phi i32 [ %.1344, %371 ], [ 0, %.preheader ]
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %1) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %1, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %63 unwind label %78

63:                                               ; preds = %.lr.ph
  %64 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %1, ptr noundef nonnull @.str)
  br i1 %64, label %65, label %.critedge407.thread

.critedge407.thread:                              ; preds = %63
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br label %92

65:                                               ; preds = %63
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %2) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %2, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %66 unwind label %80

66:                                               ; preds = %65
  %67 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %2, ptr noundef nonnull @.str.1)
  br i1 %67, label %68, label %.critedge

68:                                               ; preds = %66
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %3, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %69 unwind label %82

69:                                               ; preds = %68
  %70 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef nonnull @.str.1)
  br i1 %70, label %71, label %.critedge667

71:                                               ; preds = %69
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %4) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %4, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %72 unwind label %84

72:                                               ; preds = %71
  %73 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %4, ptr noundef nonnull @.str.1)
  br i1 %73, label %74, label %.critedge677

74:                                               ; preds = %72
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %5) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %5, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge.thread unwind label %86

.critedge.thread:                                 ; preds = %74
  %75 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %5, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %2) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %2) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br i1 %75, label %76, label %92

76:                                               ; preds = %.critedge.thread
  %77 = mul nsw i32 %.0343739, 10
  br label %371

78:                                               ; preds = %.lr.ph
  %79 = landingpad { ptr, i32 }
          cleanup
  br label %91

80:                                               ; preds = %65
  %81 = landingpad { ptr, i32 }
          cleanup
  br label %90

82:                                               ; preds = %68
  %83 = landingpad { ptr, i32 }
          cleanup
  br label %89

84:                                               ; preds = %71
  %85 = landingpad { ptr, i32 }
          cleanup
  br label %88

86:                                               ; preds = %74
  %87 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %5) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #6
  br label %88

88:                                               ; preds = %84, %86
  %.pn = phi { ptr, i32 } [ %87, %86 ], [ %85, %84 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  br label %89

89:                                               ; preds = %82, %88
  %.pn.pn = phi { ptr, i32 } [ %.pn, %88 ], [ %83, %82 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %2) #6
  br label %90

90:                                               ; preds = %80, %89
  %.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn, %89 ], [ %81, %80 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %2) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  br label %91

91:                                               ; preds = %90, %78
  %.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn.pn.pn, %90 ], [ %79, %78 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br label %381

.critedge:                                        ; preds = %66
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %2) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %2) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br label %92

.critedge667:                                     ; preds = %69
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %2) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %2) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br label %92

.critedge677:                                     ; preds = %72
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %4) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %4) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %2) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %2) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %1) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %1) #6
  br label %92

92:                                               ; preds = %.critedge677, %.critedge667, %.critedge, %.critedge407.thread, %.critedge.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %6) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %6, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %93 unwind label %109

93:                                               ; preds = %92
  %94 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %6, ptr noundef nonnull @.str.2)
  br i1 %94, label %95, label %.critedge415.thread

.critedge415.thread:                              ; preds = %93
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br label %123

95:                                               ; preds = %93
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %7) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %7, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %96 unwind label %111

96:                                               ; preds = %95
  %97 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull @.str.2)
  br i1 %97, label %98, label %.critedge658

98:                                               ; preds = %96
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %8) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %8, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %99 unwind label %113

99:                                               ; preds = %98
  %100 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef nonnull @.str.2)
  br i1 %100, label %101, label %.critedge668

101:                                              ; preds = %99
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %9) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %9, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %102 unwind label %115

102:                                              ; preds = %101
  %103 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull @.str.2)
  br i1 %103, label %104, label %.critedge678

104:                                              ; preds = %102
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %10) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %10, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge409.thread unwind label %117

.critedge409.thread:                              ; preds = %104
  %105 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull @.str.2)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br i1 %105, label %106, label %123

106:                                              ; preds = %.critedge409.thread
  %107 = mul nsw i32 %.0343739, 10
  %108 = or disjoint i32 %107, 1
  br label %371

109:                                              ; preds = %92
  %110 = landingpad { ptr, i32 }
          cleanup
  br label %122

111:                                              ; preds = %95
  %112 = landingpad { ptr, i32 }
          cleanup
  br label %121

113:                                              ; preds = %98
  %114 = landingpad { ptr, i32 }
          cleanup
  br label %120

115:                                              ; preds = %101
  %116 = landingpad { ptr, i32 }
          cleanup
  br label %119

117:                                              ; preds = %104
  %118 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  br label %119

119:                                              ; preds = %115, %117
  %.pn354 = phi { ptr, i32 } [ %118, %117 ], [ %116, %115 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  br label %120

120:                                              ; preds = %113, %119
  %.pn354.pn = phi { ptr, i32 } [ %.pn354, %119 ], [ %114, %113 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #6
  br label %121

121:                                              ; preds = %111, %120
  %.pn354.pn.pn = phi { ptr, i32 } [ %.pn354.pn, %120 ], [ %112, %111 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  br label %122

122:                                              ; preds = %121, %109
  %.pn354.pn.pn.pn = phi { ptr, i32 } [ %.pn354.pn.pn, %121 ], [ %110, %109 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br label %381

.critedge658:                                     ; preds = %96
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br label %123

.critedge668:                                     ; preds = %99
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br label %123

.critedge678:                                     ; preds = %102
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %9) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %6) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %6) #6
  br label %123

123:                                              ; preds = %.critedge678, %.critedge668, %.critedge658, %.critedge415.thread, %.critedge409.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %11) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %11, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %124 unwind label %140

124:                                              ; preds = %123
  %125 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull @.str)
  br i1 %125, label %126, label %.critedge423.thread

.critedge423.thread:                              ; preds = %124
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br label %154

126:                                              ; preds = %124
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %12) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %12, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %127 unwind label %142

127:                                              ; preds = %126
  %128 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull @.str.2)
  br i1 %128, label %129, label %.critedge659

129:                                              ; preds = %127
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %13) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %13, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %130 unwind label %144

130:                                              ; preds = %129
  %131 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef nonnull @.str)
  br i1 %131, label %132, label %.critedge669

132:                                              ; preds = %130
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %14) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %14, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %133 unwind label %146

133:                                              ; preds = %132
  %134 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull @.str.3)
  br i1 %134, label %135, label %.critedge679

135:                                              ; preds = %133
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %15) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %15, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge417.thread unwind label %148

.critedge417.thread:                              ; preds = %135
  %136 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br i1 %136, label %137, label %154

137:                                              ; preds = %.critedge417.thread
  %138 = mul nsw i32 %.0343739, 10
  %139 = add nsw i32 %138, 2
  br label %371

140:                                              ; preds = %123
  %141 = landingpad { ptr, i32 }
          cleanup
  br label %153

142:                                              ; preds = %126
  %143 = landingpad { ptr, i32 }
          cleanup
  br label %152

144:                                              ; preds = %129
  %145 = landingpad { ptr, i32 }
          cleanup
  br label %151

146:                                              ; preds = %132
  %147 = landingpad { ptr, i32 }
          cleanup
  br label %150

148:                                              ; preds = %135
  %149 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #6
  br label %150

150:                                              ; preds = %146, %148
  %.pn359 = phi { ptr, i32 } [ %149, %148 ], [ %147, %146 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #6
  br label %151

151:                                              ; preds = %144, %150
  %.pn359.pn = phi { ptr, i32 } [ %.pn359, %150 ], [ %145, %144 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  br label %152

152:                                              ; preds = %142, %151
  %.pn359.pn.pn = phi { ptr, i32 } [ %.pn359.pn, %151 ], [ %143, %142 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  br label %153

153:                                              ; preds = %152, %140
  %.pn359.pn.pn.pn = phi { ptr, i32 } [ %.pn359.pn.pn, %152 ], [ %141, %140 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br label %381

.critedge659:                                     ; preds = %127
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br label %154

.critedge669:                                     ; preds = %130
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br label %154

.critedge679:                                     ; preds = %133
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #6
  br label %154

154:                                              ; preds = %.critedge679, %.critedge669, %.critedge659, %.critedge423.thread, %.critedge417.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %16) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %16, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %155 unwind label %171

155:                                              ; preds = %154
  %156 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %16, ptr noundef nonnull @.str)
  br i1 %156, label %157, label %.critedge431.thread

.critedge431.thread:                              ; preds = %155
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br label %185

157:                                              ; preds = %155
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %17) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %17, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %158 unwind label %173

158:                                              ; preds = %157
  %159 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull @.str.2)
  br i1 %159, label %160, label %.critedge660

160:                                              ; preds = %158
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %18) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %161 unwind label %175

161:                                              ; preds = %160
  %162 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull @.str)
  br i1 %162, label %163, label %.critedge670

163:                                              ; preds = %161
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %19) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %19, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %164 unwind label %177

164:                                              ; preds = %163
  %165 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef nonnull @.str.2)
  br i1 %165, label %166, label %.critedge680

166:                                              ; preds = %164
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %20, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge425.thread unwind label %179

.critedge425.thread:                              ; preds = %166
  %167 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br i1 %167, label %168, label %185

168:                                              ; preds = %.critedge425.thread
  %169 = mul nsw i32 %.0343739, 10
  %170 = add nsw i32 %169, 3
  br label %371

171:                                              ; preds = %154
  %172 = landingpad { ptr, i32 }
          cleanup
  br label %184

173:                                              ; preds = %157
  %174 = landingpad { ptr, i32 }
          cleanup
  br label %183

175:                                              ; preds = %160
  %176 = landingpad { ptr, i32 }
          cleanup
  br label %182

177:                                              ; preds = %163
  %178 = landingpad { ptr, i32 }
          cleanup
  br label %181

179:                                              ; preds = %166
  %180 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #6
  br label %181

181:                                              ; preds = %177, %179
  %.pn364 = phi { ptr, i32 } [ %180, %179 ], [ %178, %177 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  br label %182

182:                                              ; preds = %175, %181
  %.pn364.pn = phi { ptr, i32 } [ %.pn364, %181 ], [ %176, %175 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #6
  br label %183

183:                                              ; preds = %173, %182
  %.pn364.pn.pn = phi { ptr, i32 } [ %.pn364.pn, %182 ], [ %174, %173 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  br label %184

184:                                              ; preds = %183, %171
  %.pn364.pn.pn.pn = phi { ptr, i32 } [ %.pn364.pn.pn, %183 ], [ %172, %171 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br label %381

.critedge660:                                     ; preds = %158
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br label %185

.critedge670:                                     ; preds = %161
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br label %185

.critedge680:                                     ; preds = %164
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %16) #6
  br label %185

185:                                              ; preds = %.critedge680, %.critedge670, %.critedge660, %.critedge431.thread, %.critedge425.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %21) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %21, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %186 unwind label %202

186:                                              ; preds = %185
  %187 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef nonnull @.str.1)
  br i1 %187, label %188, label %.critedge439.thread

.critedge439.thread:                              ; preds = %186
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br label %216

188:                                              ; preds = %186
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %22) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %22, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %189 unwind label %204

189:                                              ; preds = %188
  %190 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef nonnull @.str.1)
  br i1 %190, label %191, label %.critedge661

191:                                              ; preds = %189
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %23) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %23, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %192 unwind label %206

192:                                              ; preds = %191
  %193 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull @.str)
  br i1 %193, label %194, label %.critedge671

194:                                              ; preds = %192
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %24) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %24, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %195 unwind label %208

195:                                              ; preds = %194
  %196 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull @.str.2)
  br i1 %196, label %197, label %.critedge681

197:                                              ; preds = %195
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %25) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %25, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge433.thread unwind label %210

.critedge433.thread:                              ; preds = %197
  %198 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef nonnull @.str.2)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br i1 %198, label %199, label %216

199:                                              ; preds = %.critedge433.thread
  %200 = mul nsw i32 %.0343739, 10
  %201 = add nsw i32 %200, 4
  br label %371

202:                                              ; preds = %185
  %203 = landingpad { ptr, i32 }
          cleanup
  br label %215

204:                                              ; preds = %188
  %205 = landingpad { ptr, i32 }
          cleanup
  br label %214

206:                                              ; preds = %191
  %207 = landingpad { ptr, i32 }
          cleanup
  br label %213

208:                                              ; preds = %194
  %209 = landingpad { ptr, i32 }
          cleanup
  br label %212

210:                                              ; preds = %197
  %211 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #6
  br label %212

212:                                              ; preds = %208, %210
  %.pn369 = phi { ptr, i32 } [ %211, %210 ], [ %209, %208 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #6
  br label %213

213:                                              ; preds = %206, %212
  %.pn369.pn = phi { ptr, i32 } [ %.pn369, %212 ], [ %207, %206 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  br label %214

214:                                              ; preds = %204, %213
  %.pn369.pn.pn = phi { ptr, i32 } [ %.pn369.pn, %213 ], [ %205, %204 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  br label %215

215:                                              ; preds = %214, %202
  %.pn369.pn.pn.pn = phi { ptr, i32 } [ %.pn369.pn.pn, %214 ], [ %203, %202 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br label %381

.critedge661:                                     ; preds = %189
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br label %216

.critedge671:                                     ; preds = %192
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br label %216

.critedge681:                                     ; preds = %195
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %24) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %22) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %21) #6
  br label %216

216:                                              ; preds = %.critedge681, %.critedge671, %.critedge661, %.critedge439.thread, %.critedge433.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %26, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %217 unwind label %233

217:                                              ; preds = %216
  %218 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull @.str)
  br i1 %218, label %219, label %.critedge447.thread

.critedge447.thread:                              ; preds = %217
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %247

219:                                              ; preds = %217
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %27, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %220 unwind label %235

220:                                              ; preds = %219
  %221 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef nonnull @.str.3)
  br i1 %221, label %222, label %.critedge662

222:                                              ; preds = %220
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %28) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %28, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %223 unwind label %237

223:                                              ; preds = %222
  %224 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull @.str)
  br i1 %224, label %225, label %.critedge672

225:                                              ; preds = %223
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %29) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %29, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %226 unwind label %239

226:                                              ; preds = %225
  %227 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef nonnull @.str.2)
  br i1 %227, label %228, label %.critedge682

228:                                              ; preds = %226
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %30) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %30, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge441.thread unwind label %241

.critedge441.thread:                              ; preds = %228
  %229 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %30, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br i1 %229, label %230, label %247

230:                                              ; preds = %.critedge441.thread
  %231 = mul nsw i32 %.0343739, 10
  %232 = add nsw i32 %231, 5
  br label %371

233:                                              ; preds = %216
  %234 = landingpad { ptr, i32 }
          cleanup
  br label %246

235:                                              ; preds = %219
  %236 = landingpad { ptr, i32 }
          cleanup
  br label %245

237:                                              ; preds = %222
  %238 = landingpad { ptr, i32 }
          cleanup
  br label %244

239:                                              ; preds = %225
  %240 = landingpad { ptr, i32 }
          cleanup
  br label %243

241:                                              ; preds = %228
  %242 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #6
  br label %243

243:                                              ; preds = %239, %241
  %.pn374 = phi { ptr, i32 } [ %242, %241 ], [ %240, %239 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  br label %244

244:                                              ; preds = %237, %243
  %.pn374.pn = phi { ptr, i32 } [ %.pn374, %243 ], [ %238, %237 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  br label %245

245:                                              ; preds = %235, %244
  %.pn374.pn.pn = phi { ptr, i32 } [ %.pn374.pn, %244 ], [ %236, %235 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  br label %246

246:                                              ; preds = %245, %233
  %.pn374.pn.pn.pn = phi { ptr, i32 } [ %.pn374.pn.pn, %245 ], [ %234, %233 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %381

.critedge662:                                     ; preds = %220
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %247

.critedge672:                                     ; preds = %223
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %247

.critedge682:                                     ; preds = %226
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %247

247:                                              ; preds = %.critedge682, %.critedge672, %.critedge662, %.critedge447.thread, %.critedge441.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %31) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %31, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %248 unwind label %264

248:                                              ; preds = %247
  %249 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull @.str)
  br i1 %249, label %250, label %.critedge455.thread

.critedge455.thread:                              ; preds = %248
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br label %278

250:                                              ; preds = %248
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %251 unwind label %266

251:                                              ; preds = %250
  %252 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull @.str.3)
  br i1 %252, label %253, label %.critedge663

253:                                              ; preds = %251
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %254 unwind label %268

254:                                              ; preds = %253
  %255 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef nonnull @.str)
  br i1 %255, label %256, label %.critedge673

256:                                              ; preds = %254
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %34) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %34, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %257 unwind label %270

257:                                              ; preds = %256
  %258 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull @.str.1)
  br i1 %258, label %259, label %.critedge683

259:                                              ; preds = %257
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %35) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %35, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge449.thread unwind label %272

.critedge449.thread:                              ; preds = %259
  %260 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br i1 %260, label %261, label %278

261:                                              ; preds = %.critedge449.thread
  %262 = mul nsw i32 %.0343739, 10
  %263 = add nsw i32 %262, 6
  br label %371

264:                                              ; preds = %247
  %265 = landingpad { ptr, i32 }
          cleanup
  br label %277

266:                                              ; preds = %250
  %267 = landingpad { ptr, i32 }
          cleanup
  br label %276

268:                                              ; preds = %253
  %269 = landingpad { ptr, i32 }
          cleanup
  br label %275

270:                                              ; preds = %256
  %271 = landingpad { ptr, i32 }
          cleanup
  br label %274

272:                                              ; preds = %259
  %273 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  br label %274

274:                                              ; preds = %270, %272
  %.pn379 = phi { ptr, i32 } [ %273, %272 ], [ %271, %270 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  br label %275

275:                                              ; preds = %268, %274
  %.pn379.pn = phi { ptr, i32 } [ %.pn379, %274 ], [ %269, %268 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  br label %276

276:                                              ; preds = %266, %275
  %.pn379.pn.pn = phi { ptr, i32 } [ %.pn379.pn, %275 ], [ %267, %266 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  br label %277

277:                                              ; preds = %276, %264
  %.pn379.pn.pn.pn = phi { ptr, i32 } [ %.pn379.pn.pn, %276 ], [ %265, %264 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br label %381

.critedge663:                                     ; preds = %251
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br label %278

.critedge673:                                     ; preds = %254
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br label %278

.critedge683:                                     ; preds = %257
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #6
  br label %278

278:                                              ; preds = %.critedge683, %.critedge673, %.critedge663, %.critedge455.thread, %.critedge449.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %36, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %279 unwind label %295

279:                                              ; preds = %278
  %280 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull @.str)
  br i1 %280, label %281, label %.critedge463.thread

.critedge463.thread:                              ; preds = %279
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br label %309

281:                                              ; preds = %279
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %37) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %37, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %282 unwind label %297

282:                                              ; preds = %281
  %283 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef nonnull @.str.2)
  br i1 %283, label %284, label %.critedge664

284:                                              ; preds = %282
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %285 unwind label %299

285:                                              ; preds = %284
  %286 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %38, ptr noundef nonnull @.str.2)
  br i1 %286, label %287, label %.critedge674

287:                                              ; preds = %285
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %39, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %288 unwind label %301

288:                                              ; preds = %287
  %289 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %39, ptr noundef nonnull @.str.2)
  br i1 %289, label %290, label %.critedge684

290:                                              ; preds = %288
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %40) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge457.thread unwind label %303

.critedge457.thread:                              ; preds = %290
  %291 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull @.str.2)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br i1 %291, label %292, label %309

292:                                              ; preds = %.critedge457.thread
  %293 = mul nsw i32 %.0343739, 10
  %294 = add nsw i32 %293, 7
  br label %371

295:                                              ; preds = %278
  %296 = landingpad { ptr, i32 }
          cleanup
  br label %308

297:                                              ; preds = %281
  %298 = landingpad { ptr, i32 }
          cleanup
  br label %307

299:                                              ; preds = %284
  %300 = landingpad { ptr, i32 }
          cleanup
  br label %306

301:                                              ; preds = %287
  %302 = landingpad { ptr, i32 }
          cleanup
  br label %305

303:                                              ; preds = %290
  %304 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #6
  br label %305

305:                                              ; preds = %301, %303
  %.pn384 = phi { ptr, i32 } [ %304, %303 ], [ %302, %301 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  br label %306

306:                                              ; preds = %299, %305
  %.pn384.pn = phi { ptr, i32 } [ %.pn384, %305 ], [ %300, %299 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #6
  br label %307

307:                                              ; preds = %297, %306
  %.pn384.pn.pn = phi { ptr, i32 } [ %.pn384.pn, %306 ], [ %298, %297 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  br label %308

308:                                              ; preds = %307, %295
  %.pn384.pn.pn.pn = phi { ptr, i32 } [ %.pn384.pn.pn, %307 ], [ %296, %295 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br label %381

.critedge664:                                     ; preds = %282
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br label %309

.critedge674:                                     ; preds = %285
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br label %309

.critedge684:                                     ; preds = %288
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #6
  br label %309

309:                                              ; preds = %.critedge684, %.critedge674, %.critedge664, %.critedge463.thread, %.critedge457.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %41) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %41, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %310 unwind label %326

310:                                              ; preds = %309
  %311 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull @.str)
  br i1 %311, label %312, label %.critedge471.thread

.critedge471.thread:                              ; preds = %310
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br label %340

312:                                              ; preds = %310
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %42) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %42, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %313 unwind label %328

313:                                              ; preds = %312
  %314 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef nonnull @.str.1)
  br i1 %314, label %315, label %.critedge665

315:                                              ; preds = %313
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %43) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %43, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %316 unwind label %330

316:                                              ; preds = %315
  %317 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %43, ptr noundef nonnull @.str)
  br i1 %317, label %318, label %.critedge675

318:                                              ; preds = %316
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %44) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %319 unwind label %332

319:                                              ; preds = %318
  %320 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef nonnull @.str.1)
  br i1 %320, label %321, label %.critedge685

321:                                              ; preds = %319
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %45) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %45, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge465.thread unwind label %334

.critedge465.thread:                              ; preds = %321
  %322 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br i1 %322, label %323, label %340

323:                                              ; preds = %.critedge465.thread
  %324 = mul nsw i32 %.0343739, 10
  %325 = add nsw i32 %324, 8
  br label %371

326:                                              ; preds = %309
  %327 = landingpad { ptr, i32 }
          cleanup
  br label %339

328:                                              ; preds = %312
  %329 = landingpad { ptr, i32 }
          cleanup
  br label %338

330:                                              ; preds = %315
  %331 = landingpad { ptr, i32 }
          cleanup
  br label %337

332:                                              ; preds = %318
  %333 = landingpad { ptr, i32 }
          cleanup
  br label %336

334:                                              ; preds = %321
  %335 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  br label %336

336:                                              ; preds = %332, %334
  %.pn389 = phi { ptr, i32 } [ %335, %334 ], [ %333, %332 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #6
  br label %337

337:                                              ; preds = %330, %336
  %.pn389.pn = phi { ptr, i32 } [ %.pn389, %336 ], [ %331, %330 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #6
  br label %338

338:                                              ; preds = %328, %337
  %.pn389.pn.pn = phi { ptr, i32 } [ %.pn389.pn, %337 ], [ %329, %328 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  br label %339

339:                                              ; preds = %338, %326
  %.pn389.pn.pn.pn = phi { ptr, i32 } [ %.pn389.pn.pn, %338 ], [ %327, %326 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br label %381

.critedge665:                                     ; preds = %313
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br label %340

.critedge675:                                     ; preds = %316
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br label %340

.critedge685:                                     ; preds = %319
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %42) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #6
  br label %340

340:                                              ; preds = %.critedge685, %.critedge675, %.critedge665, %.critedge471.thread, %.critedge465.thread
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %46) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %0, i64 noundef %indvars.iv, i64 noundef 3)
          to label %341 unwind label %357

341:                                              ; preds = %340
  %342 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull @.str)
  br i1 %342, label %343, label %.critedge479.thread

.critedge479.thread:                              ; preds = %341
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %371

343:                                              ; preds = %341
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %47) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.1, i64 noundef %indvars.iv, i64 noundef 3)
          to label %344 unwind label %359

344:                                              ; preds = %343
  %345 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull @.str.1)
  br i1 %345, label %346, label %.critedge666

346:                                              ; preds = %344
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %48) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %48, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.2, i64 noundef %indvars.iv, i64 noundef 3)
          to label %347 unwind label %361

347:                                              ; preds = %346
  %348 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull @.str)
  br i1 %348, label %349, label %.critedge676

349:                                              ; preds = %347
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %49) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %49, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.3, i64 noundef %indvars.iv, i64 noundef 3)
          to label %350 unwind label %363

350:                                              ; preds = %349
  %351 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef nonnull @.str.2)
  br i1 %351, label %352, label %.critedge686

352:                                              ; preds = %350
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #6
  invoke void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %50, ptr noundef nonnull align 8 dereferenceable(32) %.ptr.4, i64 noundef %indvars.iv, i64 noundef 3)
          to label %.critedge473.thread unwind label %365

.critedge473.thread:                              ; preds = %352
  %353 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull @.str)
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br i1 %353, label %354, label %371

354:                                              ; preds = %.critedge473.thread
  %355 = mul nsw i32 %.0343739, 10
  %356 = add nsw i32 %355, 9
  br label %371

357:                                              ; preds = %340
  %358 = landingpad { ptr, i32 }
          cleanup
  br label %370

359:                                              ; preds = %343
  %360 = landingpad { ptr, i32 }
          cleanup
  br label %369

361:                                              ; preds = %346
  %362 = landingpad { ptr, i32 }
          cleanup
  br label %368

363:                                              ; preds = %349
  %364 = landingpad { ptr, i32 }
          cleanup
  br label %367

365:                                              ; preds = %352
  %366 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #6
  br label %367

367:                                              ; preds = %363, %365
  %.pn394 = phi { ptr, i32 } [ %366, %365 ], [ %364, %363 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  br label %368

368:                                              ; preds = %361, %367
  %.pn394.pn = phi { ptr, i32 } [ %.pn394, %367 ], [ %362, %361 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  br label %369

369:                                              ; preds = %359, %368
  %.pn394.pn.pn = phi { ptr, i32 } [ %.pn394.pn, %368 ], [ %360, %359 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  br label %370

370:                                              ; preds = %369, %357
  %.pn394.pn.pn.pn = phi { ptr, i32 } [ %.pn394.pn.pn, %369 ], [ %358, %357 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %381

.critedge666:                                     ; preds = %344
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %371

.critedge676:                                     ; preds = %347
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %371

.critedge686:                                     ; preds = %350
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #6
  br label %371

371:                                              ; preds = %.critedge686, %.critedge676, %.critedge666, %.critedge479.thread, %.critedge473.thread, %76, %137, %199, %261, %323, %354, %292, %230, %168, %106
  %.1344 = phi i32 [ %77, %76 ], [ %108, %106 ], [ %139, %137 ], [ %170, %168 ], [ %201, %199 ], [ %232, %230 ], [ %263, %261 ], [ %294, %292 ], [ %325, %323 ], [ %356, %354 ], [ -1, %.critedge473.thread ], [ -1, %.critedge479.thread ], [ -1, %.critedge666 ], [ -1, %.critedge676 ], [ -1, %.critedge686 ]
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 4
  %372 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %0) #6
  %373 = icmp ugt i64 %372, %indvars.iv.next
  br i1 %373, label %.lr.ph, label %._crit_edge, !llvm.loop !5

374:                                              ; preds = %._crit_edge
  %375 = landingpad { ptr, i32 }
          cleanup
  br label %381

376:                                              ; preds = %._crit_edge
  %377 = getelementptr inbounds i8, ptr %0, i64 128
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %377) #6
  %378 = getelementptr inbounds i8, ptr %0, i64 96
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %378) #6
  %379 = getelementptr inbounds i8, ptr %0, i64 64
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %379) #6
  %380 = getelementptr inbounds i8, ptr %0, i64 32
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %380) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %0) #6
  call void @llvm.lifetime.end.p0(i64 160, ptr nonnull %0) #6
  ret i32 0

381:                                              ; preds = %91, %122, %153, %184, %215, %246, %277, %308, %339, %370, %374, %57
  %.pn400 = phi { ptr, i32 } [ %58, %57 ], [ %375, %374 ], [ %.pn394.pn.pn.pn, %370 ], [ %.pn389.pn.pn.pn, %339 ], [ %.pn384.pn.pn.pn, %308 ], [ %.pn379.pn.pn.pn, %277 ], [ %.pn374.pn.pn.pn, %246 ], [ %.pn369.pn.pn.pn, %215 ], [ %.pn364.pn.pn.pn, %184 ], [ %.pn359.pn.pn.pn, %153 ], [ %.pn354.pn.pn.pn, %122 ], [ %.pn.pn.pn.pn, %91 ]
  %382 = getelementptr inbounds i8, ptr %0, i64 128
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %382) #6
  %383 = getelementptr inbounds i8, ptr %0, i64 96
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %383) #6
  %384 = getelementptr inbounds i8, ptr %0, i64 64
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %384) #6
  %385 = getelementptr inbounds i8, ptr %0, i64 32
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %385) #6
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %0) #6
  call void @llvm.lifetime.end.p0(i64 160, ptr nonnull %0) #6
  resume { ptr, i32 } %.pn400
}

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(16) ptr @_ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress nounwind uwtable
declare noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare void @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6substrEmm(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), i64 noundef, i64 noundef) local_unnamed_addr #5 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #3

attributes #0 = { mustprogress norecurse uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = distinct !{!5, !6}
!6 = !{!"llvm.loop.mustprogress"}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,ReassociatePass,SROAPass,SimplifyCFGPass