; LLVM IR from fritzsedlazeck/SURVIVOR :: src/simulator (SV_Simulator)

; 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_ostream" = type { ptr, %"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 }
%struct.parameter = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, float }
%"class.std::map" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl" }
%"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl" = type { %"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl_data" }
%"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"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] }
%"class.std::allocator" = type { i8 }
%"struct.std::_Rb_tree_iterator" = type { ptr }
%struct.struct_var = type { i32, %struct.position, %struct.position, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i8, i32 }
%struct.position = type { %"class.std::__cxx11::basic_string", i32, i32 }
%"struct.std::pair" = type { %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string" }

@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@_ZSt4cerr = external global %"class.std::basic_ostream", align 8
@.str.12 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [50 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [64 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.68 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [62 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [48 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [4 x i8], align 1

; 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) #0

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(ptr noundef nonnull align 8 dereferenceable(8)) #0

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EESB_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEppEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z11parse_paramNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind noalias writable sret(%struct.parameter) align 4, ptr noundef) #1

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

declare i32 @__gxx_personality_v0(...)

; Function Attrs: noreturn nounwind
declare void @exit(i32 noundef) #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind noalias writable sret(%"class.std::map") align 8, ptr noundef, i32 noundef) #1

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEixERS9_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(32)) #1 align 2

; Function Attrs: nounwind willreturn memory(read)
declare i32 @toupper(i32 noundef) #5

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8), i64 noundef) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

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

; Function Attrs: nounwind
declare i32 @rand() #7

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef, ptr noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z22generate_mutations_refNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef, ptr noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) #1

; Function Attrs: nounwind
declare void @srand(i32 noundef) #7

; Function Attrs: nounwind
declare i64 @time(ptr noundef) #7

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z19apply_mutations_refRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EE(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(24)) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef, ptr noundef, i1 noundef zeroext) #1

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #1 align 2

declare noalias ptr @fopen(ptr noundef, ptr noundef) #6

; Function Attrs: nounwind
declare i32 @fprintf(ptr noundef, ptr noundef, ...) #7

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef, ptr noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local noundef signext i8 @_Z8mut_charc(i8 noundef signext) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z17print_vcf_header2RP8_IO_FILESt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEE(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z13print_snp_vcfNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiccRP8_IO_FILEiS4_(ptr noundef, i32 noundef, i8 noundef signext, i8 noundef signext, ptr noundef nonnull align 8 dereferenceable(8), i32 noundef, ptr noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef, i32 noundef, i32 noundef, ptr noundef, i32 noundef, i32 noundef, ptr noundef, ptr noundef, ptr noundef, i32 noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z13print_vcf_svsRP8_IO_FILESt6vectorI10struct_varSaIS3_EEi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, i32 noundef) #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef nonnull align 8 dereferenceable(48), float noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 4 dereferenceable(4), i32 noundef, float noundef) #1

; Function Attrs: mustprogress uwtable
define dso_local void @_Z11simulate_SVNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES4_fbS4_(ptr noundef %0, ptr noundef %1, float noundef %2, i1 noundef zeroext %3, ptr noundef %4) #1 personality ptr @__gxx_personality_v0 {
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca float, align 4
  %9 = alloca i8, align 1
  %10 = alloca ptr, align 8
  %11 = alloca %struct.parameter, align 4
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca ptr, align 8
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca %"class.std::map", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca ptr, align 8
  %20 = alloca %"class.std::map", align 8
  %21 = alloca float, align 4
  %22 = alloca %"class.std::vector", align 8
  %23 = alloca %"class.std::vector", align 8
  %24 = alloca i32, align 4
  %25 = alloca %"class.std::vector", align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::map", align 8
  %28 = alloca %"class.std::vector", align 8
  %29 = alloca %"class.std::vector", align 8
  %30 = alloca %"class.std::vector", align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::map", align 8
  %33 = alloca %"class.std::vector", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::map", align 8
  %36 = alloca %"class.std::map", align 8
  %37 = alloca %"class.std::__cxx11::basic_string", align 8
  %38 = alloca %"class.std::vector", align 8
  %39 = alloca %"class.std::vector", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::map", align 8
  %42 = alloca i64, align 8
  %43 = alloca float, align 4
  %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::allocator", align 1
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca %"class.std::allocator", align 1
  %58 = alloca %"class.std::__cxx11::basic_string", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::allocator", align 1
  %65 = alloca %"class.std::__cxx11::basic_string", align 8
  %66 = alloca %"class.std::__cxx11::basic_string", align 8
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::allocator", align 1
  %72 = alloca %"class.std::__cxx11::basic_string", align 8
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::__cxx11::basic_string", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca %"class.std::allocator", align 1
  %79 = alloca %"class.std::__cxx11::basic_string", align 8
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca %"class.std::allocator", align 1
  %86 = alloca %"struct.std::_Rb_tree_iterator", align 8
  %87 = alloca %"struct.std::_Rb_tree_iterator", align 8
  %88 = alloca i32, align 4
  %89 = alloca i64, align 8
  %90 = alloca float, align 4
  %91 = alloca i8, align 1
  %92 = alloca %"class.std::__cxx11::basic_string", align 8
  %93 = alloca %"class.std::__cxx11::basic_string", align 8
  %94 = alloca %"class.std::allocator", align 1
  %95 = alloca %"struct.std::_Rb_tree_iterator", align 8
  %96 = alloca i64, align 8
  %97 = alloca i64, align 8
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca %"class.std::__cxx11::basic_string", align 8
  %100 = alloca %"class.std::__cxx11::basic_string", align 8
  %101 = alloca %"class.std::__cxx11::basic_string", align 8
  %102 = alloca %"class.std::__cxx11::basic_string", align 8
  %103 = alloca %"class.std::__cxx11::basic_string", align 8
  %104 = alloca %"class.std::allocator", align 1
  %105 = alloca %"class.std::__cxx11::basic_string", align 8
  %106 = alloca %"class.std::__cxx11::basic_string", align 8
  %107 = alloca %"class.std::__cxx11::basic_string", align 8
  %108 = alloca %"class.std::__cxx11::basic_string", align 8
  %109 = alloca %"class.std::__cxx11::basic_string", align 8
  %110 = alloca %"class.std::__cxx11::basic_string", align 8
  %111 = alloca %"class.std::allocator", align 1
  %112 = alloca %"class.std::__cxx11::basic_string", align 8
  %113 = alloca %"class.std::__cxx11::basic_string", align 8
  %114 = alloca %"class.std::__cxx11::basic_string", align 8
  %115 = alloca %"class.std::__cxx11::basic_string", align 8
  %116 = alloca %"class.std::__cxx11::basic_string", align 8
  %117 = alloca %"class.std::__cxx11::basic_string", align 8
  %118 = alloca %"class.std::allocator", align 1
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca %"class.std::map", align 8
  %121 = alloca %"class.std::__cxx11::basic_string", align 8
  %122 = alloca %"class.std::vector", align 8
  %123 = alloca %"class.std::__cxx11::basic_string", align 8
  %124 = alloca %"class.std::vector", align 8
  %125 = alloca %"class.std::__cxx11::basic_string", align 8
  %126 = alloca %"class.std::vector", align 8
  %127 = alloca %"class.std::vector", align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !5
  store float %2, ptr %8, align 4, !tbaa !9
  %128 = zext i1 %3 to i8
  store i8 %128, ptr %9, align 1, !tbaa !11
  store ptr %4, ptr %10, align 8, !tbaa !5
  %129 = call i64 @time(ptr noundef null) #9
  %130 = trunc i64 %129 to i32
  call void @srand(i32 noundef %130) #9
  call void @llvm.lifetime.start.p0(i64 96, ptr %11) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull align 8 dereferenceable(32) %1)
  invoke void @_Z11parse_paramNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind writable sret(%struct.parameter) align 4 %11, ptr noundef %12)
          to label %131 unwind label %153

131:                                              ; preds = %5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #9
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #9
  %132 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 1
  %133 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 5
  %134 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %132, ptr noundef nonnull align 4 dereferenceable(4) %133)
  %135 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 11
  %136 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 8
  %137 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %135, ptr noundef nonnull align 4 dereferenceable(4) %136)
  %138 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %134, ptr noundef nonnull align 4 dereferenceable(4) %137)
  %139 = load i32, ptr %138, align 4, !tbaa !13
  store i32 %139, ptr %15, align 4, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 48, ptr %16) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull align 8 dereferenceable(32) %0)
  %140 = load i32, ptr %15, align 4, !tbaa !13
  invoke void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind writable sret(%"class.std::map") align 8 %16, ptr noundef %17, i32 noundef %140)
          to label %141 unwind label %157

141:                                              ; preds = %131
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #9
  %142 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 9
  %143 = load i32, ptr %142, align 4, !tbaa !15
  %144 = icmp sgt i32 %143, 0
  br i1 %144, label %145, label %165

145:                                              ; preds = %141
  %146 = call noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  %147 = icmp ult i64 %146, 2
  br i1 %147, label %148, label %165

148:                                              ; preds = %145
  %149 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef @.str.69)
          to label %150 unwind label %161

150:                                              ; preds = %148
  %151 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %149, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %152 unwind label %161

152:                                              ; preds = %150
  call void @exit(i32 noundef 1) #10
  unreachable

153:                                              ; preds = %5
  %154 = landingpad { ptr, i32 }
          cleanup
  %155 = extractvalue { ptr, i32 } %154, 0
  store ptr %155, ptr %13, align 8
  %156 = extractvalue { ptr, i32 } %154, 1
  store i32 %156, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #9
  br label %1328

157:                                              ; preds = %131
  %158 = landingpad { ptr, i32 }
          cleanup
  %159 = extractvalue { ptr, i32 } %158, 0
  store ptr %159, ptr %13, align 8
  %160 = extractvalue { ptr, i32 } %158, 1
  store i32 %160, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #9
  br label %1327

161:                                              ; preds = %174, %172, %169, %167, %150, %148
  %162 = landingpad { ptr, i32 }
          cleanup
  %163 = extractvalue { ptr, i32 } %162, 0
  store ptr %163, ptr %13, align 8
  %164 = extractvalue { ptr, i32 } %162, 1
  store i32 %164, ptr %14, align 4
  br label %1326

165:                                              ; preds = %145, %141
  %166 = call noundef zeroext i1 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  br i1 %166, label %167, label %177

167:                                              ; preds = %165
  %168 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef @.str.70)
          to label %169 unwind label %161

169:                                              ; preds = %167
  %170 = load i32, ptr %15, align 4, !tbaa !13
  %171 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %168, i32 noundef %170)
          to label %172 unwind label %161

172:                                              ; preds = %169
  %173 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %171, ptr noundef @.str.71)
          to label %174 unwind label %161

174:                                              ; preds = %172
  %175 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %173, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %176 unwind label %161

176:                                              ; preds = %174
  call void @exit(i32 noundef 1) #10
  unreachable

177:                                              ; preds = %165
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %178 unwind label %196

178:                                              ; preds = %177
  %179 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef @.str.72)
          to label %180 unwind label %200

180:                                              ; preds = %178
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #9
  %181 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %18) #9
  %182 = invoke noalias ptr @fopen(ptr noundef %181, ptr noundef @.str.12)
          to label %183 unwind label %204

183:                                              ; preds = %180
  store ptr %182, ptr %19, align 8, !tbaa !5
  %184 = load ptr, ptr %19, align 8, !tbaa !5
  %185 = icmp eq ptr %184, null
  br i1 %185, label %186, label %208

186:                                              ; preds = %183
  %187 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.14)
          to label %188 unwind label %204

188:                                              ; preds = %186
  %189 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %18) #9
  %190 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %187, ptr noundef %189)
          to label %191 unwind label %204

191:                                              ; preds = %188
  %192 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %190, ptr noundef @.str.15)
          to label %193 unwind label %204

193:                                              ; preds = %191
  %194 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %192, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %195 unwind label %204

195:                                              ; preds = %193
  call void @exit(i32 noundef 0) #10
  unreachable

196:                                              ; preds = %177
  %197 = landingpad { ptr, i32 }
          cleanup
  %198 = extractvalue { ptr, i32 } %197, 0
  store ptr %198, ptr %13, align 8
  %199 = extractvalue { ptr, i32 } %197, 1
  store i32 %199, ptr %14, align 4
  br label %1325

200:                                              ; preds = %178
  %201 = landingpad { ptr, i32 }
          cleanup
  %202 = extractvalue { ptr, i32 } %201, 0
  store ptr %202, ptr %13, align 8
  %203 = extractvalue { ptr, i32 } %201, 1
  store i32 %203, ptr %14, align 4
  br label %1324

204:                                              ; preds = %215, %212, %210, %208, %193, %191, %188, %186, %180
  %205 = landingpad { ptr, i32 }
          cleanup
  %206 = extractvalue { ptr, i32 } %205, 0
  store ptr %206, ptr %13, align 8
  %207 = extractvalue { ptr, i32 } %205, 1
  store i32 %207, ptr %14, align 4
  br label %1323

208:                                              ; preds = %183
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %20, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %209 unwind label %204

209:                                              ; preds = %208
  invoke void @_Z17print_vcf_header2RP8_IO_FILESt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEE(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef %20)
          to label %210 unwind label %237

210:                                              ; preds = %209
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %20) #9
  %211 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.73)
          to label %212 unwind label %204

212:                                              ; preds = %210
  %213 = call noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  %214 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8) %211, i64 noundef %213)
          to label %215 unwind label %204

215:                                              ; preds = %212
  %216 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %214, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %217 unwind label %204

217:                                              ; preds = %215
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #9
  %218 = load float, ptr %8, align 4, !tbaa !9
  %219 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 23
  %220 = load float, ptr %219, align 4, !tbaa !17
  %221 = fmul float %218, %220
  store float %221, ptr %21, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 24, ptr %22) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #9
  call void @llvm.lifetime.start.p0(i64 24, ptr %23) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #9
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #9
  store i32 0, ptr %24, align 4, !tbaa !13
  %222 = load i8, ptr %9, align 1, !tbaa !11, !range !18, !noundef !19
  %223 = trunc i8 %222 to i1
  br i1 %223, label %224, label %277

224:                                              ; preds = %217
  call void @llvm.lifetime.start.p0(i64 24, ptr %25) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %225 unwind label %241

225:                                              ; preds = %224
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %27, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %226 unwind label %245

226:                                              ; preds = %225
  invoke void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %25, ptr noundef %26, ptr noundef %27)
          to label %227 unwind label %249

227:                                              ; preds = %226
  %228 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %22, ptr noundef nonnull align 8 dereferenceable(24) %25) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %25) #9
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %27) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #9
  %229 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 22
  %230 = load i8, ptr %229, align 4, !tbaa !20, !range !18, !noundef !19
  %231 = trunc i8 %230 to i1
  br i1 %231, label %259, label %232

232:                                              ; preds = %227
  call void @llvm.lifetime.start.p0(i64 24, ptr %28) #9
  %233 = load float, ptr %21, align 4, !tbaa !9
  %234 = fmul float %233, 2.000000e+00
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %28, ptr noundef nonnull align 8 dereferenceable(48) %16, float noundef %234, ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 4 dereferenceable(4) %24, i32 noundef -1, float noundef -1.000000e+00)
          to label %235 unwind label %255

235:                                              ; preds = %232
  %236 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(24) %28) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %28) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %28) #9
  br label %269

237:                                              ; preds = %209
  %238 = landingpad { ptr, i32 }
          cleanup
  %239 = extractvalue { ptr, i32 } %238, 0
  store ptr %239, ptr %13, align 8
  %240 = extractvalue { ptr, i32 } %238, 1
  store i32 %240, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %20) #9
  br label %1323

241:                                              ; preds = %224
  %242 = landingpad { ptr, i32 }
          cleanup
  %243 = extractvalue { ptr, i32 } %242, 0
  store ptr %243, ptr %13, align 8
  %244 = extractvalue { ptr, i32 } %242, 1
  store i32 %244, ptr %14, align 4
  br label %254

245:                                              ; preds = %225
  %246 = landingpad { ptr, i32 }
          cleanup
  %247 = extractvalue { ptr, i32 } %246, 0
  store ptr %247, ptr %13, align 8
  %248 = extractvalue { ptr, i32 } %246, 1
  store i32 %248, ptr %14, align 4
  br label %253

249:                                              ; preds = %226
  %250 = landingpad { ptr, i32 }
          cleanup
  %251 = extractvalue { ptr, i32 } %250, 0
  store ptr %251, ptr %13, align 8
  %252 = extractvalue { ptr, i32 } %250, 1
  store i32 %252, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %27) #9
  br label %253

253:                                              ; preds = %249, %245
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #9
  br label %254

254:                                              ; preds = %253, %241
  call void @llvm.lifetime.end.p0(i64 24, ptr %25) #9
  br label %1322

255:                                              ; preds = %232
  %256 = landingpad { ptr, i32 }
          cleanup
  %257 = extractvalue { ptr, i32 } %256, 0
  store ptr %257, ptr %13, align 8
  %258 = extractvalue { ptr, i32 } %256, 1
  store i32 %258, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 24, ptr %28) #9
  br label %1322

259:                                              ; preds = %227
  call void @llvm.lifetime.start.p0(i64 24, ptr %29) #9
  %260 = load float, ptr %8, align 4, !tbaa !9
  %261 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 23
  %262 = load float, ptr %261, align 4, !tbaa !17
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %29, ptr noundef nonnull align 8 dereferenceable(48) %16, float noundef %260, ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 4 dereferenceable(4) %24, i32 noundef 1, float noundef %262)
          to label %263 unwind label %265

263:                                              ; preds = %259
  %264 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %23, ptr noundef nonnull align 8 dereferenceable(24) %29) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %29) #9
  br label %269

265:                                              ; preds = %259
  %266 = landingpad { ptr, i32 }
          cleanup
  %267 = extractvalue { ptr, i32 } %266, 0
  store ptr %267, ptr %13, align 8
  %268 = extractvalue { ptr, i32 } %266, 1
  store i32 %268, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 24, ptr %29) #9
  br label %1322

269:                                              ; preds = %263, %235
  %270 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 2
  %271 = load i32, ptr %270, align 4, !tbaa !21
  invoke void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(24) %22, i32 noundef %271)
          to label %272 unwind label %273

272:                                              ; preds = %269
  br label %299

273:                                              ; preds = %1304, %1301, %327, %325, %316, %314, %308, %306, %303, %301, %299, %282, %280, %269
  %274 = landingpad { ptr, i32 }
          cleanup
  %275 = extractvalue { ptr, i32 } %274, 0
  store ptr %275, ptr %13, align 8
  %276 = extractvalue { ptr, i32 } %274, 1
  store i32 %276, ptr %14, align 4
  br label %1322

277:                                              ; preds = %217
  call void @llvm.lifetime.start.p0(i64 24, ptr %30) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %278 unwind label %285

278:                                              ; preds = %277
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %32, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %279 unwind label %289

279:                                              ; preds = %278
  invoke void @_Z22generate_mutations_refNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %30, ptr noundef %31, ptr noundef %32)
          to label %280 unwind label %293

280:                                              ; preds = %279
  %281 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %22, ptr noundef nonnull align 8 dereferenceable(24) %30) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30) #9
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %32) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %30) #9
  invoke void @_Z19apply_mutations_refRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EE(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %282 unwind label %273

282:                                              ; preds = %280
  %283 = load float, ptr %8, align 4, !tbaa !9
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %16, float noundef %283, ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull align 4 dereferenceable(4) %24, i32 noundef -1, float noundef -1.000000e+00)
          to label %284 unwind label %273

284:                                              ; preds = %282
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #9
  br label %299

285:                                              ; preds = %277
  %286 = landingpad { ptr, i32 }
          cleanup
  %287 = extractvalue { ptr, i32 } %286, 0
  store ptr %287, ptr %13, align 8
  %288 = extractvalue { ptr, i32 } %286, 1
  store i32 %288, ptr %14, align 4
  br label %298

289:                                              ; preds = %278
  %290 = landingpad { ptr, i32 }
          cleanup
  %291 = extractvalue { ptr, i32 } %290, 0
  store ptr %291, ptr %13, align 8
  %292 = extractvalue { ptr, i32 } %290, 1
  store i32 %292, ptr %14, align 4
  br label %297

293:                                              ; preds = %279
  %294 = landingpad { ptr, i32 }
          cleanup
  %295 = extractvalue { ptr, i32 } %294, 0
  store ptr %295, ptr %13, align 8
  %296 = extractvalue { ptr, i32 } %294, 1
  store i32 %296, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %32) #9
  br label %297

297:                                              ; preds = %293, %289
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #9
  br label %298

298:                                              ; preds = %297, %285
  call void @llvm.lifetime.end.p0(i64 24, ptr %30) #9
  br label %1322

299:                                              ; preds = %284, %272
  %300 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.74)
          to label %301 unwind label %273

301:                                              ; preds = %299
  %302 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %300, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %303 unwind label %273

303:                                              ; preds = %301
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %304 unwind label %273

304:                                              ; preds = %303
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %35, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %305 unwind label %330

305:                                              ; preds = %304
  invoke void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef %34, ptr noundef %35, i1 noundef zeroext false)
          to label %306 unwind label %334

306:                                              ; preds = %305
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %35) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #9
  %307 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.75)
          to label %308 unwind label %273

308:                                              ; preds = %306
  %309 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %307, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %310 unwind label %273

310:                                              ; preds = %308
  %311 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 22
  %312 = load i8, ptr %311, align 4, !tbaa !20, !range !18, !noundef !19
  %313 = trunc i8 %312 to i1
  br i1 %313, label %314, label %1301

314:                                              ; preds = %310
  %315 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.76)
          to label %316 unwind label %273

316:                                              ; preds = %314
  %317 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %315, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %318 unwind label %273

318:                                              ; preds = %316
  call void @llvm.lifetime.start.p0(i64 48, ptr %36) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef nonnull align 8 dereferenceable(32) %0)
          to label %319 unwind label %339

319:                                              ; preds = %318
  %320 = load i32, ptr %15, align 4, !tbaa !13
  invoke void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind writable sret(%"class.std::map") align 8 %36, ptr noundef %37, i32 noundef %320)
          to label %321 unwind label %343

