; LLVM IR from fritzsedlazeck/SURVIVOR :: src/merge_vcf (combine_svs)

; 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.breakpoint_str = type <{ %"class.std::__cxx11::basic_string", i32, [4 x i8] }>
%"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::vector.17" = type { %"struct.std::_Vector_base.18" }
%"struct.std::_Vector_base.18" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.IntervallTree = type { i8 }
%"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>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, 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>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, 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.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl" }
%"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl" = type { %"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl_data" }
%"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.strcoordinate = type { i32, %"class.std::__cxx11::basic_string" }
%struct.meta_data_str = type { i32, i16, %"class.std::__cxx11::basic_string", i32, %"class.std::__cxx11::basic_string", i32, %"struct.std::pair.13", %"class.std::__cxx11::basic_string", %"struct.std::pair" }
%"struct.std::pair.13" = type { i32, i32 }
%"struct.std::pair" = type { %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string" }
%"struct.std::pair.15" = type { i8, i8 }
%"class.std::map.40" = type { %"class.std::_Rb_tree.41" }
%"class.std::_Rb_tree.41" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>>, 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::vector<SVS_Node *>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_iterator.45" = type { ptr }
%"class.__gnu_cxx::__normal_iterator.53" = type { ptr }
%"class.std::vector.48" = type { %"struct.std::_Vector_base.49" }
%"struct.std::_Vector_base.49" = type { %"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl" }
%"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl" = type { %"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::reverse_iterator" = type { %"class.__gnu_cxx::__normal_iterator.54" }
%"class.__gnu_cxx::__normal_iterator.54" = type { ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl" }
%"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl" = type { %"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.Parameter = type <{ %"class.std::__cxx11::basic_string", double, i32, i8, i8, i8, i8, i32, float, i32, [4 x i8] }>
%struct.strvcfentry = type <{ %"class.std::__cxx11::basic_string", %struct.strcoordinate, %struct.strcoordinate, i16, [6 x i8], %"class.std::map.35", i32, i32, %"class.std::vector.3", %"struct.std::pair.15", [2 x i8], %"struct.std::pair.13", [4 x i8], %"class.std::__cxx11::basic_string", i32, [4 x i8], %"class.std::__cxx11::basic_string", double, %"class.std::__cxx11::basic_string", i32, [4 x i8], %"struct.std::pair", %"struct.std::pair.13", %"struct.std::pair.13", i32, [4 x i8] }>
%"class.std::map.35" = type { %"class.std::_Rb_tree.36" }
%"class.std::_Rb_tree.36" = 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" }
%"class.std::vector.3" = type { %"struct.std::_Vector_base.4" }
%"struct.std::_Vector_base.4" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.std::pair.46" = type { %"class.std::__cxx11::basic_string", %"class.std::vector.48" }
%class.SVS_Node = type <{ i16, [6 x i8], %struct.breakpoint_str, %struct.breakpoint_str, %"class.std::vector", %"class.std::__cxx11::basic_string", %"struct.std::pair.13", %"struct.std::pair.15", [6 x i8], %"class.std::__cxx11::basic_string", [5 x i8], [4 x i8], [7 x i8] }>

@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.84 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [2 x i8], align 1

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

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

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

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

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN9Parameter8InstanceEv() #1 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 noundef i32 @_Z11get_supportSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef) #3

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #4

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

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

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

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_Z10get_avglenSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef) #3

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 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: mustprogress uwtable
declare dso_local noundef zeroext i1 @_Z22numeric_string_compareRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #1

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_Z17combine_calls_svsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEdiiiiiS4_(ptr noundef %0, double noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4, i32 noundef %5, i32 noundef %6, ptr noundef %7) #1 personality ptr @__gxx_personality_v0 {
  %9 = alloca ptr, align 8
  %10 = alloca double, align 8
  %11 = alloca i32, align 4
  %12 = alloca i32, align 4
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca ptr, align 8
  %17 = alloca %"class.std::vector.17", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca ptr, align 8
  %20 = alloca i32, align 4
  %21 = alloca %class.IntervallTree, align 1
  %22 = alloca ptr, align 8
  %23 = alloca %"class.std::map", align 8
  %24 = alloca i64, align 8
  %25 = alloca i32, align 4
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::vector.30", align 8
  %28 = alloca i64, align 8
  %29 = alloca %struct.breakpoint_str, align 8
  %30 = alloca %struct.strcoordinate, align 8
  %31 = alloca %struct.breakpoint_str, align 8
  %32 = alloca %struct.strcoordinate, align 8
  %33 = alloca %struct.meta_data_str, align 8
  %34 = alloca %"struct.std::pair.15", align 1
  %35 = alloca %struct.meta_data_str, align 8
  %36 = alloca %"class.std::map.40", align 8
  %37 = alloca ptr, align 8
  %38 = alloca %"class.std::vector.17", align 8
  %39 = alloca %"class.std::map", align 8
  %40 = alloca i32, align 4
  %41 = alloca %"class.std::vector.17", align 8
  %42 = alloca %"struct.std::_Rb_tree_iterator.45", align 8
  %43 = alloca %"struct.std::_Rb_tree_iterator.45", align 8
  %44 = alloca %"struct.std::_Rb_tree_iterator.45", align 8
  %45 = alloca %"class.__gnu_cxx::__normal_iterator.53", align 8
  %46 = alloca %"class.__gnu_cxx::__normal_iterator.53", align 8
  %47 = alloca i64, align 8
  %48 = alloca %"class.std::vector.48", align 8
  %49 = alloca %"class.std::reverse_iterator", align 8
  %50 = alloca %"class.std::reverse_iterator", align 8
  %51 = alloca i32, align 4
  %52 = alloca %"class.std::vector", align 8
  %53 = alloca i32, align 4
  %54 = alloca %"class.std::vector", align 8
  %55 = alloca i16, align 2
  %56 = alloca %"class.std::reverse_iterator", align 8
  store ptr %0, ptr %9, align 8, !tbaa !5
  store double %1, ptr %10, align 8, !tbaa !9
  store i32 %2, ptr %11, align 4, !tbaa !11
  store i32 %3, ptr %12, align 4, !tbaa !11
  store i32 %4, ptr %13, align 4, !tbaa !11
  store i32 %5, ptr %14, align 4, !tbaa !11
  store i32 %6, ptr %15, align 4, !tbaa !11
  store ptr %7, ptr %16, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr %17) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(32) %0)
  invoke void @_Z14parse_filenameNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind writable sret(%"class.std::vector.17") align 8 %17, ptr noundef %18)
          to label %57 unwind label %95

57:                                               ; preds = %8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #7
  %58 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  %59 = trunc i64 %58 to i32
  %60 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %61 unwind label %99

61:                                               ; preds = %57
  %62 = getelementptr inbounds %class.Parameter, ptr %60, i32 0, i32 2
  store i32 %59, ptr %62, align 8, !tbaa !13
  %63 = load double, ptr %10, align 8, !tbaa !9
  %64 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %65 unwind label %99

65:                                               ; preds = %61
  %66 = getelementptr inbounds %class.Parameter, ptr %64, i32 0, i32 1
  store double %63, ptr %66, align 8, !tbaa !20
  %67 = load i32, ptr %12, align 4, !tbaa !11
  %68 = icmp eq i32 %67, 1
  %69 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %70 unwind label %99

70:                                               ; preds = %65
  %71 = getelementptr inbounds %class.Parameter, ptr %69, i32 0, i32 3
  %72 = zext i1 %68 to i8
  store i8 %72, ptr %71, align 4, !tbaa !21
  %73 = load i32, ptr %13, align 4, !tbaa !11
  %74 = icmp eq i32 %73, 1
  %75 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %76 unwind label %99

76:                                               ; preds = %70
  %77 = getelementptr inbounds %class.Parameter, ptr %75, i32 0, i32 4
  %78 = zext i1 %74 to i8
  store i8 %78, ptr %77, align 1, !tbaa !22
  %79 = load i32, ptr %15, align 4, !tbaa !11
  %80 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %81 unwind label %99

81:                                               ; preds = %76
  %82 = getelementptr inbounds %class.Parameter, ptr %80, i32 0, i32 7
  store i32 %79, ptr %82, align 8, !tbaa !23
  %83 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %84 unwind label %99

84:                                               ; preds = %81
  %85 = getelementptr inbounds %class.Parameter, ptr %83, i32 0, i32 5
  store i8 0, ptr %85, align 2, !tbaa !24
  %86 = load i32, ptr %11, align 4, !tbaa !11
  %87 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %88 unwind label %99

88:                                               ; preds = %84
  %89 = getelementptr inbounds %class.Parameter, ptr %87, i32 0, i32 9
  store i32 %86, ptr %89, align 8, !tbaa !25
  call void @llvm.lifetime.start.p0(i64 1, ptr %21) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #7
  store ptr null, ptr %22, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 48, ptr %23) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2Ev(ptr noundef nonnull align 8 dereferenceable(48) %23) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %24) #7
  store i64 0, ptr %24, align 8, !tbaa !26
  br label %90

90:                                               ; preds = %265, %88
  %91 = load i64, ptr %24, align 8, !tbaa !26
  %92 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  %93 = icmp ult i64 %91, %92
  br i1 %93, label %103, label %94

94:                                               ; preds = %90
  store i32 2, ptr %25, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #7
  br label %271

95:                                               ; preds = %8
  %96 = landingpad { ptr, i32 }
          cleanup
  %97 = extractvalue { ptr, i32 } %96, 0
  store ptr %97, ptr %19, align 8
  %98 = extractvalue { ptr, i32 } %96, 1
  store i32 %98, ptr %20, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #7
  br label %440

99:                                               ; preds = %84, %81, %76, %70, %65, %61, %57
  %100 = landingpad { ptr, i32 }
          cleanup
  %101 = extractvalue { ptr, i32 } %100, 0
  store ptr %101, ptr %19, align 8
  %102 = extractvalue { ptr, i32 } %100, 1
  store i32 %102, ptr %20, align 4
  br label %439

103:                                              ; preds = %90
  %104 = load i64, ptr %24, align 8, !tbaa !26
  %105 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %104) #7
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull align 8 dereferenceable(32) %105)
          to label %106 unwind label %124