321:                                              ; preds = %319
  %322 = call noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEaSEOSC_(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(48) %36) #9
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %36) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #9
  call void @llvm.lifetime.end.p0(i64 48, ptr %36) #9
  %323 = load i8, ptr %9, align 1, !tbaa !11, !range !18, !noundef !19
  %324 = trunc i8 %323 to i1
  br i1 %324, label %348, label %325

325:                                              ; preds = %321
  %326 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef @.str.77)
          to label %327 unwind label %273

327:                                              ; preds = %325
  %328 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %326, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %329 unwind label %273

329:                                              ; preds = %327
  call void @exit(i32 noundef 0) #10
  unreachable

330:                                              ; preds = %304
  %331 = landingpad { ptr, i32 }
          cleanup
  %332 = extractvalue { ptr, i32 } %331, 0
  store ptr %332, ptr %13, align 8
  %333 = extractvalue { ptr, i32 } %331, 1
  store i32 %333, ptr %14, align 4
  br label %338

334:                                              ; preds = %305
  %335 = landingpad { ptr, i32 }
          cleanup
  %336 = extractvalue { ptr, i32 } %335, 0
  store ptr %336, ptr %13, align 8
  %337 = extractvalue { ptr, i32 } %335, 1
  store i32 %337, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %35) #9
  br label %338

338:                                              ; preds = %334, %330
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #9
  br label %1322

339:                                              ; preds = %318
  %340 = landingpad { ptr, i32 }
          cleanup
  %341 = extractvalue { ptr, i32 } %340, 0
  store ptr %341, ptr %13, align 8
  %342 = extractvalue { ptr, i32 } %340, 1
  store i32 %342, ptr %14, align 4
  br label %347

343:                                              ; preds = %319
  %344 = landingpad { ptr, i32 }
          cleanup
  %345 = extractvalue { ptr, i32 } %344, 0
  store ptr %345, ptr %13, align 8
  %346 = extractvalue { ptr, i32 } %344, 1
  store i32 %346, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #9
  br label %347

347:                                              ; preds = %343, %339
  call void @llvm.lifetime.end.p0(i64 48, ptr %36) #9
  br label %1322

348:                                              ; preds = %321
  call void @llvm.lifetime.start.p0(i64 24, ptr %38) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #9
  call void @llvm.lifetime.start.p0(i64 24, ptr %39) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %349 unwind label %358

349:                                              ; preds = %348
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %41, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %350 unwind label %362

350:                                              ; preds = %349
  invoke void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind writable sret(%"class.std::vector") align 8 %39, ptr noundef %40, ptr noundef %41)
          to label %351 unwind label %366

351:                                              ; preds = %350
  %352 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %38, ptr noundef nonnull align 8 dereferenceable(24) %39) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %39) #9
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %41) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %39) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #9
  store i64 0, ptr %42, align 8, !tbaa !22
  br label %353

353:                                              ; preds = %840, %351
  %354 = load i64, ptr %42, align 8, !tbaa !22
  %355 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %38) #9
  %356 = icmp ult i64 %354, %355
  br i1 %356, label %372, label %357

357:                                              ; preds = %353
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #9
  br label %844

358:                                              ; preds = %348
  %359 = landingpad { ptr, i32 }
          cleanup
  %360 = extractvalue { ptr, i32 } %359, 0
  store ptr %360, ptr %13, align 8
  %361 = extractvalue { ptr, i32 } %359, 1
  store i32 %361, ptr %14, align 4
  br label %371

362:                                              ; preds = %349
  %363 = landingpad { ptr, i32 }
          cleanup
  %364 = extractvalue { ptr, i32 } %363, 0
  store ptr %364, ptr %13, align 8
  %365 = extractvalue { ptr, i32 } %363, 1
  store i32 %365, ptr %14, align 4
  br label %370

366:                                              ; preds = %350
  %367 = landingpad { ptr, i32 }
          cleanup
  %368 = extractvalue { ptr, i32 } %367, 0
  store ptr %368, ptr %13, align 8
  %369 = extractvalue { ptr, i32 } %367, 1
  store i32 %369, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %41) #9
  br label %370

370:                                              ; preds = %366, %362
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #9
  br label %371

371:                                              ; preds = %370, %358
  call void @llvm.lifetime.end.p0(i64 24, ptr %39) #9
  br label %1300

372:                                              ; preds = %353
  call void @llvm.lifetime.start.p0(i64 4, ptr %43) #9
  %373 = call i32 @rand() #9
  %374 = sitofp i32 %373 to float
  %375 = fdiv float %374, 0x41E0000000000000
  store float %375, ptr %43, align 4, !tbaa !9
  %376 = load float, ptr %43, align 4, !tbaa !9
  %377 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 23
  %378 = load float, ptr %377, align 4, !tbaa !17
  %379 = fcmp olt float %376, %378
  br i1 %379, label %380, label %615

380:                                              ; preds = %372
  %381 = load i64, ptr %42, align 8, !tbaa !22
  %382 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %381) #9
  %383 = load i64, ptr %42, align 8, !tbaa !22
  %384 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %383) #9
  %385 = invoke noundef nonnull align 8 dereferenceable(160) ptr @_ZN10struct_varaSERKS_(ptr noundef nonnull align 8 dereferenceable(160) %384, ptr noundef nonnull align 8 dereferenceable(160) %382)
          to label %386 unwind label %477

386:                                              ; preds = %380
  %387 = load i64, ptr %42, align 8, !tbaa !22
  %388 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %387) #9
  %389 = getelementptr inbounds %struct.struct_var, ptr %388, i32 0, i32 0
  %390 = load i32, ptr %389, align 8, !tbaa !24
  %391 = icmp eq i32 %390, 3
  br i1 %391, label %392, label %539

392:                                              ; preds = %386
  %393 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %44) #9
  %394 = load i64, ptr %42, align 8, !tbaa !22
  %395 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %394) #9
  %396 = getelementptr inbounds %struct.struct_var, ptr %395, i32 0, i32 1
  %397 = getelementptr inbounds %struct.position, ptr %396, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull align 8 dereferenceable(32) %397)
          to label %398 unwind label %481

398:                                              ; preds = %392
  %399 = load i64, ptr %42, align 8, !tbaa !22
  %400 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %399) #9
  %401 = getelementptr inbounds %struct.struct_var, ptr %400, i32 0, i32 1
  %402 = getelementptr inbounds %struct.position, ptr %401, i32 0, i32 1
  %403 = load i32, ptr %402, align 8, !tbaa !29
  %404 = load i64, ptr %42, align 8, !tbaa !22
  %405 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %404) #9
  %406 = getelementptr inbounds %struct.struct_var, ptr %405, i32 0, i32 0
  %407 = load i32, ptr %406, align 8, !tbaa !24
  %408 = load i64, ptr %42, align 8, !tbaa !22
  %409 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %408) #9
  %410 = getelementptr inbounds %struct.struct_var, ptr %409, i32 0, i32 2
  %411 = getelementptr inbounds %struct.position, ptr %410, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull align 8 dereferenceable(32) %411)
          to label %412 unwind label %485

412:                                              ; preds = %398
  %413 = load i64, ptr %42, align 8, !tbaa !22
  %414 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %413) #9
  %415 = getelementptr inbounds %struct.struct_var, ptr %414, i32 0, i32 2
  %416 = getelementptr inbounds %struct.position, ptr %415, i32 0, i32 1
  %417 = load i32, ptr %416, align 8, !tbaa !30
  %418 = load i32, ptr %24, align 4, !tbaa !13
  %419 = load i64, ptr %42, align 8, !tbaa !22
  %420 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %419) #9
  %421 = getelementptr inbounds %struct.struct_var, ptr %420, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull align 8 dereferenceable(32) %421)
          to label %422 unwind label %489

422:                                              ; preds = %412
  %423 = load i64, ptr %42, align 8, !tbaa !22
  %424 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %423) #9
  %425 = getelementptr inbounds %struct.struct_var, ptr %424, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull align 8 dereferenceable(32) %425)
          to label %426 unwind label %493

426:                                              ; preds = %422
  call void @llvm.lifetime.start.p0(i64 1, ptr %50) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %50) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %50)
          to label %427 unwind label %497

427:                                              ; preds = %426
  %428 = load i64, ptr %42, align 8, !tbaa !22
  %429 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %428) #9
  %430 = getelementptr inbounds %struct.struct_var, ptr %429, i32 0, i32 6
  %431 = load i32, ptr %430, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef %45, i32 noundef %403, i32 noundef %407, ptr noundef %46, i32 noundef %417, i32 noundef %418, ptr noundef %47, ptr noundef %48, ptr noundef %49, i32 noundef %431)
          to label %432 unwind label %501

432:                                              ; preds = %427
  %433 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %44) #9
  %434 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %393, ptr noundef @.str.17, ptr noundef %433) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %50) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %44) #9
  %435 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %51) #9
  %436 = load i64, ptr %42, align 8, !tbaa !22
  %437 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %436) #9
  %438 = getelementptr inbounds %struct.struct_var, ptr %437, i32 0, i32 1
  %439 = getelementptr inbounds %struct.position, ptr %438, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef nonnull align 8 dereferenceable(32) %439)
          to label %440 unwind label %510

440:                                              ; preds = %432
  %441 = load i64, ptr %42, align 8, !tbaa !22
  %442 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %441) #9
  %443 = getelementptr inbounds %struct.struct_var, ptr %442, i32 0, i32 1
  %444 = getelementptr inbounds %struct.position, ptr %443, i32 0, i32 2
  %445 = load i32, ptr %444, align 4, !tbaa !32
  %446 = load i64, ptr %42, align 8, !tbaa !22
  %447 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %446) #9
  %448 = getelementptr inbounds %struct.struct_var, ptr %447, i32 0, i32 0
  %449 = load i32, ptr %448, align 8, !tbaa !24
  %450 = load i64, ptr %42, align 8, !tbaa !22
  %451 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %450) #9
  %452 = getelementptr inbounds %struct.struct_var, ptr %451, i32 0, i32 2
  %453 = getelementptr inbounds %struct.position, ptr %452, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef nonnull align 8 dereferenceable(32) %453)
          to label %454 unwind label %514

454:                                              ; preds = %440
  %455 = load i64, ptr %42, align 8, !tbaa !22
  %456 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %455) #9
  %457 = getelementptr inbounds %struct.struct_var, ptr %456, i32 0, i32 2
  %458 = getelementptr inbounds %struct.position, ptr %457, i32 0, i32 2
  %459 = load i32, ptr %458, align 4, !tbaa !33
  %460 = load i32, ptr %24, align 4, !tbaa !13
  %461 = load i64, ptr %42, align 8, !tbaa !22
  %462 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %461) #9
  %463 = getelementptr inbounds %struct.struct_var, ptr %462, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull align 8 dereferenceable(32) %463)
          to label %464 unwind label %518

464:                                              ; preds = %454
  %465 = load i64, ptr %42, align 8, !tbaa !22
  %466 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %465) #9
  %467 = getelementptr inbounds %struct.struct_var, ptr %466, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(32) %467)
          to label %468 unwind label %522

468:                                              ; preds = %464
  call void @llvm.lifetime.start.p0(i64 1, ptr %57) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %57) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %57)
          to label %469 unwind label %526

469:                                              ; preds = %468
  %470 = load i64, ptr %42, align 8, !tbaa !22
  %471 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %470) #9
  %472 = getelementptr inbounds %struct.struct_var, ptr %471, i32 0, i32 6
  %473 = load i32, ptr %472, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef %52, i32 noundef %445, i32 noundef %449, ptr noundef %53, i32 noundef %459, i32 noundef %460, ptr noundef %54, ptr noundef %55, ptr noundef %56, i32 noundef %473)
          to label %474 unwind label %530

474:                                              ; preds = %469
  %475 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %51) #9
  %476 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %435, ptr noundef @.str.17, ptr noundef %475) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %57) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %57) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #9
  br label %611

477:                                              ; preds = %380
  %478 = landingpad { ptr, i32 }
          cleanup
  %479 = extractvalue { ptr, i32 } %478, 0
  store ptr %479, ptr %13, align 8
  %480 = extractvalue { ptr, i32 } %478, 1
  store i32 %480, ptr %14, align 4
  br label %843

481:                                              ; preds = %392
  %482 = landingpad { ptr, i32 }
          cleanup
  %483 = extractvalue { ptr, i32 } %482, 0
  store ptr %483, ptr %13, align 8
  %484 = extractvalue { ptr, i32 } %482, 1
  store i32 %484, ptr %14, align 4
  br label %509

485:                                              ; preds = %398
  %486 = landingpad { ptr, i32 }
          cleanup
  %487 = extractvalue { ptr, i32 } %486, 0
  store ptr %487, ptr %13, align 8
  %488 = extractvalue { ptr, i32 } %486, 1
  store i32 %488, ptr %14, align 4
  br label %508

489:                                              ; preds = %412
  %490 = landingpad { ptr, i32 }
          cleanup
  %491 = extractvalue { ptr, i32 } %490, 0
  store ptr %491, ptr %13, align 8
  %492 = extractvalue { ptr, i32 } %490, 1
  store i32 %492, ptr %14, align 4
  br label %507

493:                                              ; preds = %422
  %494 = landingpad { ptr, i32 }
          cleanup
  %495 = extractvalue { ptr, i32 } %494, 0
  store ptr %495, ptr %13, align 8
  %496 = extractvalue { ptr, i32 } %494, 1
  store i32 %496, ptr %14, align 4
  br label %506

497:                                              ; preds = %426
  %498 = landingpad { ptr, i32 }
          cleanup
  %499 = extractvalue { ptr, i32 } %498, 0
  store ptr %499, ptr %13, align 8
  %500 = extractvalue { ptr, i32 } %498, 1
  store i32 %500, ptr %14, align 4
  br label %505

501:                                              ; preds = %427
  %502 = landingpad { ptr, i32 }
          cleanup
  %503 = extractvalue { ptr, i32 } %502, 0
  store ptr %503, ptr %13, align 8
  %504 = extractvalue { ptr, i32 } %502, 1
  store i32 %504, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #9
  br label %505

505:                                              ; preds = %501, %497
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %50) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %50) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #9
  br label %506

506:                                              ; preds = %505, %493
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #9
  br label %507

507:                                              ; preds = %506, %489
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #9
  br label %508

508:                                              ; preds = %507, %485
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #9
  br label %509

509:                                              ; preds = %508, %481
  call void @llvm.lifetime.end.p0(i64 32, ptr %44) #9
  br label %843

510:                                              ; preds = %432
  %511 = landingpad { ptr, i32 }
          cleanup
  %512 = extractvalue { ptr, i32 } %511, 0
  store ptr %512, ptr %13, align 8
  %513 = extractvalue { ptr, i32 } %511, 1
  store i32 %513, ptr %14, align 4
  br label %538

514:                                              ; preds = %440
  %515 = landingpad { ptr, i32 }
          cleanup
  %516 = extractvalue { ptr, i32 } %515, 0
  store ptr %516, ptr %13, align 8
  %517 = extractvalue { ptr, i32 } %515, 1
  store i32 %517, ptr %14, align 4
  br label %537

518:                                              ; preds = %454
  %519 = landingpad { ptr, i32 }
          cleanup
  %520 = extractvalue { ptr, i32 } %519, 0
  store ptr %520, ptr %13, align 8
  %521 = extractvalue { ptr, i32 } %519, 1
  store i32 %521, ptr %14, align 4
  br label %536

522:                                              ; preds = %464
  %523 = landingpad { ptr, i32 }
          cleanup
  %524 = extractvalue { ptr, i32 } %523, 0
  store ptr %524, ptr %13, align 8
  %525 = extractvalue { ptr, i32 } %523, 1
  store i32 %525, ptr %14, align 4
  br label %535

526:                                              ; preds = %468
  %527 = landingpad { ptr, i32 }
          cleanup
  %528 = extractvalue { ptr, i32 } %527, 0
  store ptr %528, ptr %13, align 8
  %529 = extractvalue { ptr, i32 } %527, 1
  store i32 %529, ptr %14, align 4
  br label %534

530:                                              ; preds = %469
  %531 = landingpad { ptr, i32 }
          cleanup
  %532 = extractvalue { ptr, i32 } %531, 0
  store ptr %532, ptr %13, align 8
  %533 = extractvalue { ptr, i32 } %531, 1
  store i32 %533, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #9
  br label %534

534:                                              ; preds = %530, %526
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %57) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %57) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #9
  br label %535

535:                                              ; preds = %534, %522
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #9
  br label %536

536:                                              ; preds = %535, %518
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #9
  br label %537

537:                                              ; preds = %536, %514
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #9
  br label %538

538:                                              ; preds = %537, %510
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #9
  br label %843

539:                                              ; preds = %386
  %540 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %58) #9
  %541 = load i64, ptr %42, align 8, !tbaa !22
  %542 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %541) #9
  %543 = getelementptr inbounds %struct.struct_var, ptr %542, i32 0, i32 1
  %544 = getelementptr inbounds %struct.position, ptr %543, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull align 8 dereferenceable(32) %544)
          to label %545 unwind label %582

545:                                              ; preds = %539
  %546 = load i64, ptr %42, align 8, !tbaa !22
  %547 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %546) #9
  %548 = getelementptr inbounds %struct.struct_var, ptr %547, i32 0, i32 1
  %549 = getelementptr inbounds %struct.position, ptr %548, i32 0, i32 1
  %550 = load i32, ptr %549, align 8, !tbaa !29
  %551 = load i64, ptr %42, align 8, !tbaa !22
  %552 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %551) #9
  %553 = getelementptr inbounds %struct.struct_var, ptr %552, i32 0, i32 0
  %554 = load i32, ptr %553, align 8, !tbaa !24
  %555 = load i64, ptr %42, align 8, !tbaa !22
  %556 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %555) #9
  %557 = getelementptr inbounds %struct.struct_var, ptr %556, i32 0, i32 1
  %558 = getelementptr inbounds %struct.position, ptr %557, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %60, ptr noundef nonnull align 8 dereferenceable(32) %558)
          to label %559 unwind label %586

559:                                              ; preds = %545
  %560 = load i64, ptr %42, align 8, !tbaa !22
  %561 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %560) #9
  %562 = getelementptr inbounds %struct.struct_var, ptr %561, i32 0, i32 1
  %563 = getelementptr inbounds %struct.position, ptr %562, i32 0, i32 2
  %564 = load i32, ptr %563, align 4, !tbaa !32
  %565 = load i32, ptr %24, align 4, !tbaa !13
  %566 = load i64, ptr %42, align 8, !tbaa !22
  %567 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %566) #9
  %568 = getelementptr inbounds %struct.struct_var, ptr %567, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef nonnull align 8 dereferenceable(32) %568)
          to label %569 unwind label %590

569:                                              ; preds = %559
  %570 = load i64, ptr %42, align 8, !tbaa !22
  %571 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %570) #9
  %572 = getelementptr inbounds %struct.struct_var, ptr %571, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef nonnull align 8 dereferenceable(32) %572)
          to label %573 unwind label %594

573:                                              ; preds = %569
  call void @llvm.lifetime.start.p0(i64 1, ptr %64) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %64)
          to label %574 unwind label %598

574:                                              ; preds = %573
  %575 = load i64, ptr %42, align 8, !tbaa !22
  %576 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %575) #9
  %577 = getelementptr inbounds %struct.struct_var, ptr %576, i32 0, i32 6
  %578 = load i32, ptr %577, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %58, ptr noundef %59, i32 noundef %550, i32 noundef %554, ptr noundef %60, i32 noundef %564, i32 noundef %565, ptr noundef %61, ptr noundef %62, ptr noundef %63, i32 noundef %578)
          to label %579 unwind label %602

579:                                              ; preds = %574
  %580 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %58) #9
  %581 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %540, ptr noundef @.str.17, ptr noundef %580) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %64) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %58) #9
  br label %611

582:                                              ; preds = %539
  %583 = landingpad { ptr, i32 }
          cleanup
  %584 = extractvalue { ptr, i32 } %583, 0
  store ptr %584, ptr %13, align 8
  %585 = extractvalue { ptr, i32 } %583, 1
  store i32 %585, ptr %14, align 4
  br label %610

586:                                              ; preds = %545
  %587 = landingpad { ptr, i32 }
          cleanup
  %588 = extractvalue { ptr, i32 } %587, 0
  store ptr %588, ptr %13, align 8
  %589 = extractvalue { ptr, i32 } %587, 1
  store i32 %589, ptr %14, align 4
  br label %609

590:                                              ; preds = %559
  %591 = landingpad { ptr, i32 }
          cleanup
  %592 = extractvalue { ptr, i32 } %591, 0
  store ptr %592, ptr %13, align 8
  %593 = extractvalue { ptr, i32 } %591, 1
  store i32 %593, ptr %14, align 4
  br label %608

594:                                              ; preds = %569
  %595 = landingpad { ptr, i32 }
          cleanup
  %596 = extractvalue { ptr, i32 } %595, 0
  store ptr %596, ptr %13, align 8
  %597 = extractvalue { ptr, i32 } %595, 1
  store i32 %597, ptr %14, align 4
  br label %607

598:                                              ; preds = %573
  %599 = landingpad { ptr, i32 }
          cleanup
  %600 = extractvalue { ptr, i32 } %599, 0
  store ptr %600, ptr %13, align 8
  %601 = extractvalue { ptr, i32 } %599, 1
  store i32 %601, ptr %14, align 4
  br label %606

602:                                              ; preds = %574
  %603 = landingpad { ptr, i32 }
          cleanup
  %604 = extractvalue { ptr, i32 } %603, 0
  store ptr %604, ptr %13, align 8
  %605 = extractvalue { ptr, i32 } %603, 1
  store i32 %605, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #9
  br label %606

606:                                              ; preds = %602, %598
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %64) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #9
  br label %607

607:                                              ; preds = %606, %594
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #9
  br label %608

608:                                              ; preds = %607, %590
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #9
  br label %609

609:                                              ; preds = %608, %586
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #9
  br label %610

610:                                              ; preds = %609, %582
  call void @llvm.lifetime.end.p0(i64 32, ptr %58) #9
  br label %843

611:                                              ; preds = %579, %474
  %612 = load i64, ptr %42, align 8, !tbaa !22
  %613 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %612) #9
  %614 = getelementptr inbounds %struct.struct_var, ptr %613, i32 0, i32 5
  store i8 0, ptr %614, align 8, !tbaa !34
  br label %839

615:                                              ; preds = %372
  %616 = load i64, ptr %42, align 8, !tbaa !22
  %617 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %616) #9
  %618 = getelementptr inbounds %struct.struct_var, ptr %617, i32 0, i32 0
  %619 = load i32, ptr %618, align 8, !tbaa !24
  %620 = icmp eq i32 %619, 3
  br i1 %620, label %621, label %764

621:                                              ; preds = %615
  %622 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %65) #9
  %623 = load i64, ptr %42, align 8, !tbaa !22
  %624 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %623) #9
  %625 = getelementptr inbounds %struct.struct_var, ptr %624, i32 0, i32 1
  %626 = getelementptr inbounds %struct.position, ptr %625, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %66, ptr noundef nonnull align 8 dereferenceable(32) %626)
          to label %627 unwind label %706

627:                                              ; preds = %621
  %628 = load i64, ptr %42, align 8, !tbaa !22
  %629 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %628) #9
  %630 = getelementptr inbounds %struct.struct_var, ptr %629, i32 0, i32 1
  %631 = getelementptr inbounds %struct.position, ptr %630, i32 0, i32 1
  %632 = load i32, ptr %631, align 8, !tbaa !29
  %633 = load i64, ptr %42, align 8, !tbaa !22
  %634 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %633) #9
  %635 = getelementptr inbounds %struct.struct_var, ptr %634, i32 0, i32 0
  %636 = load i32, ptr %635, align 8, !tbaa !24
  %637 = load i64, ptr %42, align 8, !tbaa !22
  %638 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %637) #9
  %639 = getelementptr inbounds %struct.struct_var, ptr %638, i32 0, i32 2
  %640 = getelementptr inbounds %struct.position, ptr %639, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef nonnull align 8 dereferenceable(32) %640)
          to label %641 unwind label %710

641:                                              ; preds = %627
  %642 = load i64, ptr %42, align 8, !tbaa !22
  %643 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %642) #9
  %644 = getelementptr inbounds %struct.struct_var, ptr %643, i32 0, i32 2
  %645 = getelementptr inbounds %struct.position, ptr %644, i32 0, i32 1
  %646 = load i32, ptr %645, align 8, !tbaa !30
  %647 = load i32, ptr %24, align 4, !tbaa !13
  %648 = load i64, ptr %42, align 8, !tbaa !22
  %649 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %648) #9
  %650 = getelementptr inbounds %struct.struct_var, ptr %649, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef nonnull align 8 dereferenceable(32) %650)
          to label %651 unwind label %714

651:                                              ; preds = %641
  %652 = load i64, ptr %42, align 8, !tbaa !22
  %653 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %652) #9
  %654 = getelementptr inbounds %struct.struct_var, ptr %653, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(32) %654)
          to label %655 unwind label %718

655:                                              ; preds = %651
  call void @llvm.lifetime.start.p0(i64 1, ptr %71) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %71)
          to label %656 unwind label %722

656:                                              ; preds = %655
  %657 = load i64, ptr %42, align 8, !tbaa !22
  %658 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %657) #9
  %659 = getelementptr inbounds %struct.struct_var, ptr %658, i32 0, i32 6
  %660 = load i32, ptr %659, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %65, ptr noundef %66, i32 noundef %632, i32 noundef %636, ptr noundef %67, i32 noundef %646, i32 noundef %647, ptr noundef %68, ptr noundef %69, ptr noundef %70, i32 noundef %660)
          to label %661 unwind label %726

661:                                              ; preds = %656
  %662 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %65) #9
  %663 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %622, ptr noundef @.str.17, ptr noundef %662) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %65) #9
  %664 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %72) #9
  %665 = load i64, ptr %42, align 8, !tbaa !22
  %666 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %665) #9
  %667 = getelementptr inbounds %struct.struct_var, ptr %666, i32 0, i32 1
  %668 = getelementptr inbounds %struct.position, ptr %667, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef nonnull align 8 dereferenceable(32) %668)
          to label %669 unwind label %735

669:                                              ; preds = %661
  %670 = load i64, ptr %42, align 8, !tbaa !22
  %671 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %670) #9
  %672 = getelementptr inbounds %struct.struct_var, ptr %671, i32 0, i32 1
  %673 = getelementptr inbounds %struct.position, ptr %672, i32 0, i32 2
  %674 = load i32, ptr %673, align 4, !tbaa !32
  %675 = load i64, ptr %42, align 8, !tbaa !22
  %676 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %675) #9
  %677 = getelementptr inbounds %struct.struct_var, ptr %676, i32 0, i32 0
  %678 = load i32, ptr %677, align 8, !tbaa !24
  %679 = load i64, ptr %42, align 8, !tbaa !22
  %680 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %679) #9
  %681 = getelementptr inbounds %struct.struct_var, ptr %680, i32 0, i32 2
  %682 = getelementptr inbounds %struct.position, ptr %681, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef nonnull align 8 dereferenceable(32) %682)
          to label %683 unwind label %739

683:                                              ; preds = %669
  %684 = load i64, ptr %42, align 8, !tbaa !22
  %685 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %684) #9
  %686 = getelementptr inbounds %struct.struct_var, ptr %685, i32 0, i32 2
  %687 = getelementptr inbounds %struct.position, ptr %686, i32 0, i32 2
  %688 = load i32, ptr %687, align 4, !tbaa !33
  %689 = load i32, ptr %24, align 4, !tbaa !13
  %690 = load i64, ptr %42, align 8, !tbaa !22
  %691 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %690) #9
  %692 = getelementptr inbounds %struct.struct_var, ptr %691, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull align 8 dereferenceable(32) %692)
          to label %693 unwind label %743

693:                                              ; preds = %683
  %694 = load i64, ptr %42, align 8, !tbaa !22
  %695 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %694) #9
  %696 = getelementptr inbounds %struct.struct_var, ptr %695, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull align 8 dereferenceable(32) %696)
          to label %697 unwind label %747

697:                                              ; preds = %693
  call void @llvm.lifetime.start.p0(i64 1, ptr %78) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %78)
          to label %698 unwind label %751

698:                                              ; preds = %697
  %699 = load i64, ptr %42, align 8, !tbaa !22
  %700 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %699) #9
  %701 = getelementptr inbounds %struct.struct_var, ptr %700, i32 0, i32 6
  %702 = load i32, ptr %701, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %72, ptr noundef %73, i32 noundef %674, i32 noundef %678, ptr noundef %74, i32 noundef %688, i32 noundef %689, ptr noundef %75, ptr noundef %76, ptr noundef %77, i32 noundef %702)
          to label %703 unwind label %755

703:                                              ; preds = %698
  %704 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %72) #9
  %705 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %664, ptr noundef @.str.17, ptr noundef %704) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %78) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %72) #9
  br label %836

706:                                              ; preds = %621
  %707 = landingpad { ptr, i32 }
          cleanup
  %708 = extractvalue { ptr, i32 } %707, 0
  store ptr %708, ptr %13, align 8
  %709 = extractvalue { ptr, i32 } %707, 1
  store i32 %709, ptr %14, align 4
  br label %734

710:                                              ; preds = %627
  %711 = landingpad { ptr, i32 }
          cleanup
  %712 = extractvalue { ptr, i32 } %711, 0
  store ptr %712, ptr %13, align 8
  %713 = extractvalue { ptr, i32 } %711, 1
  store i32 %713, ptr %14, align 4
  br label %733

714:                                              ; preds = %641
  %715 = landingpad { ptr, i32 }
          cleanup
  %716 = extractvalue { ptr, i32 } %715, 0
  store ptr %716, ptr %13, align 8
  %717 = extractvalue { ptr, i32 } %715, 1
  store i32 %717, ptr %14, align 4
  br label %732

718:                                              ; preds = %651
  %719 = landingpad { ptr, i32 }
          cleanup
  %720 = extractvalue { ptr, i32 } %719, 0
  store ptr %720, ptr %13, align 8
  %721 = extractvalue { ptr, i32 } %719, 1
  store i32 %721, ptr %14, align 4
  br label %731

722:                                              ; preds = %655
  %723 = landingpad { ptr, i32 }
          cleanup
  %724 = extractvalue { ptr, i32 } %723, 0
  store ptr %724, ptr %13, align 8
  %725 = extractvalue { ptr, i32 } %723, 1
  store i32 %725, ptr %14, align 4
  br label %730

726:                                              ; preds = %656
  %727 = landingpad { ptr, i32 }
          cleanup
  %728 = extractvalue { ptr, i32 } %727, 0
  store ptr %728, ptr %13, align 8
  %729 = extractvalue { ptr, i32 } %727, 1
  store i32 %729, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #9
  br label %730

730:                                              ; preds = %726, %722
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #9
  br label %731

731:                                              ; preds = %730, %718
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #9
  br label %732

732:                                              ; preds = %731, %714
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #9
  br label %733

733:                                              ; preds = %732, %710
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #9
  br label %734

734:                                              ; preds = %733, %706
  call void @llvm.lifetime.end.p0(i64 32, ptr %65) #9
  br label %843

735:                                              ; preds = %661
  %736 = landingpad { ptr, i32 }
          cleanup
  %737 = extractvalue { ptr, i32 } %736, 0
  store ptr %737, ptr %13, align 8
  %738 = extractvalue { ptr, i32 } %736, 1
  store i32 %738, ptr %14, align 4
  br label %763

739:                                              ; preds = %669
  %740 = landingpad { ptr, i32 }
          cleanup
  %741 = extractvalue { ptr, i32 } %740, 0
  store ptr %741, ptr %13, align 8
  %742 = extractvalue { ptr, i32 } %740, 1
  store i32 %742, ptr %14, align 4
  br label %762

743:                                              ; preds = %683
  %744 = landingpad { ptr, i32 }
          cleanup
  %745 = extractvalue { ptr, i32 } %744, 0
  store ptr %745, ptr %13, align 8
  %746 = extractvalue { ptr, i32 } %744, 1
  store i32 %746, ptr %14, align 4
  br label %761

747:                                              ; preds = %693
  %748 = landingpad { ptr, i32 }
          cleanup
  %749 = extractvalue { ptr, i32 } %748, 0
  store ptr %749, ptr %13, align 8
  %750 = extractvalue { ptr, i32 } %748, 1
  store i32 %750, ptr %14, align 4
  br label %760

751:                                              ; preds = %697
  %752 = landingpad { ptr, i32 }
          cleanup
  %753 = extractvalue { ptr, i32 } %752, 0
  store ptr %753, ptr %13, align 8
  %754 = extractvalue { ptr, i32 } %752, 1
  store i32 %754, ptr %14, align 4
  br label %759

755:                                              ; preds = %698
  %756 = landingpad { ptr, i32 }
          cleanup
  %757 = extractvalue { ptr, i32 } %756, 0
  store ptr %757, ptr %13, align 8
  %758 = extractvalue { ptr, i32 } %756, 1
  store i32 %758, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #9
  br label %759

759:                                              ; preds = %755, %751
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %78) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %78) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #9
  br label %760

760:                                              ; preds = %759, %747
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #9
  br label %761

761:                                              ; preds = %760, %743
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #9
  br label %762

762:                                              ; preds = %761, %739
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #9
  br label %763

763:                                              ; preds = %762, %735
  call void @llvm.lifetime.end.p0(i64 32, ptr %72) #9
  br label %843

764:                                              ; preds = %615
  %765 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %79) #9
  %766 = load i64, ptr %42, align 8, !tbaa !22
  %767 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %766) #9
  %768 = getelementptr inbounds %struct.struct_var, ptr %767, i32 0, i32 1
  %769 = getelementptr inbounds %struct.position, ptr %768, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef nonnull align 8 dereferenceable(32) %769)
          to label %770 unwind label %807

770:                                              ; preds = %764
  %771 = load i64, ptr %42, align 8, !tbaa !22
  %772 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %771) #9
  %773 = getelementptr inbounds %struct.struct_var, ptr %772, i32 0, i32 1
  %774 = getelementptr inbounds %struct.position, ptr %773, i32 0, i32 1
  %775 = load i32, ptr %774, align 8, !tbaa !29
  %776 = load i64, ptr %42, align 8, !tbaa !22
  %777 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %776) #9
  %778 = getelementptr inbounds %struct.struct_var, ptr %777, i32 0, i32 0
  %779 = load i32, ptr %778, align 8, !tbaa !24
  %780 = load i64, ptr %42, align 8, !tbaa !22
  %781 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %780) #9
  %782 = getelementptr inbounds %struct.struct_var, ptr %781, i32 0, i32 1
  %783 = getelementptr inbounds %struct.position, ptr %782, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull align 8 dereferenceable(32) %783)
          to label %784 unwind label %811

784:                                              ; preds = %770
  %785 = load i64, ptr %42, align 8, !tbaa !22
  %786 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %785) #9
  %787 = getelementptr inbounds %struct.struct_var, ptr %786, i32 0, i32 1
  %788 = getelementptr inbounds %struct.position, ptr %787, i32 0, i32 2
  %789 = load i32, ptr %788, align 4, !tbaa !32
  %790 = load i32, ptr %24, align 4, !tbaa !13
  %791 = load i64, ptr %42, align 8, !tbaa !22
  %792 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %791) #9
  %793 = getelementptr inbounds %struct.struct_var, ptr %792, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %82, ptr noundef nonnull align 8 dereferenceable(32) %793)
          to label %794 unwind label %815

794:                                              ; preds = %784
  %795 = load i64, ptr %42, align 8, !tbaa !22
  %796 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %795) #9
  %797 = getelementptr inbounds %struct.struct_var, ptr %796, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef nonnull align 8 dereferenceable(32) %797)
          to label %798 unwind label %819

798:                                              ; preds = %794
  call void @llvm.lifetime.start.p0(i64 1, ptr %85) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %85) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %84, ptr noundef @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %85)
          to label %799 unwind label %823

799:                                              ; preds = %798
  %800 = load i64, ptr %42, align 8, !tbaa !22
  %801 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %22, i64 noundef %800) #9
  %802 = getelementptr inbounds %struct.struct_var, ptr %801, i32 0, i32 6
  %803 = load i32, ptr %802, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %79, ptr noundef %80, i32 noundef %775, i32 noundef %779, ptr noundef %81, i32 noundef %789, i32 noundef %790, ptr noundef %82, ptr noundef %83, ptr noundef %84, i32 noundef %803)
          to label %804 unwind label %827

804:                                              ; preds = %799
  %805 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %79) #9
  %806 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %765, ptr noundef @.str.17, ptr noundef %805) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %79) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %85) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %85) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #9
  br label %836

807:                                              ; preds = %764
  %808 = landingpad { ptr, i32 }
          cleanup
  %809 = extractvalue { ptr, i32 } %808, 0
  store ptr %809, ptr %13, align 8
  %810 = extractvalue { ptr, i32 } %808, 1
  store i32 %810, ptr %14, align 4
  br label %835

811:                                              ; preds = %770
  %812 = landingpad { ptr, i32 }
          cleanup
  %813 = extractvalue { ptr, i32 } %812, 0
  store ptr %813, ptr %13, align 8
  %814 = extractvalue { ptr, i32 } %812, 1
  store i32 %814, ptr %14, align 4
  br label %834

815:                                              ; preds = %784
  %816 = landingpad { ptr, i32 }
          cleanup
  %817 = extractvalue { ptr, i32 } %816, 0
  store ptr %817, ptr %13, align 8
  %818 = extractvalue { ptr, i32 } %816, 1
  store i32 %818, ptr %14, align 4
  br label %833

819:                                              ; preds = %794
  %820 = landingpad { ptr, i32 }
          cleanup
  %821 = extractvalue { ptr, i32 } %820, 0
  store ptr %821, ptr %13, align 8
  %822 = extractvalue { ptr, i32 } %820, 1
  store i32 %822, ptr %14, align 4
  br label %832

823:                                              ; preds = %798
  %824 = landingpad { ptr, i32 }
          cleanup
  %825 = extractvalue { ptr, i32 } %824, 0
  store ptr %825, ptr %13, align 8
  %826 = extractvalue { ptr, i32 } %824, 1
  store i32 %826, ptr %14, align 4
  br label %831

827:                                              ; preds = %799
  %828 = landingpad { ptr, i32 }
          cleanup
  %829 = extractvalue { ptr, i32 } %828, 0
  store ptr %829, ptr %13, align 8
  %830 = extractvalue { ptr, i32 } %828, 1
  store i32 %830, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #9
  br label %831

831:                                              ; preds = %827, %823
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %85) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %85) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #9
  br label %832

832:                                              ; preds = %831, %819
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #9
  br label %833

833:                                              ; preds = %832, %815
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #9
  br label %834

834:                                              ; preds = %833, %811
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #9
  br label %835

835:                                              ; preds = %834, %807
  call void @llvm.lifetime.end.p0(i64 32, ptr %79) #9
  br label %843

836:                                              ; preds = %804, %703
  %837 = load i32, ptr %24, align 4, !tbaa !13
  %838 = add nsw i32 %837, 1
  store i32 %838, ptr %24, align 4, !tbaa !13
  br label %839

839:                                              ; preds = %836, %611
  call void @llvm.lifetime.end.p0(i64 4, ptr %43) #9
  br label %840

840:                                              ; preds = %839
  %841 = load i64, ptr %42, align 8, !tbaa !22
  %842 = add i64 %841, 1
  store i64 %842, ptr %42, align 8, !tbaa !22
  br label %353, !llvm.loop !35

843:                                              ; preds = %835, %763, %734, %610, %538, %509, %477
  call void @llvm.lifetime.end.p0(i64 4, ptr %43) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #9
  br label %1300

844:                                              ; preds = %357
  call void @llvm.lifetime.start.p0(i64 8, ptr %86) #9
  %845 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  %846 = getelementptr inbounds %"struct.std::_Rb_tree_iterator", ptr %86, i32 0, i32 0
  store ptr %845, ptr %846, align 8
  br label %847

847:                                              ; preds = %970, %844
  call void @llvm.lifetime.start.p0(i64 8, ptr %87) #9
  %848 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  %849 = getelementptr inbounds %"struct.std::_Rb_tree_iterator", ptr %87, i32 0, i32 0
  store ptr %848, ptr %849, align 8
  %850 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EESB_(ptr noundef nonnull align 8 dereferenceable(8) %86, ptr noundef nonnull align 8 dereferenceable(8) %87) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %87) #9
  br i1 %850, label %852, label %851

851:                                              ; preds = %847
  store i32 5, ptr %88, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #9
  br label %973

852:                                              ; preds = %847
  call void @llvm.lifetime.start.p0(i64 8, ptr %89) #9
  store i64 0, ptr %89, align 8, !tbaa !22
  br label %853

853:                                              ; preds = %965, %852
  %854 = load i64, ptr %89, align 8, !tbaa !22
  %855 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %856 = getelementptr inbounds %"struct.std::pair", ptr %855, i32 0, i32 1
  %857 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %856) #9
  %858 = icmp ult i64 %854, %857
  br i1 %858, label %860, label %859

859:                                              ; preds = %853
  store i32 8, ptr %88, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %89) #9
  br label %969

860:                                              ; preds = %853
  %861 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %862 = getelementptr inbounds %"struct.std::pair", ptr %861, i32 0, i32 1
  %863 = load i64, ptr %89, align 8, !tbaa !22
  %864 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %862, i64 noundef %863)
          to label %865 unwind label %921

865:                                              ; preds = %860
  %866 = load i8, ptr %864, align 1, !tbaa !37
  %867 = sext i8 %866 to i32
  %868 = icmp ne i32 %867, 88
  br i1 %868, label %869, label %964

869:                                              ; preds = %865
  %870 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %871 = getelementptr inbounds %"struct.std::pair", ptr %870, i32 0, i32 1
  %872 = load i64, ptr %89, align 8, !tbaa !22
  %873 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %871, i64 noundef %872)
          to label %874 unwind label %921

874:                                              ; preds = %869
  %875 = load i8, ptr %873, align 1, !tbaa !37
  %876 = sext i8 %875 to i32
  %877 = icmp ne i32 %876, 78
  br i1 %877, label %878, label %964

878:                                              ; preds = %874
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #9
  %879 = call i32 @rand() #9
  %880 = sitofp i32 %879 to float
  %881 = fdiv float %880, 0x41E0000000000000
  store float %881, ptr %90, align 4, !tbaa !9
  %882 = load float, ptr %90, align 4, !tbaa !9
  %883 = load float, ptr %21, align 4, !tbaa !9
  %884 = fcmp olt float %882, %883
  br i1 %884, label %885, label %944

885:                                              ; preds = %878
  call void @llvm.lifetime.start.p0(i64 1, ptr %91) #9
  %886 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %887 = getelementptr inbounds %"struct.std::pair", ptr %886, i32 0, i32 1
  %888 = load i64, ptr %89, align 8, !tbaa !22
  %889 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %887, i64 noundef %888)
          to label %890 unwind label %925

890:                                              ; preds = %885
  %891 = load i8, ptr %889, align 1, !tbaa !37
  %892 = sext i8 %891 to i32
  %893 = call i32 @toupper(i32 noundef %892) #11
  %894 = trunc i32 %893 to i8
  %895 = invoke noundef signext i8 @_Z8mut_charc(i8 noundef signext %894)
          to label %896 unwind label %925

896:                                              ; preds = %890
  store i8 %895, ptr %91, align 1, !tbaa !37
  %897 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %898 = getelementptr inbounds %"struct.std::pair", ptr %897, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %92, ptr noundef nonnull align 8 dereferenceable(32) %898)
          to label %899 unwind label %925