106:                                              ; preds = %103
  invoke void @_Z16parse_vcf_headerRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEES5_(ptr noundef nonnull align 8 dereferenceable(48) %23, ptr noundef %26)
          to label %107 unwind label %128

107:                                              ; preds = %106
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr %27) #7
  %108 = load i64, ptr %24, align 8, !tbaa !26
  %109 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %17, i64 noundef %108) #7
  %110 = load i32, ptr %15, align 4, !tbaa !11
  invoke void @_Z9parse_vcfRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind writable sret(%"class.std::vector.30") align 8 %27, ptr noundef nonnull align 8 dereferenceable(32) %109, i32 noundef %110)
          to label %111 unwind label %132

111:                                              ; preds = %107
  %112 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.84)
          to label %113 unwind label %136

113:                                              ; preds = %111
  %114 = call noundef i64 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  %115 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8) %112, i64 noundef %114)
          to label %116 unwind label %136

116:                                              ; preds = %113
  %117 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %115, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %118 unwind label %136

118:                                              ; preds = %116
  call void @llvm.lifetime.start.p0(i64 8, ptr %28) #7
  store i64 0, ptr %28, align 8, !tbaa !26
  br label %119

119:                                              ; preds = %253, %118
  %120 = load i64, ptr %28, align 8, !tbaa !26
  %121 = call noundef i64 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  %122 = icmp ult i64 %120, %121
  br i1 %122, label %140, label %123

123:                                              ; preds = %119
  store i32 5, ptr %25, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #7
  br label %264

124:                                              ; preds = %103
  %125 = landingpad { ptr, i32 }
          cleanup
  %126 = extractvalue { ptr, i32 } %125, 0
  store ptr %126, ptr %19, align 8
  %127 = extractvalue { ptr, i32 } %125, 1
  store i32 %127, ptr %20, align 4
  br label %270

128:                                              ; preds = %106
  %129 = landingpad { ptr, i32 }
          cleanup
  %130 = extractvalue { ptr, i32 } %129, 0
  store ptr %130, ptr %19, align 8
  %131 = extractvalue { ptr, i32 } %129, 1
  store i32 %131, ptr %20, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #7
  br label %270

132:                                              ; preds = %107
  %133 = landingpad { ptr, i32 }
          cleanup
  %134 = extractvalue { ptr, i32 } %133, 0
  store ptr %134, ptr %19, align 8
  %135 = extractvalue { ptr, i32 } %133, 1
  store i32 %135, ptr %20, align 4
  br label %269

136:                                              ; preds = %116, %113, %111
  %137 = landingpad { ptr, i32 }
          cleanup
  %138 = extractvalue { ptr, i32 } %137, 0
  store ptr %138, ptr %19, align 8
  %139 = extractvalue { ptr, i32 } %137, 1
  store i32 %139, ptr %20, align 4
  br label %268

140:                                              ; preds = %119
  call void @llvm.lifetime.start.p0(i64 40, ptr %29) #7
  %141 = load i64, ptr %28, align 8, !tbaa !26
  %142 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %141) #7
  %143 = getelementptr inbounds %struct.strvcfentry, ptr %142, i32 0, i32 1
  invoke void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40) %30, ptr noundef nonnull align 8 dereferenceable(40) %143)
          to label %144 unwind label %165

144:                                              ; preds = %140
  invoke void @_Z16convert_position13strcoordinate(ptr dead_on_unwind writable sret(%struct.breakpoint_str) align 8 %29, ptr noundef %30)
          to label %145 unwind label %169

145:                                              ; preds = %144
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %30) #7
  call void @llvm.lifetime.start.p0(i64 40, ptr %31) #7
  %146 = load i64, ptr %28, align 8, !tbaa !26
  %147 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %146) #7
  %148 = getelementptr inbounds %struct.strvcfentry, ptr %147, i32 0, i32 2
  invoke void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40) %32, ptr noundef nonnull align 8 dereferenceable(40) %148)
          to label %149 unwind label %173

149:                                              ; preds = %145
  invoke void @_Z16convert_position13strcoordinate(ptr dead_on_unwind writable sret(%struct.breakpoint_str) align 8 %31, ptr noundef %32)
          to label %150 unwind label %177

150:                                              ; preds = %149
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %32) #7
  %151 = load i64, ptr %28, align 8, !tbaa !26
  %152 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %151) #7
  %153 = getelementptr inbounds %struct.strvcfentry, ptr %152, i32 0, i32 3
  %154 = load i16, ptr %153, align 8, !tbaa !27
  %155 = sext i16 %154 to i32
  %156 = icmp eq i32 %155, 4
  br i1 %156, label %157, label %181

157:                                              ; preds = %150
  %158 = load i64, ptr %28, align 8, !tbaa !26
  %159 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %158) #7
  %160 = getelementptr inbounds %struct.strvcfentry, ptr %159, i32 0, i32 14
  %161 = load i32, ptr %160, align 8, !tbaa !46
  %162 = getelementptr inbounds %struct.breakpoint_str, ptr %31, i32 0, i32 1
  %163 = load i32, ptr %162, align 8, !tbaa !47
  %164 = add nsw i32 %163, %161
  store i32 %164, ptr %162, align 8, !tbaa !47
  br label %181

165:                                              ; preds = %140
  %166 = landingpad { ptr, i32 }
          cleanup
  %167 = extractvalue { ptr, i32 } %166, 0
  store ptr %167, ptr %19, align 8
  %168 = extractvalue { ptr, i32 } %166, 1
  store i32 %168, ptr %20, align 4
  br label %263

169:                                              ; preds = %144
  %170 = landingpad { ptr, i32 }
          cleanup
  %171 = extractvalue { ptr, i32 } %170, 0
  store ptr %171, ptr %19, align 8
  %172 = extractvalue { ptr, i32 } %170, 1
  store i32 %172, ptr %20, align 4
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %30) #7
  br label %263

173:                                              ; preds = %145
  %174 = landingpad { ptr, i32 }
          cleanup
  %175 = extractvalue { ptr, i32 } %174, 0
  store ptr %175, ptr %19, align 8
  %176 = extractvalue { ptr, i32 } %174, 1
  store i32 %176, ptr %20, align 4
  br label %262

177:                                              ; preds = %149
  %178 = landingpad { ptr, i32 }
          cleanup
  %179 = extractvalue { ptr, i32 } %178, 0
  store ptr %179, ptr %19, align 8
  %180 = extractvalue { ptr, i32 } %178, 1
  store i32 %180, ptr %20, align 4
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %32) #7
  br label %262

181:                                              ; preds = %157, %150
  call void @llvm.lifetime.start.p0(i64 192, ptr %33) #7
  invoke void @_ZN13meta_data_strC2Ev(ptr noundef nonnull align 8 dereferenceable(192) %33)
          to label %182 unwind label %234

182:                                              ; preds = %181
  %183 = load i64, ptr %24, align 8, !tbaa !26
  %184 = trunc i64 %183 to i32
  %185 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 0
  store i32 %184, ptr %185, align 8, !tbaa !49
  %186 = load i64, ptr %28, align 8, !tbaa !26
  %187 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %186) #7
  %188 = getelementptr inbounds %struct.strvcfentry, ptr %187, i32 0, i32 13
  %189 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 2
  %190 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %189, ptr noundef nonnull align 8 dereferenceable(32) %188)
          to label %191 unwind label %238

191:                                              ; preds = %182
  %192 = load i64, ptr %28, align 8, !tbaa !26
  %193 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %192) #7
  %194 = getelementptr inbounds %struct.strvcfentry, ptr %193, i32 0, i32 19
  %195 = load i32, ptr %194, align 8, !tbaa !51
  %196 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 5
  store i32 %195, ptr %196, align 8, !tbaa !52
  %197 = load i64, ptr %28, align 8, !tbaa !26
  %198 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %197) #7
  %199 = getelementptr inbounds %struct.strvcfentry, ptr %198, i32 0, i32 11
  %200 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 6
  %201 = invoke noundef nonnull align 4 dereferenceable(8) ptr @_ZNSt4pairIiiEaSERKS0_(ptr noundef nonnull align 4 dereferenceable(8) %200, ptr noundef nonnull align 4 dereferenceable(8) %199)
          to label %202 unwind label %238

202:                                              ; preds = %191
  %203 = load i64, ptr %28, align 8, !tbaa !26
  %204 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %203) #7
  %205 = getelementptr inbounds %struct.strvcfentry, ptr %204, i32 0, i32 14
  %206 = load i32, ptr %205, align 8, !tbaa !46
  %207 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 3
  store i32 %206, ptr %207, align 8, !tbaa !53
  %208 = load i64, ptr %28, align 8, !tbaa !26
  %209 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %208) #7
  %210 = getelementptr inbounds %struct.strvcfentry, ptr %209, i32 0, i32 18
  %211 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 4
  %212 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %211, ptr noundef nonnull align 8 dereferenceable(32) %210)
          to label %213 unwind label %238

213:                                              ; preds = %202
  %214 = load i64, ptr %28, align 8, !tbaa !26
  %215 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %214) #7
  %216 = getelementptr inbounds %struct.strvcfentry, ptr %215, i32 0, i32 16
  %217 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 7
  %218 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %217, ptr noundef nonnull align 8 dereferenceable(32) %216)
          to label %219 unwind label %238

219:                                              ; preds = %213
  %220 = load i64, ptr %28, align 8, !tbaa !26
  %221 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %220) #7
  %222 = getelementptr inbounds %struct.strvcfentry, ptr %221, i32 0, i32 21
  %223 = getelementptr inbounds %struct.meta_data_str, ptr %33, i32 0, i32 8
  %224 = invoke noundef nonnull align 8 dereferenceable(64) ptr @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_EaSERKS6_(ptr noundef nonnull align 8 dereferenceable(64) %223, ptr noundef nonnull align 8 dereferenceable(64) %222)
          to label %225 unwind label %238

225:                                              ; preds = %219
  %226 = getelementptr inbounds %struct.breakpoint_str, ptr %29, i32 0, i32 1
  %227 = load i32, ptr %226, align 8, !tbaa !47
  %228 = icmp eq i32 %227, 151164
  br i1 %228, label %229, label %242

229:                                              ; preds = %225
  %230 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.85)
          to label %231 unwind label %238

231:                                              ; preds = %229
  %232 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %230, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %233 unwind label %238