899:                                              ; preds = %896
  %900 = load i64, ptr %89, align 8, !tbaa !22
  %901 = add i64 %900, 1
  %902 = trunc i64 %901 to i32
  %903 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %904 = getelementptr inbounds %"struct.std::pair", ptr %903, i32 0, i32 1
  %905 = load i64, ptr %89, align 8, !tbaa !22
  %906 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %904, i64 noundef %905)
          to label %907 unwind label %929

907:                                              ; preds = %899
  %908 = load i8, ptr %906, align 1, !tbaa !37
  %909 = load i8, ptr %91, align 1, !tbaa !37
  %910 = load i32, ptr %24, align 4, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 1, ptr %94) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %94) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %93, ptr noundef @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %94)
          to label %911 unwind label %933

911:                                              ; preds = %907
  invoke void @_Z13print_snp_vcfNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiccRP8_IO_FILEiS4_(ptr noundef %92, i32 noundef %902, i8 noundef signext %908, i8 noundef signext %909, ptr noundef nonnull align 8 dereferenceable(8) %19, i32 noundef %910, ptr noundef %93)
          to label %912 unwind label %937

912:                                              ; preds = %911
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %94) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %94) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #9
  %913 = load i32, ptr %24, align 4, !tbaa !13
  %914 = add nsw i32 %913, 1
  store i32 %914, ptr %24, align 4, !tbaa !13
  %915 = load i8, ptr %91, align 1, !tbaa !37
  %916 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %917 = getelementptr inbounds %"struct.std::pair", ptr %916, i32 0, i32 1
  %918 = load i64, ptr %89, align 8, !tbaa !22
  %919 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %917, i64 noundef %918)
          to label %920 unwind label %925

920:                                              ; preds = %912
  store i8 %915, ptr %919, align 1, !tbaa !37
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #9
  br label %944

921:                                              ; preds = %869, %860
  %922 = landingpad { ptr, i32 }
          cleanup
  %923 = extractvalue { ptr, i32 } %922, 0
  store ptr %923, ptr %13, align 8
  %924 = extractvalue { ptr, i32 } %922, 1
  store i32 %924, ptr %14, align 4
  br label %968

925:                                              ; preds = %912, %896, %890, %885
  %926 = landingpad { ptr, i32 }
          cleanup
  %927 = extractvalue { ptr, i32 } %926, 0
  store ptr %927, ptr %13, align 8
  %928 = extractvalue { ptr, i32 } %926, 1
  store i32 %928, ptr %14, align 4
  br label %943

929:                                              ; preds = %899
  %930 = landingpad { ptr, i32 }
          cleanup
  %931 = extractvalue { ptr, i32 } %930, 0
  store ptr %931, ptr %13, align 8
  %932 = extractvalue { ptr, i32 } %930, 1
  store i32 %932, ptr %14, align 4
  br label %942

933:                                              ; preds = %907
  %934 = landingpad { ptr, i32 }
          cleanup
  %935 = extractvalue { ptr, i32 } %934, 0
  store ptr %935, ptr %13, align 8
  %936 = extractvalue { ptr, i32 } %934, 1
  store i32 %936, ptr %14, align 4
  br label %941

937:                                              ; preds = %911
  %938 = landingpad { ptr, i32 }
          cleanup
  %939 = extractvalue { ptr, i32 } %938, 0
  store ptr %939, ptr %13, align 8
  %940 = extractvalue { ptr, i32 } %938, 1
  store i32 %940, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %93) #9
  br label %941

941:                                              ; preds = %937, %933
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %94) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %94) #9
  br label %942

942:                                              ; preds = %941, %929
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #9
  br label %943

943:                                              ; preds = %942, %925
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #9
  br label %963

944:                                              ; preds = %920, %878
  %945 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %86) #9
  %946 = getelementptr inbounds %"struct.std::pair", ptr %945, i32 0, i32 1
  %947 = load i64, ptr %89, align 8, !tbaa !22
  %948 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %946, i64 noundef %947)
          to label %949 unwind label %958

949:                                              ; preds = %944
  %950 = load i8, ptr %948, align 1, !tbaa !37
  %951 = sext i8 %950 to i32
  %952 = icmp eq i32 %951, 32
  br i1 %952, label %953, label %962

953:                                              ; preds = %949
  %954 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.68)
          to label %955 unwind label %958

955:                                              ; preds = %953
  %956 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %954, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %957 unwind label %958

957:                                              ; preds = %955
  br label %962

958:                                              ; preds = %955, %953, %944
  %959 = landingpad { ptr, i32 }
          cleanup
  %960 = extractvalue { ptr, i32 } %959, 0
  store ptr %960, ptr %13, align 8
  %961 = extractvalue { ptr, i32 } %959, 1
  store i32 %961, ptr %14, align 4
  br label %963

962:                                              ; preds = %957, %949
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #9
  br label %964

963:                                              ; preds = %958, %943
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #9
  br label %968

964:                                              ; preds = %962, %874, %865
  br label %965

965:                                              ; preds = %964
  %966 = load i64, ptr %89, align 8, !tbaa !22
  %967 = add i64 %966, 1
  store i64 %967, ptr %89, align 8, !tbaa !22
  br label %853, !llvm.loop !38

968:                                              ; preds = %963, %921
  call void @llvm.lifetime.end.p0(i64 8, ptr %89) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %86) #9
  br label %1300

969:                                              ; preds = %859
  br label %970

970:                                              ; preds = %969
  %971 = call ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEppEi(ptr noundef nonnull align 8 dereferenceable(8) %86, i32 noundef 0) #9
  %972 = getelementptr inbounds %"struct.std::_Rb_tree_iterator", ptr %95, i32 0, i32 0
  store ptr %971, ptr %972, align 8
  br label %847, !llvm.loop !39

973:                                              ; preds = %851
  call void @llvm.lifetime.start.p0(i64 8, ptr %96) #9
  store i64 0, ptr %96, align 8, !tbaa !22
  br label %974

974:                                              ; preds = %1000, %973
  %975 = load i64, ptr %96, align 8, !tbaa !22
  %976 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %23) #9
  %977 = icmp ult i64 %975, %976
  br i1 %977, label %979, label %978

978:                                              ; preds = %974
  store i32 11, ptr %88, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %96) #9
  br label %1007

979:                                              ; preds = %974
  %980 = load i64, ptr %96, align 8, !tbaa !22
  %981 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %23, i64 noundef %980) #9
  %982 = getelementptr inbounds %struct.struct_var, ptr %981, i32 0, i32 3
  %983 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %982, i64 noundef 0)
          to label %984 unwind label %1003

984:                                              ; preds = %979
  %985 = load i8, ptr %983, align 1, !tbaa !37
  %986 = load i64, ptr %96, align 8, !tbaa !22
  %987 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %23, i64 noundef %986) #9
  %988 = getelementptr inbounds %struct.struct_var, ptr %987, i32 0, i32 1
  %989 = getelementptr inbounds %struct.position, ptr %988, i32 0, i32 0
  %990 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEixERS9_(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(32) %989)
          to label %991 unwind label %1003

991:                                              ; preds = %984
  %992 = load i64, ptr %96, align 8, !tbaa !22
  %993 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %23, i64 noundef %992) #9
  %994 = getelementptr inbounds %struct.struct_var, ptr %993, i32 0, i32 1
  %995 = getelementptr inbounds %struct.position, ptr %994, i32 0, i32 1
  %996 = load i32, ptr %995, align 8, !tbaa !29
  %997 = sext i32 %996 to i64
  %998 = invoke noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %990, i64 noundef %997)
          to label %999 unwind label %1003

999:                                              ; preds = %991
  store i8 %985, ptr %998, align 1, !tbaa !37
  br label %1000

1000:                                             ; preds = %999
  %1001 = load i64, ptr %96, align 8, !tbaa !22
  %1002 = add i64 %1001, 1
  store i64 %1002, ptr %96, align 8, !tbaa !22
  br label %974, !llvm.loop !40

1003:                                             ; preds = %991, %984, %979
  %1004 = landingpad { ptr, i32 }
          cleanup
  %1005 = extractvalue { ptr, i32 } %1004, 0
  store ptr %1005, ptr %13, align 8
  %1006 = extractvalue { ptr, i32 } %1004, 1
  store i32 %1006, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %96) #9
  br label %1300

1007:                                             ; preds = %978
  %1008 = getelementptr inbounds %struct.parameter, ptr %11, i32 0, i32 2
  %1009 = load i32, ptr %1008, align 4, !tbaa !21
  invoke void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48) %16, ptr noundef nonnull align 8 dereferenceable(24) %38, i32 noundef %1009)
          to label %1010 unwind label %1016

1010:                                             ; preds = %1007
  call void @llvm.lifetime.start.p0(i64 8, ptr %97) #9
  store i64 0, ptr %97, align 8, !tbaa !22
  br label %1011

1011:                                             ; preds = %1251, %1010
  %1012 = load i64, ptr %97, align 8, !tbaa !22
  %1013 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %38) #9
  %1014 = icmp ult i64 %1012, %1013
  br i1 %1014, label %1020, label %1015

1015:                                             ; preds = %1011
  store i32 14, ptr %88, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %97) #9
  br label %1255

1016:                                             ; preds = %1269, %1266, %1264, %1262, %1259, %1257, %1255, %1007
  %1017 = landingpad { ptr, i32 }
          cleanup
  %1018 = extractvalue { ptr, i32 } %1017, 0
  store ptr %1018, ptr %13, align 8
  %1019 = extractvalue { ptr, i32 } %1017, 1
  store i32 %1019, ptr %14, align 4
  br label %1300

1020:                                             ; preds = %1011
  %1021 = load i64, ptr %97, align 8, !tbaa !22
  %1022 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1021) #9
  %1023 = getelementptr inbounds %struct.struct_var, ptr %1022, i32 0, i32 5
  %1024 = load i8, ptr %1023, align 8, !tbaa !34, !range !18, !noundef !19
  %1025 = trunc i8 %1024 to i1
  br i1 %1025, label %1026, label %1250

1026:                                             ; preds = %1020
  %1027 = load i64, ptr %97, align 8, !tbaa !22
  %1028 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1027) #9
  %1029 = getelementptr inbounds %struct.struct_var, ptr %1028, i32 0, i32 0
  %1030 = load i32, ptr %1029, align 8, !tbaa !24
  %1031 = icmp eq i32 %1030, 3
  br i1 %1031, label %1032, label %1175

1032:                                             ; preds = %1026
  %1033 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %98) #9
  %1034 = load i64, ptr %97, align 8, !tbaa !22
  %1035 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1034) #9
  %1036 = getelementptr inbounds %struct.struct_var, ptr %1035, i32 0, i32 1
  %1037 = getelementptr inbounds %struct.position, ptr %1036, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %99, ptr noundef nonnull align 8 dereferenceable(32) %1037)
          to label %1038 unwind label %1117

1038:                                             ; preds = %1032
  %1039 = load i64, ptr %97, align 8, !tbaa !22
  %1040 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1039) #9
  %1041 = getelementptr inbounds %struct.struct_var, ptr %1040, i32 0, i32 1
  %1042 = getelementptr inbounds %struct.position, ptr %1041, i32 0, i32 1
  %1043 = load i32, ptr %1042, align 8, !tbaa !29
  %1044 = load i64, ptr %97, align 8, !tbaa !22
  %1045 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1044) #9
  %1046 = getelementptr inbounds %struct.struct_var, ptr %1045, i32 0, i32 0
  %1047 = load i32, ptr %1046, align 8, !tbaa !24
  %1048 = load i64, ptr %97, align 8, !tbaa !22
  %1049 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1048) #9
  %1050 = getelementptr inbounds %struct.struct_var, ptr %1049, i32 0, i32 2
  %1051 = getelementptr inbounds %struct.position, ptr %1050, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %100, ptr noundef nonnull align 8 dereferenceable(32) %1051)
          to label %1052 unwind label %1121

1052:                                             ; preds = %1038
  %1053 = load i64, ptr %97, align 8, !tbaa !22
  %1054 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1053) #9
  %1055 = getelementptr inbounds %struct.struct_var, ptr %1054, i32 0, i32 2
  %1056 = getelementptr inbounds %struct.position, ptr %1055, i32 0, i32 1
  %1057 = load i32, ptr %1056, align 8, !tbaa !30
  %1058 = load i32, ptr %24, align 4, !tbaa !13
  %1059 = load i64, ptr %97, align 8, !tbaa !22
  %1060 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1059) #9
  %1061 = getelementptr inbounds %struct.struct_var, ptr %1060, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %101, ptr noundef nonnull align 8 dereferenceable(32) %1061)
          to label %1062 unwind label %1125

1062:                                             ; preds = %1052
  %1063 = load i64, ptr %97, align 8, !tbaa !22
  %1064 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1063) #9
  %1065 = getelementptr inbounds %struct.struct_var, ptr %1064, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %102, ptr noundef nonnull align 8 dereferenceable(32) %1065)
          to label %1066 unwind label %1129

1066:                                             ; preds = %1062
  call void @llvm.lifetime.start.p0(i64 1, ptr %104) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %104) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %103, ptr noundef @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %104)
          to label %1067 unwind label %1133

1067:                                             ; preds = %1066
  %1068 = load i64, ptr %97, align 8, !tbaa !22
  %1069 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1068) #9
  %1070 = getelementptr inbounds %struct.struct_var, ptr %1069, i32 0, i32 6
  %1071 = load i32, ptr %1070, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %98, ptr noundef %99, i32 noundef %1043, i32 noundef %1047, ptr noundef %100, i32 noundef %1057, i32 noundef %1058, ptr noundef %101, ptr noundef %102, ptr noundef %103, i32 noundef %1071)
          to label %1072 unwind label %1137

1072:                                             ; preds = %1067
  %1073 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %98) #9
  %1074 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %1033, ptr noundef @.str.17, ptr noundef %1073) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %104) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %104) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %102) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #9
  %1075 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %105) #9
  %1076 = load i64, ptr %97, align 8, !tbaa !22
  %1077 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1076) #9
  %1078 = getelementptr inbounds %struct.struct_var, ptr %1077, i32 0, i32 1
  %1079 = getelementptr inbounds %struct.position, ptr %1078, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %106, ptr noundef nonnull align 8 dereferenceable(32) %1079)
          to label %1080 unwind label %1146

1080:                                             ; preds = %1072
  %1081 = load i64, ptr %97, align 8, !tbaa !22
  %1082 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1081) #9
  %1083 = getelementptr inbounds %struct.struct_var, ptr %1082, i32 0, i32 1
  %1084 = getelementptr inbounds %struct.position, ptr %1083, i32 0, i32 2
  %1085 = load i32, ptr %1084, align 4, !tbaa !32
  %1086 = load i64, ptr %97, align 8, !tbaa !22
  %1087 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1086) #9
  %1088 = getelementptr inbounds %struct.struct_var, ptr %1087, i32 0, i32 0
  %1089 = load i32, ptr %1088, align 8, !tbaa !24
  %1090 = load i64, ptr %97, align 8, !tbaa !22
  %1091 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1090) #9
  %1092 = getelementptr inbounds %struct.struct_var, ptr %1091, i32 0, i32 2
  %1093 = getelementptr inbounds %struct.position, ptr %1092, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %107, ptr noundef nonnull align 8 dereferenceable(32) %1093)
          to label %1094 unwind label %1150

1094:                                             ; preds = %1080
  %1095 = load i64, ptr %97, align 8, !tbaa !22
  %1096 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1095) #9
  %1097 = getelementptr inbounds %struct.struct_var, ptr %1096, i32 0, i32 2
  %1098 = getelementptr inbounds %struct.position, ptr %1097, i32 0, i32 2
  %1099 = load i32, ptr %1098, align 4, !tbaa !33
  %1100 = load i32, ptr %24, align 4, !tbaa !13
  %1101 = load i64, ptr %97, align 8, !tbaa !22
  %1102 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1101) #9
  %1103 = getelementptr inbounds %struct.struct_var, ptr %1102, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %108, ptr noundef nonnull align 8 dereferenceable(32) %1103)
          to label %1104 unwind label %1154

1104:                                             ; preds = %1094
  %1105 = load i64, ptr %97, align 8, !tbaa !22
  %1106 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1105) #9
  %1107 = getelementptr inbounds %struct.struct_var, ptr %1106, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %109, ptr noundef nonnull align 8 dereferenceable(32) %1107)
          to label %1108 unwind label %1158

1108:                                             ; preds = %1104
  call void @llvm.lifetime.start.p0(i64 1, ptr %111) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %111) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %110, ptr noundef @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %111)
          to label %1109 unwind label %1162

1109:                                             ; preds = %1108
  %1110 = load i64, ptr %97, align 8, !tbaa !22
  %1111 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1110) #9
  %1112 = getelementptr inbounds %struct.struct_var, ptr %1111, i32 0, i32 6
  %1113 = load i32, ptr %1112, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %105, ptr noundef %106, i32 noundef %1085, i32 noundef %1089, ptr noundef %107, i32 noundef %1099, i32 noundef %1100, ptr noundef %108, ptr noundef %109, ptr noundef %110, i32 noundef %1113)
          to label %1114 unwind label %1166

1114:                                             ; preds = %1109
  %1115 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %105) #9
  %1116 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %1075, ptr noundef @.str.17, ptr noundef %1115) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %105) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %111) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %111) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %108) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %105) #9
  br label %1247

1117:                                             ; preds = %1032
  %1118 = landingpad { ptr, i32 }
          cleanup
  %1119 = extractvalue { ptr, i32 } %1118, 0
  store ptr %1119, ptr %13, align 8
  %1120 = extractvalue { ptr, i32 } %1118, 1
  store i32 %1120, ptr %14, align 4
  br label %1145

1121:                                             ; preds = %1038
  %1122 = landingpad { ptr, i32 }
          cleanup
  %1123 = extractvalue { ptr, i32 } %1122, 0
  store ptr %1123, ptr %13, align 8
  %1124 = extractvalue { ptr, i32 } %1122, 1
  store i32 %1124, ptr %14, align 4
  br label %1144

1125:                                             ; preds = %1052
  %1126 = landingpad { ptr, i32 }
          cleanup
  %1127 = extractvalue { ptr, i32 } %1126, 0
  store ptr %1127, ptr %13, align 8
  %1128 = extractvalue { ptr, i32 } %1126, 1
  store i32 %1128, ptr %14, align 4
  br label %1143

1129:                                             ; preds = %1062
  %1130 = landingpad { ptr, i32 }
          cleanup
  %1131 = extractvalue { ptr, i32 } %1130, 0
  store ptr %1131, ptr %13, align 8
  %1132 = extractvalue { ptr, i32 } %1130, 1
  store i32 %1132, ptr %14, align 4
  br label %1142

1133:                                             ; preds = %1066
  %1134 = landingpad { ptr, i32 }
          cleanup
  %1135 = extractvalue { ptr, i32 } %1134, 0
  store ptr %1135, ptr %13, align 8
  %1136 = extractvalue { ptr, i32 } %1134, 1
  store i32 %1136, ptr %14, align 4
  br label %1141

1137:                                             ; preds = %1067
  %1138 = landingpad { ptr, i32 }
          cleanup
  %1139 = extractvalue { ptr, i32 } %1138, 0
  store ptr %1139, ptr %13, align 8
  %1140 = extractvalue { ptr, i32 } %1138, 1
  store i32 %1140, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #9
  br label %1141

1141:                                             ; preds = %1137, %1133
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %104) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %104) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %102) #9
  br label %1142

1142:                                             ; preds = %1141, %1129
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #9
  br label %1143

1143:                                             ; preds = %1142, %1125
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #9
  br label %1144

1144:                                             ; preds = %1143, %1121
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #9
  br label %1145

1145:                                             ; preds = %1144, %1117
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #9
  br label %1254

1146:                                             ; preds = %1072
  %1147 = landingpad { ptr, i32 }
          cleanup
  %1148 = extractvalue { ptr, i32 } %1147, 0
  store ptr %1148, ptr %13, align 8
  %1149 = extractvalue { ptr, i32 } %1147, 1
  store i32 %1149, ptr %14, align 4
  br label %1174

1150:                                             ; preds = %1080
  %1151 = landingpad { ptr, i32 }
          cleanup
  %1152 = extractvalue { ptr, i32 } %1151, 0
  store ptr %1152, ptr %13, align 8
  %1153 = extractvalue { ptr, i32 } %1151, 1
  store i32 %1153, ptr %14, align 4
  br label %1173

1154:                                             ; preds = %1094
  %1155 = landingpad { ptr, i32 }
          cleanup
  %1156 = extractvalue { ptr, i32 } %1155, 0
  store ptr %1156, ptr %13, align 8
  %1157 = extractvalue { ptr, i32 } %1155, 1
  store i32 %1157, ptr %14, align 4
  br label %1172

1158:                                             ; preds = %1104
  %1159 = landingpad { ptr, i32 }
          cleanup
  %1160 = extractvalue { ptr, i32 } %1159, 0
  store ptr %1160, ptr %13, align 8
  %1161 = extractvalue { ptr, i32 } %1159, 1
  store i32 %1161, ptr %14, align 4
  br label %1171

1162:                                             ; preds = %1108
  %1163 = landingpad { ptr, i32 }
          cleanup
  %1164 = extractvalue { ptr, i32 } %1163, 0
  store ptr %1164, ptr %13, align 8
  %1165 = extractvalue { ptr, i32 } %1163, 1
  store i32 %1165, ptr %14, align 4
  br label %1170

1166:                                             ; preds = %1109
  %1167 = landingpad { ptr, i32 }
          cleanup
  %1168 = extractvalue { ptr, i32 } %1167, 0
  store ptr %1168, ptr %13, align 8
  %1169 = extractvalue { ptr, i32 } %1167, 1
  store i32 %1169, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #9
  br label %1170

1170:                                             ; preds = %1166, %1162
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %111) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %111) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #9
  br label %1171

1171:                                             ; preds = %1170, %1158
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %108) #9
  br label %1172

1172:                                             ; preds = %1171, %1154
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #9
  br label %1173

1173:                                             ; preds = %1172, %1150
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %106) #9
  br label %1174

1174:                                             ; preds = %1173, %1146
  call void @llvm.lifetime.end.p0(i64 32, ptr %105) #9
  br label %1254

1175:                                             ; preds = %1026
  %1176 = load ptr, ptr %19, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr %112) #9
  %1177 = load i64, ptr %97, align 8, !tbaa !22
  %1178 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1177) #9
  %1179 = getelementptr inbounds %struct.struct_var, ptr %1178, i32 0, i32 1
  %1180 = getelementptr inbounds %struct.position, ptr %1179, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %113, ptr noundef nonnull align 8 dereferenceable(32) %1180)
          to label %1181 unwind label %1218

1181:                                             ; preds = %1175
  %1182 = load i64, ptr %97, align 8, !tbaa !22
  %1183 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1182) #9
  %1184 = getelementptr inbounds %struct.struct_var, ptr %1183, i32 0, i32 1
  %1185 = getelementptr inbounds %struct.position, ptr %1184, i32 0, i32 1
  %1186 = load i32, ptr %1185, align 8, !tbaa !29
  %1187 = load i64, ptr %97, align 8, !tbaa !22
  %1188 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1187) #9
  %1189 = getelementptr inbounds %struct.struct_var, ptr %1188, i32 0, i32 0
  %1190 = load i32, ptr %1189, align 8, !tbaa !24
  %1191 = load i64, ptr %97, align 8, !tbaa !22
  %1192 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1191) #9
  %1193 = getelementptr inbounds %struct.struct_var, ptr %1192, i32 0, i32 1
  %1194 = getelementptr inbounds %struct.position, ptr %1193, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %114, ptr noundef nonnull align 8 dereferenceable(32) %1194)
          to label %1195 unwind label %1222

1195:                                             ; preds = %1181
  %1196 = load i64, ptr %97, align 8, !tbaa !22
  %1197 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1196) #9
  %1198 = getelementptr inbounds %struct.struct_var, ptr %1197, i32 0, i32 1
  %1199 = getelementptr inbounds %struct.position, ptr %1198, i32 0, i32 2
  %1200 = load i32, ptr %1199, align 4, !tbaa !32
  %1201 = load i32, ptr %24, align 4, !tbaa !13
  %1202 = load i64, ptr %97, align 8, !tbaa !22
  %1203 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1202) #9
  %1204 = getelementptr inbounds %struct.struct_var, ptr %1203, i32 0, i32 3
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %115, ptr noundef nonnull align 8 dereferenceable(32) %1204)
          to label %1205 unwind label %1226

1205:                                             ; preds = %1195
  %1206 = load i64, ptr %97, align 8, !tbaa !22
  %1207 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1206) #9
  %1208 = getelementptr inbounds %struct.struct_var, ptr %1207, i32 0, i32 4
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %116, ptr noundef nonnull align 8 dereferenceable(32) %1208)
          to label %1209 unwind label %1230

1209:                                             ; preds = %1205
  call void @llvm.lifetime.start.p0(i64 1, ptr %118) #9
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %118) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %117, ptr noundef @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %118)
          to label %1210 unwind label %1234

1210:                                             ; preds = %1209
  %1211 = load i64, ptr %97, align 8, !tbaa !22
  %1212 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %38, i64 noundef %1211) #9
  %1213 = getelementptr inbounds %struct.struct_var, ptr %1212, i32 0, i32 6
  %1214 = load i32, ptr %1213, align 4, !tbaa !31
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %112, ptr noundef %113, i32 noundef %1186, i32 noundef %1190, ptr noundef %114, i32 noundef %1200, i32 noundef %1201, ptr noundef %115, ptr noundef %116, ptr noundef %117, i32 noundef %1214)
          to label %1215 unwind label %1238

1215:                                             ; preds = %1210
  %1216 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %112) #9
  %1217 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %1176, ptr noundef @.str.17, ptr noundef %1216) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %117) #9
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %118) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %118) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %115) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %113) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #9
  br label %1247

1218:                                             ; preds = %1175
  %1219 = landingpad { ptr, i32 }
          cleanup
  %1220 = extractvalue { ptr, i32 } %1219, 0
  store ptr %1220, ptr %13, align 8
  %1221 = extractvalue { ptr, i32 } %1219, 1
  store i32 %1221, ptr %14, align 4
  br label %1246

1222:                                             ; preds = %1181
  %1223 = landingpad { ptr, i32 }
          cleanup
  %1224 = extractvalue { ptr, i32 } %1223, 0
  store ptr %1224, ptr %13, align 8
  %1225 = extractvalue { ptr, i32 } %1223, 1
  store i32 %1225, ptr %14, align 4
  br label %1245

1226:                                             ; preds = %1195
  %1227 = landingpad { ptr, i32 }
          cleanup
  %1228 = extractvalue { ptr, i32 } %1227, 0
  store ptr %1228, ptr %13, align 8
  %1229 = extractvalue { ptr, i32 } %1227, 1
  store i32 %1229, ptr %14, align 4
  br label %1244

1230:                                             ; preds = %1205
  %1231 = landingpad { ptr, i32 }
          cleanup
  %1232 = extractvalue { ptr, i32 } %1231, 0
  store ptr %1232, ptr %13, align 8
  %1233 = extractvalue { ptr, i32 } %1231, 1
  store i32 %1233, ptr %14, align 4
  br label %1243

1234:                                             ; preds = %1209
  %1235 = landingpad { ptr, i32 }
          cleanup
  %1236 = extractvalue { ptr, i32 } %1235, 0
  store ptr %1236, ptr %13, align 8
  %1237 = extractvalue { ptr, i32 } %1235, 1
  store i32 %1237, ptr %14, align 4
  br label %1242

1238:                                             ; preds = %1210
  %1239 = landingpad { ptr, i32 }
          cleanup
  %1240 = extractvalue { ptr, i32 } %1239, 0
  store ptr %1240, ptr %13, align 8
  %1241 = extractvalue { ptr, i32 } %1239, 1
  store i32 %1241, ptr %14, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %117) #9
  br label %1242

1242:                                             ; preds = %1238, %1234
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %118) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %118) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %116) #9
  br label %1243

1243:                                             ; preds = %1242, %1230
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %115) #9
  br label %1244

1244:                                             ; preds = %1243, %1226
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #9
  br label %1245

1245:                                             ; preds = %1244, %1222
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %113) #9
  br label %1246

1246:                                             ; preds = %1245, %1218
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #9
  br label %1254

1247:                                             ; preds = %1215, %1114
  %1248 = load i32, ptr %24, align 4, !tbaa !13
  %1249 = add nsw i32 %1248, 1
  store i32 %1249, ptr %24, align 4, !tbaa !13
  br label %1250

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

1251:                                             ; preds = %1250
  %1252 = load i64, ptr %97, align 8, !tbaa !22
  %1253 = add i64 %1252, 1
  store i64 %1253, ptr %97, align 8, !tbaa !22
  br label %1011, !llvm.loop !41

1254:                                             ; preds = %1246, %1174, %1145
  call void @llvm.lifetime.end.p0(i64 8, ptr %97) #9
  br label %1300

1255:                                             ; preds = %1015
  %1256 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.74)
          to label %1257 unwind label %1016

1257:                                             ; preds = %1255
  %1258 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1256, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1259 unwind label %1016

1259:                                             ; preds = %1257
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1260 unwind label %1016

1260:                                             ; preds = %1259
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %120, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %1261 unwind label %1273

1261:                                             ; preds = %1260
  invoke void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef %119, ptr noundef %120, i1 noundef zeroext true)
          to label %1262 unwind label %1277

1262:                                             ; preds = %1261
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %120) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #9
  %1263 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.75)
          to label %1264 unwind label %1016

1264:                                             ; preds = %1262
  %1265 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1263, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %1266 unwind label %1016

1266:                                             ; preds = %1264
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %121, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1267 unwind label %1016

1267:                                             ; preds = %1266
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %122, ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %1268 unwind label %1282

1268:                                             ; preds = %1267
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef %121, ptr noundef %122)
          to label %1269 unwind label %1286

1269:                                             ; preds = %1268
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #9
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %123, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1270 unwind label %1016

1270:                                             ; preds = %1269
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %124, ptr noundef nonnull align 8 dereferenceable(24) %38)
          to label %1271 unwind label %1291

1271:                                             ; preds = %1270
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef %123, ptr noundef %124)
          to label %1272 unwind label %1295

1272:                                             ; preds = %1271
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #9
  br label %1321

1273:                                             ; preds = %1260
  %1274 = landingpad { ptr, i32 }
          cleanup
  %1275 = extractvalue { ptr, i32 } %1274, 0
  store ptr %1275, ptr %13, align 8
  %1276 = extractvalue { ptr, i32 } %1274, 1
  store i32 %1276, ptr %14, align 4
  br label %1281

1277:                                             ; preds = %1261
  %1278 = landingpad { ptr, i32 }
          cleanup
  %1279 = extractvalue { ptr, i32 } %1278, 0
  store ptr %1279, ptr %13, align 8
  %1280 = extractvalue { ptr, i32 } %1278, 1
  store i32 %1280, ptr %14, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %120) #9
  br label %1281

1281:                                             ; preds = %1277, %1273
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #9
  br label %1300

1282:                                             ; preds = %1267
  %1283 = landingpad { ptr, i32 }
          cleanup
  %1284 = extractvalue { ptr, i32 } %1283, 0
  store ptr %1284, ptr %13, align 8
  %1285 = extractvalue { ptr, i32 } %1283, 1
  store i32 %1285, ptr %14, align 4
  br label %1290

1286:                                             ; preds = %1268
  %1287 = landingpad { ptr, i32 }
          cleanup
  %1288 = extractvalue { ptr, i32 } %1287, 0
  store ptr %1288, ptr %13, align 8
  %1289 = extractvalue { ptr, i32 } %1287, 1
  store i32 %1289, ptr %14, align 4
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %122) #9
  br label %1290

1290:                                             ; preds = %1286, %1282
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #9
  br label %1300

1291:                                             ; preds = %1270
  %1292 = landingpad { ptr, i32 }
          cleanup
  %1293 = extractvalue { ptr, i32 } %1292, 0
  store ptr %1293, ptr %13, align 8
  %1294 = extractvalue { ptr, i32 } %1292, 1
  store i32 %1294, ptr %14, align 4
  br label %1299

1295:                                             ; preds = %1271
  %1296 = landingpad { ptr, i32 }
          cleanup
  %1297 = extractvalue { ptr, i32 } %1296, 0
  store ptr %1297, ptr %13, align 8
  %1298 = extractvalue { ptr, i32 } %1296, 1
  store i32 %1298, ptr %14, align 4
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %124) #9
  br label %1299

1299:                                             ; preds = %1295, %1291
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #9
  br label %1300

1300:                                             ; preds = %1299, %1290, %1281, %1254, %1016, %1003, %968, %843, %371
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %38) #9
  br label %1322

1301:                                             ; preds = %310
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %125, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %1302 unwind label %273

1302:                                             ; preds = %1301
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %126, ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %1303 unwind label %1308

1303:                                             ; preds = %1302
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef %125, ptr noundef %126)
          to label %1304 unwind label %1312

1304:                                             ; preds = %1303
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #9
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %127, ptr noundef nonnull align 8 dereferenceable(24) %22)
          to label %1305 unwind label %273

1305:                                             ; preds = %1304
  %1306 = load i32, ptr %24, align 4, !tbaa !13
  invoke void @_Z13print_vcf_svsRP8_IO_FILESt6vectorI10struct_varSaIS3_EEi(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef %127, i32 noundef %1306)
          to label %1307 unwind label %1317

1307:                                             ; preds = %1305
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %127) #9
  br label %1321

1308:                                             ; preds = %1302
  %1309 = landingpad { ptr, i32 }
          cleanup
  %1310 = extractvalue { ptr, i32 } %1309, 0
  store ptr %1310, ptr %13, align 8
  %1311 = extractvalue { ptr, i32 } %1309, 1
  store i32 %1311, ptr %14, align 4
  br label %1316

1312:                                             ; preds = %1303
  %1313 = landingpad { ptr, i32 }
          cleanup
  %1314 = extractvalue { ptr, i32 } %1313, 0
  store ptr %1314, ptr %13, align 8
  %1315 = extractvalue { ptr, i32 } %1313, 1
  store i32 %1315, ptr %14, align 4
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %126) #9
  br label %1316

1316:                                             ; preds = %1312, %1308
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #9
  br label %1322

1317:                                             ; preds = %1305
  %1318 = landingpad { ptr, i32 }
          cleanup
  %1319 = extractvalue { ptr, i32 } %1318, 0
  store ptr %1319, ptr %13, align 8
  %1320 = extractvalue { ptr, i32 } %1318, 1
  store i32 %1320, ptr %14, align 4
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %127) #9
  br label %1322

1321:                                             ; preds = %1307, %1272
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %22) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #9
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #9
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #9
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #9
  call void @llvm.lifetime.end.p0(i64 96, ptr %11) #9
  ret void

1322:                                             ; preds = %1317, %1316, %1300, %347, %338, %298, %273, %265, %255, %254
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %23) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %23) #9
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %22) #9
  call void @llvm.lifetime.end.p0(i64 24, ptr %22) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #9
  br label %1323

1323:                                             ; preds = %1322, %237, %204
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #9
  br label %1324

1324:                                             ; preds = %1323, %200
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #9
  br label %1325

1325:                                             ; preds = %1324, %196
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #9
  br label %1326

1326:                                             ; preds = %1325, %161
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #9
  br label %1327

1327:                                             ; preds = %1326, %157
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #9
  br label %1328

1328:                                             ; preds = %1327, %153
  call void @llvm.lifetime.end.p0(i64 96, ptr %11) #9
  br label %1329

1329:                                             ; preds = %1328
  %1330 = load ptr, ptr %13, align 8
  %1331 = load i32, ptr %14, align 4
  %1332 = insertvalue { ptr, i32 } poison, ptr %1330, 0
  %1333 = insertvalue { ptr, i32 } %1332, i32 %1331, 1
  resume { ptr, i32 } %1333
}

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEaSEOSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZN10struct_varaSERKS_(ptr noundef nonnull align 8 dereferenceable(160), ptr noundef nonnull align 8 dereferenceable(160)) #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #3 align 2

attributes #0 = { 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 #1 = { 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 #2 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #3 = { 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 #4 = { noreturn nounwind "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 = { nounwind willreturn memory(read) "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 = { "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 #7 = { nounwind "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 #8 = { 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 #9 = { nounwind }
attributes #10 = { noreturn nounwind }
attributes #11 = { nounwind willreturn memory(read) }

!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 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"float", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"bool", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"int", !7, i64 0}
!15 = !{!16, !14, i64 36}
!16 = !{!"_ZTS9parameter", !14, i64 0, !14, i64 4, !14, i64 8, !14, i64 12, !14, i64 16, !14, i64 20, !14, i64 24, !14, i64 28, !14, i64 32, !14, i64 36, !14, i64 40, !14, i64 44, !14, i64 48, !14, i64 52, !14, i64 56, !14, i64 60, !14, i64 64, !14, i64 68, !14, i64 72, !14, i64 76, !14, i64 80, !14, i64 84, !12, i64 88, !10, i64 92}
!17 = !{!16, !10, i64 92}
!18 = !{i8 0, i8 2}
!19 = !{}
!20 = !{!16, !12, i64 88}
!21 = !{!16, !14, i64 8}
!22 = !{!23, !23, i64 0}
!23 = !{!"long", !7, i64 0}
!24 = !{!25, !14, i64 0}
!25 = !{!"_ZTS10struct_var", !14, i64 0, !26, i64 8, !26, i64 48, !27, i64 88, !27, i64 120, !12, i64 152, !14, i64 156}
!26 = !{!"_ZTS8position", !27, i64 0, !14, i64 32, !14, i64 36}
!27 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !28, i64 0, !23, i64 8, !7, i64 16}
!28 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!29 = !{!25, !14, i64 40}
!30 = !{!25, !14, i64 80}
!31 = !{!25, !14, i64 156}
!32 = !{!25, !14, i64 44}
!33 = !{!25, !14, i64 84}
!34 = !{!25, !12, i64 152}
!35 = distinct !{!35, !36}
!36 = !{!"llvm.loop.mustprogress"}
!37 = !{!7, !7, i64 0}
!38 = distinct !{!38, !36}
!39 = distinct !{!39, !36}
!40 = distinct !{!40, !36}
!41 = distinct !{!41, !36}


; 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_ostream" = type { ptr, %"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 }
%struct.parameter = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, float }
%"class.std::map" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl" }
%"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl" = type { %"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl_data" }
%"struct.std::_Vector_base<struct_var, std::allocator<struct_var>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"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] }
%"class.std::allocator" = type { i8 }
%"struct.std::_Rb_tree_iterator" = type { ptr }

@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@_ZSt4cerr = external global %"class.std::basic_ostream", align 8
@.str.12 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [50 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [64 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.68 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [62 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [48 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [4 x i8], align 1

; 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 #0

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_(ptr noundef nonnull align 8 dereferenceable(8)) #0

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EESB_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEppEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z11parse_paramNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind noalias writable sret(%struct.parameter) align 4, ptr noundef) local_unnamed_addr #1

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

declare i32 @__gxx_personality_v0(...)

; Function Attrs: noreturn nounwind
declare void @exit(i32 noundef) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind noalias writable sret(%"class.std::map") align 8, ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEixERS9_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nofree nounwind willreturn memory(read)
declare i32 @toupper(i32 noundef) local_unnamed_addr #5

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8), i64 noundef) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) local_unnamed_addr #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #1 align 2

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

; Function Attrs: nounwind
declare i32 @rand() local_unnamed_addr #7

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z22generate_mutations_refNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(24), i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind
declare void @srand(i32 noundef) local_unnamed_addr #7

; Function Attrs: nounwind
declare i64 @time(ptr noundef) local_unnamed_addr #7

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z19apply_mutations_refRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EE(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef, ptr noundef, i1 noundef zeroext) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #1 align 2

; Function Attrs: nofree nounwind
declare noalias noundef ptr @fopen(ptr nocapture noundef readonly, ptr nocapture noundef readonly) local_unnamed_addr #8

; Function Attrs: nofree nounwind
declare noundef i32 @fprintf(ptr nocapture noundef, ptr nocapture noundef readonly, ...) local_unnamed_addr #8

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local noundef signext i8 @_Z8mut_charc(i8 noundef signext) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z17print_vcf_header2RP8_IO_FILESt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEE(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z13print_snp_vcfNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiccRP8_IO_FILEiS4_(ptr noundef, i32 noundef, i8 noundef signext, i8 noundef signext, ptr noundef nonnull align 8 dereferenceable(8), i32 noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef, i32 noundef, i32 noundef, ptr noundef, i32 noundef, i32 noundef, ptr noundef, ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z13print_vcf_svsRP8_IO_FILESt6vectorI10struct_varSaIS3_EEi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
declare dso_local void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind noalias writable sret(%"class.std::vector") align 8, ptr noundef nonnull align 8 dereferenceable(48), float noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 4 dereferenceable(4), i32 noundef, float noundef) local_unnamed_addr #1

; Function Attrs: mustprogress uwtable
define dso_local void @_Z11simulate_SVNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES4_fbS4_(ptr noundef %0, ptr noundef %1, float noundef %2, i1 noundef zeroext %3, ptr noundef %4) local_unnamed_addr #1 personality ptr @__gxx_personality_v0 {
  %6 = alloca %struct.parameter, align 4
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca %"class.std::map", align 8
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca ptr, align 8
  %12 = alloca %"class.std::map", align 8
  %13 = alloca %"class.std::vector", align 8
  %14 = alloca %"class.std::vector", align 8
  %15 = alloca i32, align 4
  %16 = alloca %"class.std::vector", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::map", align 8
  %19 = alloca %"class.std::vector", align 8
  %20 = alloca %"class.std::vector", align 8
  %21 = alloca %"class.std::vector", align 8
  %22 = alloca %"class.std::__cxx11::basic_string", align 8
  %23 = alloca %"class.std::map", align 8
  %24 = alloca %"class.std::vector", align 8
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::map", align 8
  %27 = alloca %"class.std::map", align 8
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::vector", align 8
  %30 = alloca %"class.std::vector", align 8
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::map", 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::allocator", align 1
  %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::allocator", align 1
  %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
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::allocator", align 1
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca %"class.std::__cxx11::basic_string", align 8
  %58 = alloca %"class.std::__cxx11::basic_string", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::allocator", align 1
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::__cxx11::basic_string", align 8
  %65 = alloca %"class.std::__cxx11::basic_string", align 8
  %66 = alloca %"class.std::__cxx11::basic_string", align 8
  %67 = alloca %"class.std::allocator", align 1
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::__cxx11::basic_string", align 8
  %72 = alloca %"class.std::__cxx11::basic_string", align 8
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::allocator", align 1
  %75 = alloca %"struct.std::_Rb_tree_iterator", align 8
  %76 = alloca %"struct.std::_Rb_tree_iterator", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca %"class.std::__cxx11::basic_string", align 8
  %79 = alloca %"class.std::allocator", align 1
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca %"class.std::__cxx11::basic_string", align 8
  %86 = alloca %"class.std::allocator", align 1
  %87 = alloca %"class.std::__cxx11::basic_string", align 8
  %88 = alloca %"class.std::__cxx11::basic_string", align 8
  %89 = alloca %"class.std::__cxx11::basic_string", align 8
  %90 = alloca %"class.std::__cxx11::basic_string", align 8
  %91 = alloca %"class.std::__cxx11::basic_string", align 8
  %92 = alloca %"class.std::__cxx11::basic_string", align 8
  %93 = alloca %"class.std::allocator", align 1
  %94 = alloca %"class.std::__cxx11::basic_string", align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"class.std::__cxx11::basic_string", align 8
  %97 = alloca %"class.std::__cxx11::basic_string", align 8
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca %"class.std::__cxx11::basic_string", align 8
  %100 = alloca %"class.std::allocator", align 1
  %101 = alloca %"class.std::__cxx11::basic_string", align 8
  %102 = alloca %"class.std::map", align 8
  %103 = alloca %"class.std::__cxx11::basic_string", align 8
  %104 = alloca %"class.std::vector", align 8
  %105 = alloca %"class.std::__cxx11::basic_string", align 8
  %106 = alloca %"class.std::vector", align 8
  %107 = alloca %"class.std::__cxx11::basic_string", align 8
  %108 = alloca %"class.std::vector", align 8
  %109 = alloca %"class.std::vector", align 8
  %110 = tail call i64 @time(ptr noundef null) #10
  %111 = trunc i64 %110 to i32
  tail call void @srand(i32 noundef %111) #10
  call void @llvm.lifetime.start.p0(i64 96, ptr nonnull %6) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull align 8 dereferenceable(32) %1)
  invoke void @_Z11parse_paramNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind nonnull writable sret(%struct.parameter) align 4 %6, ptr noundef nonnull %7)
          to label %112 unwind label %133