233:                                              ; preds = %231
  br label %242

234:                                              ; preds = %181
  %235 = landingpad { ptr, i32 }
          cleanup
  %236 = extractvalue { ptr, i32 } %235, 0
  store ptr %236, ptr %19, align 8
  %237 = extractvalue { ptr, i32 } %235, 1
  store i32 %237, ptr %20, align 4
  br label %261

238:                                              ; preds = %242, %231, %229, %219, %213, %202, %191, %182
  %239 = landingpad { ptr, i32 }
          cleanup
  %240 = extractvalue { ptr, i32 } %239, 0
  store ptr %240, ptr %19, align 8
  %241 = extractvalue { ptr, i32 } %239, 1
  store i32 %241, ptr %20, align 4
  br label %260

242:                                              ; preds = %233, %225
  %243 = load i64, ptr %28, align 8, !tbaa !26
  %244 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %243) #7
  %245 = getelementptr inbounds %struct.strvcfentry, ptr %244, i32 0, i32 3
  %246 = load i16, ptr %245, align 8, !tbaa !27
  %247 = load i64, ptr %28, align 8, !tbaa !26
  %248 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %27, i64 noundef %247) #7
  %249 = getelementptr inbounds %struct.strvcfentry, ptr %248, i32 0, i32 9
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %34, ptr align 8 %249, i64 2, i1 false)
  invoke void @_ZN13meta_data_strC2ERKS_(ptr noundef nonnull align 8 dereferenceable(192) %35, ptr noundef nonnull align 8 dereferenceable(192) %33)
          to label %250 unwind label %238

250:                                              ; preds = %242
  %251 = load i16, ptr %34, align 1
  invoke void @_ZN13IntervallTree6insertER14breakpoint_strS1_sSt4pairIbbE13meta_data_strRP5TNode(ptr noundef nonnull align 1 dereferenceable(1) %21, ptr noundef nonnull align 8 dereferenceable(36) %29, ptr noundef nonnull align 8 dereferenceable(36) %31, i16 noundef signext %246, i16 %251, ptr noundef %35, ptr noundef nonnull align 8 dereferenceable(8) %22)
          to label %252 unwind label %256

252:                                              ; preds = %250
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %35) #7
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %33) #7
  call void @llvm.lifetime.end.p0(i64 192, ptr %33) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %31) #7
  call void @llvm.lifetime.end.p0(i64 40, ptr %31) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %29) #7
  call void @llvm.lifetime.end.p0(i64 40, ptr %29) #7
  br label %253

253:                                              ; preds = %252
  %254 = load i64, ptr %28, align 8, !tbaa !26
  %255 = add i64 %254, 1
  store i64 %255, ptr %28, align 8, !tbaa !26
  br label %119, !llvm.loop !54

256:                                              ; preds = %250
  %257 = landingpad { ptr, i32 }
          cleanup
  %258 = extractvalue { ptr, i32 } %257, 0
  store ptr %258, ptr %19, align 8
  %259 = extractvalue { ptr, i32 } %257, 1
  store i32 %259, ptr %20, align 4
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %35) #7
  br label %260

260:                                              ; preds = %256, %238
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %33) #7
  br label %261

261:                                              ; preds = %260, %234
  call void @llvm.lifetime.end.p0(i64 192, ptr %33) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %31) #7
  br label %262

262:                                              ; preds = %261, %177, %173
  call void @llvm.lifetime.end.p0(i64 40, ptr %31) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %29) #7
  br label %263

263:                                              ; preds = %262, %169, %165
  call void @llvm.lifetime.end.p0(i64 40, ptr %29) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #7
  br label %268

264:                                              ; preds = %123
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EE5clearEv(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %27) #7
  br label %265

265:                                              ; preds = %264
  %266 = load i64, ptr %24, align 8, !tbaa !26
  %267 = add i64 %266, 1
  store i64 %267, ptr %24, align 8, !tbaa !26
  br label %90, !llvm.loop !56

268:                                              ; preds = %263, %136
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %27) #7
  br label %269

269:                                              ; preds = %268, %132
  call void @llvm.lifetime.end.p0(i64 24, ptr %27) #7
  br label %270

270:                                              ; preds = %269, %128, %124
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #7
  br label %438

271:                                              ; preds = %94
  call void @llvm.lifetime.start.p0(i64 48, ptr %36) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEEC2Ev(ptr noundef nonnull align 8 dereferenceable(48) %36) #7
  %272 = load ptr, ptr %22, align 8, !tbaa !5
  invoke void @_ZN13IntervallTree15get_breakpointsEP5TNodeRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISB_EESt4lessIS8_ESaISt4pairIKS8_SD_EEE(ptr noundef nonnull align 1 dereferenceable(1) %21, ptr noundef %272, ptr noundef nonnull align 8 dereferenceable(48) %36)
          to label %273 unwind label %287

273:                                              ; preds = %271
  call void @llvm.lifetime.start.p0(i64 8, ptr %37) #7
  %274 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #7
  %275 = invoke noalias ptr @fopen(ptr noundef %274, ptr noundef @.str.86)
          to label %276 unwind label %291

276:                                              ; preds = %273
  store ptr %275, ptr %37, align 8, !tbaa !5
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2ERKS7_(ptr noundef nonnull align 8 dereferenceable(24) %38, ptr noundef nonnull align 8 dereferenceable(24) %17)
          to label %277 unwind label %291

277:                                              ; preds = %276
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %39, ptr noundef nonnull align 8 dereferenceable(48) %23)
          to label %278 unwind label %295

278:                                              ; preds = %277
  invoke void @_Z12print_headerRP8_IO_FILESt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EESt3mapIS8_iSt4lessIS8_ESaISt4pairIKS8_iEEE(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef %38, ptr noundef %39)
          to label %279 unwind label %299

279:                                              ; preds = %278
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %39) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #7
  store i32 0, ptr %40, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 24, ptr %41) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #7
  %280 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48) %36) #7
  %281 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.45", ptr %42, i32 0, i32 0
  store ptr %280, ptr %281, align 8
  br label %282

282:                                              ; preds = %308, %279
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #7
  %283 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %36) #7
  %284 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.45", ptr %43, i32 0, i32 0
  store ptr %283, ptr %284, align 8
  %285 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEESG_(ptr noundef nonnull align 8 dereferenceable(8) %42, ptr noundef nonnull align 8 dereferenceable(8) %43) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #7
  br i1 %285, label %304, label %286

286:                                              ; preds = %282
  store i32 8, ptr %25, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #7
  br label %315

287:                                              ; preds = %271
  %288 = landingpad { ptr, i32 }
          cleanup
  %289 = extractvalue { ptr, i32 } %288, 0
  store ptr %289, ptr %19, align 8
  %290 = extractvalue { ptr, i32 } %288, 1
  store i32 %290, ptr %20, align 4
  br label %437

291:                                              ; preds = %276, %273
  %292 = landingpad { ptr, i32 }
          cleanup
  %293 = extractvalue { ptr, i32 } %292, 0
  store ptr %293, ptr %19, align 8
  %294 = extractvalue { ptr, i32 } %292, 1
  store i32 %294, ptr %20, align 4
  br label %436

295:                                              ; preds = %277
  %296 = landingpad { ptr, i32 }
          cleanup
  %297 = extractvalue { ptr, i32 } %296, 0
  store ptr %297, ptr %19, align 8
  %298 = extractvalue { ptr, i32 } %296, 1
  store i32 %298, ptr %20, align 4
  br label %303

299:                                              ; preds = %278
  %300 = landingpad { ptr, i32 }
          cleanup
  %301 = extractvalue { ptr, i32 } %300, 0
  store ptr %301, ptr %19, align 8
  %302 = extractvalue { ptr, i32 } %300, 1
  store i32 %302, ptr %20, align 4
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %39) #7
  br label %303

303:                                              ; preds = %299, %295
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %38) #7
  br label %436

304:                                              ; preds = %282
  %305 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %42) #7
  %306 = getelementptr inbounds %"struct.std::pair.46", ptr %305, i32 0, i32 0
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %41, ptr noundef nonnull align 8 dereferenceable(32) %306)
          to label %307 unwind label %311

307:                                              ; preds = %304
  br label %308

308:                                              ; preds = %307
  %309 = call ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEEppEi(ptr noundef nonnull align 8 dereferenceable(8) %42, i32 noundef 0) #7
  %310 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.45", ptr %44, i32 0, i32 0
  store ptr %309, ptr %310, align 8
  br label %282, !llvm.loop !57

311:                                              ; preds = %304
  %312 = landingpad { ptr, i32 }
          cleanup
  %313 = extractvalue { ptr, i32 } %312, 0
  store ptr %313, ptr %19, align 8
  %314 = extractvalue { ptr, i32 } %312, 1
  store i32 %314, ptr %20, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #7
  br label %435

315:                                              ; preds = %286
  %316 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  %317 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.53", ptr %45, i32 0, i32 0
  store ptr %316, ptr %317, align 8
  %318 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  %319 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.53", ptr %46, i32 0, i32 0
  store ptr %318, ptr %319, align 8
  %320 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.53", ptr %45, i32 0, i32 0
  %321 = load ptr, ptr %320, align 8
  %322 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.53", ptr %46, i32 0, i32 0
  %323 = load ptr, ptr %322, align 8
  invoke void @_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS7_SaIS7_EEEEPFbRKS7_SE_EEvT_SH_T0_(ptr %321, ptr %323, ptr noundef @_Z22numeric_string_compareRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_)
          to label %324 unwind label %330

324:                                              ; preds = %315
  call void @llvm.lifetime.start.p0(i64 8, ptr %47) #7
  store i64 0, ptr %47, align 8, !tbaa !26
  br label %325

325:                                              ; preds = %427, %324
  %326 = load i64, ptr %47, align 8, !tbaa !26
  %327 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  %328 = icmp ult i64 %326, %327
  br i1 %328, label %334, label %329

329:                                              ; preds = %325
  store i32 11, ptr %25, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #7
  br label %431

330:                                              ; preds = %431, %315
  %331 = landingpad { ptr, i32 }
          cleanup
  %332 = extractvalue { ptr, i32 } %331, 0
  store ptr %332, ptr %19, align 8
  %333 = extractvalue { ptr, i32 } %331, 1
  store i32 %333, ptr %20, align 4
  br label %435