112:                                              ; preds = %5
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #10
  %113 = getelementptr inbounds i8, ptr %6, i64 4
  %114 = getelementptr inbounds i8, ptr %6, i64 20
  %115 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %113, ptr noundef nonnull align 4 dereferenceable(4) %114)
  %116 = getelementptr inbounds i8, ptr %6, i64 44
  %117 = getelementptr inbounds i8, ptr %6, i64 32
  %118 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %116, ptr noundef nonnull align 4 dereferenceable(4) %117)
  %119 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %115, ptr noundef nonnull align 4 dereferenceable(4) %118)
  %120 = load i32, ptr %119, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %8) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull align 8 dereferenceable(32) %0)
  invoke void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind nonnull writable sret(%"class.std::map") align 8 %8, ptr noundef nonnull %9, i32 noundef %120)
          to label %121 unwind label %135

121:                                              ; preds = %112
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #10
  %122 = getelementptr inbounds i8, ptr %6, i64 36
  %123 = load i32, ptr %122, align 4, !tbaa !9
  %124 = icmp sgt i32 %123, 0
  br i1 %124, label %125, label %139

125:                                              ; preds = %121
  %126 = call noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  %127 = icmp ult i64 %126, 2
  br i1 %127, label %128, label %139

128:                                              ; preds = %125
  %129 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef nonnull @.str.69)
          to label %130 unwind label %137

130:                                              ; preds = %128
  %131 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %129, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %132 unwind label %137

132:                                              ; preds = %130
  call void @exit(i32 noundef 1) #11
  unreachable

133:                                              ; preds = %5
  %134 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #10
  br label %901

135:                                              ; preds = %112
  %136 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #10
  br label %900

137:                                              ; preds = %147, %145, %143, %141, %130, %128
  %138 = landingpad { ptr, i32 }
          cleanup
  br label %899

139:                                              ; preds = %125, %121
  %140 = call noundef zeroext i1 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  br i1 %140, label %141, label %150

141:                                              ; preds = %139
  %142 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef nonnull @.str.70)
          to label %143 unwind label %137

143:                                              ; preds = %141
  %144 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %142, i32 noundef %120)
          to label %145 unwind label %137

145:                                              ; preds = %143
  %146 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %144, ptr noundef nonnull @.str.71)
          to label %147 unwind label %137

147:                                              ; preds = %145
  %148 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %146, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %149 unwind label %137

149:                                              ; preds = %147
  call void @exit(i32 noundef 1) #11
  unreachable

150:                                              ; preds = %139
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %10) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %151 unwind label %167

151:                                              ; preds = %150
  %152 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEpLEPKc(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull @.str.72)
          to label %153 unwind label %169

153:                                              ; preds = %151
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %11) #10
  %154 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %10) #10
  %155 = call noalias ptr @fopen(ptr noundef %154, ptr noundef nonnull @.str.12)
  store ptr %155, ptr %11, align 8, !tbaa !13
  %156 = icmp eq ptr %155, null
  br i1 %156, label %157, label %173

157:                                              ; preds = %153
  %158 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.14)
          to label %159 unwind label %171

159:                                              ; preds = %157
  %160 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %10) #10
  %161 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %158, ptr noundef %160)
          to label %162 unwind label %171

162:                                              ; preds = %159
  %163 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %161, ptr noundef nonnull @.str.15)
          to label %164 unwind label %171

164:                                              ; preds = %162
  %165 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %163, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %166 unwind label %171

166:                                              ; preds = %164
  call void @exit(i32 noundef 0) #11
  unreachable

167:                                              ; preds = %150
  %168 = landingpad { ptr, i32 }
          cleanup
  br label %898

169:                                              ; preds = %151
  %170 = landingpad { ptr, i32 }
          cleanup
  br label %897

171:                                              ; preds = %180, %177, %175, %173, %164, %162, %159, %157
  %172 = landingpad { ptr, i32 }
          cleanup
  br label %896

173:                                              ; preds = %153
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %12, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %174 unwind label %171

174:                                              ; preds = %173
  invoke void @_Z17print_vcf_header2RP8_IO_FILESt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES8_St4lessIS8_ESaISt4pairIKS8_S8_EEE(ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull %12)
          to label %175 unwind label %198

175:                                              ; preds = %174
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %12) #10
  %176 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.73)
          to label %177 unwind label %171

177:                                              ; preds = %175
  %178 = call noundef i64 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  %179 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8) %176, i64 noundef %178)
          to label %180 unwind label %171

180:                                              ; preds = %177
  %181 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %179, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %182 unwind label %171

182:                                              ; preds = %180
  %183 = getelementptr inbounds i8, ptr %6, i64 92
  %184 = load float, ptr %183, align 4, !tbaa !15
  %185 = fmul float %184, %2
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %13) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #10
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %14) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #10
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %15) #10
  store i32 0, ptr %15, align 4, !tbaa !5
  br i1 %3, label %186, label %221

186:                                              ; preds = %182
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %16) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %187 unwind label %200

187:                                              ; preds = %186
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %18, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %188 unwind label %202

188:                                              ; preds = %187
  invoke void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %16, ptr noundef nonnull %17, ptr noundef nonnull %18)
          to label %189 unwind label %204

189:                                              ; preds = %188
  %190 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %13, ptr noundef nonnull align 8 dereferenceable(24) %16) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %16) #10
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %18) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %16) #10
  %191 = getelementptr inbounds i8, ptr %6, i64 88
  %192 = load i8, ptr %191, align 4, !tbaa !16, !range !17, !noundef !18
  %193 = trunc nuw i8 %192 to i1
  br i1 %193, label %210, label %194

194:                                              ; preds = %189
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %19) #10
  %195 = fmul float %185, 2.000000e+00
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %8, float noundef %195, ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull align 4 dereferenceable(4) %15, i32 noundef -1, float noundef -1.000000e+00)
          to label %196 unwind label %208

196:                                              ; preds = %194
  %197 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %14, ptr noundef nonnull align 8 dereferenceable(24) %19) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %19) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #10
  br label %216

198:                                              ; preds = %174
  %199 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %12) #10
  br label %896

200:                                              ; preds = %186
  %201 = landingpad { ptr, i32 }
          cleanup
  br label %207

202:                                              ; preds = %187
  %203 = landingpad { ptr, i32 }
          cleanup
  br label %206

204:                                              ; preds = %188
  %205 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %18) #10
  br label %206

206:                                              ; preds = %204, %202
  %.pn188 = phi { ptr, i32 } [ %205, %204 ], [ %203, %202 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  br label %207

207:                                              ; preds = %206, %200
  %.pn188.pn = phi { ptr, i32 } [ %.pn188, %206 ], [ %201, %200 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %16) #10
  br label %895

208:                                              ; preds = %194
  %209 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %19) #10
  br label %895

210:                                              ; preds = %189
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %20) #10
  %211 = load float, ptr %183, align 4, !tbaa !15
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %8, float noundef %2, ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull align 4 dereferenceable(4) %15, i32 noundef 1, float noundef %211)
          to label %212 unwind label %214

212:                                              ; preds = %210
  %213 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %14, ptr noundef nonnull align 8 dereferenceable(24) %20) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #10
  br label %216

214:                                              ; preds = %210
  %215 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %20) #10
  br label %895

216:                                              ; preds = %212, %196
  %217 = getelementptr inbounds i8, ptr %6, i64 8
  %218 = load i32, ptr %217, align 4, !tbaa !19
  invoke void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48) %8, ptr noundef nonnull align 8 dereferenceable(24) %13, i32 noundef %218)
          to label %236 unwind label %219

219:                                              ; preds = %883, %880, %261, %259, %253, %251, %245, %243, %240, %238, %236, %226, %224, %216
  %220 = landingpad { ptr, i32 }
          cleanup
  br label %895

221:                                              ; preds = %182
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %21) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %22, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %222 unwind label %228

222:                                              ; preds = %221
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %23, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %223 unwind label %230

223:                                              ; preds = %222
  invoke void @_Z22generate_mutations_refNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %21, ptr noundef nonnull %22, ptr noundef nonnull %23)
          to label %224 unwind label %232

224:                                              ; preds = %223
  %225 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %13, ptr noundef nonnull align 8 dereferenceable(24) %21) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #10
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %23) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %21) #10
  invoke void @_Z19apply_mutations_refRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EE(ptr noundef nonnull align 8 dereferenceable(48) %8, ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %226 unwind label %219

226:                                              ; preds = %224
  invoke void @_Z7mut_snvRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEfRP8_IO_FILERiif(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %8, float noundef %2, ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull align 4 dereferenceable(4) %15, i32 noundef -1, float noundef -1.000000e+00)
          to label %227 unwind label %219

227:                                              ; preds = %226
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #10
  br label %236

228:                                              ; preds = %221
  %229 = landingpad { ptr, i32 }
          cleanup
  br label %235

230:                                              ; preds = %222
  %231 = landingpad { ptr, i32 }
          cleanup
  br label %234

232:                                              ; preds = %223
  %233 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %23) #10
  br label %234

234:                                              ; preds = %232, %230
  %.pn = phi { ptr, i32 } [ %233, %232 ], [ %231, %230 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %22) #10
  br label %235

235:                                              ; preds = %234, %228
  %.pn.pn = phi { ptr, i32 } [ %.pn, %234 ], [ %229, %228 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %21) #10
  br label %895

236:                                              ; preds = %216, %227
  %237 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.74)
          to label %238 unwind label %219

238:                                              ; preds = %236
  %239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %237, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %240 unwind label %219

240:                                              ; preds = %238
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %241 unwind label %219

241:                                              ; preds = %240
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %26, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %242 unwind label %264

242:                                              ; preds = %241
  invoke void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef nonnull %25, ptr noundef nonnull %26, i1 noundef zeroext false)
          to label %243 unwind label %266

243:                                              ; preds = %242
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %26) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #10
  %244 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.75)
          to label %245 unwind label %219

245:                                              ; preds = %243
  %246 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %244, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %247 unwind label %219

247:                                              ; preds = %245
  %248 = getelementptr inbounds i8, ptr %6, i64 88
  %249 = load i8, ptr %248, align 4, !tbaa !16, !range !17, !noundef !18
  %250 = trunc nuw i8 %249 to i1
  br i1 %250, label %251, label %880

251:                                              ; preds = %247
  %252 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.76)
          to label %253 unwind label %219

253:                                              ; preds = %251
  %254 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %252, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %255 unwind label %219

255:                                              ; preds = %253
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %27) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull align 8 dereferenceable(32) %0)
          to label %256 unwind label %269

256:                                              ; preds = %255
  invoke void @_Z10read_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind nonnull writable sret(%"class.std::map") align 8 %27, ptr noundef nonnull %28, i32 noundef %120)
          to label %257 unwind label %271

257:                                              ; preds = %256
  %258 = call noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEaSEOSC_(ptr noundef nonnull align 8 dereferenceable(48) %8, ptr noundef nonnull align 8 dereferenceable(48) %27) #10
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %27) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #10
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %27) #10
  br i1 %3, label %274, label %259

259:                                              ; preds = %257
  %260 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cerr, ptr noundef nonnull @.str.77)
          to label %261 unwind label %219

261:                                              ; preds = %259
  %262 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %260, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %263 unwind label %219

263:                                              ; preds = %261
  call void @exit(i32 noundef 0) #11
  unreachable

264:                                              ; preds = %241
  %265 = landingpad { ptr, i32 }
          cleanup
  br label %268

266:                                              ; preds = %242
  %267 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %26) #10
  br label %268

268:                                              ; preds = %266, %264
  %.pn191 = phi { ptr, i32 } [ %267, %266 ], [ %265, %264 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #10
  br label %895

269:                                              ; preds = %255
  %270 = landingpad { ptr, i32 }
          cleanup
  br label %273

271:                                              ; preds = %256
  %272 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #10
  br label %273

273:                                              ; preds = %271, %269
  %.pn195 = phi { ptr, i32 } [ %272, %271 ], [ %270, %269 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %27) #10
  br label %895

274:                                              ; preds = %257
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %29) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %30) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %275 unwind label %283

275:                                              ; preds = %274
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %32, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %276 unwind label %285

276:                                              ; preds = %275
  invoke void @_Z18generate_mutationsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector") align 8 %30, ptr noundef nonnull %31, ptr noundef nonnull %32)
          to label %277 unwind label %287

277:                                              ; preds = %276
  %278 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %29, ptr noundef nonnull align 8 dereferenceable(24) %30) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %30) #10
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %32) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %30) #10
  %279 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  %.not292 = icmp eq i64 %279, 0
  br i1 %.not292, label %._crit_edge, label %.lr.ph

._crit_edge:                                      ; preds = %593, %277
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %75) #10
  %280 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  store ptr %280, ptr %75, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %76) #10
  %281 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  store ptr %281, ptr %76, align 8
  %282 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EESB_(ptr noundef nonnull align 8 dereferenceable(8) %75, ptr noundef nonnull align 8 dereferenceable(8) %76) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %76) #10
  br i1 %282, label %.preheader278, label %._crit_edge283

283:                                              ; preds = %274
  %284 = landingpad { ptr, i32 }
          cleanup
  br label %290

285:                                              ; preds = %275
  %286 = landingpad { ptr, i32 }
          cleanup
  br label %289

287:                                              ; preds = %276
  %288 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %32) #10
  br label %289

289:                                              ; preds = %287, %285
  %.pn197 = phi { ptr, i32 } [ %288, %287 ], [ %286, %285 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #10
  br label %290

290:                                              ; preds = %289, %283
  %.pn197.pn = phi { ptr, i32 } [ %.pn197, %289 ], [ %284, %283 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %30) #10
  br label %879

.lr.ph:                                           ; preds = %277, %593
  %.0184279 = phi i64 [ %594, %593 ], [ 0, %277 ]
  %291 = call i32 @rand() #10
  %292 = sitofp i32 %291 to float
  %293 = fmul float %292, 0x3E00000000000000
  %294 = load float, ptr %183, align 4, !tbaa !15
  %295 = fcmp olt float %293, %294
  %296 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  br i1 %295, label %297, label %448

297:                                              ; preds = %.lr.ph
  %298 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0184279) #10
  %299 = invoke noundef nonnull align 8 dereferenceable(160) ptr @_ZN10struct_varaSERKS_(ptr noundef nonnull align 8 dereferenceable(160) %298, ptr noundef nonnull align 8 dereferenceable(160) %296)
          to label %300 unwind label %363

300:                                              ; preds = %297
  %301 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %302 = load i32, ptr %301, align 8, !tbaa !20
  %303 = icmp eq i32 %302, 3
  %304 = load ptr, ptr %11, align 8, !tbaa !13
  br i1 %303, label %305, label %399

305:                                              ; preds = %300
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #10
  %306 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %307 = getelementptr inbounds i8, ptr %306, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull align 8 dereferenceable(32) %307)
          to label %308 unwind label %365

308:                                              ; preds = %305
  %309 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %310 = getelementptr inbounds i8, ptr %309, i64 40
  %311 = load i32, ptr %310, align 8, !tbaa !26
  %312 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %313 = load i32, ptr %312, align 8, !tbaa !20
  %314 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %315 = getelementptr inbounds i8, ptr %314, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull align 8 dereferenceable(32) %315)
          to label %316 unwind label %367

316:                                              ; preds = %308
  %317 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %318 = getelementptr inbounds i8, ptr %317, i64 80
  %319 = load i32, ptr %318, align 8, !tbaa !27
  %320 = load i32, ptr %15, align 4, !tbaa !5
  %321 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %322 = getelementptr inbounds i8, ptr %321, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %36, ptr noundef nonnull align 8 dereferenceable(32) %322)
          to label %323 unwind label %369

323:                                              ; preds = %316
  %324 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %325 = getelementptr inbounds i8, ptr %324, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef nonnull align 8 dereferenceable(32) %325)
          to label %326 unwind label %371

326:                                              ; preds = %323
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %39) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %39) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %38, ptr noundef nonnull @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %39)
          to label %327 unwind label %373

327:                                              ; preds = %326
  %328 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %329 = getelementptr inbounds i8, ptr %328, i64 156
  %330 = load i32, ptr %329, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull %34, i32 noundef %311, i32 noundef %313, ptr noundef nonnull %35, i32 noundef %319, i32 noundef %320, ptr noundef nonnull %36, ptr noundef nonnull %37, ptr noundef nonnull %38, i32 noundef %330)
          to label %331 unwind label %375

331:                                              ; preds = %327
  %332 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %33) #10
  %333 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %304, ptr noundef nonnull @.str.17, ptr noundef %332) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %39) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #10
  %334 = load ptr, ptr %11, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %40) #10
  %335 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %336 = getelementptr inbounds i8, ptr %335, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull align 8 dereferenceable(32) %336)
          to label %337 unwind label %382

337:                                              ; preds = %331
  %338 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %339 = getelementptr inbounds i8, ptr %338, i64 44
  %340 = load i32, ptr %339, align 4, !tbaa !29
  %341 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %342 = load i32, ptr %341, align 8, !tbaa !20
  %343 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %344 = getelementptr inbounds i8, ptr %343, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef nonnull align 8 dereferenceable(32) %344)
          to label %345 unwind label %384

345:                                              ; preds = %337
  %346 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %347 = getelementptr inbounds i8, ptr %346, i64 84
  %348 = load i32, ptr %347, align 4, !tbaa !30
  %349 = load i32, ptr %15, align 4, !tbaa !5
  %350 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %351 = getelementptr inbounds i8, ptr %350, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %43, ptr noundef nonnull align 8 dereferenceable(32) %351)
          to label %352 unwind label %386

352:                                              ; preds = %345
  %353 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %354 = getelementptr inbounds i8, ptr %353, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef nonnull align 8 dereferenceable(32) %354)
          to label %355 unwind label %388

355:                                              ; preds = %352
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %46) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %46)
          to label %356 unwind label %390

356:                                              ; preds = %355
  %357 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %358 = getelementptr inbounds i8, ptr %357, i64 156
  %359 = load i32, ptr %358, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull %41, i32 noundef %340, i32 noundef %342, ptr noundef nonnull %42, i32 noundef %348, i32 noundef %349, ptr noundef nonnull %43, ptr noundef nonnull %44, ptr noundef nonnull %45, i32 noundef %359)
          to label %360 unwind label %392

360:                                              ; preds = %356
  %361 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %40) #10
  %362 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %334, ptr noundef nonnull @.str.17, ptr noundef %361) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #10
  br label %445

363:                                              ; preds = %297
  %364 = landingpad { ptr, i32 }
          cleanup
  br label %879

365:                                              ; preds = %305
  %366 = landingpad { ptr, i32 }
          cleanup
  br label %381

367:                                              ; preds = %308
  %368 = landingpad { ptr, i32 }
          cleanup
  br label %380

369:                                              ; preds = %316
  %370 = landingpad { ptr, i32 }
          cleanup
  br label %379

371:                                              ; preds = %323
  %372 = landingpad { ptr, i32 }
          cleanup
  br label %378

373:                                              ; preds = %326
  %374 = landingpad { ptr, i32 }
          cleanup
  br label %377

375:                                              ; preds = %327
  %376 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #10
  br label %377

377:                                              ; preds = %375, %373
  %.pn255 = phi { ptr, i32 } [ %376, %375 ], [ %374, %373 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %39) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %39) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #10
  br label %378

378:                                              ; preds = %377, %371
  %.pn255.pn = phi { ptr, i32 } [ %.pn255, %377 ], [ %372, %371 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #10
  br label %379

379:                                              ; preds = %378, %369
  %.pn255.pn.pn = phi { ptr, i32 } [ %.pn255.pn, %378 ], [ %370, %369 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #10
  br label %380

380:                                              ; preds = %379, %367
  %.pn255.pn.pn.pn = phi { ptr, i32 } [ %.pn255.pn.pn, %379 ], [ %368, %367 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #10
  br label %381

381:                                              ; preds = %380, %365
  %.pn255.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn255.pn.pn.pn, %380 ], [ %366, %365 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #10
  br label %879

382:                                              ; preds = %331
  %383 = landingpad { ptr, i32 }
          cleanup
  br label %398

384:                                              ; preds = %337
  %385 = landingpad { ptr, i32 }
          cleanup
  br label %397

386:                                              ; preds = %345
  %387 = landingpad { ptr, i32 }
          cleanup
  br label %396

388:                                              ; preds = %352
  %389 = landingpad { ptr, i32 }
          cleanup
  br label %395

390:                                              ; preds = %355
  %391 = landingpad { ptr, i32 }
          cleanup
  br label %394

392:                                              ; preds = %356
  %393 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #10
  br label %394

394:                                              ; preds = %392, %390
  %.pn261 = phi { ptr, i32 } [ %393, %392 ], [ %391, %390 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #10
  br label %395

395:                                              ; preds = %394, %388
  %.pn261.pn = phi { ptr, i32 } [ %.pn261, %394 ], [ %389, %388 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #10
  br label %396

396:                                              ; preds = %395, %386
  %.pn261.pn.pn = phi { ptr, i32 } [ %.pn261.pn, %395 ], [ %387, %386 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #10
  br label %397

397:                                              ; preds = %396, %384
  %.pn261.pn.pn.pn = phi { ptr, i32 } [ %.pn261.pn.pn, %396 ], [ %385, %384 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #10
  br label %398

398:                                              ; preds = %397, %382
  %.pn261.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn261.pn.pn.pn, %397 ], [ %383, %382 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #10
  br label %879

399:                                              ; preds = %300
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %47) #10
  %400 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %401 = getelementptr inbounds i8, ptr %400, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull align 8 dereferenceable(32) %401)
          to label %402 unwind label %428

402:                                              ; preds = %399
  %403 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %404 = getelementptr inbounds i8, ptr %403, i64 40
  %405 = load i32, ptr %404, align 8, !tbaa !26
  %406 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %407 = load i32, ptr %406, align 8, !tbaa !20
  %408 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %409 = getelementptr inbounds i8, ptr %408, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef nonnull align 8 dereferenceable(32) %409)
          to label %410 unwind label %430

410:                                              ; preds = %402
  %411 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %412 = getelementptr inbounds i8, ptr %411, i64 44
  %413 = load i32, ptr %412, align 4, !tbaa !29
  %414 = load i32, ptr %15, align 4, !tbaa !5
  %415 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %416 = getelementptr inbounds i8, ptr %415, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(32) %416)
          to label %417 unwind label %432

417:                                              ; preds = %410
  %418 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %419 = getelementptr inbounds i8, ptr %418, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef nonnull align 8 dereferenceable(32) %419)
          to label %420 unwind label %434

420:                                              ; preds = %417
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %53) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %53) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef nonnull @.str.65, ptr noundef nonnull align 1 dereferenceable(1) %53)
          to label %421 unwind label %436

421:                                              ; preds = %420
  %422 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %423 = getelementptr inbounds i8, ptr %422, i64 156
  %424 = load i32, ptr %423, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull %48, i32 noundef %405, i32 noundef %407, ptr noundef nonnull %49, i32 noundef %413, i32 noundef %414, ptr noundef nonnull %50, ptr noundef nonnull %51, ptr noundef nonnull %52, i32 noundef %424)
          to label %425 unwind label %438

425:                                              ; preds = %421
  %426 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %47) #10
  %427 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %304, ptr noundef nonnull @.str.17, ptr noundef %426) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %53) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #10
  br label %445

428:                                              ; preds = %399
  %429 = landingpad { ptr, i32 }
          cleanup
  br label %444

430:                                              ; preds = %402
  %431 = landingpad { ptr, i32 }
          cleanup
  br label %443

432:                                              ; preds = %410
  %433 = landingpad { ptr, i32 }
          cleanup
  br label %442

434:                                              ; preds = %417
  %435 = landingpad { ptr, i32 }
          cleanup
  br label %441

436:                                              ; preds = %420
  %437 = landingpad { ptr, i32 }
          cleanup
  br label %440

438:                                              ; preds = %421
  %439 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #10
  br label %440

440:                                              ; preds = %438, %436
  %.pn249 = phi { ptr, i32 } [ %439, %438 ], [ %437, %436 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %53) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %53) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #10
  br label %441

441:                                              ; preds = %440, %434
  %.pn249.pn = phi { ptr, i32 } [ %.pn249, %440 ], [ %435, %434 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #10
  br label %442

442:                                              ; preds = %441, %432
  %.pn249.pn.pn = phi { ptr, i32 } [ %.pn249.pn, %441 ], [ %433, %432 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #10
  br label %443

443:                                              ; preds = %442, %430
  %.pn249.pn.pn.pn = phi { ptr, i32 } [ %.pn249.pn.pn, %442 ], [ %431, %430 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #10
  br label %444

444:                                              ; preds = %443, %428
  %.pn249.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn249.pn.pn.pn, %443 ], [ %429, %428 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #10
  br label %879

445:                                              ; preds = %425, %360
  %446 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0184279) #10
  %447 = getelementptr inbounds i8, ptr %446, i64 152
  store i8 0, ptr %447, align 8, !tbaa !31
  br label %593

448:                                              ; preds = %.lr.ph
  %449 = load i32, ptr %296, align 8, !tbaa !20
  %450 = icmp eq i32 %449, 3
  %451 = load ptr, ptr %11, align 8, !tbaa !13
  br i1 %450, label %452, label %544

452:                                              ; preds = %448
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %54) #10
  %453 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %454 = getelementptr inbounds i8, ptr %453, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(32) %454)
          to label %455 unwind label %510

455:                                              ; preds = %452
  %456 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %457 = getelementptr inbounds i8, ptr %456, i64 40
  %458 = load i32, ptr %457, align 8, !tbaa !26
  %459 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %460 = load i32, ptr %459, align 8, !tbaa !20
  %461 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %462 = getelementptr inbounds i8, ptr %461, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull align 8 dereferenceable(32) %462)
          to label %463 unwind label %512

463:                                              ; preds = %455
  %464 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %465 = getelementptr inbounds i8, ptr %464, i64 80
  %466 = load i32, ptr %465, align 8, !tbaa !27
  %467 = load i32, ptr %15, align 4, !tbaa !5
  %468 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %469 = getelementptr inbounds i8, ptr %468, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef nonnull align 8 dereferenceable(32) %469)
          to label %470 unwind label %514

470:                                              ; preds = %463
  %471 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %472 = getelementptr inbounds i8, ptr %471, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %58, ptr noundef nonnull align 8 dereferenceable(32) %472)
          to label %473 unwind label %516

473:                                              ; preds = %470
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %60) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %474 unwind label %518

474:                                              ; preds = %473
  %475 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %476 = getelementptr inbounds i8, ptr %475, i64 156
  %477 = load i32, ptr %476, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %54, ptr noundef nonnull %55, i32 noundef %458, i32 noundef %460, ptr noundef nonnull %56, i32 noundef %466, i32 noundef %467, ptr noundef nonnull %57, ptr noundef nonnull %58, ptr noundef nonnull %59, i32 noundef %477)
          to label %478 unwind label %520

478:                                              ; preds = %474
  %479 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %54) #10
  %480 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %451, ptr noundef nonnull @.str.17, ptr noundef %479) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %60) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %54) #10
  %481 = load ptr, ptr %11, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %61) #10
  %482 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %483 = getelementptr inbounds i8, ptr %482, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef nonnull align 8 dereferenceable(32) %483)
          to label %484 unwind label %527

484:                                              ; preds = %478
  %485 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %486 = getelementptr inbounds i8, ptr %485, i64 44
  %487 = load i32, ptr %486, align 4, !tbaa !29
  %488 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %489 = load i32, ptr %488, align 8, !tbaa !20
  %490 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %491 = getelementptr inbounds i8, ptr %490, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(32) %491)
          to label %492 unwind label %529

492:                                              ; preds = %484
  %493 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %494 = getelementptr inbounds i8, ptr %493, i64 84
  %495 = load i32, ptr %494, align 4, !tbaa !30
  %496 = load i32, ptr %15, align 4, !tbaa !5
  %497 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %498 = getelementptr inbounds i8, ptr %497, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %64, ptr noundef nonnull align 8 dereferenceable(32) %498)
          to label %499 unwind label %531

499:                                              ; preds = %492
  %500 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %501 = getelementptr inbounds i8, ptr %500, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef nonnull align 8 dereferenceable(32) %501)
          to label %502 unwind label %533

502:                                              ; preds = %499
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %67) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %66, ptr noundef nonnull @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %67)
          to label %503 unwind label %535

503:                                              ; preds = %502
  %504 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %505 = getelementptr inbounds i8, ptr %504, i64 156
  %506 = load i32, ptr %505, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %61, ptr noundef nonnull %62, i32 noundef %487, i32 noundef %489, ptr noundef nonnull %63, i32 noundef %495, i32 noundef %496, ptr noundef nonnull %64, ptr noundef nonnull %65, ptr noundef nonnull %66, i32 noundef %506)
          to label %507 unwind label %537

507:                                              ; preds = %503
  %508 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %61) #10
  %509 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %481, ptr noundef nonnull @.str.17, ptr noundef %508) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #10
  br label %590

510:                                              ; preds = %452
  %511 = landingpad { ptr, i32 }
          cleanup
  br label %526

512:                                              ; preds = %455
  %513 = landingpad { ptr, i32 }
          cleanup
  br label %525

514:                                              ; preds = %463
  %515 = landingpad { ptr, i32 }
          cleanup
  br label %524

516:                                              ; preds = %470
  %517 = landingpad { ptr, i32 }
          cleanup
  br label %523

518:                                              ; preds = %473
  %519 = landingpad { ptr, i32 }
          cleanup
  br label %522

520:                                              ; preds = %474
  %521 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #10
  br label %522

522:                                              ; preds = %520, %518
  %.pn237 = phi { ptr, i32 } [ %521, %520 ], [ %519, %518 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %60) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #10
  br label %523

523:                                              ; preds = %522, %516
  %.pn237.pn = phi { ptr, i32 } [ %.pn237, %522 ], [ %517, %516 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #10
  br label %524

524:                                              ; preds = %523, %514
  %.pn237.pn.pn = phi { ptr, i32 } [ %.pn237.pn, %523 ], [ %515, %514 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #10
  br label %525

525:                                              ; preds = %524, %512
  %.pn237.pn.pn.pn = phi { ptr, i32 } [ %.pn237.pn.pn, %524 ], [ %513, %512 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #10
  br label %526

526:                                              ; preds = %525, %510
  %.pn237.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn237.pn.pn.pn, %525 ], [ %511, %510 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %54) #10
  br label %879

527:                                              ; preds = %478
  %528 = landingpad { ptr, i32 }
          cleanup
  br label %543

529:                                              ; preds = %484
  %530 = landingpad { ptr, i32 }
          cleanup
  br label %542

531:                                              ; preds = %492
  %532 = landingpad { ptr, i32 }
          cleanup
  br label %541

533:                                              ; preds = %499
  %534 = landingpad { ptr, i32 }
          cleanup
  br label %540

535:                                              ; preds = %502
  %536 = landingpad { ptr, i32 }
          cleanup
  br label %539

537:                                              ; preds = %503
  %538 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #10
  br label %539

539:                                              ; preds = %537, %535
  %.pn243 = phi { ptr, i32 } [ %538, %537 ], [ %536, %535 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %67) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #10
  br label %540

540:                                              ; preds = %539, %533
  %.pn243.pn = phi { ptr, i32 } [ %.pn243, %539 ], [ %534, %533 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #10
  br label %541

541:                                              ; preds = %540, %531
  %.pn243.pn.pn = phi { ptr, i32 } [ %.pn243.pn, %540 ], [ %532, %531 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #10
  br label %542

542:                                              ; preds = %541, %529
  %.pn243.pn.pn.pn = phi { ptr, i32 } [ %.pn243.pn.pn, %541 ], [ %530, %529 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #10
  br label %543

543:                                              ; preds = %542, %527
  %.pn243.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn243.pn.pn.pn, %542 ], [ %528, %527 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #10
  br label %879

544:                                              ; preds = %448
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %68) #10
  %545 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %546 = getelementptr inbounds i8, ptr %545, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(32) %546)
          to label %547 unwind label %573

547:                                              ; preds = %544
  %548 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %549 = getelementptr inbounds i8, ptr %548, i64 40
  %550 = load i32, ptr %549, align 8, !tbaa !26
  %551 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %552 = load i32, ptr %551, align 8, !tbaa !20
  %553 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %554 = getelementptr inbounds i8, ptr %553, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull align 8 dereferenceable(32) %554)
          to label %555 unwind label %575

555:                                              ; preds = %547
  %556 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %557 = getelementptr inbounds i8, ptr %556, i64 44
  %558 = load i32, ptr %557, align 4, !tbaa !29
  %559 = load i32, ptr %15, align 4, !tbaa !5
  %560 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %561 = getelementptr inbounds i8, ptr %560, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %71, ptr noundef nonnull align 8 dereferenceable(32) %561)
          to label %562 unwind label %577

562:                                              ; preds = %555
  %563 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %564 = getelementptr inbounds i8, ptr %563, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %72, ptr noundef nonnull align 8 dereferenceable(32) %564)
          to label %565 unwind label %579

565:                                              ; preds = %562
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %74) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef nonnull @.str.67, ptr noundef nonnull align 1 dereferenceable(1) %74)
          to label %566 unwind label %581

566:                                              ; preds = %565
  %567 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %13, i64 noundef %.0184279) #10
  %568 = getelementptr inbounds i8, ptr %567, i64 156
  %569 = load i32, ptr %568, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull %69, i32 noundef %550, i32 noundef %552, ptr noundef nonnull %70, i32 noundef %558, i32 noundef %559, ptr noundef nonnull %71, ptr noundef nonnull %72, ptr noundef nonnull %73, i32 noundef %569)
          to label %570 unwind label %583

570:                                              ; preds = %566
  %571 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %68) #10
  %572 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %451, ptr noundef nonnull @.str.17, ptr noundef %571) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %74) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #10
  br label %590

573:                                              ; preds = %544
  %574 = landingpad { ptr, i32 }
          cleanup
  br label %589

575:                                              ; preds = %547
  %576 = landingpad { ptr, i32 }
          cleanup
  br label %588

577:                                              ; preds = %555
  %578 = landingpad { ptr, i32 }
          cleanup
  br label %587

579:                                              ; preds = %562
  %580 = landingpad { ptr, i32 }
          cleanup
  br label %586

581:                                              ; preds = %565
  %582 = landingpad { ptr, i32 }
          cleanup
  br label %585

583:                                              ; preds = %566
  %584 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #10
  br label %585

585:                                              ; preds = %583, %581
  %.pn231 = phi { ptr, i32 } [ %584, %583 ], [ %582, %581 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %74) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %74) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #10
  br label %586

586:                                              ; preds = %585, %579
  %.pn231.pn = phi { ptr, i32 } [ %.pn231, %585 ], [ %580, %579 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #10
  br label %587

587:                                              ; preds = %586, %577
  %.pn231.pn.pn = phi { ptr, i32 } [ %.pn231.pn, %586 ], [ %578, %577 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #10
  br label %588

588:                                              ; preds = %587, %575
  %.pn231.pn.pn.pn = phi { ptr, i32 } [ %.pn231.pn.pn, %587 ], [ %576, %575 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #10
  br label %589

589:                                              ; preds = %588, %573
  %.pn231.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn231.pn.pn.pn, %588 ], [ %574, %573 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #10
  br label %879

590:                                              ; preds = %570, %507
  %591 = load i32, ptr %15, align 4, !tbaa !5
  %592 = add nsw i32 %591, 1
  store i32 %592, ptr %15, align 4, !tbaa !5
  br label %593

593:                                              ; preds = %590, %445
  %594 = add nuw i64 %.0184279, 1
  %595 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  %596 = icmp ult i64 %594, %595
  br i1 %596, label %.lr.ph, label %._crit_edge, !llvm.loop !32

.preheader278:                                    ; preds = %._crit_edge, %._crit_edge282
  %597 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %598 = getelementptr inbounds i8, ptr %597, i64 32
  %599 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %598) #10
  %.not293 = icmp eq i64 %599, 0
  br i1 %.not293, label %._crit_edge282, label %.lr.ph281

._crit_edge283:                                   ; preds = %._crit_edge282, %._crit_edge
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %75) #10
  %600 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %14) #10
  %.not294 = icmp eq i64 %600, 0
  br i1 %.not294, label %._crit_edge287, label %.lr.ph286

._crit_edge282:                                   ; preds = %664, %.preheader278
  %601 = call ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEppEi(ptr noundef nonnull align 8 dereferenceable(8) %75, i32 noundef 0) #10
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %76) #10
  %602 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  store ptr %602, ptr %76, align 8
  %603 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EESB_(ptr noundef nonnull align 8 dereferenceable(8) %75, ptr noundef nonnull align 8 dereferenceable(8) %76) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %76) #10
  br i1 %603, label %.preheader278, label %._crit_edge283, !llvm.loop !34

.lr.ph281:                                        ; preds = %.preheader278, %664
  %.0185280 = phi i64 [ %665, %664 ], [ 0, %.preheader278 ]
  %604 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %605 = getelementptr inbounds i8, ptr %604, i64 32
  %606 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %605, i64 noundef %.0185280)
  %607 = load i8, ptr %606, align 1, !tbaa !35
  %.not = icmp eq i8 %607, 88
  br i1 %.not, label %664, label %608

608:                                              ; preds = %.lr.ph281
  %609 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %610 = getelementptr inbounds i8, ptr %609, i64 32
  %611 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %610, i64 noundef %.0185280)
  %612 = load i8, ptr %611, align 1, !tbaa !35
  %.not225 = icmp eq i8 %612, 78
  br i1 %.not225, label %664, label %613

613:                                              ; preds = %608
  %614 = call i32 @rand() #10
  %615 = sitofp i32 %614 to float
  %616 = fmul float %615, 0x3E00000000000000
  %617 = fcmp olt float %616, %185
  br i1 %617, label %618, label %651

618:                                              ; preds = %613
  %619 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %620 = getelementptr inbounds i8, ptr %619, i64 32
  %621 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %620, i64 noundef %.0185280)
  %622 = load i8, ptr %621, align 1, !tbaa !35
  %623 = sext i8 %622 to i32
  %624 = call i32 @toupper(i32 noundef %623) #12
  %625 = trunc i32 %624 to i8
  %626 = invoke noundef signext i8 @_Z8mut_charc(i8 noundef signext %625)
          to label %627 unwind label %644

627:                                              ; preds = %618
  %628 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(32) %628)
          to label %629 unwind label %644

629:                                              ; preds = %627
  %630 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %631 = getelementptr inbounds i8, ptr %630, i64 32
  %632 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %631, i64 noundef %.0185280)
  %633 = load i8, ptr %632, align 1, !tbaa !35
  %634 = load i32, ptr %15, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %79) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %78, ptr noundef nonnull @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %79)
          to label %635 unwind label %646

635:                                              ; preds = %629
  %636 = trunc i64 %.0185280 to i32
  %637 = add i32 %636, 1
  invoke void @_Z13print_snp_vcfNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiccRP8_IO_FILEiS4_(ptr noundef nonnull %77, i32 noundef %637, i8 noundef signext %633, i8 noundef signext %626, ptr noundef nonnull align 8 dereferenceable(8) %11, i32 noundef %634, ptr noundef nonnull %78)
          to label %638 unwind label %648

638:                                              ; preds = %635
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %79) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #10
  %639 = load i32, ptr %15, align 4, !tbaa !5
  %640 = add nsw i32 %639, 1
  store i32 %640, ptr %15, align 4, !tbaa !5
  %641 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %642 = getelementptr inbounds i8, ptr %641, i64 32
  %643 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %642, i64 noundef %.0185280)
  store i8 %626, ptr %643, align 1, !tbaa !35
  br label %651

644:                                              ; preds = %627, %618
  %645 = landingpad { ptr, i32 }
          cleanup
  br label %663

646:                                              ; preds = %629
  %647 = landingpad { ptr, i32 }
          cleanup
  br label %650

648:                                              ; preds = %635
  %649 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #10
  br label %650

650:                                              ; preds = %648, %646
  %.pn226 = phi { ptr, i32 } [ %649, %648 ], [ %647, %646 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %79) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #10
  br label %663

651:                                              ; preds = %638, %613
  %652 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %653 = getelementptr inbounds i8, ptr %652, i64 32
  %654 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %653, i64 noundef %.0185280)
  %655 = load i8, ptr %654, align 1, !tbaa !35
  %656 = icmp eq i8 %655, 32
  br i1 %656, label %657, label %664

657:                                              ; preds = %651
  %658 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.68)
          to label %659 unwind label %661

659:                                              ; preds = %657
  %660 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %658, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %664 unwind label %661

661:                                              ; preds = %659, %657
  %662 = landingpad { ptr, i32 }
          cleanup
  br label %663

663:                                              ; preds = %644, %650, %661
  %.pn229 = phi { ptr, i32 } [ %662, %661 ], [ %.pn226, %650 ], [ %645, %644 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %75) #10
  br label %879

664:                                              ; preds = %651, %659, %.lr.ph281, %608
  %665 = add nuw i64 %.0185280, 1
  %666 = call noundef nonnull align 8 dereferenceable(64) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_EEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %75) #10
  %667 = getelementptr inbounds i8, ptr %666, i64 32
  %668 = call noundef i64 @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(32) %667) #10
  %669 = icmp ult i64 %665, %668
  br i1 %669, label %.lr.ph281, label %._crit_edge282, !llvm.loop !36

._crit_edge287:                                   ; preds = %680, %._crit_edge283
  %670 = getelementptr inbounds i8, ptr %6, i64 8
  %671 = load i32, ptr %670, align 4, !tbaa !19
  invoke void @_Z15apply_mutationsRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEERSt6vectorI10struct_varSaISF_EEi(ptr noundef nonnull align 8 dereferenceable(48) %8, ptr noundef nonnull align 8 dereferenceable(24) %29, i32 noundef %671)
          to label %.preheader unwind label %692

.preheader:                                       ; preds = %._crit_edge287
  %672 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  %.not295 = icmp eq i64 %672, 0
  br i1 %.not295, label %._crit_edge291, label %.lr.ph290

.lr.ph286:                                        ; preds = %._crit_edge283, %680
  %.0112284 = phi i64 [ %686, %680 ], [ 0, %._crit_edge283 ]
  %673 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %14, i64 noundef %.0112284) #10
  %674 = getelementptr inbounds i8, ptr %673, i64 88
  %675 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %674, i64 noundef 0)
  %676 = load i8, ptr %675, align 1, !tbaa !35
  %677 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %14, i64 noundef %.0112284) #10
  %678 = getelementptr inbounds i8, ptr %677, i64 8
  %679 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEixERS9_(ptr noundef nonnull align 8 dereferenceable(48) %8, ptr noundef nonnull align 8 dereferenceable(32) %678)
          to label %680 unwind label %689

680:                                              ; preds = %.lr.ph286
  %681 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %14, i64 noundef %.0112284) #10
  %682 = getelementptr inbounds i8, ptr %681, i64 40
  %683 = load i32, ptr %682, align 8, !tbaa !26
  %684 = sext i32 %683 to i64
  %685 = call noundef nonnull align 1 dereferenceable(1) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEixEm(ptr noundef nonnull align 8 dereferenceable(32) %679, i64 noundef %684)
  store i8 %676, ptr %685, align 1, !tbaa !35
  %686 = add nuw i64 %.0112284, 1
  %687 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %14) #10
  %688 = icmp ult i64 %686, %687
  br i1 %688, label %.lr.ph286, label %._crit_edge287, !llvm.loop !37