334:                                              ; preds = %325
  call void @llvm.lifetime.start.p0(i64 24, ptr %48) #7
  %335 = load i64, ptr %47, align 8, !tbaa !26
  %336 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %41, i64 noundef %335) #7
  %337 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEEixERSE_(ptr noundef nonnull align 8 dereferenceable(48) %36, ptr noundef nonnull align 8 dereferenceable(32) %336)
          to label %338 unwind label %344

338:                                              ; preds = %334
  invoke void @_ZNSt6vectorIP8SVS_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %48, ptr noundef nonnull align 8 dereferenceable(24) %337)
          to label %339 unwind label %344

339:                                              ; preds = %338
  call void @llvm.lifetime.start.p0(i64 8, ptr %49) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE6rbeginEv(ptr dead_on_unwind writable sret(%"class.std::reverse_iterator") align 8 %49, ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  br label %340

340:                                              ; preds = %418, %339
  call void @llvm.lifetime.start.p0(i64 8, ptr %50) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE4rendEv(ptr dead_on_unwind writable sret(%"class.std::reverse_iterator") align 8 %50, ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  %341 = invoke noundef zeroext i1 @_ZStneIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEbRKSt16reverse_iteratorIT_ESD_(ptr noundef nonnull align 8 dereferenceable(8) %49, ptr noundef nonnull align 8 dereferenceable(8) %50)
          to label %342 unwind label %348

342:                                              ; preds = %340
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #7
  br i1 %341, label %352, label %343

343:                                              ; preds = %342
  store i32 14, ptr %25, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #7
  br label %426

344:                                              ; preds = %338, %334
  %345 = landingpad { ptr, i32 }
          cleanup
  %346 = extractvalue { ptr, i32 } %345, 0
  store ptr %346, ptr %19, align 8
  %347 = extractvalue { ptr, i32 } %345, 1
  store i32 %347, ptr %20, align 4
  br label %430

348:                                              ; preds = %340
  %349 = landingpad { ptr, i32 }
          cleanup
  %350 = extractvalue { ptr, i32 } %349, 0
  store ptr %350, ptr %19, align 8
  %351 = extractvalue { ptr, i32 } %349, 1
  store i32 %351, ptr %20, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #7
  br label %425

352:                                              ; preds = %342
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #7
  %353 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %354 unwind label %374

354:                                              ; preds = %352
  %355 = load ptr, ptr %353, align 8, !tbaa !5
  %356 = getelementptr inbounds %class.SVS_Node, ptr %355, i32 0, i32 4
  invoke void @_ZNSt6vectorIP12Support_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %52, ptr noundef nonnull align 8 dereferenceable(24) %356)
          to label %357 unwind label %374

357:                                              ; preds = %354
  %358 = call noundef i32 @_Z11get_supportSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef %52)
  call void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %52) #7
  store i32 %358, ptr %51, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #7
  store i32 100000, ptr %53, align 4, !tbaa !11
  %359 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %360 unwind label %378

360:                                              ; preds = %357
  %361 = load ptr, ptr %359, align 8, !tbaa !5
  %362 = getelementptr inbounds %class.SVS_Node, ptr %361, i32 0, i32 0
  %363 = load i16, ptr %362, align 8, !tbaa !58
  %364 = sext i16 %363 to i32
  %365 = icmp ne i32 %364, 3
  br i1 %365, label %366, label %382

366:                                              ; preds = %360
  %367 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %368 unwind label %378

368:                                              ; preds = %366
  %369 = load ptr, ptr %367, align 8, !tbaa !5
  %370 = getelementptr inbounds %class.SVS_Node, ptr %369, i32 0, i32 4
  invoke void @_ZNSt6vectorIP12Support_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %54, ptr noundef nonnull align 8 dereferenceable(24) %370)
          to label %371 unwind label %378

371:                                              ; preds = %368
  %372 = call noundef double @_Z10get_avglenSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef %54)
  %373 = fptosi double %372 to i32
  store i32 %373, ptr %53, align 4, !tbaa !11
  call void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %54) #7
  br label %382

374:                                              ; preds = %354, %352
  %375 = landingpad { ptr, i32 }
          cleanup
  %376 = extractvalue { ptr, i32 } %375, 0
  store ptr %376, ptr %19, align 8
  %377 = extractvalue { ptr, i32 } %375, 1
  store i32 %377, ptr %20, align 4
  br label %420

378:                                              ; preds = %368, %366, %357
  %379 = landingpad { ptr, i32 }
          cleanup
  %380 = extractvalue { ptr, i32 } %379, 0
  store ptr %380, ptr %19, align 8
  %381 = extractvalue { ptr, i32 } %379, 1
  store i32 %381, ptr %20, align 4
  br label %419

382:                                              ; preds = %371, %360
  call void @llvm.lifetime.start.p0(i64 2, ptr %55) #7
  %383 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %384 unwind label %396

384:                                              ; preds = %382
  %385 = load ptr, ptr %383, align 8, !tbaa !5
  %386 = getelementptr inbounds %class.SVS_Node, ptr %385, i32 0, i32 0
  %387 = load i16, ptr %386, align 8, !tbaa !58
  store i16 %387, ptr %55, align 2, !tbaa !64
  %388 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %389 unwind label %396

389:                                              ; preds = %384
  %390 = load ptr, ptr %388, align 8, !tbaa !5
  %391 = getelementptr inbounds %class.SVS_Node, ptr %390, i32 0, i32 0
  %392 = load i16, ptr %391, align 8, !tbaa !58
  %393 = sext i16 %392 to i32
  %394 = icmp eq i32 %393, -1
  br i1 %394, label %395, label %400

395:                                              ; preds = %389
  store i16 5, ptr %55, align 2, !tbaa !64
  br label %400

396:                                              ; preds = %410, %408, %384, %382
  %397 = landingpad { ptr, i32 }
          cleanup
  %398 = extractvalue { ptr, i32 } %397, 0
  store ptr %398, ptr %19, align 8
  %399 = extractvalue { ptr, i32 } %397, 1
  store i32 %399, ptr %20, align 4
  call void @llvm.lifetime.end.p0(i64 2, ptr %55) #7
  br label %419

400:                                              ; preds = %395, %389
  %401 = load i32, ptr %51, align 4, !tbaa !11
  %402 = load i32, ptr %11, align 4, !tbaa !11
  %403 = icmp sge i32 %401, %402
  br i1 %403, label %404, label %414

404:                                              ; preds = %400
  %405 = load i32, ptr %53, align 4, !tbaa !11
  %406 = load i32, ptr %15, align 4, !tbaa !11
  %407 = icmp sgt i32 %405, %406
  br i1 %407, label %408, label %414

408:                                              ; preds = %404
  %409 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %410 unwind label %396

410:                                              ; preds = %408
  %411 = load ptr, ptr %409, align 8, !tbaa !5
  %412 = load i32, ptr %40, align 4, !tbaa !11
  invoke void @_Z19print_entry_overlapRP8_IO_FILEP8SVS_Nodei(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef %411, i32 noundef %412)
          to label %413 unwind label %396

413:                                              ; preds = %410
  br label %414

414:                                              ; preds = %413, %404, %400
  %415 = load i32, ptr %40, align 4, !tbaa !11
  %416 = add nsw i32 %415, 1
  store i32 %416, ptr %40, align 4, !tbaa !11
  call void @llvm.lifetime.end.p0(i64 2, ptr %55) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #7
  br label %417

417:                                              ; preds = %414
  call void @llvm.lifetime.start.p0(i64 8, ptr %56) #7
  invoke void @_ZNSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEppEi(ptr dead_on_unwind writable sret(%"class.std::reverse_iterator") align 8 %56, ptr noundef nonnull align 8 dereferenceable(8) %49, i32 noundef 0)
          to label %418 unwind label %421

418:                                              ; preds = %417
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #7
  br label %340, !llvm.loop !65

419:                                              ; preds = %396, %378
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #7
  br label %420

420:                                              ; preds = %419, %374
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #7
  br label %425

421:                                              ; preds = %417
  %422 = landingpad { ptr, i32 }
          cleanup
  %423 = extractvalue { ptr, i32 } %422, 0
  store ptr %423, ptr %19, align 8
  %424 = extractvalue { ptr, i32 } %422, 1
  store i32 %424, ptr %20, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #7
  br label %425

425:                                              ; preds = %421, %420, %348
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  br label %430

426:                                              ; preds = %343
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %48) #7
  br label %427

427:                                              ; preds = %426
  %428 = load i64, ptr %47, align 8, !tbaa !26
  %429 = add i64 %428, 1
  store i64 %429, ptr %47, align 8, !tbaa !26
  br label %325, !llvm.loop !66

430:                                              ; preds = %425, %344
  call void @llvm.lifetime.end.p0(i64 24, ptr %48) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #7
  br label %435

431:                                              ; preds = %329
  %432 = load ptr, ptr %37, align 8, !tbaa !5
  %433 = invoke i32 @fclose(ptr noundef %432)
          to label %434 unwind label %330

434:                                              ; preds = %431
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %41) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %36) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr %36) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %23) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr %23) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #7
  ret void

435:                                              ; preds = %430, %330, %311
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %41) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr %41) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #7
  br label %436

436:                                              ; preds = %435, %303, %291
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #7
  br label %437

437:                                              ; preds = %436, %287
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %36) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr %36) #7
  br label %438

438:                                              ; preds = %437, %270
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %23) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr %23) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #7
  br label %439

439:                                              ; preds = %438, %99
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %17) #7
  br label %440

440:                                              ; preds = %439, %95
  call void @llvm.lifetime.end.p0(i64 24, ptr %17) #7
  br label %441

441:                                              ; preds = %440
  %442 = load ptr, ptr %19, align 8
  %443 = load i32, ptr %20, align 4
  %444 = insertvalue { ptr, i32 } poison, ptr %442, 0
  %445 = insertvalue { ptr, i32 } %444, i32 %443, 1
  resume { ptr, i32 } %445
}

declare void @_Z14parse_filenameNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind writable sret(%"class.std::vector.17") align 8, ptr noundef) #6

declare void @_Z9parse_vcfRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind writable sret(%"class.std::vector.30") align 8, ptr noundef nonnull align 8 dereferenceable(32), i32 noundef) #6

; 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 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13meta_data_strC2Ev(ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #5 align 2

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

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

declare void @_ZN13IntervallTree6insertER14breakpoint_strS1_sSt4pairIbbE13meta_data_strRP5TNode(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(36), ptr noundef nonnull align 8 dereferenceable(36), i16 noundef signext, i16, ptr noundef, ptr noundef nonnull align 8 dereferenceable(8)) #6

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13meta_data_strC2ERKS_(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #5 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #2 align 2

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

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

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

declare void @_ZN13IntervallTree15get_breakpointsEP5TNodeRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISB_EESt4lessIS8_ESaISt4pairIKS8_SD_EEE(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef, ptr noundef nonnull align 8 dereferenceable(48)) #6

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2ERKS7_(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 @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #1 align 2

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_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_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEESG_(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_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) #3 align 2

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS7_SaIS7_EEEEPFbRKS7_SE_EEvT_SH_T0_(ptr, ptr, ptr noundef) #5

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE6rbeginEv(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZStneIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEbRKSt16reverse_iteratorIT_ESD_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE4rendEv(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, ptr noundef nonnull align 8 dereferenceable(24)) #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEppEi(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) #3 align 2

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

declare i32 @fclose(ptr noundef) #6

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
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 = { 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 #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 = { nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #5 = { 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 #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 }

!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 = !{!"double", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"int", !7, i64 0}
!13 = !{!14, !12, i64 40}
!14 = !{!"_ZTS9Parameter", !15, i64 0, !10, i64 32, !12, i64 40, !18, i64 44, !18, i64 45, !18, i64 46, !12, i64 48, !19, i64 52, !12, i64 56}
!15 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !16, i64 0, !17, i64 8, !7, i64 16}
!16 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!17 = !{!"long", !7, i64 0}
!18 = !{!"bool", !7, i64 0}
!19 = !{!"float", !7, i64 0}
!20 = !{!14, !10, i64 32}
!21 = !{!14, !18, i64 44}
!22 = !{!14, !18, i64 45}
!23 = !{!14, !12, i64 48}
!24 = !{!14, !18, i64 46}
!25 = !{!14, !12, i64 56}
!26 = !{!17, !17, i64 0}
!27 = !{!28, !30, i64 112}
!28 = !{!"_ZTS11strvcfentry", !15, i64 0, !29, i64 32, !29, i64 72, !30, i64 112, !31, i64 120, !12, i64 168, !12, i64 172, !39, i64 176, !43, i64 200, !44, i64 204, !15, i64 216, !12, i64 248, !15, i64 256, !10, i64 288, !15, i64 296, !12, i64 328, !45, i64 336, !44, i64 400, !44, i64 408, !12, i64 416}
!29 = !{!"_ZTS13strcoordinate", !12, i64 0, !15, i64 8}
!30 = !{!"short", !7, i64 0}
!31 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE", !32, i64 0}
!32 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE", !33, i64 0}
!33 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !34, i64 0, !36, i64 8}
!34 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE", !35, i64 0}
!35 = !{!"_ZTSSt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE"}
!36 = !{!"_ZTSSt15_Rb_tree_header", !37, i64 0, !17, i64 32}
!37 = !{!"_ZTSSt18_Rb_tree_node_base", !38, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!38 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!39 = !{!"_ZTSSt6vectorIiSaIiEE", !40, i64 0}
!40 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !41, i64 0}
!41 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !42, i64 0}
!42 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!43 = !{!"_ZTSSt4pairIbbE", !18, i64 0, !18, i64 1}
!44 = !{!"_ZTSSt4pairIiiE", !12, i64 0, !12, i64 4}
!45 = !{!"_ZTSSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_E", !15, i64 0, !15, i64 32}
!46 = !{!28, !12, i64 248}
!47 = !{!48, !12, i64 32}
!48 = !{!"_ZTS14breakpoint_str", !15, i64 0, !12, i64 32}
!49 = !{!50, !12, i64 0}
!50 = !{!"_ZTS13meta_data_str", !12, i64 0, !30, i64 4, !15, i64 8, !12, i64 40, !15, i64 48, !12, i64 80, !44, i64 84, !15, i64 96, !45, i64 128}
!51 = !{!28, !12, i64 328}
!52 = !{!50, !12, i64 80}
!53 = !{!50, !12, i64 40}
!54 = distinct !{!54, !55}
!55 = !{!"llvm.loop.mustprogress"}
!56 = distinct !{!56, !55}
!57 = distinct !{!57, !55}
!58 = !{!59, !30, i64 0}
!59 = !{!"_ZTS8SVS_Node", !30, i64 0, !48, i64 8, !48, i64 48, !60, i64 88, !15, i64 112, !44, i64 144, !43, i64 152, !15, i64 160, !7, i64 192, !7, i64 197}
!60 = !{!"_ZTSSt6vectorIP12Support_NodeSaIS1_EE", !61, i64 0}
!61 = !{!"_ZTSSt12_Vector_baseIP12Support_NodeSaIS1_EE", !62, i64 0}
!62 = !{!"_ZTSNSt12_Vector_baseIP12Support_NodeSaIS1_EE12_Vector_implE", !63, i64 0}
!63 = !{!"_ZTSNSt12_Vector_baseIP12Support_NodeSaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!64 = !{!30, !30, i64 0}
!65 = distinct !{!65, !55}
!66 = distinct !{!66, !55}


; 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.breakpoint_str = type <{ %"class.std::__cxx11::basic_string", i32, [4 x i8] }>
%"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::vector.17" = type { %"struct.std::_Vector_base.18" }
%"struct.std::_Vector_base.18" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.IntervallTree = type { i8 }
%"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>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, 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>, int>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, int>>, 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.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl" }
%"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl" = type { %"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl_data" }
%"struct.std::_Vector_base<strvcfentry, std::allocator<strvcfentry>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.strcoordinate = type { i32, %"class.std::__cxx11::basic_string" }
%struct.meta_data_str = type { i32, i16, %"class.std::__cxx11::basic_string", i32, %"class.std::__cxx11::basic_string", i32, %"struct.std::pair.13", %"class.std::__cxx11::basic_string", %"struct.std::pair" }
%"struct.std::pair.13" = type { i32, i32 }
%"struct.std::pair" = type { %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string" }
%"class.std::map.40" = type { %"class.std::_Rb_tree.41" }
%"class.std::_Rb_tree.41" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>>, 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::vector<SVS_Node *>>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, std::vector<SVS_Node *>>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_iterator.45" = type { ptr }
%"class.std::vector.48" = type { %"struct.std::_Vector_base.49" }
%"struct.std::_Vector_base.49" = type { %"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl" }
%"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl" = type { %"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<SVS_Node *, std::allocator<SVS_Node *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::reverse_iterator" = type { %"class.__gnu_cxx::__normal_iterator.54" }
%"class.__gnu_cxx::__normal_iterator.54" = type { ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl" }
%"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl" = type { %"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<Support_Node *, std::allocator<Support_Node *>>::_Vector_impl_data" = type { ptr, ptr, ptr }

@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.84 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [2 x i8], align 1

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

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

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

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

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36)) unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef ptr @_ZN9Parameter8InstanceEv() local_unnamed_addr #1 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 noundef i32 @_Z11get_supportSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef) local_unnamed_addr #3

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_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(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

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

; 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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_Z10get_avglenSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef) local_unnamed_addr #3

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24)) unnamed_addr #3 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: mustprogress uwtable
declare dso_local noundef zeroext i1 @_Z22numeric_string_compareRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #1

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_Z17combine_calls_svsNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEdiiiiiS4_(ptr noundef nonnull %0, double noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4, i32 noundef %5, i32 noundef %6, ptr noundef %7) local_unnamed_addr #1 personality ptr @__gxx_personality_v0 {
  %9 = alloca %"class.std::vector.17", align 8
  %10 = alloca %"class.std::__cxx11::basic_string", align 8
  %11 = alloca %class.IntervallTree, align 1
  %12 = alloca ptr, align 8
  %13 = alloca %"class.std::map", align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::vector.30", align 8
  %16 = alloca %struct.breakpoint_str, align 8
  %17 = alloca %struct.strcoordinate, align 8
  %18 = alloca %struct.breakpoint_str, align 8
  %19 = alloca %struct.strcoordinate, align 8
  %20 = alloca %struct.meta_data_str, align 8
  %21 = alloca %struct.meta_data_str, align 8
  %22 = alloca %"class.std::map.40", align 8
  %23 = alloca ptr, align 8
  %24 = alloca %"class.std::vector.17", align 8
  %25 = alloca %"class.std::map", align 8
  %26 = alloca %"class.std::vector.17", align 8
  %27 = alloca %"struct.std::_Rb_tree_iterator.45", align 8
  %28 = alloca %"struct.std::_Rb_tree_iterator.45", align 8
  %29 = alloca %"class.std::vector.48", align 8
  %30 = alloca %"class.std::reverse_iterator", align 8
  %31 = alloca %"class.std::reverse_iterator", align 8
  %32 = alloca %"class.std::vector", align 8
  %33 = alloca %"class.std::vector", align 8
  %34 = alloca %"class.std::reverse_iterator", align 8
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %9) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %10, ptr noundef nonnull align 8 dereferenceable(32) %0)
  invoke void @_Z14parse_filenameNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.17") align 8 %9, ptr noundef nonnull %10)
          to label %35 unwind label %74

35:                                               ; preds = %8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %10) #7
  %36 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  %37 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %38 unwind label %76

38:                                               ; preds = %35
  %39 = trunc i64 %36 to i32
  %40 = getelementptr inbounds i8, ptr %37, i64 40
  store i32 %39, ptr %40, align 8, !tbaa !5
  %41 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %42 unwind label %76

42:                                               ; preds = %38
  %43 = getelementptr inbounds i8, ptr %41, i64 32
  store double %1, ptr %43, align 8, !tbaa !17
  %44 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %45 unwind label %76

45:                                               ; preds = %42
  %46 = icmp eq i32 %3, 1
  %47 = getelementptr inbounds i8, ptr %44, i64 44
  %48 = zext i1 %46 to i8
  store i8 %48, ptr %47, align 4, !tbaa !18
  %49 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %50 unwind label %76

50:                                               ; preds = %45
  %51 = icmp eq i32 %4, 1
  %52 = getelementptr inbounds i8, ptr %49, i64 45
  %53 = zext i1 %51 to i8
  store i8 %53, ptr %52, align 1, !tbaa !19
  %54 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %55 unwind label %76

55:                                               ; preds = %50
  %56 = getelementptr inbounds i8, ptr %54, i64 48
  store i32 %6, ptr %56, align 8, !tbaa !20
  %57 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %58 unwind label %76

58:                                               ; preds = %55
  %59 = getelementptr inbounds i8, ptr %57, i64 46
  store i8 0, ptr %59, align 2, !tbaa !21
  %60 = invoke noundef ptr @_ZN9Parameter8InstanceEv()
          to label %61 unwind label %76

61:                                               ; preds = %58
  %62 = getelementptr inbounds i8, ptr %60, i64 56
  store i32 %2, ptr %62, align 8, !tbaa !22
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %11) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %12) #7
  store ptr null, ptr %12, align 8, !tbaa !23
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %13) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2Ev(ptr noundef nonnull align 8 dereferenceable(48) %13) #7
  %63 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  %.not102 = icmp eq i64 %63, 0
  br i1 %.not102, label %._crit_edge94, label %.lr.ph93

.lr.ph93:                                         ; preds = %61
  %64 = getelementptr inbounds i8, ptr %18, i64 32
  %65 = getelementptr inbounds i8, ptr %20, i64 8
  %66 = getelementptr inbounds i8, ptr %20, i64 80
  %67 = getelementptr inbounds i8, ptr %20, i64 84
  %68 = getelementptr inbounds i8, ptr %20, i64 40
  %69 = getelementptr inbounds i8, ptr %20, i64 48
  %70 = getelementptr inbounds i8, ptr %20, i64 96
  %71 = getelementptr inbounds i8, ptr %20, i64 128
  %72 = getelementptr inbounds i8, ptr %16, i64 32
  br label %78

._crit_edge94:                                    ; preds = %._crit_edge, %61
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %22) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEEC2Ev(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  %73 = load ptr, ptr %12, align 8, !tbaa !23
  invoke void @_ZN13IntervallTree15get_breakpointsEP5TNodeRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISB_EESt4lessIS8_ESaISt4pairIKS8_SD_EEE(ptr noundef nonnull align 1 dereferenceable(1) %11, ptr noundef %73, ptr noundef nonnull align 8 dereferenceable(48) %22)
          to label %186 unwind label %198

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

76:                                               ; preds = %58, %55, %50, %45, %42, %38, %35
  %77 = landingpad { ptr, i32 }
          cleanup
  br label %270

78:                                               ; preds = %.lr.ph93, %._crit_edge
  %.05991 = phi i64 [ 0, %.lr.ph93 ], [ %92, %._crit_edge ]
  %79 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %.05991) #7
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull align 8 dereferenceable(32) %79)
          to label %80 unwind label %95

80:                                               ; preds = %78
  invoke void @_Z16parse_vcf_headerRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEES5_(ptr noundef nonnull align 8 dereferenceable(48) %13, ptr noundef nonnull %14)
          to label %81 unwind label %97

81:                                               ; preds = %80
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %15) #7
  %82 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %.05991) #7
  invoke void @_Z9parse_vcfRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind nonnull writable sret(%"class.std::vector.30") align 8 %15, ptr noundef nonnull align 8 dereferenceable(32) %82, i32 noundef %6)
          to label %83 unwind label %99

83:                                               ; preds = %81
  %84 = 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.84)
          to label %85 unwind label %101

85:                                               ; preds = %83
  %86 = call noundef i64 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  %87 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEm(ptr noundef nonnull align 8 dereferenceable(8) %84, i64 noundef %86)
          to label %88 unwind label %101

88:                                               ; preds = %85
  %89 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %87, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %.preheader85 unwind label %101

.preheader85:                                     ; preds = %88
  %90 = call noundef i64 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  %.not103 = icmp eq i64 %90, 0
  br i1 %.not103, label %._crit_edge, label %.lr.ph

.lr.ph:                                           ; preds = %.preheader85
  %91 = trunc i64 %.05991 to i32
  br label %103

._crit_edge:                                      ; preds = %174, %.preheader85
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EE5clearEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  %92 = add nuw i64 %.05991, 1
  %93 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  %94 = icmp ult i64 %92, %93
  br i1 %94, label %78, label %._crit_edge94, !llvm.loop !24

95:                                               ; preds = %78
  %96 = landingpad { ptr, i32 }
          cleanup
  br label %269

97:                                               ; preds = %80
  %98 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #7
  br label %269

99:                                               ; preds = %81
  %100 = landingpad { ptr, i32 }
          cleanup
  br label %185

101:                                              ; preds = %88, %85, %83
  %102 = landingpad { ptr, i32 }
          cleanup
  br label %184

103:                                              ; preds = %.lr.ph, %174
  %.06290 = phi i64 [ 0, %.lr.ph ], [ %175, %174 ]
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %16) #7
  %104 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %105 = getelementptr inbounds i8, ptr %104, i64 32
  invoke void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40) %17, ptr noundef nonnull align 8 dereferenceable(40) %105)
          to label %106 unwind label %122

106:                                              ; preds = %103
  invoke void @_Z16convert_position13strcoordinate(ptr dead_on_unwind nonnull writable sret(%struct.breakpoint_str) align 8 %16, ptr noundef nonnull %17)
          to label %107 unwind label %124

107:                                              ; preds = %106
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %17) #7
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %18) #7
  %108 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %109 = getelementptr inbounds i8, ptr %108, i64 72
  invoke void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40) %19, ptr noundef nonnull align 8 dereferenceable(40) %109)
          to label %110 unwind label %126

110:                                              ; preds = %107
  invoke void @_Z16convert_position13strcoordinate(ptr dead_on_unwind nonnull writable sret(%struct.breakpoint_str) align 8 %18, ptr noundef nonnull %19)
          to label %111 unwind label %128

111:                                              ; preds = %110
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %19) #7
  %112 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %113 = getelementptr inbounds i8, ptr %112, i64 112
  %114 = load i16, ptr %113, align 8, !tbaa !26
  %115 = icmp eq i16 %114, 4
  br i1 %115, label %116, label %130

116:                                              ; preds = %111
  %117 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %118 = getelementptr inbounds i8, ptr %117, i64 248
  %119 = load i32, ptr %118, align 8, !tbaa !45
  %120 = load i32, ptr %64, align 8, !tbaa !46
  %121 = add nsw i32 %120, %119
  store i32 %121, ptr %64, align 8, !tbaa !46
  br label %130

122:                                              ; preds = %103
  %123 = landingpad { ptr, i32 }
          cleanup
  br label %183

124:                                              ; preds = %106
  %125 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %17) #7
  br label %183

126:                                              ; preds = %107
  %127 = landingpad { ptr, i32 }
          cleanup
  br label %182

128:                                              ; preds = %110
  %129 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40) %19) #7
  br label %182

130:                                              ; preds = %116, %111
  call void @llvm.lifetime.start.p0(i64 192, ptr nonnull %20) #7
  invoke void @_ZN13meta_data_strC2Ev(ptr noundef nonnull align 8 dereferenceable(192) %20)
          to label %131 unwind label %163

131:                                              ; preds = %130
  store i32 %91, ptr %20, align 8, !tbaa !48
  %132 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %133 = getelementptr inbounds i8, ptr %132, i64 216
  %134 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef nonnull align 8 dereferenceable(32) %133)
          to label %135 unwind label %165

135:                                              ; preds = %131
  %136 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %137 = getelementptr inbounds i8, ptr %136, i64 328
  %138 = load i32, ptr %137, align 8, !tbaa !50
  store i32 %138, ptr %66, align 8, !tbaa !51
  %139 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %140 = getelementptr inbounds i8, ptr %139, i64 204
  %141 = call noundef nonnull align 4 dereferenceable(8) ptr @_ZNSt4pairIiiEaSERKS0_(ptr noundef nonnull align 4 dereferenceable(8) %67, ptr noundef nonnull align 4 dereferenceable(8) %140)
  %142 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %143 = getelementptr inbounds i8, ptr %142, i64 248
  %144 = load i32, ptr %143, align 8, !tbaa !45
  store i32 %144, ptr %68, align 8, !tbaa !52
  %145 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %146 = getelementptr inbounds i8, ptr %145, i64 296
  %147 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(32) %146)
          to label %148 unwind label %165

148:                                              ; preds = %135
  %149 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %150 = getelementptr inbounds i8, ptr %149, i64 256
  %151 = invoke noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull align 8 dereferenceable(32) %150)
          to label %152 unwind label %165

152:                                              ; preds = %148
  %153 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %154 = getelementptr inbounds i8, ptr %153, i64 336
  %155 = invoke noundef nonnull align 8 dereferenceable(64) ptr @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_EaSERKS6_(ptr noundef nonnull align 8 dereferenceable(64) %71, ptr noundef nonnull align 8 dereferenceable(64) %154)
          to label %156 unwind label %165

156:                                              ; preds = %152
  %157 = load i32, ptr %72, align 8, !tbaa !46
  %158 = icmp eq i32 %157, 151164
  br i1 %158, label %159, label %167

159:                                              ; preds = %156
  %160 = 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.85)
          to label %161 unwind label %165

161:                                              ; preds = %159
  %162 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %160, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
          to label %167 unwind label %165

163:                                              ; preds = %130
  %164 = landingpad { ptr, i32 }
          cleanup
  br label %181

165:                                              ; preds = %167, %161, %159, %152, %148, %135, %131
  %166 = landingpad { ptr, i32 }
          cleanup
  br label %180

167:                                              ; preds = %161, %156
  %168 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %169 = getelementptr inbounds i8, ptr %168, i64 112
  %170 = load i16, ptr %169, align 8, !tbaa !26
  %171 = call noundef nonnull align 8 dereferenceable(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %15, i64 noundef %.06290) #7
  %172 = getelementptr inbounds i8, ptr %171, i64 200
  %.sroa.09.0.copyload = load i16, ptr %172, align 8
  invoke void @_ZN13meta_data_strC2ERKS_(ptr noundef nonnull align 8 dereferenceable(192) %21, ptr noundef nonnull align 8 dereferenceable(192) %20)
          to label %173 unwind label %165

173:                                              ; preds = %167
  invoke void @_ZN13IntervallTree6insertER14breakpoint_strS1_sSt4pairIbbE13meta_data_strRP5TNode(ptr noundef nonnull align 1 dereferenceable(1) %11, ptr noundef nonnull align 8 dereferenceable(36) %16, ptr noundef nonnull align 8 dereferenceable(36) %18, i16 noundef signext %170, i16 %.sroa.09.0.copyload, ptr noundef nonnull %21, ptr noundef nonnull align 8 dereferenceable(8) %12)
          to label %174 unwind label %178

174:                                              ; preds = %173
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %21) #7
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %20) #7
  call void @llvm.lifetime.end.p0(i64 192, ptr nonnull %20) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %18) #7
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %18) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %16) #7
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %16) #7
  %175 = add nuw i64 %.06290, 1
  %176 = call noundef i64 @_ZNKSt6vectorI11strvcfentrySaIS0_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  %177 = icmp ult i64 %175, %176
  br i1 %177, label %103, label %._crit_edge, !llvm.loop !53

178:                                              ; preds = %173
  %179 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %21) #7
  br label %180

180:                                              ; preds = %178, %165
  %.pn74 = phi { ptr, i32 } [ %179, %178 ], [ %166, %165 ]
  call void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192) %20) #7
  br label %181

181:                                              ; preds = %180, %163
  %.pn74.pn = phi { ptr, i32 } [ %.pn74, %180 ], [ %164, %163 ]
  call void @llvm.lifetime.end.p0(i64 192, ptr nonnull %20) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %18) #7
  br label %182

182:                                              ; preds = %181, %128, %126
  %.pn74.pn.pn = phi { ptr, i32 } [ %.pn74.pn, %181 ], [ %129, %128 ], [ %127, %126 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %18) #7
  call void @_ZN14breakpoint_strD2Ev(ptr noundef nonnull align 8 dereferenceable(36) %16) #7
  br label %183

183:                                              ; preds = %182, %124, %122
  %.pn74.pn.pn.pn = phi { ptr, i32 } [ %.pn74.pn.pn, %182 ], [ %125, %124 ], [ %123, %122 ]
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %16) #7
  br label %184

184:                                              ; preds = %183, %101
  %.pn74.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn74.pn.pn.pn, %183 ], [ %102, %101 ]
  call void @_ZNSt6vectorI11strvcfentrySaIS0_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %15) #7
  br label %185

185:                                              ; preds = %184, %99
  %.pn74.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn74.pn.pn.pn.pn, %184 ], [ %100, %99 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %15) #7
  br label %269

186:                                              ; preds = %._crit_edge94
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %23) #7
  %187 = call noundef ptr @_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE5c_strEv(ptr noundef nonnull align 8 dereferenceable(32) %7) #7
  %188 = call noalias ptr @fopen(ptr noundef %187, ptr noundef nonnull @.str.86)
  store ptr %188, ptr %23, align 8, !tbaa !23
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2ERKS7_(ptr noundef nonnull align 8 dereferenceable(24) %24, ptr noundef nonnull align 8 dereferenceable(24) %9)
          to label %189 unwind label %200

189:                                              ; preds = %186
  invoke void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48) %25, ptr noundef nonnull align 8 dereferenceable(48) %13)
          to label %190 unwind label %202

190:                                              ; preds = %189
  invoke void @_Z12print_headerRP8_IO_FILESt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS8_EESt3mapIS8_iSt4lessIS8_ESaISt4pairIKS8_iEEE(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull %24, ptr noundef nonnull %25)
          to label %191 unwind label %204

191:                                              ; preds = %190
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %25) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #7
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %26) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %27) #7
  %192 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE5beginEv(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  store ptr %192, ptr %27, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %28) #7
  %193 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  store ptr %193, ptr %28, align 8
  %194 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEESG_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %28) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #7
  br i1 %194, label %.lr.ph96, label %._crit_edge97

._crit_edge97:                                    ; preds = %208, %191
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #7
  %195 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  %196 = call ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  invoke void @_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS7_SaIS7_EEEEPFbRKS7_SE_EEvT_SH_T0_(ptr %195, ptr %196, ptr noundef nonnull @_Z22numeric_string_compareRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_)
          to label %.preheader unwind label %216

.preheader:                                       ; preds = %._crit_edge97
  %197 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  %.not104 = icmp eq i64 %197, 0
  br i1 %.not104, label %._crit_edge101, label %.lr.ph100

198:                                              ; preds = %._crit_edge94
  %199 = landingpad { ptr, i32 }
          cleanup
  br label %268

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

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

204:                                              ; preds = %190
  %205 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %25) #7
  br label %206

206:                                              ; preds = %204, %202
  %.pn = phi { ptr, i32 } [ %205, %204 ], [ %203, %202 ]
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %24) #7
  br label %267

.lr.ph96:                                         ; preds = %191, %208
  %207 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %27) #7
  invoke void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE9push_backERKS5_(ptr noundef nonnull align 8 dereferenceable(24) %26, ptr noundef nonnull align 8 dereferenceable(32) %207)
          to label %208 unwind label %212

208:                                              ; preds = %.lr.ph96
  %209 = call ptr @_ZNSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEEppEi(ptr noundef nonnull align 8 dereferenceable(8) %27, i32 noundef 0) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %28) #7
  %210 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  store ptr %210, ptr %28, align 8
  %211 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEESG_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull align 8 dereferenceable(8) %28) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #7
  br i1 %211, label %.lr.ph96, label %._crit_edge97, !llvm.loop !54

212:                                              ; preds = %.lr.ph96
  %213 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #7
  br label %266

._crit_edge101:                                   ; preds = %225, %.preheader
  %214 = load ptr, ptr %23, align 8, !tbaa !23
  %215 = call i32 @fclose(ptr noundef %214)
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %22) #7
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %13) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %13) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %11) #7
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #7
  ret void

216:                                              ; preds = %._crit_edge97
  %217 = landingpad { ptr, i32 }
          cleanup
  br label %266

.lr.ph100:                                        ; preds = %.preheader, %225
  %.04099 = phi i64 [ %226, %225 ], [ 0, %.preheader ]
  %.06098 = phi i32 [ %.161, %225 ], [ 0, %.preheader ]
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %29) #7
  %218 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %26, i64 noundef %.04099) #7
  %219 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEEixERSE_(ptr noundef nonnull align 8 dereferenceable(48) %22, ptr noundef nonnull align 8 dereferenceable(32) %218)
          to label %220 unwind label %229

220:                                              ; preds = %.lr.ph100
  invoke void @_ZNSt6vectorIP8SVS_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %29, ptr noundef nonnull align 8 dereferenceable(24) %219)
          to label %221 unwind label %229

221:                                              ; preds = %220
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %30) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE6rbeginEv(ptr dead_on_unwind nonnull writable sret(%"class.std::reverse_iterator") align 8 %30, ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  br label %222

222:                                              ; preds = %262, %221
  %.161 = phi i32 [ %.06098, %221 ], [ %263, %262 ]
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %31) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE4rendEv(ptr dead_on_unwind nonnull writable sret(%"class.std::reverse_iterator") align 8 %31, ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  %223 = invoke noundef zeroext i1 @_ZStneIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEbRKSt16reverse_iteratorIT_ESD_(ptr noundef nonnull align 8 dereferenceable(8) %30, ptr noundef nonnull align 8 dereferenceable(8) %31)
          to label %224 unwind label %231

224:                                              ; preds = %222
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #7
  br i1 %223, label %233, label %225

225:                                              ; preds = %224
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #7
  %226 = add nuw i64 %.04099, 1
  %227 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  %228 = icmp ult i64 %226, %227
  br i1 %228, label %.lr.ph100, label %._crit_edge101, !llvm.loop !55

229:                                              ; preds = %220, %.lr.ph100
  %230 = landingpad { ptr, i32 }
          cleanup
  br label %265

231:                                              ; preds = %222
  %232 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #7
  br label %264

233:                                              ; preds = %224
  %234 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %235 = load ptr, ptr %234, align 8, !tbaa !23
  %236 = getelementptr inbounds i8, ptr %235, i64 88
  invoke void @_ZNSt6vectorIP12Support_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %32, ptr noundef nonnull align 8 dereferenceable(24) %236)
          to label %237 unwind label %249

237:                                              ; preds = %233
  %238 = call noundef i32 @_Z11get_supportSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef nonnull %32)
  call void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %32) #7
  %239 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %240 = load ptr, ptr %239, align 8, !tbaa !23
  %241 = load i16, ptr %240, align 8, !tbaa !56
  %.not = icmp eq i16 %241, 3
  br i1 %.not, label %253, label %242

242:                                              ; preds = %237
  %243 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %244 = load ptr, ptr %243, align 8, !tbaa !23
  %245 = getelementptr inbounds i8, ptr %244, i64 88
  invoke void @_ZNSt6vectorIP12Support_NodeSaIS1_EEC2ERKS3_(ptr noundef nonnull align 8 dereferenceable(24) %33, ptr noundef nonnull align 8 dereferenceable(24) %245)
          to label %246 unwind label %251

246:                                              ; preds = %242
  %247 = call noundef double @_Z10get_avglenSt6vectorIP12Support_NodeSaIS1_EE(ptr noundef nonnull %33)
  %248 = fptosi double %247 to i32
  call void @_ZNSt6vectorIP12Support_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %33) #7
  br label %253

249:                                              ; preds = %233
  %250 = landingpad { ptr, i32 }
          cleanup
  br label %264

251:                                              ; preds = %242
  %252 = landingpad { ptr, i32 }
          cleanup
  br label %264

253:                                              ; preds = %246, %237
  %.0 = phi i32 [ %248, %246 ], [ 100000, %237 ]
  %254 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %255 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %.not64 = icmp sge i32 %238, %2
  %256 = icmp sgt i32 %.0, %6
  %or.cond = select i1 %.not64, i1 %256, i1 false
  br i1 %or.cond, label %259, label %262

257:                                              ; preds = %259
  %258 = landingpad { ptr, i32 }
          cleanup
  br label %264

259:                                              ; preds = %253
  %260 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %30)
  %261 = load ptr, ptr %260, align 8, !tbaa !23
  invoke void @_Z19print_entry_overlapRP8_IO_FILEP8SVS_Nodei(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef %261, i32 noundef %.161)
          to label %262 unwind label %257

262:                                              ; preds = %259, %253
  %263 = add nsw i32 %.161, 1
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %34) #7
  call void @_ZNSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEppEi(ptr dead_on_unwind nonnull writable sret(%"class.std::reverse_iterator") align 8 %34, ptr noundef nonnull align 8 dereferenceable(8) %30, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %34) #7
  br label %222, !llvm.loop !62

264:                                              ; preds = %249, %257, %251, %231
  %.pn65.pn.pn = phi { ptr, i32 } [ %232, %231 ], [ %250, %249 ], [ %258, %257 ], [ %252, %251 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #7
  call void @_ZNSt6vectorIP8SVS_NodeSaIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %29) #7
  br label %265

265:                                              ; preds = %264, %229
  %.pn65.pn.pn.pn = phi { ptr, i32 } [ %.pn65.pn.pn, %264 ], [ %230, %229 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %29) #7
  br label %266

266:                                              ; preds = %265, %216, %212
  %.pn70 = phi { ptr, i32 } [ %213, %212 ], [ %.pn65.pn.pn.pn, %265 ], [ %217, %216 ]
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %26) #7
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %26) #7
  br label %267

267:                                              ; preds = %266, %206, %200
  %.pn70.pn = phi { ptr, i32 } [ %.pn70, %266 ], [ %.pn, %206 ], [ %201, %200 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #7
  br label %268

268:                                              ; preds = %267, %198
  %.pn70.pn.pn = phi { ptr, i32 } [ %.pn70.pn, %267 ], [ %199, %198 ]
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %22) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %22) #7
  br label %269

269:                                              ; preds = %95, %97, %185, %268
  %.pn74.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn70.pn.pn, %268 ], [ %.pn74.pn.pn.pn.pn.pn, %185 ], [ %98, %97 ], [ %96, %95 ]
  call void @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEED2Ev(ptr noundef nonnull align 8 dereferenceable(48) %13) #7
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %13) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %11) #7
  br label %270

270:                                              ; preds = %269, %76
  %.pn74.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn74.pn.pn.pn.pn.pn.pn.pn, %269 ], [ %77, %76 ]
  call void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #7
  br label %271

271:                                              ; preds = %270, %74
  %.pn74.pn.pn.pn.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn74.pn.pn.pn.pn.pn.pn.pn.pn, %270 ], [ %75, %74 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %9) #7
  resume { ptr, i32 } %.pn74.pn.pn.pn.pn.pn.pn.pn.pn.pn
}

declare void @_Z14parse_filenameNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr dead_on_unwind writable sret(%"class.std::vector.17") align 8, ptr noundef) local_unnamed_addr #5

declare void @_Z9parse_vcfRNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEi(ptr dead_on_unwind writable sret(%"class.std::vector.30") align 8, ptr noundef nonnull align 8 dereferenceable(32), 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 @_ZNKSt6vectorI11strvcfentrySaIS0_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(420) ptr @_ZNSt6vectorI11strvcfentrySaIS0_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13strcoordinateC2ERKS_(ptr noundef nonnull align 8 dereferenceable(40), ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN13strcoordinateD2Ev(ptr noundef nonnull align 8 dereferenceable(40)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13meta_data_strC2Ev(ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #4 align 2

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

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

declare void @_ZN13IntervallTree6insertER14breakpoint_strS1_sSt4pairIbbE13meta_data_strRP5TNode(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef nonnull align 8 dereferenceable(36), ptr noundef nonnull align 8 dereferenceable(36), i16 noundef signext, i16, ptr noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN13meta_data_strC2ERKS_(ptr noundef nonnull align 8 dereferenceable(192), ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZN13meta_data_strD2Ev(ptr noundef nonnull align 8 dereferenceable(192)) unnamed_addr #2 align 2

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

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

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

declare void @_ZN13IntervallTree15get_breakpointsEP5TNodeRSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISB_EESt4lessIS8_ESaISt4pairIKS8_SD_EEE(ptr noundef nonnull align 1 dereferenceable(1), ptr noundef, ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #5

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEC2ERKS7_(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 @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4lessIS5_ESaISt4pairIKS5_iEEEC2ERKSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(48)) unnamed_addr #1 align 2

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_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_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaISA_EEEESG_(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_traitsIcESaIcEEESt6vectorIP8SVS_NodeSaIS8_EESt4lessIS5_ESaISt4pairIKS5_SA_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #3 align 2

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZSt4sortIN9__gnu_cxx17__normal_iteratorIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS7_SaIS7_EEEEPFbRKS7_SE_EEvT_SH_T0_(ptr, ptr, ptr noundef) local_unnamed_addr #4

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE6rbeginEv(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #3 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt6vectorIP8SVS_NodeSaIS1_EE4rendEv(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, 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(8) ptr @_ZNKSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt16reverse_iteratorIN9__gnu_cxx17__normal_iteratorIPP8SVS_NodeSt6vectorIS3_SaIS3_EEEEEppEi(ptr dead_on_unwind noalias writable sret(%"class.std::reverse_iterator") align 8, ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) local_unnamed_addr #3 align 2

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

; Function Attrs: nofree nounwind
declare noundef i32 @fclose(ptr nocapture noundef) local_unnamed_addr #6

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
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 = { 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 #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 = { 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 #5 = { "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 = { 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 #7 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !14, i64 40}
!6 = !{!"_ZTS9Parameter", !7, i64 0, !13, i64 32, !14, i64 40, !15, i64 44, !15, i64 45, !15, i64 46, !14, i64 48, !16, i64 52, !14, i64 56}
!7 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !8, i64 0, !12, i64 8, !10, i64 16}
!8 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !9, i64 0}
!9 = !{!"any pointer", !10, i64 0}
!10 = !{!"omnipotent char", !11, i64 0}
!11 = !{!"Simple C++ TBAA"}
!12 = !{!"long", !10, i64 0}
!13 = !{!"double", !10, i64 0}
!14 = !{!"int", !10, i64 0}
!15 = !{!"bool", !10, i64 0}
!16 = !{!"float", !10, i64 0}
!17 = !{!6, !13, i64 32}
!18 = !{!6, !15, i64 44}
!19 = !{!6, !15, i64 45}
!20 = !{!6, !14, i64 48}
!21 = !{!6, !15, i64 46}
!22 = !{!6, !14, i64 56}
!23 = !{!9, !9, i64 0}
!24 = distinct !{!24, !25}
!25 = !{!"llvm.loop.mustprogress"}
!26 = !{!27, !29, i64 112}
!27 = !{!"_ZTS11strvcfentry", !7, i64 0, !28, i64 32, !28, i64 72, !29, i64 112, !30, i64 120, !14, i64 168, !14, i64 172, !38, i64 176, !42, i64 200, !43, i64 204, !7, i64 216, !14, i64 248, !7, i64 256, !13, i64 288, !7, i64 296, !14, i64 328, !44, i64 336, !43, i64 400, !43, i64 408, !14, i64 416}
!28 = !{!"_ZTS13strcoordinate", !14, i64 0, !7, i64 8}
!29 = !{!"short", !10, i64 0}
!30 = !{!"_ZTSSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_St4lessIS5_ESaISt4pairIKS5_S5_EEE", !31, i64 0}
!31 = !{!"_ZTSSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE", !32, i64 0}
!32 = !{!"_ZTSNSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_ESt4lessIS5_ESaIS8_EE13_Rb_tree_implISC_Lb1EEE", !33, i64 0, !35, i64 8}
!33 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEE", !34, i64 0}
!34 = !{!"_ZTSSt4lessINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE"}
!35 = !{!"_ZTSSt15_Rb_tree_header", !36, i64 0, !12, i64 32}
!36 = !{!"_ZTSSt18_Rb_tree_node_base", !37, i64 0, !9, i64 8, !9, i64 16, !9, i64 24}
!37 = !{!"_ZTSSt14_Rb_tree_color", !10, i64 0}
!38 = !{!"_ZTSSt6vectorIiSaIiEE", !39, i64 0}
!39 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !40, i64 0}
!40 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !41, i64 0}
!41 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !9, i64 0, !9, i64 8, !9, i64 16}
!42 = !{!"_ZTSSt4pairIbbE", !15, i64 0, !15, i64 1}
!43 = !{!"_ZTSSt4pairIiiE", !14, i64 0, !14, i64 4}
!44 = !{!"_ZTSSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES5_E", !7, i64 0, !7, i64 32}
!45 = !{!27, !14, i64 248}
!46 = !{!47, !14, i64 32}
!47 = !{!"_ZTS14breakpoint_str", !7, i64 0, !14, i64 32}
!48 = !{!49, !14, i64 0}
!49 = !{!"_ZTS13meta_data_str", !14, i64 0, !29, i64 4, !7, i64 8, !14, i64 40, !7, i64 48, !14, i64 80, !43, i64 84, !7, i64 96, !44, i64 128}
!50 = !{!27, !14, i64 328}
!51 = !{!49, !14, i64 80}
!52 = !{!49, !14, i64 40}
!53 = distinct !{!53, !25}
!54 = distinct !{!54, !25}
!55 = distinct !{!55, !25}
!56 = !{!57, !29, i64 0}
!57 = !{!"_ZTS8SVS_Node", !29, i64 0, !47, i64 8, !47, i64 48, !58, i64 88, !7, i64 112, !43, i64 144, !42, i64 152, !7, i64 160, !10, i64 192, !10, i64 197}
!58 = !{!"_ZTSSt6vectorIP12Support_NodeSaIS1_EE", !59, i64 0}
!59 = !{!"_ZTSSt12_Vector_baseIP12Support_NodeSaIS1_EE", !60, i64 0}
!60 = !{!"_ZTSNSt12_Vector_baseIP12Support_NodeSaIS1_EE12_Vector_implE", !61, i64 0}
!61 = !{!"_ZTSNSt12_Vector_baseIP12Support_NodeSaIS1_EE17_Vector_impl_dataE", !9, i64 0, !9, i64 8, !9, i64 16}
!62 = distinct !{!62, !25}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,SROAPass,SimplifyCFGPass