689:                                              ; preds = %.lr.ph286
  %690 = landingpad { ptr, i32 }
          cleanup
  br label %879

._crit_edge291:                                   ; preds = %844, %.preheader
  %691 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.74)
          to label %848 unwind label %692

692:                                              ; preds = %860, %857, %855, %853, %850, %848, %._crit_edge291, %._crit_edge287
  %693 = landingpad { ptr, i32 }
          cleanup
  br label %879

.lr.ph290:                                        ; preds = %.preheader, %844
  %.0288 = phi i64 [ %845, %844 ], [ 0, %.preheader ]
  %694 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %695 = getelementptr inbounds i8, ptr %694, i64 152
  %696 = load i8, ptr %695, align 8, !tbaa !31, !range !17, !noundef !18
  %697 = trunc nuw i8 %696 to i1
  br i1 %697, label %698, label %844

698:                                              ; preds = %.lr.ph290
  %699 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %700 = load i32, ptr %699, align 8, !tbaa !20
  %701 = icmp eq i32 %700, 3
  %702 = load ptr, ptr %11, align 8, !tbaa !13
  br i1 %701, label %703, label %795

703:                                              ; preds = %698
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %80) #10
  %704 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %705 = getelementptr inbounds i8, ptr %704, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef nonnull align 8 dereferenceable(32) %705)
          to label %706 unwind label %761

706:                                              ; preds = %703
  %707 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %708 = getelementptr inbounds i8, ptr %707, i64 40
  %709 = load i32, ptr %708, align 8, !tbaa !26
  %710 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %711 = load i32, ptr %710, align 8, !tbaa !20
  %712 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %713 = getelementptr inbounds i8, ptr %712, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %82, ptr noundef nonnull align 8 dereferenceable(32) %713)
          to label %714 unwind label %763

714:                                              ; preds = %706
  %715 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %716 = getelementptr inbounds i8, ptr %715, i64 80
  %717 = load i32, ptr %716, align 8, !tbaa !27
  %718 = load i32, ptr %15, align 4, !tbaa !5
  %719 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %720 = getelementptr inbounds i8, ptr %719, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef nonnull align 8 dereferenceable(32) %720)
          to label %721 unwind label %765

721:                                              ; preds = %714
  %722 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %723 = getelementptr inbounds i8, ptr %722, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %84, ptr noundef nonnull align 8 dereferenceable(32) %723)
          to label %724 unwind label %767

724:                                              ; preds = %721
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %86) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %86)
          to label %725 unwind label %769

725:                                              ; preds = %724
  %726 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %727 = getelementptr inbounds i8, ptr %726, i64 156
  %728 = load i32, ptr %727, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %80, ptr noundef nonnull %81, i32 noundef %709, i32 noundef %711, ptr noundef nonnull %82, i32 noundef %717, i32 noundef %718, ptr noundef nonnull %83, ptr noundef nonnull %84, ptr noundef nonnull %85, i32 noundef %728)
          to label %729 unwind label %771

729:                                              ; preds = %725
  %730 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %80) #10
  %731 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %702, ptr noundef nonnull @.str.17, ptr noundef %730) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %86) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #10
  %732 = load ptr, ptr %11, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %87) #10
  %733 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %734 = getelementptr inbounds i8, ptr %733, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %88, ptr noundef nonnull align 8 dereferenceable(32) %734)
          to label %735 unwind label %778

735:                                              ; preds = %729
  %736 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %737 = getelementptr inbounds i8, ptr %736, i64 44
  %738 = load i32, ptr %737, align 4, !tbaa !29
  %739 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %740 = load i32, ptr %739, align 8, !tbaa !20
  %741 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %742 = getelementptr inbounds i8, ptr %741, i64 48
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %89, ptr noundef nonnull align 8 dereferenceable(32) %742)
          to label %743 unwind label %780

743:                                              ; preds = %735
  %744 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %745 = getelementptr inbounds i8, ptr %744, i64 84
  %746 = load i32, ptr %745, align 4, !tbaa !30
  %747 = load i32, ptr %15, align 4, !tbaa !5
  %748 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %749 = getelementptr inbounds i8, ptr %748, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %90, ptr noundef nonnull align 8 dereferenceable(32) %749)
          to label %750 unwind label %782

750:                                              ; preds = %743
  %751 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %752 = getelementptr inbounds i8, ptr %751, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef nonnull align 8 dereferenceable(32) %752)
          to label %753 unwind label %784

753:                                              ; preds = %750
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %93) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %93) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %92, ptr noundef nonnull @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %93)
          to label %754 unwind label %786

754:                                              ; preds = %753
  %755 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %756 = getelementptr inbounds i8, ptr %755, i64 156
  %757 = load i32, ptr %756, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %87, ptr noundef nonnull %88, i32 noundef %738, i32 noundef %740, ptr noundef nonnull %89, i32 noundef %746, i32 noundef %747, ptr noundef nonnull %90, ptr noundef nonnull %91, ptr noundef nonnull %92, i32 noundef %757)
          to label %758 unwind label %788

758:                                              ; preds = %754
  %759 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %87) #10
  %760 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %732, ptr noundef nonnull @.str.17, ptr noundef %759) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %93) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %93) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %87) #10
  br label %841

761:                                              ; preds = %703
  %762 = landingpad { ptr, i32 }
          cleanup
  br label %777

763:                                              ; preds = %706
  %764 = landingpad { ptr, i32 }
          cleanup
  br label %776

765:                                              ; preds = %714
  %766 = landingpad { ptr, i32 }
          cleanup
  br label %775

767:                                              ; preds = %721
  %768 = landingpad { ptr, i32 }
          cleanup
  br label %774

769:                                              ; preds = %724
  %770 = landingpad { ptr, i32 }
          cleanup
  br label %773

771:                                              ; preds = %725
  %772 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #10
  br label %773

773:                                              ; preds = %771, %769
  %.pn212 = phi { ptr, i32 } [ %772, %771 ], [ %770, %769 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %86) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #10
  br label %774

774:                                              ; preds = %773, %767
  %.pn212.pn = phi { ptr, i32 } [ %.pn212, %773 ], [ %768, %767 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #10
  br label %775

775:                                              ; preds = %774, %765
  %.pn212.pn.pn = phi { ptr, i32 } [ %.pn212.pn, %774 ], [ %766, %765 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #10
  br label %776

776:                                              ; preds = %775, %763
  %.pn212.pn.pn.pn = phi { ptr, i32 } [ %.pn212.pn.pn, %775 ], [ %764, %763 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #10
  br label %777

777:                                              ; preds = %776, %761
  %.pn212.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn212.pn.pn.pn, %776 ], [ %762, %761 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #10
  br label %879

778:                                              ; preds = %729
  %779 = landingpad { ptr, i32 }
          cleanup
  br label %794

780:                                              ; preds = %735
  %781 = landingpad { ptr, i32 }
          cleanup
  br label %793

782:                                              ; preds = %743
  %783 = landingpad { ptr, i32 }
          cleanup
  br label %792

784:                                              ; preds = %750
  %785 = landingpad { ptr, i32 }
          cleanup
  br label %791

786:                                              ; preds = %753
  %787 = landingpad { ptr, i32 }
          cleanup
  br label %790

788:                                              ; preds = %754
  %789 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %92) #10
  br label %790

790:                                              ; preds = %788, %786
  %.pn218 = phi { ptr, i32 } [ %789, %788 ], [ %787, %786 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %93) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %93) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #10
  br label %791

791:                                              ; preds = %790, %784
  %.pn218.pn = phi { ptr, i32 } [ %.pn218, %790 ], [ %785, %784 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #10
  br label %792

792:                                              ; preds = %791, %782
  %.pn218.pn.pn = phi { ptr, i32 } [ %.pn218.pn, %791 ], [ %783, %782 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #10
  br label %793

793:                                              ; preds = %792, %780
  %.pn218.pn.pn.pn = phi { ptr, i32 } [ %.pn218.pn.pn, %792 ], [ %781, %780 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #10
  br label %794

794:                                              ; preds = %793, %778
  %.pn218.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn218.pn.pn.pn, %793 ], [ %779, %778 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %87) #10
  br label %879

795:                                              ; preds = %698
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %94) #10
  %796 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %797 = getelementptr inbounds i8, ptr %796, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef nonnull align 8 dereferenceable(32) %797)
          to label %798 unwind label %824

798:                                              ; preds = %795
  %799 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %800 = getelementptr inbounds i8, ptr %799, i64 40
  %801 = load i32, ptr %800, align 8, !tbaa !26
  %802 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %803 = load i32, ptr %802, align 8, !tbaa !20
  %804 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %805 = getelementptr inbounds i8, ptr %804, i64 8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef nonnull align 8 dereferenceable(32) %805)
          to label %806 unwind label %826

806:                                              ; preds = %798
  %807 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %808 = getelementptr inbounds i8, ptr %807, i64 44
  %809 = load i32, ptr %808, align 4, !tbaa !29
  %810 = load i32, ptr %15, align 4, !tbaa !5
  %811 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %812 = getelementptr inbounds i8, ptr %811, i64 88
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %97, ptr noundef nonnull align 8 dereferenceable(32) %812)
          to label %813 unwind label %828

813:                                              ; preds = %806
  %814 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %815 = getelementptr inbounds i8, ptr %814, i64 120
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %98, ptr noundef nonnull align 8 dereferenceable(32) %815)
          to label %816 unwind label %830

816:                                              ; preds = %813
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %100) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %100) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %99, ptr noundef nonnull @.str.78, ptr noundef nonnull align 1 dereferenceable(1) %100)
          to label %817 unwind label %832

817:                                              ; preds = %816
  %818 = call noundef nonnull align 8 dereferenceable(160) ptr @_ZNSt6vectorI10struct_varSaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %29, i64 noundef %.0288) #10
  %819 = getelementptr inbounds i8, ptr %818, i64 156
  %820 = load i32, ptr %819, align 4, !tbaa !28
  invoke void @_Z12print_vcf_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiiS4_iiS4_S4_S4_i(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %94, ptr noundef nonnull %95, i32 noundef %801, i32 noundef %803, ptr noundef nonnull %96, i32 noundef %809, i32 noundef %810, ptr noundef nonnull %97, ptr noundef nonnull %98, ptr noundef nonnull %99, i32 noundef %820)
          to label %821 unwind label %834

821:                                              ; preds = %817
  %822 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %94) #10
  %823 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %702, ptr noundef nonnull @.str.17, ptr noundef %822) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %100) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %100) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %94) #10
  br label %841

824:                                              ; preds = %795
  %825 = landingpad { ptr, i32 }
          cleanup
  br label %840

826:                                              ; preds = %798
  %827 = landingpad { ptr, i32 }
          cleanup
  br label %839

828:                                              ; preds = %806
  %829 = landingpad { ptr, i32 }
          cleanup
  br label %838

830:                                              ; preds = %813
  %831 = landingpad { ptr, i32 }
          cleanup
  br label %837

832:                                              ; preds = %816
  %833 = landingpad { ptr, i32 }
          cleanup
  br label %836

834:                                              ; preds = %817
  %835 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #10
  br label %836

836:                                              ; preds = %834, %832
  %.pn206 = phi { ptr, i32 } [ %835, %834 ], [ %833, %832 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %100) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %100) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #10
  br label %837

837:                                              ; preds = %836, %830
  %.pn206.pn = phi { ptr, i32 } [ %.pn206, %836 ], [ %831, %830 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97) #10
  br label %838

838:                                              ; preds = %837, %828
  %.pn206.pn.pn = phi { ptr, i32 } [ %.pn206.pn, %837 ], [ %829, %828 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #10
  br label %839

839:                                              ; preds = %838, %826
  %.pn206.pn.pn.pn = phi { ptr, i32 } [ %.pn206.pn.pn, %838 ], [ %827, %826 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #10
  br label %840

840:                                              ; preds = %839, %824
  %.pn206.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn206.pn.pn.pn, %839 ], [ %825, %824 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %94) #10
  br label %879

841:                                              ; preds = %821, %758
  %842 = load i32, ptr %15, align 4, !tbaa !5
  %843 = add nsw i32 %842, 1
  store i32 %843, ptr %15, align 4, !tbaa !5
  br label %844

844:                                              ; preds = %.lr.ph290, %841
  %845 = add nuw i64 %.0288, 1
  %846 = call noundef i64 @_ZNKSt6vectorI10struct_varSaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  %847 = icmp ult i64 %845, %846
  br i1 %847, label %.lr.ph290, label %._crit_edge291, !llvm.loop !38

848:                                              ; preds = %._crit_edge291
  %849 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %691, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %850 unwind label %692

850:                                              ; preds = %848
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %101, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %851 unwind label %692

851:                                              ; preds = %850
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %102, ptr noundef nonnull align 8 dereferenceable(48) %8)
          to label %852 unwind label %864

852:                                              ; preds = %851
  invoke void @_Z11write_fastaNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt3mapIS4_S4_St4lessIS4_ESaISt4pairIKS4_S4_EEEb(ptr noundef nonnull %101, ptr noundef nonnull %102, i1 noundef zeroext true)
          to label %853 unwind label %866

853:                                              ; preds = %852
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #10
  %854 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.75)
          to label %855 unwind label %692

855:                                              ; preds = %853
  %856 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %854, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %857 unwind label %692

857:                                              ; preds = %855
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %103, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %858 unwind label %692

858:                                              ; preds = %857
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %104, ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %859 unwind label %869

859:                                              ; preds = %858
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef nonnull %103, ptr noundef nonnull %104)
          to label %860 unwind label %871

860:                                              ; preds = %859
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %105, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %861 unwind label %692

861:                                              ; preds = %860
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %106, ptr noundef nonnull align 8 dereferenceable(24) %29)
          to label %862 unwind label %874

862:                                              ; preds = %861
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef nonnull %105, ptr noundef nonnull %106)
          to label %863 unwind label %876

863:                                              ; preds = %862
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %105) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #10
  br label %894

864:                                              ; preds = %851
  %865 = landingpad { ptr, i32 }
          cleanup
  br label %868

866:                                              ; preds = %852
  %867 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #10
  br label %868

868:                                              ; preds = %866, %864
  %.pn200 = phi { ptr, i32 } [ %867, %866 ], [ %865, %864 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #10
  br label %879

869:                                              ; preds = %858
  %870 = landingpad { ptr, i32 }
          cleanup
  br label %873

871:                                              ; preds = %859
  %872 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %104) #10
  br label %873

873:                                              ; preds = %871, %869
  %.pn202 = phi { ptr, i32 } [ %872, %871 ], [ %870, %869 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #10
  br label %879

874:                                              ; preds = %861
  %875 = landingpad { ptr, i32 }
          cleanup
  br label %878

876:                                              ; preds = %862
  %877 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %106) #10
  br label %878

878:                                              ; preds = %876, %874
  %.pn204 = phi { ptr, i32 } [ %877, %876 ], [ %875, %874 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %105) #10
  br label %879

879:                                              ; preds = %777, %794, %840, %363, %381, %398, %444, %526, %543, %589, %878, %873, %868, %692, %689, %663, %290
  %.pn261.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn229, %663 ], [ %690, %689 ], [ %.pn204, %878 ], [ %693, %692 ], [ %.pn202, %873 ], [ %.pn200, %868 ], [ %.pn197.pn, %290 ], [ %.pn261.pn.pn.pn.pn, %398 ], [ %.pn255.pn.pn.pn.pn, %381 ], [ %.pn249.pn.pn.pn.pn, %444 ], [ %364, %363 ], [ %.pn243.pn.pn.pn.pn, %543 ], [ %.pn237.pn.pn.pn.pn, %526 ], [ %.pn231.pn.pn.pn.pn, %589 ], [ %.pn218.pn.pn.pn.pn, %794 ], [ %.pn212.pn.pn.pn.pn, %777 ], [ %.pn206.pn.pn.pn.pn, %840 ]
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #10
  br label %895

880:                                              ; preds = %247
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %107, ptr noundef nonnull align 8 dereferenceable(32) %4)
          to label %881 unwind label %219

881:                                              ; preds = %880
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %108, ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %882 unwind label %887

882:                                              ; preds = %881
  invoke void @_Z8write_svNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorI10struct_varSaIS6_EE(ptr noundef nonnull %107, ptr noundef nonnull %108)
          to label %883 unwind label %889

883:                                              ; preds = %882
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #10
  invoke void @_ZNSt6vectorI10struct_varSaIS0_EEC2ERKS2_(ptr noundef nonnull align 8 dereferenceable(24) %109, ptr noundef nonnull align 8 dereferenceable(24) %13)
          to label %884 unwind label %219

884:                                              ; preds = %883
  %885 = load i32, ptr %15, align 4, !tbaa !5
  invoke void @_Z13print_vcf_svsRP8_IO_FILESt6vectorI10struct_varSaIS3_EEi(ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull %109, i32 noundef %885)
          to label %886 unwind label %892

886:                                              ; preds = %884
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %109) #10
  br label %894

887:                                              ; preds = %881
  %888 = landingpad { ptr, i32 }
          cleanup
  br label %891

889:                                              ; preds = %882
  %890 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %108) #10
  br label %891

891:                                              ; preds = %889, %887
  %.pn193 = phi { ptr, i32 } [ %890, %889 ], [ %888, %887 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #10
  br label %895

892:                                              ; preds = %884
  %893 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %109) #10
  br label %895

894:                                              ; preds = %886, %863
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %15) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %14) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %13) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #10
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %8) #10
  call void @llvm.lifetime.end.p0(i64 96, ptr nonnull %6) #10
  ret void

895:                                              ; preds = %892, %891, %879, %273, %268, %235, %219, %214, %208, %207
  %.pn261.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn261.pn.pn.pn.pn.pn.pn, %879 ], [ %220, %219 ], [ %.pn195, %273 ], [ %893, %892 ], [ %.pn193, %891 ], [ %.pn191, %268 ], [ %215, %214 ], [ %209, %208 ], [ %.pn188.pn, %207 ], [ %.pn.pn, %235 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %15) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %14) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %14) #10
  call void @_ZNSt6vectorI10struct_varSaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %13) #10
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %13) #10
  br label %896

896:                                              ; preds = %895, %198, %171
  %.pn270 = phi { ptr, i32 } [ %172, %171 ], [ %.pn261.pn.pn.pn.pn.pn.pn.pn, %895 ], [ %199, %198 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #10
  br label %897

897:                                              ; preds = %896, %169
  %.pn270.pn = phi { ptr, i32 } [ %.pn270, %896 ], [ %170, %169 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #10
  br label %898

898:                                              ; preds = %897, %167
  %.pn270.pn.pn = phi { ptr, i32 } [ %.pn270.pn, %897 ], [ %168, %167 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %10) #10
  br label %899

899:                                              ; preds = %898, %137
  %.pn274 = phi { ptr, i32 } [ %138, %137 ], [ %.pn270.pn.pn, %898 ]
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %8) #10
  br label %900

900:                                              ; preds = %899, %135
  %.pn274.pn = phi { ptr, i32 } [ %.pn274, %899 ], [ %136, %135 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %8) #10
  br label %901

901:                                              ; preds = %900, %133
  %.pn274.pn.pn = phi { ptr, i32 } [ %.pn274.pn, %900 ], [ %134, %133 ]
  call void @llvm.lifetime.end.p0(i64 96, ptr nonnull %6) #10
  resume { ptr, i32 } %.pn274.pn.pn
}

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #9

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNKSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE5emptyEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt6vectorI10struct_varSaIS0_EEaSEOS2_(ptr noundef nonnull align 8 dereferenceable(24), ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEEaSEOSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(160) ptr @_ZN10struct_varaSERKS_(ptr noundef nonnull align 8 dereferenceable(160), ptr noundef nonnull align 8 dereferenceable(160)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #3 align 2

attributes #0 = { 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 #1 = { 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 #2 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #3 = { 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 #4 = { noreturn nounwind "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 nofree nounwind willreturn memory(read) "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 = { "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 #7 = { nounwind "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 #8 = { nofree nounwind "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 #9 = { 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 #10 = { nounwind }
attributes #11 = { noreturn nounwind }
attributes #12 = { nounwind willreturn memory(read) }

!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 = !{!10, !6, i64 36}
!10 = !{!"_ZTS9parameter", !6, i64 0, !6, i64 4, !6, i64 8, !6, i64 12, !6, i64 16, !6, i64 20, !6, i64 24, !6, i64 28, !6, i64 32, !6, i64 36, !6, i64 40, !6, i64 44, !6, i64 48, !6, i64 52, !6, i64 56, !6, i64 60, !6, i64 64, !6, i64 68, !6, i64 72, !6, i64 76, !6, i64 80, !6, i64 84, !11, i64 88, !12, i64 92}
!11 = !{!"bool", !7, i64 0}
!12 = !{!"float", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"any pointer", !7, i64 0}
!15 = !{!10, !12, i64 92}
!16 = !{!10, !11, i64 88}
!17 = !{i8 0, i8 2}
!18 = !{}
!19 = !{!10, !6, i64 8}
!20 = !{!21, !6, i64 0}
!21 = !{!"_ZTS10struct_var", !6, i64 0, !22, i64 8, !22, i64 48, !23, i64 88, !23, i64 120, !11, i64 152, !6, i64 156}
!22 = !{!"_ZTS8position", !23, i64 0, !6, i64 32, !6, i64 36}
!23 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !24, i64 0, !25, i64 8, !7, i64 16}
!24 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !14, i64 0}
!25 = !{!"long", !7, i64 0}
!26 = !{!21, !6, i64 40}
!27 = !{!21, !6, i64 80}
!28 = !{!21, !6, i64 156}
!29 = !{!21, !6, i64 44}
!30 = !{!21, !6, i64 84}
!31 = !{!21, !11, i64 152}
!32 = distinct !{!32, !33}
!33 = !{!"llvm.loop.mustprogress"}
!34 = distinct !{!34, !33}
!35 = !{!7, !7, i64 0}
!36 = distinct !{!36, !33}
!37 = distinct !{!37, !33}
!38 = distinct !{!38, !33}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass