; LLVM IR from gem5/gem5 :: ext/mcpat/core.ll (ZN4Core14set_core_paramEv)

; 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 }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%class.McPATComponent = type { ptr, %class.Component, ptr, %class.InputParameter, %"class.std::__cxx11::basic_string", double, %"class.std::vector", %class.McPATOutput, %class.statsDef, %class.statsDef, %class.powerDef, %class.powerDef }
%class.Component = type { %class.Area, %class.powerDef, %class.powerDef, double, double }
%class.Area = type { double, double, double }
%class.InputParameter = type { i32, i32, i32, i32, i32, i8, i32, i32, i32, i32, i32, i32, double, double, i32, i32, i32, i32, i32, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i32, i32, i32, i32, i32, i32, i32, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i32, i32, i32, i8, i8, i32, i32, i8, double, double, i8, i32, i32, i8 }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<McPATComponent *, std::allocator<McPATComponent *>>::_Vector_impl" }
%"struct.std::_Vector_base<McPATComponent *, std::allocator<McPATComponent *>>::_Vector_impl" = type { %"struct.std::_Vector_base<McPATComponent *, std::allocator<McPATComponent *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<McPATComponent *, std::allocator<McPATComponent *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.McPATOutput = type { double, double, double, double, double, double }
%class.statsDef = type { %class.statsComponents, %class.statsComponents, %class.statsComponents, %class.statsComponents, %class.statsComponents, %class.statsComponents, %class.statsComponents }
%class.statsComponents = type { double, double, double }
%class.powerDef = type { %class.powerComponents, %class.powerComponents, %class.powerComponents }
%class.powerComponents = type { double, double, double, double, double }
%class.Core = type { %class.McPATComponent, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, %class.InputParameter, double, double, double, %class.CoreParameters, %class.CoreStatistics }
%class.CoreParameters = type { i8, i8, i8, i32, i32, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, i32, i32, i32, i32, i8, i8, [4 x double], i32, i32, i32, i32, i32, i32, i32, double, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, i32, double, double }
%class.CoreStatistics = type { double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double }

@.str.3 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN14McPATComponent21virtual_address_widthE = external global i32, align 4
@.str.14 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN14McPATComponent15data_path_widthE = external global i32, align 4
@_ZN14McPATComponent22physical_address_widthE = external global i32, align 4
@.str.89 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.101 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.102 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.103 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.104 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.105 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.106 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.107 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.108 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.109 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.110 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.111 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.112 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.113 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.114 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.115 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.116 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.117 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.119 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.128 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.129 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.130 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.131 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.132 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.133 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.134 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.135 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.136 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.137 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.138 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.139 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.140 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.141 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.142 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.143 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.144 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.145 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.146 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.147 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.148 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.149 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.150 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.151 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.152 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.153 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.154 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.155 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.156 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.157 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.158 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.159 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.160 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.161 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.162 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.163 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.164 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.165 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.166 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.167 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.168 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.169 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.170 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.171 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.172 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.173 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.174 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.175 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.176 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.177 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.178 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.179 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.180 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.181 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.182 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.183 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.184 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.185 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.186 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.187 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.188 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.189 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.190 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.191 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.192 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.193 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.194 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.195 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.196 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.197 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.198 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.199 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.200 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.201 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.202 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.203 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.204 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.205 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.206 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.207 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.208 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.209 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.210 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.211 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.212 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.213 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.214 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.215 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.216 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.217 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.218 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.219 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.220 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.221 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.222 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.223 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.224 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.225 = external hidden unnamed_addr constant [61 x i8], align 1
@__PRETTY_FUNCTION__._ZN4Core14set_core_paramEv = external hidden unnamed_addr constant [28 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.226 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.227 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.228 = external hidden unnamed_addr constant [26 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

declare i32 @__gxx_personality_v0(...)

declare noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #1

declare noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef) #1

declare noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef) #1

; Function Attrs: nounwind willreturn memory(read)
declare i32 @strcmp(ptr noundef, ptr noundef) #2

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

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.ceil.f64(double) #3

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef) #4

declare void @_ZN14McPATComponent20warnMissingParamNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) #1

; Function Attrs: inlinehint mustprogress nounwind willreturn memory(read) uwtable
declare i32 @atoi(ptr noundef nonnull) #6

declare void @_ZN14McPATComponent21warnUnrecognizedParamEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) #1

declare void @_ZN14McPATComponent19warnMissingStatNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) #1

; Function Attrs: inlinehint mustprogress nounwind willreturn memory(read) uwtable
declare double @atof(ptr noundef nonnull) #6

declare void @_ZN14McPATComponent20warnUnrecognizedStatEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) #1

declare void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) #1

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4Core14set_core_paramEv(ptr noundef nonnull align 8 dereferenceable(2688) %0) #5 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca ptr, align 8
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca ptr, align 8
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca %"class.std::__cxx11::basic_string", align 8
  %9 = alloca %"class.std::allocator", align 1
  %10 = alloca ptr, align 8
  %11 = alloca i32, align 4
  %12 = alloca ptr, align 8
  %13 = alloca ptr, align 8
  %14 = alloca ptr, align 8
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::allocator", align 1
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::allocator", align 1
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::allocator", align 1
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::allocator", align 1
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::allocator", align 1
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::allocator", align 1
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.std::allocator", align 1
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca %"class.std::allocator", align 1
  store ptr %0, ptr %2, align 8, !tbaa !5
  %31 = load ptr, ptr %2, align 8
  call void @_ZN4Core17initialize_paramsEv(ptr noundef nonnull align 8 dereferenceable(2688) %31)
  call void @_ZN4Core16initialize_statsEv(ptr noundef nonnull align 8 dereferenceable(2688) %31)
  call void @llvm.lifetime.start.p0(i64 4, ptr %3) #10
  %32 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 2
  %33 = load ptr, ptr %32, align 8, !tbaa !9
  %34 = call noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8) %33, ptr noundef @.str.14)
  store i32 %34, ptr %3, align 4, !tbaa !30
  call void @llvm.lifetime.start.p0(i64 4, ptr %4) #10
  store i32 0, ptr %4, align 4, !tbaa !30
  br label %35

35:                                               ; preds = %948, %1
  %36 = load i32, ptr %4, align 4, !tbaa !30
  %37 = load i32, ptr %3, align 4, !tbaa !30
  %38 = icmp slt i32 %36, %37
  br i1 %38, label %39, label %951

39:                                               ; preds = %35
  call void @llvm.lifetime.start.p0(i64 8, ptr %5) #10
  %40 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 2
  %41 = load ptr, ptr %40, align 8, !tbaa !9
  %42 = call noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef @.str.14, ptr noundef %4)
  store ptr %42, ptr %5, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %6) #10
  %43 = load ptr, ptr %5, align 8, !tbaa !5
  %44 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %43, ptr noundef @.str.5, ptr noundef null)
  store ptr %44, ptr %6, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #10
  %45 = load ptr, ptr %5, align 8, !tbaa !5
  %46 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %45, ptr noundef @.str.15, ptr noundef null)
  store ptr %46, ptr %7, align 8, !tbaa !5
  %47 = load ptr, ptr %6, align 8, !tbaa !5
  %48 = icmp ne ptr %47, null
  br i1 %48, label %52, label %49

49:                                               ; preds = %39
  %50 = load ptr, ptr %5, align 8, !tbaa !5
  %51 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %50, ptr noundef @.str.3, ptr noundef null)
  call void @_ZN14McPATComponent20warnMissingParamNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %51)
  br label %947

52:                                               ; preds = %39
  %53 = load ptr, ptr %6, align 8, !tbaa !5
  %54 = call i32 @strcmp(ptr noundef %53, ptr noundef @.str.5) #11
  %55 = icmp eq i32 %54, 0
  br i1 %55, label %56, label %65

56:                                               ; preds = %52
  call void @llvm.lifetime.start.p0(i64 32, ptr %8) #10
  %57 = load ptr, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr %9) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef %57, ptr noundef nonnull align 1 dereferenceable(1) %9)
          to label %58 unwind label %61

58:                                               ; preds = %56
  %59 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 4
  %60 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull align 8 dereferenceable(32) %8) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %9) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr %8) #10
  br label %946

61:                                               ; preds = %56
  %62 = landingpad { ptr, i32 }
          cleanup
  %63 = extractvalue { ptr, i32 } %62, 0
  store ptr %63, ptr %10, align 8
  %64 = extractvalue { ptr, i32 } %62, 1
  store i32 %64, ptr %11, align 4
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %9) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr %8) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #10
  br label %1837

65:                                               ; preds = %52
  %66 = load ptr, ptr %6, align 8, !tbaa !5
  %67 = call i32 @strcmp(ptr noundef %66, ptr noundef @.str.89) #11
  %68 = icmp eq i32 %67, 0
  br i1 %68, label %69, label %76

69:                                               ; preds = %65
  %70 = load ptr, ptr %7, align 8, !tbaa !5
  %71 = call i32 @atoi(ptr noundef %70) #11
  %72 = icmp ne i32 %71, 0
  %73 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %74 = getelementptr inbounds %class.CoreParameters, ptr %73, i32 0, i32 0
  %75 = zext i1 %72 to i8
  store i8 %75, ptr %74, align 8, !tbaa !31
  br label %945

76:                                               ; preds = %65
  %77 = load ptr, ptr %6, align 8, !tbaa !5
  %78 = call i32 @strcmp(ptr noundef %77, ptr noundef @.str.90) #11
  %79 = icmp eq i32 %78, 0
  br i1 %79, label %80, label %85

80:                                               ; preds = %76
  %81 = load ptr, ptr %7, align 8, !tbaa !5
  %82 = call double @atof(ptr noundef %81) #11
  %83 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %84 = getelementptr inbounds %class.CoreParameters, ptr %83, i32 0, i32 6
  store double %82, ptr %84, align 8, !tbaa !38
  br label %944

85:                                               ; preds = %76
  %86 = load ptr, ptr %6, align 8, !tbaa !5
  %87 = call i32 @strcmp(ptr noundef %86, ptr noundef @.str.91) #11
  %88 = icmp eq i32 %87, 0
  br i1 %88, label %89, label %94

89:                                               ; preds = %85
  %90 = load ptr, ptr %7, align 8, !tbaa !5
  %91 = call i32 @atoi(ptr noundef %90) #11
  %92 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %93 = getelementptr inbounds %class.CoreParameters, ptr %92, i32 0, i32 28
  store i32 %91, ptr %93, align 4, !tbaa !39
  br label %943

94:                                               ; preds = %85
  %95 = load ptr, ptr %6, align 8, !tbaa !5
  %96 = call i32 @strcmp(ptr noundef %95, ptr noundef @.str.92) #11
  %97 = icmp eq i32 %96, 0
  br i1 %97, label %98, label %103

98:                                               ; preds = %94
  %99 = load ptr, ptr %7, align 8, !tbaa !5
  %100 = call i32 @atoi(ptr noundef %99) #11
  %101 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %102 = getelementptr inbounds %class.CoreParameters, ptr %101, i32 0, i32 30
  store i32 %100, ptr %102, align 4, !tbaa !40
  br label %942

103:                                              ; preds = %94
  %104 = load ptr, ptr %6, align 8, !tbaa !5
  %105 = call i32 @strcmp(ptr noundef %104, ptr noundef @.str.93) #11
  %106 = icmp eq i32 %105, 0
  br i1 %106, label %107, label %114

107:                                              ; preds = %103
  %108 = load ptr, ptr %7, align 8, !tbaa !5
  %109 = call i32 @atoi(ptr noundef %108) #11
  %110 = icmp ne i32 %109, 0
  %111 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %112 = getelementptr inbounds %class.CoreParameters, ptr %111, i32 0, i32 1
  %113 = zext i1 %110 to i8
  store i8 %113, ptr %112, align 1, !tbaa !41
  br label %941

114:                                              ; preds = %103
  %115 = load ptr, ptr %6, align 8, !tbaa !5
  %116 = call i32 @strcmp(ptr noundef %115, ptr noundef @.str.94) #11
  %117 = icmp eq i32 %116, 0
  br i1 %117, label %118, label %125

118:                                              ; preds = %114
  %119 = load ptr, ptr %7, align 8, !tbaa !5
  %120 = call i32 @atoi(ptr noundef %119) #11
  %121 = icmp ne i32 %120, 0
  %122 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %123 = getelementptr inbounds %class.CoreParameters, ptr %122, i32 0, i32 2
  %124 = zext i1 %121 to i8
  store i8 %124, ptr %123, align 2, !tbaa !42
  br label %940

125:                                              ; preds = %114
  %126 = load ptr, ptr %6, align 8, !tbaa !5
  %127 = call i32 @strcmp(ptr noundef %126, ptr noundef @.str.95) #11
  %128 = icmp eq i32 %127, 0
  br i1 %128, label %129, label %134

129:                                              ; preds = %125
  %130 = load ptr, ptr %7, align 8, !tbaa !5
  %131 = call i32 @atoi(ptr noundef %130) #11
  %132 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %133 = getelementptr inbounds %class.CoreParameters, ptr %132, i32 0, i32 3
  store i32 %131, ptr %133, align 4, !tbaa !43
  br label %939

134:                                              ; preds = %125
  %135 = load ptr, ptr %6, align 8, !tbaa !5
  %136 = call i32 @strcmp(ptr noundef %135, ptr noundef @.str.96) #11
  %137 = icmp eq i32 %136, 0
  br i1 %137, label %138, label %143

138:                                              ; preds = %134
  %139 = load ptr, ptr %7, align 8, !tbaa !5
  %140 = call i32 @atoi(ptr noundef %139) #11
  %141 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %142 = getelementptr inbounds %class.CoreParameters, ptr %141, i32 0, i32 31
  store i32 %140, ptr %142, align 8, !tbaa !44
  br label %938

143:                                              ; preds = %134
  %144 = load ptr, ptr %6, align 8, !tbaa !5
  %145 = call i32 @strcmp(ptr noundef %144, ptr noundef @.str.97) #11
  %146 = icmp eq i32 %145, 0
  br i1 %146, label %147, label %152

147:                                              ; preds = %143
  %148 = load ptr, ptr %7, align 8, !tbaa !5
  %149 = call i32 @atoi(ptr noundef %148) #11
  %150 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %151 = getelementptr inbounds %class.CoreParameters, ptr %150, i32 0, i32 32
  store i32 %149, ptr %151, align 4, !tbaa !45
  br label %937

152:                                              ; preds = %143
  %153 = load ptr, ptr %6, align 8, !tbaa !5
  %154 = call i32 @strcmp(ptr noundef %153, ptr noundef @.str.98) #11
  %155 = icmp eq i32 %154, 0
  br i1 %155, label %156, label %161

156:                                              ; preds = %152
  %157 = load ptr, ptr %7, align 8, !tbaa !5
  %158 = call i32 @atoi(ptr noundef %157) #11
  %159 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %160 = getelementptr inbounds %class.CoreParameters, ptr %159, i32 0, i32 17
  store i32 %158, ptr %160, align 8, !tbaa !46
  br label %936

161:                                              ; preds = %152
  %162 = load ptr, ptr %6, align 8, !tbaa !5
  %163 = call i32 @strcmp(ptr noundef %162, ptr noundef @.str.99) #11
  %164 = icmp eq i32 %163, 0
  br i1 %164, label %165, label %170

165:                                              ; preds = %161
  %166 = load ptr, ptr %7, align 8, !tbaa !5
  %167 = call i32 @atoi(ptr noundef %166) #11
  %168 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %169 = getelementptr inbounds %class.CoreParameters, ptr %168, i32 0, i32 18
  store i32 %167, ptr %169, align 4, !tbaa !47
  br label %935

170:                                              ; preds = %161
  %171 = load ptr, ptr %6, align 8, !tbaa !5
  %172 = call i32 @strcmp(ptr noundef %171, ptr noundef @.str.100) #11
  %173 = icmp eq i32 %172, 0
  br i1 %173, label %174, label %179

174:                                              ; preds = %170
  %175 = load ptr, ptr %7, align 8, !tbaa !5
  %176 = call i32 @atoi(ptr noundef %175) #11
  %177 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %178 = getelementptr inbounds %class.CoreParameters, ptr %177, i32 0, i32 19
  store i32 %176, ptr %178, align 8, !tbaa !48
  br label %934

179:                                              ; preds = %170
  %180 = load ptr, ptr %6, align 8, !tbaa !5
  %181 = call i32 @strcmp(ptr noundef %180, ptr noundef @.str.101) #11
  %182 = icmp eq i32 %181, 0
  br i1 %182, label %183, label %188

183:                                              ; preds = %179
  %184 = load ptr, ptr %7, align 8, !tbaa !5
  %185 = call i32 @atoi(ptr noundef %184) #11
  %186 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %187 = getelementptr inbounds %class.CoreParameters, ptr %186, i32 0, i32 20
  store i32 %185, ptr %187, align 4, !tbaa !49
  br label %933

188:                                              ; preds = %179
  %189 = load ptr, ptr %6, align 8, !tbaa !5
  %190 = call i32 @strcmp(ptr noundef %189, ptr noundef @.str.102) #11
  %191 = icmp eq i32 %190, 0
  br i1 %191, label %192, label %197

192:                                              ; preds = %188
  %193 = load ptr, ptr %7, align 8, !tbaa !5
  %194 = call i32 @atoi(ptr noundef %193) #11
  %195 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %196 = getelementptr inbounds %class.CoreParameters, ptr %195, i32 0, i32 21
  store i32 %194, ptr %196, align 8, !tbaa !50
  br label %932

197:                                              ; preds = %188
  %198 = load ptr, ptr %6, align 8, !tbaa !5
  %199 = call i32 @strcmp(ptr noundef %198, ptr noundef @.str.103) #11
  %200 = icmp eq i32 %199, 0
  br i1 %200, label %201, label %206

201:                                              ; preds = %197
  %202 = load ptr, ptr %7, align 8, !tbaa !5
  %203 = call i32 @atoi(ptr noundef %202) #11
  %204 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %205 = getelementptr inbounds %class.CoreParameters, ptr %204, i32 0, i32 23
  store i32 %203, ptr %205, align 8, !tbaa !51
  br label %931

206:                                              ; preds = %197
  %207 = load ptr, ptr %6, align 8, !tbaa !5
  %208 = call i32 @strcmp(ptr noundef %207, ptr noundef @.str.104) #11
  %209 = icmp eq i32 %208, 0
  br i1 %209, label %210, label %215

210:                                              ; preds = %206
  %211 = load ptr, ptr %7, align 8, !tbaa !5
  %212 = call i32 @atoi(ptr noundef %211) #11
  %213 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %214 = getelementptr inbounds %class.CoreParameters, ptr %213, i32 0, i32 37
  store i32 %212, ptr %214, align 8, !tbaa !52
  br label %930

215:                                              ; preds = %206
  %216 = load ptr, ptr %6, align 8, !tbaa !5
  %217 = call i32 @strcmp(ptr noundef %216, ptr noundef @.str.105) #11
  %218 = icmp eq i32 %217, 0
  br i1 %218, label %219, label %225

219:                                              ; preds = %215
  %220 = load ptr, ptr %7, align 8, !tbaa !5
  %221 = call i32 @atoi(ptr noundef %220) #11
  %222 = sitofp i32 %221 to double
  %223 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %224 = getelementptr inbounds %class.CoreParameters, ptr %223, i32 0, i32 39
  store double %222, ptr %224, align 8, !tbaa !53
  br label %929

225:                                              ; preds = %215
  %226 = load ptr, ptr %6, align 8, !tbaa !5
  %227 = call i32 @strcmp(ptr noundef %226, ptr noundef @.str.106) #11
  %228 = icmp eq i32 %227, 0
  br i1 %228, label %229, label %234

229:                                              ; preds = %225
  %230 = load ptr, ptr %7, align 8, !tbaa !5
  %231 = call i32 @atoi(ptr noundef %230) #11
  %232 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %233 = getelementptr inbounds %class.CoreParameters, ptr %232, i32 0, i32 38
  store i32 %231, ptr %233, align 4, !tbaa !54
  br label %928

234:                                              ; preds = %225
  %235 = load ptr, ptr %6, align 8, !tbaa !5
  %236 = call i32 @strcmp(ptr noundef %235, ptr noundef @.str.107) #11
  %237 = icmp eq i32 %236, 0
  br i1 %237, label %238, label %243

238:                                              ; preds = %234
  %239 = load ptr, ptr %7, align 8, !tbaa !5
  %240 = call i32 @atoi(ptr noundef %239) #11
  %241 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %242 = getelementptr inbounds %class.CoreParameters, ptr %241, i32 0, i32 24
  store i32 %240, ptr %242, align 4, !tbaa !55
  br label %927

243:                                              ; preds = %234
  %244 = load ptr, ptr %6, align 8, !tbaa !5
  %245 = call i32 @strcmp(ptr noundef %244, ptr noundef @.str.108) #11
  %246 = icmp eq i32 %245, 0
  br i1 %246, label %247, label %252

247:                                              ; preds = %243
  %248 = load ptr, ptr %7, align 8, !tbaa !5
  %249 = call i32 @atoi(ptr noundef %248) #11
  %250 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %251 = getelementptr inbounds %class.CoreParameters, ptr %250, i32 0, i32 5
  store i32 %249, ptr %251, align 4, !tbaa !56
  br label %926

252:                                              ; preds = %243
  %253 = load ptr, ptr %6, align 8, !tbaa !5
  %254 = call i32 @strcmp(ptr noundef %253, ptr noundef @.str.109) #11
  %255 = icmp eq i32 %254, 0
  br i1 %255, label %256, label %261

256:                                              ; preds = %252
  %257 = load ptr, ptr %7, align 8, !tbaa !5
  %258 = call i32 @atoi(ptr noundef %257) #11
  %259 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %260 = getelementptr inbounds %class.CoreParameters, ptr %259, i32 0, i32 4
  store i32 %258, ptr %260, align 8, !tbaa !57
  br label %925

261:                                              ; preds = %252
  %262 = load ptr, ptr %6, align 8, !tbaa !5
  %263 = call i32 @strcmp(ptr noundef %262, ptr noundef @.str.110) #11
  %264 = icmp eq i32 %263, 0
  br i1 %264, label %265, label %270

265:                                              ; preds = %261
  %266 = load ptr, ptr %7, align 8, !tbaa !5
  %267 = call i32 @atoi(ptr noundef %266) #11
  %268 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %269 = getelementptr inbounds %class.CoreParameters, ptr %268, i32 0, i32 9
  store i32 %267, ptr %269, align 8, !tbaa !58
  br label %924

270:                                              ; preds = %261
  %271 = load ptr, ptr %6, align 8, !tbaa !5
  %272 = call i32 @strcmp(ptr noundef %271, ptr noundef @.str.111) #11
  %273 = icmp eq i32 %272, 0
  br i1 %273, label %274, label %279

274:                                              ; preds = %270
  %275 = load ptr, ptr %7, align 8, !tbaa !5
  %276 = call i32 @atoi(ptr noundef %275) #11
  %277 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %278 = getelementptr inbounds %class.CoreParameters, ptr %277, i32 0, i32 10
  store i32 %276, ptr %278, align 4, !tbaa !59
  br label %923

279:                                              ; preds = %270
  %280 = load ptr, ptr %6, align 8, !tbaa !5
  %281 = call i32 @strcmp(ptr noundef %280, ptr noundef @.str.112) #11
  %282 = icmp eq i32 %281, 0
  br i1 %282, label %283, label %288

283:                                              ; preds = %279
  %284 = load ptr, ptr %7, align 8, !tbaa !5
  %285 = call i32 @atoi(ptr noundef %284) #11
  %286 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %287 = getelementptr inbounds %class.CoreParameters, ptr %286, i32 0, i32 47
  store i32 %285, ptr %287, align 8, !tbaa !60
  br label %922

288:                                              ; preds = %279
  %289 = load ptr, ptr %6, align 8, !tbaa !5
  %290 = call i32 @strcmp(ptr noundef %289, ptr noundef @.str.113) #11
  %291 = icmp eq i32 %290, 0
  br i1 %291, label %292, label %297

292:                                              ; preds = %288
  %293 = load ptr, ptr %7, align 8, !tbaa !5
  %294 = call i32 @atoi(ptr noundef %293) #11
  %295 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %296 = getelementptr inbounds %class.CoreParameters, ptr %295, i32 0, i32 48
  store i32 %294, ptr %296, align 4, !tbaa !61
  br label %921

297:                                              ; preds = %288
  %298 = load ptr, ptr %6, align 8, !tbaa !5
  %299 = call i32 @strcmp(ptr noundef %298, ptr noundef @.str.114) #11
  %300 = icmp eq i32 %299, 0
  br i1 %300, label %301, label %306

301:                                              ; preds = %297
  %302 = load ptr, ptr %7, align 8, !tbaa !5
  %303 = call i32 @atoi(ptr noundef %302) #11
  %304 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %305 = getelementptr inbounds %class.CoreParameters, ptr %304, i32 0, i32 49
  store i32 %303, ptr %305, align 8, !tbaa !62
  br label %920

306:                                              ; preds = %297
  %307 = load ptr, ptr %6, align 8, !tbaa !5
  %308 = call i32 @strcmp(ptr noundef %307, ptr noundef @.str.115) #11
  %309 = icmp eq i32 %308, 0
  br i1 %309, label %310, label %315

310:                                              ; preds = %306
  %311 = load ptr, ptr %7, align 8, !tbaa !5
  %312 = call i32 @atoi(ptr noundef %311) #11
  %313 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %314 = getelementptr inbounds %class.CoreParameters, ptr %313, i32 0, i32 50
  store i32 %312, ptr %314, align 4, !tbaa !63
  br label %919

315:                                              ; preds = %306
  %316 = load ptr, ptr %6, align 8, !tbaa !5
  %317 = call i32 @strcmp(ptr noundef %316, ptr noundef @.str.116) #11
  %318 = icmp eq i32 %317, 0
  br i1 %318, label %319, label %324

319:                                              ; preds = %315
  %320 = load ptr, ptr %7, align 8, !tbaa !5
  %321 = call i32 @atoi(ptr noundef %320) #11
  %322 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %323 = getelementptr inbounds %class.CoreParameters, ptr %322, i32 0, i32 51
  store i32 %321, ptr %323, align 8, !tbaa !64
  br label %918

324:                                              ; preds = %315
  %325 = load ptr, ptr %6, align 8, !tbaa !5
  %326 = call i32 @strcmp(ptr noundef %325, ptr noundef @.str.117) #11
  %327 = icmp eq i32 %326, 0
  br i1 %327, label %328, label %333

328:                                              ; preds = %324
  %329 = load ptr, ptr %7, align 8, !tbaa !5
  %330 = call i32 @atoi(ptr noundef %329) #11
  %331 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %332 = getelementptr inbounds %class.CoreParameters, ptr %331, i32 0, i32 52
  store i32 %330, ptr %332, align 4, !tbaa !65
  br label %917

333:                                              ; preds = %324
  %334 = load ptr, ptr %6, align 8, !tbaa !5
  %335 = call i32 @strcmp(ptr noundef %334, ptr noundef @.str.118) #11
  %336 = icmp eq i32 %335, 0
  br i1 %336, label %337, label %342

337:                                              ; preds = %333
  %338 = load ptr, ptr %7, align 8, !tbaa !5
  %339 = call i32 @atoi(ptr noundef %338) #11
  %340 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %341 = getelementptr inbounds %class.CoreParameters, ptr %340, i32 0, i32 53
  store i32 %339, ptr %341, align 8, !tbaa !66
  br label %916

342:                                              ; preds = %333
  %343 = load ptr, ptr %6, align 8, !tbaa !5
  %344 = call i32 @strcmp(ptr noundef %343, ptr noundef @.str.119) #11
  %345 = icmp eq i32 %344, 0
  br i1 %345, label %346, label %352

346:                                              ; preds = %342
  %347 = load ptr, ptr %7, align 8, !tbaa !5
  %348 = call i32 @atoi(ptr noundef %347) #11
  %349 = sitofp i32 %348 to double
  %350 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %351 = getelementptr inbounds %class.CoreParameters, ptr %350, i32 0, i32 54
  store double %349, ptr %351, align 8, !tbaa !67
  br label %915

352:                                              ; preds = %342
  %353 = load ptr, ptr %6, align 8, !tbaa !5
  %354 = call i32 @strcmp(ptr noundef %353, ptr noundef @.str.120) #11
  %355 = icmp eq i32 %354, 0
  br i1 %355, label %356, label %362

356:                                              ; preds = %352
  %357 = load ptr, ptr %7, align 8, !tbaa !5
  %358 = call i32 @atoi(ptr noundef %357) #11
  %359 = sitofp i32 %358 to double
  %360 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %361 = getelementptr inbounds %class.CoreParameters, ptr %360, i32 0, i32 55
  store double %359, ptr %361, align 8, !tbaa !68
  br label %914

362:                                              ; preds = %352
  %363 = load ptr, ptr %6, align 8, !tbaa !5
  %364 = call i32 @strcmp(ptr noundef %363, ptr noundef @.str.121) #11
  %365 = icmp eq i32 %364, 0
  br i1 %365, label %366, label %371

366:                                              ; preds = %362
  %367 = load ptr, ptr %7, align 8, !tbaa !5
  %368 = call i32 @atoi(ptr noundef %367) #11
  %369 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %370 = getelementptr inbounds %class.CoreParameters, ptr %369, i32 0, i32 56
  store i32 %368, ptr %370, align 8, !tbaa !69
  br label %913

371:                                              ; preds = %362
  %372 = load ptr, ptr %6, align 8, !tbaa !5
  %373 = call i32 @strcmp(ptr noundef %372, ptr noundef @.str.122) #11
  %374 = icmp eq i32 %373, 0
  br i1 %374, label %375, label %380

375:                                              ; preds = %371
  %376 = load ptr, ptr %7, align 8, !tbaa !5
  %377 = call i32 @atoi(ptr noundef %376) #11
  %378 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %379 = getelementptr inbounds %class.CoreParameters, ptr %378, i32 0, i32 57
  store i32 %377, ptr %379, align 4, !tbaa !70
  br label %912

380:                                              ; preds = %371
  %381 = load ptr, ptr %6, align 8, !tbaa !5
  %382 = call i32 @strcmp(ptr noundef %381, ptr noundef @.str.123) #11
  %383 = icmp eq i32 %382, 0
  br i1 %383, label %384, label %389

384:                                              ; preds = %380
  %385 = load ptr, ptr %7, align 8, !tbaa !5
  %386 = call i32 @atoi(ptr noundef %385) #11
  %387 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %388 = getelementptr inbounds %class.CoreParameters, ptr %387, i32 0, i32 58
  store i32 %386, ptr %388, align 8, !tbaa !71
  br label %911

389:                                              ; preds = %380
  %390 = load ptr, ptr %6, align 8, !tbaa !5
  %391 = call i32 @strcmp(ptr noundef %390, ptr noundef @.str.124) #11
  %392 = icmp eq i32 %391, 0
  br i1 %392, label %393, label %398

393:                                              ; preds = %389
  %394 = load ptr, ptr %7, align 8, !tbaa !5
  %395 = call i32 @atoi(ptr noundef %394) #11
  %396 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %397 = getelementptr inbounds %class.CoreParameters, ptr %396, i32 0, i32 59
  store i32 %395, ptr %397, align 4, !tbaa !72
  br label %910

398:                                              ; preds = %389
  %399 = load ptr, ptr %6, align 8, !tbaa !5
  %400 = call i32 @strcmp(ptr noundef %399, ptr noundef @.str.125) #11
  %401 = icmp eq i32 %400, 0
  br i1 %401, label %402, label %407

402:                                              ; preds = %398
  %403 = load ptr, ptr %7, align 8, !tbaa !5
  %404 = call i32 @atoi(ptr noundef %403) #11
  %405 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %406 = getelementptr inbounds %class.CoreParameters, ptr %405, i32 0, i32 60
  store i32 %404, ptr %406, align 8, !tbaa !73
  br label %909

407:                                              ; preds = %398
  %408 = load ptr, ptr %6, align 8, !tbaa !5
  %409 = call i32 @strcmp(ptr noundef %408, ptr noundef @.str.126) #11
  %410 = icmp eq i32 %409, 0
  br i1 %410, label %411, label %416

411:                                              ; preds = %407
  %412 = load ptr, ptr %7, align 8, !tbaa !5
  %413 = call i32 @atoi(ptr noundef %412) #11
  %414 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %415 = getelementptr inbounds %class.CoreParameters, ptr %414, i32 0, i32 61
  store i32 %413, ptr %415, align 4, !tbaa !74
  br label %908

416:                                              ; preds = %407
  %417 = load ptr, ptr %6, align 8, !tbaa !5
  %418 = call i32 @strcmp(ptr noundef %417, ptr noundef @.str.127) #11
  %419 = icmp eq i32 %418, 0
  br i1 %419, label %420, label %425

420:                                              ; preds = %416
  %421 = load ptr, ptr %7, align 8, !tbaa !5
  %422 = call i32 @atoi(ptr noundef %421) #11
  %423 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %424 = getelementptr inbounds %class.CoreParameters, ptr %423, i32 0, i32 62
  store i32 %422, ptr %424, align 8, !tbaa !75
  br label %907

425:                                              ; preds = %416
  %426 = load ptr, ptr %6, align 8, !tbaa !5
  %427 = call i32 @strcmp(ptr noundef %426, ptr noundef @.str.128) #11
  %428 = icmp eq i32 %427, 0
  br i1 %428, label %429, label %434

429:                                              ; preds = %425
  %430 = load ptr, ptr %7, align 8, !tbaa !5
  %431 = call i32 @atoi(ptr noundef %430) #11
  %432 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %433 = getelementptr inbounds %class.CoreParameters, ptr %432, i32 0, i32 63
  store i32 %431, ptr %433, align 4, !tbaa !76
  br label %906

434:                                              ; preds = %425
  %435 = load ptr, ptr %6, align 8, !tbaa !5
  %436 = call i32 @strcmp(ptr noundef %435, ptr noundef @.str.129) #11
  %437 = icmp eq i32 %436, 0
  br i1 %437, label %438, label %443

438:                                              ; preds = %434
  %439 = load ptr, ptr %7, align 8, !tbaa !5
  %440 = call i32 @atoi(ptr noundef %439) #11
  %441 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %442 = getelementptr inbounds %class.CoreParameters, ptr %441, i32 0, i32 64
  store i32 %440, ptr %442, align 8, !tbaa !77
  br label %905

443:                                              ; preds = %434
  %444 = load ptr, ptr %6, align 8, !tbaa !5
  %445 = call i32 @strcmp(ptr noundef %444, ptr noundef @.str.130) #11
  %446 = icmp eq i32 %445, 0
  br i1 %446, label %447, label %452

447:                                              ; preds = %443
  %448 = load ptr, ptr %7, align 8, !tbaa !5
  %449 = call i32 @atoi(ptr noundef %448) #11
  %450 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %451 = getelementptr inbounds %class.CoreParameters, ptr %450, i32 0, i32 65
  store i32 %449, ptr %451, align 4, !tbaa !78
  br label %904

452:                                              ; preds = %443
  %453 = load ptr, ptr %6, align 8, !tbaa !5
  %454 = call i32 @strcmp(ptr noundef %453, ptr noundef @.str.131) #11
  %455 = icmp eq i32 %454, 0
  br i1 %455, label %456, label %461

456:                                              ; preds = %452
  %457 = load ptr, ptr %7, align 8, !tbaa !5
  %458 = call i32 @atoi(ptr noundef %457) #11
  %459 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %460 = getelementptr inbounds %class.CoreParameters, ptr %459, i32 0, i32 66
  store i32 %458, ptr %460, align 8, !tbaa !79
  br label %903

461:                                              ; preds = %452
  %462 = load ptr, ptr %6, align 8, !tbaa !5
  %463 = call i32 @strcmp(ptr noundef %462, ptr noundef @.str.132) #11
  %464 = icmp eq i32 %463, 0
  br i1 %464, label %465, label %470

465:                                              ; preds = %461
  %466 = load ptr, ptr %7, align 8, !tbaa !5
  %467 = call i32 @atoi(ptr noundef %466) #11
  %468 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %469 = getelementptr inbounds %class.CoreParameters, ptr %468, i32 0, i32 67
  store i32 %467, ptr %469, align 4, !tbaa !80
  br label %902

470:                                              ; preds = %461
  %471 = load ptr, ptr %6, align 8, !tbaa !5
  %472 = call i32 @strcmp(ptr noundef %471, ptr noundef @.str.133) #11
  %473 = icmp eq i32 %472, 0
  br i1 %473, label %474, label %479

474:                                              ; preds = %470
  %475 = load ptr, ptr %7, align 8, !tbaa !5
  %476 = call i32 @atoi(ptr noundef %475) #11
  %477 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %478 = getelementptr inbounds %class.CoreParameters, ptr %477, i32 0, i32 68
  store i32 %476, ptr %478, align 8, !tbaa !81
  br label %901

479:                                              ; preds = %470
  %480 = load ptr, ptr %6, align 8, !tbaa !5
  %481 = call i32 @strcmp(ptr noundef %480, ptr noundef @.str.134) #11
  %482 = icmp eq i32 %481, 0
  br i1 %482, label %483, label %488

483:                                              ; preds = %479
  %484 = load ptr, ptr %7, align 8, !tbaa !5
  %485 = call i32 @atoi(ptr noundef %484) #11
  %486 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %487 = getelementptr inbounds %class.CoreParameters, ptr %486, i32 0, i32 69
  store i32 %485, ptr %487, align 4, !tbaa !82
  br label %900

488:                                              ; preds = %479
  %489 = load ptr, ptr %6, align 8, !tbaa !5
  %490 = call i32 @strcmp(ptr noundef %489, ptr noundef @.str.135) #11
  %491 = icmp eq i32 %490, 0
  br i1 %491, label %492, label %497

492:                                              ; preds = %488
  %493 = load ptr, ptr %7, align 8, !tbaa !5
  %494 = call i32 @atoi(ptr noundef %493) #11
  %495 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %496 = getelementptr inbounds %class.CoreParameters, ptr %495, i32 0, i32 70
  store i32 %494, ptr %496, align 8, !tbaa !83
  br label %899

497:                                              ; preds = %488
  %498 = load ptr, ptr %6, align 8, !tbaa !5
  %499 = call i32 @strcmp(ptr noundef %498, ptr noundef @.str.136) #11
  %500 = icmp eq i32 %499, 0
  br i1 %500, label %501, label %506

501:                                              ; preds = %497
  %502 = load ptr, ptr %7, align 8, !tbaa !5
  %503 = call i32 @atoi(ptr noundef %502) #11
  %504 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %505 = getelementptr inbounds %class.CoreParameters, ptr %504, i32 0, i32 71
  store i32 %503, ptr %505, align 4, !tbaa !84
  br label %898

506:                                              ; preds = %497
  %507 = load ptr, ptr %6, align 8, !tbaa !5
  %508 = call i32 @strcmp(ptr noundef %507, ptr noundef @.str.137) #11
  %509 = icmp eq i32 %508, 0
  br i1 %509, label %510, label %515

510:                                              ; preds = %506
  %511 = load ptr, ptr %7, align 8, !tbaa !5
  %512 = call i32 @atoi(ptr noundef %511) #11
  %513 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %514 = getelementptr inbounds %class.CoreParameters, ptr %513, i32 0, i32 72
  store i32 %512, ptr %514, align 8, !tbaa !85
  br label %897

515:                                              ; preds = %506
  %516 = load ptr, ptr %6, align 8, !tbaa !5
  %517 = call i32 @strcmp(ptr noundef %516, ptr noundef @.str.138) #11
  %518 = icmp eq i32 %517, 0
  br i1 %518, label %519, label %524

519:                                              ; preds = %515
  %520 = load ptr, ptr %7, align 8, !tbaa !5
  %521 = call i32 @atoi(ptr noundef %520) #11
  %522 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %523 = getelementptr inbounds %class.CoreParameters, ptr %522, i32 0, i32 73
  store i32 %521, ptr %523, align 4, !tbaa !86
  br label %896

524:                                              ; preds = %515
  %525 = load ptr, ptr %6, align 8, !tbaa !5
  %526 = call i32 @strcmp(ptr noundef %525, ptr noundef @.str.139) #11
  %527 = icmp eq i32 %526, 0
  br i1 %527, label %528, label %533

528:                                              ; preds = %524
  %529 = load ptr, ptr %7, align 8, !tbaa !5
  %530 = call i32 @atoi(ptr noundef %529) #11
  %531 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %532 = getelementptr inbounds %class.CoreParameters, ptr %531, i32 0, i32 74
  store i32 %530, ptr %532, align 8, !tbaa !87
  br label %895

533:                                              ; preds = %524
  %534 = load ptr, ptr %6, align 8, !tbaa !5
  %535 = call i32 @strcmp(ptr noundef %534, ptr noundef @.str.140) #11
  %536 = icmp eq i32 %535, 0
  br i1 %536, label %537, label %542

537:                                              ; preds = %533
  %538 = load ptr, ptr %7, align 8, !tbaa !5
  %539 = call i32 @atoi(ptr noundef %538) #11
  %540 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %541 = getelementptr inbounds %class.CoreParameters, ptr %540, i32 0, i32 75
  store i32 %539, ptr %541, align 4, !tbaa !88
  br label %894

542:                                              ; preds = %533
  %543 = load ptr, ptr %6, align 8, !tbaa !5
  %544 = call i32 @strcmp(ptr noundef %543, ptr noundef @.str.141) #11
  %545 = icmp eq i32 %544, 0
  br i1 %545, label %546, label %551

546:                                              ; preds = %542
  %547 = load ptr, ptr %7, align 8, !tbaa !5
  %548 = call i32 @atoi(ptr noundef %547) #11
  %549 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %550 = getelementptr inbounds %class.CoreParameters, ptr %549, i32 0, i32 76
  store i32 %548, ptr %550, align 8, !tbaa !89
  br label %893

551:                                              ; preds = %542
  %552 = load ptr, ptr %6, align 8, !tbaa !5
  %553 = call i32 @strcmp(ptr noundef %552, ptr noundef @.str.142) #11
  %554 = icmp eq i32 %553, 0
  br i1 %554, label %555, label %560

555:                                              ; preds = %551
  %556 = load ptr, ptr %7, align 8, !tbaa !5
  %557 = call i32 @atoi(ptr noundef %556) #11
  %558 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %559 = getelementptr inbounds %class.CoreParameters, ptr %558, i32 0, i32 77
  store i32 %557, ptr %559, align 4, !tbaa !90
  br label %892

560:                                              ; preds = %551
  %561 = load ptr, ptr %6, align 8, !tbaa !5
  %562 = call i32 @strcmp(ptr noundef %561, ptr noundef @.str.143) #11
  %563 = icmp eq i32 %562, 0
  br i1 %563, label %564, label %569

564:                                              ; preds = %560
  %565 = load ptr, ptr %7, align 8, !tbaa !5
  %566 = call i32 @atoi(ptr noundef %565) #11
  %567 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %568 = getelementptr inbounds %class.CoreParameters, ptr %567, i32 0, i32 78
  store i32 %566, ptr %568, align 8, !tbaa !91
  br label %891

569:                                              ; preds = %560
  %570 = load ptr, ptr %6, align 8, !tbaa !5
  %571 = call i32 @strcmp(ptr noundef %570, ptr noundef @.str.144) #11
  %572 = icmp eq i32 %571, 0
  br i1 %572, label %573, label %578

573:                                              ; preds = %569
  %574 = load ptr, ptr %7, align 8, !tbaa !5
  %575 = call i32 @atoi(ptr noundef %574) #11
  %576 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %577 = getelementptr inbounds %class.CoreParameters, ptr %576, i32 0, i32 79
  store i32 %575, ptr %577, align 4, !tbaa !92
  br label %890

578:                                              ; preds = %569
  %579 = load ptr, ptr %6, align 8, !tbaa !5
  %580 = call i32 @strcmp(ptr noundef %579, ptr noundef @.str.145) #11
  %581 = icmp eq i32 %580, 0
  br i1 %581, label %582, label %587

582:                                              ; preds = %578
  %583 = load ptr, ptr %7, align 8, !tbaa !5
  %584 = call i32 @atoi(ptr noundef %583) #11
  %585 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %586 = getelementptr inbounds %class.CoreParameters, ptr %585, i32 0, i32 80
  store i32 %584, ptr %586, align 8, !tbaa !93
  br label %889

587:                                              ; preds = %578
  %588 = load ptr, ptr %6, align 8, !tbaa !5
  %589 = call i32 @strcmp(ptr noundef %588, ptr noundef @.str.146) #11
  %590 = icmp eq i32 %589, 0
  br i1 %590, label %591, label %596

591:                                              ; preds = %587
  %592 = load ptr, ptr %7, align 8, !tbaa !5
  %593 = call i32 @atoi(ptr noundef %592) #11
  %594 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %595 = getelementptr inbounds %class.CoreParameters, ptr %594, i32 0, i32 81
  store i32 %593, ptr %595, align 4, !tbaa !94
  br label %888

596:                                              ; preds = %587
  %597 = load ptr, ptr %6, align 8, !tbaa !5
  %598 = call i32 @strcmp(ptr noundef %597, ptr noundef @.str.147) #11
  %599 = icmp eq i32 %598, 0
  br i1 %599, label %600, label %605

600:                                              ; preds = %596
  %601 = load ptr, ptr %7, align 8, !tbaa !5
  %602 = call i32 @atoi(ptr noundef %601) #11
  %603 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %604 = getelementptr inbounds %class.CoreParameters, ptr %603, i32 0, i32 82
  store i32 %602, ptr %604, align 8, !tbaa !95
  br label %887

605:                                              ; preds = %596
  %606 = load ptr, ptr %6, align 8, !tbaa !5
  %607 = call i32 @strcmp(ptr noundef %606, ptr noundef @.str.148) #11
  %608 = icmp eq i32 %607, 0
  br i1 %608, label %609, label %614

609:                                              ; preds = %605
  %610 = load ptr, ptr %7, align 8, !tbaa !5
  %611 = call i32 @atoi(ptr noundef %610) #11
  %612 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %613 = getelementptr inbounds %class.CoreParameters, ptr %612, i32 0, i32 83
  store i32 %611, ptr %613, align 4, !tbaa !96
  br label %886

614:                                              ; preds = %605
  %615 = load ptr, ptr %6, align 8, !tbaa !5
  %616 = call i32 @strcmp(ptr noundef %615, ptr noundef @.str.149) #11
  %617 = icmp eq i32 %616, 0
  br i1 %617, label %618, label %623

618:                                              ; preds = %614
  %619 = load ptr, ptr %7, align 8, !tbaa !5
  %620 = call i32 @atoi(ptr noundef %619) #11
  %621 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %622 = getelementptr inbounds %class.CoreParameters, ptr %621, i32 0, i32 84
  store i32 %620, ptr %622, align 8, !tbaa !97
  br label %885

623:                                              ; preds = %614
  %624 = load ptr, ptr %6, align 8, !tbaa !5
  %625 = call i32 @strcmp(ptr noundef %624, ptr noundef @.str.150) #11
  %626 = icmp eq i32 %625, 0
  br i1 %626, label %627, label %632

627:                                              ; preds = %623
  %628 = load ptr, ptr %7, align 8, !tbaa !5
  %629 = call i32 @atoi(ptr noundef %628) #11
  %630 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %631 = getelementptr inbounds %class.CoreParameters, ptr %630, i32 0, i32 85
  store i32 %629, ptr %631, align 4, !tbaa !98
  br label %884

632:                                              ; preds = %623
  %633 = load ptr, ptr %6, align 8, !tbaa !5
  %634 = call i32 @strcmp(ptr noundef %633, ptr noundef @.str.151) #11
  %635 = icmp eq i32 %634, 0
  br i1 %635, label %636, label %641

636:                                              ; preds = %632
  %637 = load ptr, ptr %7, align 8, !tbaa !5
  %638 = call i32 @atoi(ptr noundef %637) #11
  %639 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %640 = getelementptr inbounds %class.CoreParameters, ptr %639, i32 0, i32 86
  store i32 %638, ptr %640, align 8, !tbaa !99
  br label %883

641:                                              ; preds = %632
  %642 = load ptr, ptr %6, align 8, !tbaa !5
  %643 = call i32 @strcmp(ptr noundef %642, ptr noundef @.str.152) #11
  %644 = icmp eq i32 %643, 0
  br i1 %644, label %645, label %650

645:                                              ; preds = %641
  %646 = load ptr, ptr %7, align 8, !tbaa !5
  %647 = call i32 @atoi(ptr noundef %646) #11
  %648 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %649 = getelementptr inbounds %class.CoreParameters, ptr %648, i32 0, i32 87
  store i32 %647, ptr %649, align 4, !tbaa !100
  br label %882

650:                                              ; preds = %641
  %651 = load ptr, ptr %6, align 8, !tbaa !5
  %652 = call i32 @strcmp(ptr noundef %651, ptr noundef @.str.153) #11
  %653 = icmp eq i32 %652, 0
  br i1 %653, label %654, label %659

654:                                              ; preds = %650
  %655 = load ptr, ptr %7, align 8, !tbaa !5
  %656 = call i32 @atoi(ptr noundef %655) #11
  %657 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %658 = getelementptr inbounds %class.CoreParameters, ptr %657, i32 0, i32 88
  store i32 %656, ptr %658, align 8, !tbaa !101
  br label %881

659:                                              ; preds = %650
  %660 = load ptr, ptr %6, align 8, !tbaa !5
  %661 = call i32 @strcmp(ptr noundef %660, ptr noundef @.str.154) #11
  %662 = icmp eq i32 %661, 0
  br i1 %662, label %663, label %668

663:                                              ; preds = %659
  %664 = load ptr, ptr %7, align 8, !tbaa !5
  %665 = call i32 @atoi(ptr noundef %664) #11
  %666 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %667 = getelementptr inbounds %class.CoreParameters, ptr %666, i32 0, i32 89
  store i32 %665, ptr %667, align 4, !tbaa !102
  br label %880

668:                                              ; preds = %659
  %669 = load ptr, ptr %6, align 8, !tbaa !5
  %670 = call i32 @strcmp(ptr noundef %669, ptr noundef @.str.155) #11
  %671 = icmp eq i32 %670, 0
  br i1 %671, label %672, label %677

672:                                              ; preds = %668
  %673 = load ptr, ptr %7, align 8, !tbaa !5
  %674 = call i32 @atoi(ptr noundef %673) #11
  %675 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %676 = getelementptr inbounds %class.CoreParameters, ptr %675, i32 0, i32 90
  store i32 %674, ptr %676, align 8, !tbaa !103
  br label %879

677:                                              ; preds = %668
  %678 = load ptr, ptr %6, align 8, !tbaa !5
  %679 = call i32 @strcmp(ptr noundef %678, ptr noundef @.str.156) #11
  %680 = icmp eq i32 %679, 0
  br i1 %680, label %681, label %686

681:                                              ; preds = %677
  %682 = load ptr, ptr %7, align 8, !tbaa !5
  %683 = call i32 @atoi(ptr noundef %682) #11
  %684 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %685 = getelementptr inbounds %class.CoreParameters, ptr %684, i32 0, i32 91
  store i32 %683, ptr %685, align 4, !tbaa !104
  br label %878

686:                                              ; preds = %677
  %687 = load ptr, ptr %6, align 8, !tbaa !5
  %688 = call i32 @strcmp(ptr noundef %687, ptr noundef @.str.157) #11
  %689 = icmp eq i32 %688, 0
  br i1 %689, label %690, label %695

690:                                              ; preds = %686
  %691 = load ptr, ptr %7, align 8, !tbaa !5
  %692 = call i32 @atoi(ptr noundef %691) #11
  %693 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %694 = getelementptr inbounds %class.CoreParameters, ptr %693, i32 0, i32 92
  store i32 %692, ptr %694, align 8, !tbaa !105
  br label %877

695:                                              ; preds = %686
  %696 = load ptr, ptr %6, align 8, !tbaa !5
  %697 = call i32 @strcmp(ptr noundef %696, ptr noundef @.str.158) #11
  %698 = icmp eq i32 %697, 0
  br i1 %698, label %699, label %704

699:                                              ; preds = %695
  %700 = load ptr, ptr %7, align 8, !tbaa !5
  %701 = call i32 @atoi(ptr noundef %700) #11
  %702 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %703 = getelementptr inbounds %class.CoreParameters, ptr %702, i32 0, i32 97
  store i32 %701, ptr %703, align 4, !tbaa !106
  br label %876

704:                                              ; preds = %695
  %705 = load ptr, ptr %6, align 8, !tbaa !5
  %706 = call i32 @strcmp(ptr noundef %705, ptr noundef @.str.159) #11
  %707 = icmp eq i32 %706, 0
  br i1 %707, label %708, label %713

708:                                              ; preds = %704
  %709 = load ptr, ptr %7, align 8, !tbaa !5
  %710 = call i32 @atoi(ptr noundef %709) #11
  %711 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %712 = getelementptr inbounds %class.CoreParameters, ptr %711, i32 0, i32 98
  store i32 %710, ptr %712, align 8, !tbaa !107
  br label %875

713:                                              ; preds = %704
  %714 = load ptr, ptr %6, align 8, !tbaa !5
  %715 = call i32 @strcmp(ptr noundef %714, ptr noundef @.str.160) #11
  %716 = icmp eq i32 %715, 0
  br i1 %716, label %717, label %722

717:                                              ; preds = %713
  %718 = load ptr, ptr %7, align 8, !tbaa !5
  %719 = call i32 @atoi(ptr noundef %718) #11
  %720 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %721 = getelementptr inbounds %class.CoreParameters, ptr %720, i32 0, i32 93
  store i32 %719, ptr %721, align 4, !tbaa !108
  br label %874

722:                                              ; preds = %713
  %723 = load ptr, ptr %6, align 8, !tbaa !5
  %724 = call i32 @strcmp(ptr noundef %723, ptr noundef @.str.161) #11
  %725 = icmp eq i32 %724, 0
  br i1 %725, label %726, label %731

726:                                              ; preds = %722
  %727 = load ptr, ptr %7, align 8, !tbaa !5
  %728 = call i32 @atoi(ptr noundef %727) #11
  %729 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %730 = getelementptr inbounds %class.CoreParameters, ptr %729, i32 0, i32 94
  store i32 %728, ptr %730, align 8, !tbaa !109
  br label %873

731:                                              ; preds = %722
  %732 = load ptr, ptr %6, align 8, !tbaa !5
  %733 = call i32 @strcmp(ptr noundef %732, ptr noundef @.str.162) #11
  %734 = icmp eq i32 %733, 0
  br i1 %734, label %735, label %740

735:                                              ; preds = %731
  %736 = load ptr, ptr %7, align 8, !tbaa !5
  %737 = call i32 @atoi(ptr noundef %736) #11
  %738 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %739 = getelementptr inbounds %class.CoreParameters, ptr %738, i32 0, i32 95
  store i32 %737, ptr %739, align 4, !tbaa !110
  br label %872

740:                                              ; preds = %731
  %741 = load ptr, ptr %6, align 8, !tbaa !5
  %742 = call i32 @strcmp(ptr noundef %741, ptr noundef @.str.163) #11
  %743 = icmp eq i32 %742, 0
  br i1 %743, label %744, label %749

744:                                              ; preds = %740
  %745 = load ptr, ptr %7, align 8, !tbaa !5
  %746 = call i32 @atoi(ptr noundef %745) #11
  %747 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %748 = getelementptr inbounds %class.CoreParameters, ptr %747, i32 0, i32 96
  store i32 %746, ptr %748, align 8, !tbaa !111
  br label %871

749:                                              ; preds = %740
  %750 = load ptr, ptr %6, align 8, !tbaa !5
  %751 = call i32 @strcmp(ptr noundef %750, ptr noundef @.str.164) #11
  %752 = icmp eq i32 %751, 0
  br i1 %752, label %753, label %758

753:                                              ; preds = %749
  %754 = load ptr, ptr %7, align 8, !tbaa !5
  %755 = call double @atof(ptr noundef %754) #11
  %756 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %757 = getelementptr inbounds %class.CoreParameters, ptr %756, i32 0, i32 99
  store double %755, ptr %757, align 8, !tbaa !112
  br label %870

758:                                              ; preds = %749
  %759 = load ptr, ptr %6, align 8, !tbaa !5
  %760 = call i32 @strcmp(ptr noundef %759, ptr noundef @.str.165) #11
  %761 = icmp eq i32 %760, 0
  br i1 %761, label %762, label %767

762:                                              ; preds = %758
  %763 = load ptr, ptr %7, align 8, !tbaa !5
  %764 = call double @atof(ptr noundef %763) #11
  %765 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %766 = getelementptr inbounds %class.CoreParameters, ptr %765, i32 0, i32 100
  store double %764, ptr %766, align 8, !tbaa !113
  br label %869

767:                                              ; preds = %758
  %768 = load ptr, ptr %6, align 8, !tbaa !5
  %769 = call i32 @strcmp(ptr noundef %768, ptr noundef @.str.166) #11
  %770 = icmp eq i32 %769, 0
  br i1 %770, label %771, label %776

771:                                              ; preds = %767
  %772 = load ptr, ptr %7, align 8, !tbaa !5
  %773 = call i32 @atoi(ptr noundef %772) #11
  %774 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %775 = getelementptr inbounds %class.CoreParameters, ptr %774, i32 0, i32 101
  store i32 %773, ptr %775, align 8, !tbaa !114
  br label %868

776:                                              ; preds = %767
  %777 = load ptr, ptr %6, align 8, !tbaa !5
  %778 = call i32 @strcmp(ptr noundef %777, ptr noundef @.str.167) #11
  %779 = icmp eq i32 %778, 0
  br i1 %779, label %780, label %785

780:                                              ; preds = %776
  %781 = load ptr, ptr %7, align 8, !tbaa !5
  %782 = call double @atof(ptr noundef %781) #11
  %783 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %784 = getelementptr inbounds %class.CoreParameters, ptr %783, i32 0, i32 102
  store double %782, ptr %784, align 8, !tbaa !115
  br label %867

785:                                              ; preds = %776
  %786 = load ptr, ptr %6, align 8, !tbaa !5
  %787 = call i32 @strcmp(ptr noundef %786, ptr noundef @.str.168) #11
  %788 = icmp eq i32 %787, 0
  br i1 %788, label %789, label %794

789:                                              ; preds = %785
  %790 = load ptr, ptr %7, align 8, !tbaa !5
  %791 = call double @atof(ptr noundef %790) #11
  %792 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %793 = getelementptr inbounds %class.CoreParameters, ptr %792, i32 0, i32 103
  store double %791, ptr %793, align 8, !tbaa !116
  br label %866

794:                                              ; preds = %785
  %795 = load ptr, ptr %6, align 8, !tbaa !5
  %796 = call i32 @strcmp(ptr noundef %795, ptr noundef @.str.169) #11
  %797 = icmp eq i32 %796, 0
  br i1 %797, label %798, label %803

798:                                              ; preds = %794
  %799 = load ptr, ptr %7, align 8, !tbaa !5
  %800 = call i32 @atoi(ptr noundef %799) #11
  %801 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %802 = getelementptr inbounds %class.CoreParameters, ptr %801, i32 0, i32 33
  store i32 %800, ptr %802, align 8, !tbaa !117
  br label %865

803:                                              ; preds = %794
  %804 = load ptr, ptr %6, align 8, !tbaa !5
  %805 = call i32 @strcmp(ptr noundef %804, ptr noundef @.str.170) #11
  %806 = icmp eq i32 %805, 0
  br i1 %806, label %807, label %812

807:                                              ; preds = %803
  %808 = load ptr, ptr %7, align 8, !tbaa !5
  %809 = call i32 @atoi(ptr noundef %808) #11
  %810 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %811 = getelementptr inbounds %class.CoreParameters, ptr %810, i32 0, i32 34
  store i32 %809, ptr %811, align 4, !tbaa !118
  br label %864

812:                                              ; preds = %803
  %813 = load ptr, ptr %6, align 8, !tbaa !5
  %814 = call i32 @strcmp(ptr noundef %813, ptr noundef @.str.171) #11
  %815 = icmp eq i32 %814, 0
  br i1 %815, label %816, label %821

816:                                              ; preds = %812
  %817 = load ptr, ptr %7, align 8, !tbaa !5
  %818 = call i32 @atoi(ptr noundef %817) #11
  %819 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %820 = getelementptr inbounds %class.CoreParameters, ptr %819, i32 0, i32 35
  store i32 %818, ptr %820, align 8, !tbaa !119
  br label %863

821:                                              ; preds = %812
  %822 = load ptr, ptr %6, align 8, !tbaa !5
  %823 = call i32 @strcmp(ptr noundef %822, ptr noundef @.str.172) #11
  %824 = icmp eq i32 %823, 0
  br i1 %824, label %825, label %830

825:                                              ; preds = %821
  %826 = load ptr, ptr %7, align 8, !tbaa !5
  %827 = call i32 @atoi(ptr noundef %826) #11
  %828 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %829 = getelementptr inbounds %class.CoreParameters, ptr %828, i32 0, i32 36
  store i32 %827, ptr %829, align 4, !tbaa !120
  br label %862

830:                                              ; preds = %821
  %831 = load ptr, ptr %6, align 8, !tbaa !5
  %832 = call i32 @strcmp(ptr noundef %831, ptr noundef @.str.173) #11
  %833 = icmp eq i32 %832, 0
  br i1 %833, label %834, label %839

834:                                              ; preds = %830
  %835 = load ptr, ptr %7, align 8, !tbaa !5
  %836 = call i32 @atoi(ptr noundef %835) #11
  %837 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %838 = getelementptr inbounds %class.CoreParameters, ptr %837, i32 0, i32 27
  store i32 %836, ptr %838, align 8, !tbaa !121
  br label %861

839:                                              ; preds = %830
  %840 = load ptr, ptr %6, align 8, !tbaa !5
  %841 = call i32 @strcmp(ptr noundef %840, ptr noundef @.str.174) #11
  %842 = icmp eq i32 %841, 0
  br i1 %842, label %843, label %848

843:                                              ; preds = %839
  %844 = load ptr, ptr %7, align 8, !tbaa !5
  %845 = call i32 @atoi(ptr noundef %844) #11
  %846 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %847 = getelementptr inbounds %class.CoreParameters, ptr %846, i32 0, i32 26
  store i32 %845, ptr %847, align 4, !tbaa !122
  br label %860

848:                                              ; preds = %839
  %849 = load ptr, ptr %6, align 8, !tbaa !5
  %850 = call i32 @strcmp(ptr noundef %849, ptr noundef @.str.91) #11
  %851 = icmp eq i32 %850, 0
  br i1 %851, label %852, label %857

852:                                              ; preds = %848
  %853 = load ptr, ptr %7, align 8, !tbaa !5
  %854 = call i32 @atoi(ptr noundef %853) #11
  %855 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %856 = getelementptr inbounds %class.CoreParameters, ptr %855, i32 0, i32 28
  store i32 %854, ptr %856, align 4, !tbaa !39
  br label %859

857:                                              ; preds = %848
  %858 = load ptr, ptr %6, align 8, !tbaa !5
  call void @_ZN14McPATComponent21warnUnrecognizedParamEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %858)
  br label %859

859:                                              ; preds = %857, %852
  br label %860

860:                                              ; preds = %859, %843
  br label %861

861:                                              ; preds = %860, %834
  br label %862

862:                                              ; preds = %861, %825
  br label %863

863:                                              ; preds = %862, %816
  br label %864

864:                                              ; preds = %863, %807
  br label %865

865:                                              ; preds = %864, %798
  br label %866

866:                                              ; preds = %865, %789
  br label %867

867:                                              ; preds = %866, %780
  br label %868

868:                                              ; preds = %867, %771
  br label %869

869:                                              ; preds = %868, %762
  br label %870

870:                                              ; preds = %869, %753
  br label %871

871:                                              ; preds = %870, %744
  br label %872

872:                                              ; preds = %871, %735
  br label %873

873:                                              ; preds = %872, %726
  br label %874

874:                                              ; preds = %873, %717
  br label %875

875:                                              ; preds = %874, %708
  br label %876

876:                                              ; preds = %875, %699
  br label %877

877:                                              ; preds = %876, %690
  br label %878

878:                                              ; preds = %877, %681
  br label %879

879:                                              ; preds = %878, %672
  br label %880

880:                                              ; preds = %879, %663
  br label %881

881:                                              ; preds = %880, %654
  br label %882

882:                                              ; preds = %881, %645
  br label %883

883:                                              ; preds = %882, %636
  br label %884

884:                                              ; preds = %883, %627
  br label %885

885:                                              ; preds = %884, %618
  br label %886

886:                                              ; preds = %885, %609
  br label %887

887:                                              ; preds = %886, %600
  br label %888

888:                                              ; preds = %887, %591
  br label %889

889:                                              ; preds = %888, %582
  br label %890

890:                                              ; preds = %889, %573
  br label %891

891:                                              ; preds = %890, %564
  br label %892

892:                                              ; preds = %891, %555
  br label %893

893:                                              ; preds = %892, %546
  br label %894

894:                                              ; preds = %893, %537
  br label %895

895:                                              ; preds = %894, %528
  br label %896

896:                                              ; preds = %895, %519
  br label %897

897:                                              ; preds = %896, %510
  br label %898

898:                                              ; preds = %897, %501
  br label %899

899:                                              ; preds = %898, %492
  br label %900

900:                                              ; preds = %899, %483
  br label %901

901:                                              ; preds = %900, %474
  br label %902

902:                                              ; preds = %901, %465
  br label %903

903:                                              ; preds = %902, %456
  br label %904

904:                                              ; preds = %903, %447
  br label %905

905:                                              ; preds = %904, %438
  br label %906

906:                                              ; preds = %905, %429
  br label %907

907:                                              ; preds = %906, %420
  br label %908

908:                                              ; preds = %907, %411
  br label %909

909:                                              ; preds = %908, %402
  br label %910

910:                                              ; preds = %909, %393
  br label %911

911:                                              ; preds = %910, %384
  br label %912

912:                                              ; preds = %911, %375
  br label %913

913:                                              ; preds = %912, %366
  br label %914

914:                                              ; preds = %913, %356
  br label %915

915:                                              ; preds = %914, %346
  br label %916

916:                                              ; preds = %915, %337
  br label %917

917:                                              ; preds = %916, %328
  br label %918

918:                                              ; preds = %917, %319
  br label %919

919:                                              ; preds = %918, %310
  br label %920

920:                                              ; preds = %919, %301
  br label %921

921:                                              ; preds = %920, %292
  br label %922

922:                                              ; preds = %921, %283
  br label %923

923:                                              ; preds = %922, %274
  br label %924

924:                                              ; preds = %923, %265
  br label %925

925:                                              ; preds = %924, %256
  br label %926

926:                                              ; preds = %925, %247
  br label %927

927:                                              ; preds = %926, %238
  br label %928

928:                                              ; preds = %927, %229
  br label %929

929:                                              ; preds = %928, %219
  br label %930

930:                                              ; preds = %929, %210
  br label %931

931:                                              ; preds = %930, %201
  br label %932

932:                                              ; preds = %931, %192
  br label %933

933:                                              ; preds = %932, %183
  br label %934

934:                                              ; preds = %933, %174
  br label %935

935:                                              ; preds = %934, %165
  br label %936

936:                                              ; preds = %935, %156
  br label %937

937:                                              ; preds = %936, %147
  br label %938

938:                                              ; preds = %937, %138
  br label %939

939:                                              ; preds = %938, %129
  br label %940

940:                                              ; preds = %939, %118
  br label %941

941:                                              ; preds = %940, %107
  br label %942

942:                                              ; preds = %941, %98
  br label %943

943:                                              ; preds = %942, %89
  br label %944

944:                                              ; preds = %943, %80
  br label %945

945:                                              ; preds = %944, %69
  br label %946

946:                                              ; preds = %945, %58
  br label %947

947:                                              ; preds = %946, %49
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #10
  br label %948

948:                                              ; preds = %947
  %949 = load i32, ptr %4, align 4, !tbaa !30
  %950 = add nsw i32 %949, 1
  store i32 %950, ptr %4, align 4, !tbaa !30
  br label %35, !llvm.loop !123

951:                                              ; preds = %35
  %952 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %953 = getelementptr inbounds %class.CoreParameters, ptr %952, i32 0, i32 6
  %954 = load double, ptr %953, align 8, !tbaa !38
  %955 = fmul double %954, 1.000000e+06
  store double %955, ptr %953, align 8, !tbaa !38
  %956 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %957 = getelementptr inbounds %class.CoreParameters, ptr %956, i32 0, i32 6
  %958 = load double, ptr %957, align 8, !tbaa !38
  %959 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 5
  store double %958, ptr %959, align 8, !tbaa !125
  %960 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %961 = getelementptr inbounds %class.CoreParameters, ptr %960, i32 0, i32 20
  %962 = load i32, ptr %961, align 4, !tbaa !49
  %963 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %964 = getelementptr inbounds %class.CoreParameters, ptr %963, i32 0, i32 22
  store i32 %962, ptr %964, align 4, !tbaa !126
  %965 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %966 = getelementptr inbounds %class.CoreParameters, ptr %965, i32 0, i32 24
  %967 = load i32, ptr %966, align 4, !tbaa !55
  %968 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %969 = getelementptr inbounds %class.CoreParameters, ptr %968, i32 0, i32 25
  store i32 %967, ptr %969, align 8, !tbaa !127
  %970 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 2
  %971 = load ptr, ptr %970, align 8, !tbaa !9
  %972 = call noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8) %971, ptr noundef @.str.23)
  store i32 %972, ptr %3, align 4, !tbaa !30
  store i32 0, ptr %4, align 4, !tbaa !30
  br label %973

973:                                              ; preds = %1483, %951
  %974 = load i32, ptr %4, align 4, !tbaa !30
  %975 = load i32, ptr %3, align 4, !tbaa !30
  %976 = icmp slt i32 %974, %975
  br i1 %976, label %977, label %1486

977:                                              ; preds = %973
  call void @llvm.lifetime.start.p0(i64 8, ptr %12) #10
  %978 = getelementptr inbounds %class.McPATComponent, ptr %31, i32 0, i32 2
  %979 = load ptr, ptr %978, align 8, !tbaa !9
  %980 = call noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %979, ptr noundef @.str.23, ptr noundef %4)
  store ptr %980, ptr %12, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %13) #10
  %981 = load ptr, ptr %12, align 8, !tbaa !5
  %982 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %981, ptr noundef @.str.5, ptr noundef null)
  store ptr %982, ptr %13, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #10
  %983 = load ptr, ptr %12, align 8, !tbaa !5
  %984 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %983, ptr noundef @.str.15, ptr noundef null)
  store ptr %984, ptr %14, align 8, !tbaa !5
  %985 = load ptr, ptr %13, align 8, !tbaa !5
  %986 = icmp ne ptr %985, null
  br i1 %986, label %990, label %987

987:                                              ; preds = %977
  %988 = load ptr, ptr %12, align 8, !tbaa !5
  %989 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %988, ptr noundef @.str.3, ptr noundef null)
  call void @_ZN14McPATComponent19warnMissingStatNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %989)
  br label %1482

990:                                              ; preds = %977
  %991 = load ptr, ptr %13, align 8, !tbaa !5
  %992 = call i32 @strcmp(ptr noundef %991, ptr noundef @.str.175) #11
  %993 = icmp eq i32 %992, 0
  br i1 %993, label %994, label %999

994:                                              ; preds = %990
  %995 = load ptr, ptr %14, align 8, !tbaa !5
  %996 = call double @atof(ptr noundef %995) #11
  %997 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %998 = getelementptr inbounds %class.CoreStatistics, ptr %997, i32 0, i32 9
  store double %996, ptr %998, align 8, !tbaa !128
  br label %1481

999:                                              ; preds = %990
  %1000 = load ptr, ptr %13, align 8, !tbaa !5
  %1001 = call i32 @strcmp(ptr noundef %1000, ptr noundef @.str.176) #11
  %1002 = icmp eq i32 %1001, 0
  br i1 %1002, label %1003, label %1008

1003:                                             ; preds = %999
  %1004 = load ptr, ptr %14, align 8, !tbaa !5
  %1005 = call double @atof(ptr noundef %1004) #11
  %1006 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1007 = getelementptr inbounds %class.CoreStatistics, ptr %1006, i32 0, i32 11
  store double %1005, ptr %1007, align 8, !tbaa !129
  br label %1480

1008:                                             ; preds = %999
  %1009 = load ptr, ptr %13, align 8, !tbaa !5
  %1010 = call i32 @strcmp(ptr noundef %1009, ptr noundef @.str.177) #11
  %1011 = icmp eq i32 %1010, 0
  br i1 %1011, label %1012, label %1017

1012:                                             ; preds = %1008
  %1013 = load ptr, ptr %14, align 8, !tbaa !5
  %1014 = call double @atof(ptr noundef %1013) #11
  %1015 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1016 = getelementptr inbounds %class.CoreStatistics, ptr %1015, i32 0, i32 10
  store double %1014, ptr %1016, align 8, !tbaa !130
  br label %1479

1017:                                             ; preds = %1008
  %1018 = load ptr, ptr %13, align 8, !tbaa !5
  %1019 = call i32 @strcmp(ptr noundef %1018, ptr noundef @.str.178) #11
  %1020 = icmp eq i32 %1019, 0
  br i1 %1020, label %1021, label %1026

1021:                                             ; preds = %1017
  %1022 = load ptr, ptr %14, align 8, !tbaa !5
  %1023 = call double @atof(ptr noundef %1022) #11
  %1024 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1025 = getelementptr inbounds %class.CoreStatistics, ptr %1024, i32 0, i32 12
  store double %1023, ptr %1025, align 8, !tbaa !131
  br label %1478

1026:                                             ; preds = %1017
  %1027 = load ptr, ptr %13, align 8, !tbaa !5
  %1028 = call i32 @strcmp(ptr noundef %1027, ptr noundef @.str.179) #11
  %1029 = icmp eq i32 %1028, 0
  br i1 %1029, label %1030, label %1035

1030:                                             ; preds = %1026
  %1031 = load ptr, ptr %14, align 8, !tbaa !5
  %1032 = call double @atof(ptr noundef %1031) #11
  %1033 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1034 = getelementptr inbounds %class.CoreStatistics, ptr %1033, i32 0, i32 14
  store double %1032, ptr %1034, align 8, !tbaa !132
  br label %1477

1035:                                             ; preds = %1026
  %1036 = load ptr, ptr %13, align 8, !tbaa !5
  %1037 = call i32 @strcmp(ptr noundef %1036, ptr noundef @.str.180) #11
  %1038 = icmp eq i32 %1037, 0
  br i1 %1038, label %1039, label %1044

1039:                                             ; preds = %1035
  %1040 = load ptr, ptr %14, align 8, !tbaa !5
  %1041 = call double @atof(ptr noundef %1040) #11
  %1042 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1043 = getelementptr inbounds %class.CoreStatistics, ptr %1042, i32 0, i32 13
  store double %1041, ptr %1043, align 8, !tbaa !133
  br label %1476

1044:                                             ; preds = %1035
  %1045 = load ptr, ptr %13, align 8, !tbaa !5
  %1046 = call i32 @strcmp(ptr noundef %1045, ptr noundef @.str.181) #11
  %1047 = icmp eq i32 %1046, 0
  br i1 %1047, label %1048, label %1053

1048:                                             ; preds = %1044
  %1049 = load ptr, ptr %14, align 8, !tbaa !5
  %1050 = call double @atof(ptr noundef %1049) #11
  %1051 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1052 = getelementptr inbounds %class.CoreStatistics, ptr %1051, i32 0, i32 0
  store double %1050, ptr %1052, align 8, !tbaa !134
  br label %1475

1053:                                             ; preds = %1044
  %1054 = load ptr, ptr %13, align 8, !tbaa !5
  %1055 = call i32 @strcmp(ptr noundef %1054, ptr noundef @.str.182) #11
  %1056 = icmp eq i32 %1055, 0
  br i1 %1056, label %1057, label %1062

1057:                                             ; preds = %1053
  %1058 = load ptr, ptr %14, align 8, !tbaa !5
  %1059 = call double @atof(ptr noundef %1058) #11
  %1060 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1061 = getelementptr inbounds %class.CoreStatistics, ptr %1060, i32 0, i32 1
  store double %1059, ptr %1061, align 8, !tbaa !135
  br label %1474

1062:                                             ; preds = %1053
  %1063 = load ptr, ptr %13, align 8, !tbaa !5
  %1064 = call i32 @strcmp(ptr noundef %1063, ptr noundef @.str.183) #11
  %1065 = icmp eq i32 %1064, 0
  br i1 %1065, label %1066, label %1071

1066:                                             ; preds = %1062
  %1067 = load ptr, ptr %14, align 8, !tbaa !5
  %1068 = call double @atof(ptr noundef %1067) #11
  %1069 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1070 = getelementptr inbounds %class.CoreStatistics, ptr %1069, i32 0, i32 2
  store double %1068, ptr %1070, align 8, !tbaa !136
  br label %1473

1071:                                             ; preds = %1062
  %1072 = load ptr, ptr %13, align 8, !tbaa !5
  %1073 = call i32 @strcmp(ptr noundef %1072, ptr noundef @.str.184) #11
  %1074 = icmp eq i32 %1073, 0
  br i1 %1074, label %1075, label %1080

1075:                                             ; preds = %1071
  %1076 = load ptr, ptr %14, align 8, !tbaa !5
  %1077 = call double @atof(ptr noundef %1076) #11
  %1078 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1079 = getelementptr inbounds %class.CoreStatistics, ptr %1078, i32 0, i32 3
  store double %1077, ptr %1079, align 8, !tbaa !137
  br label %1472

1080:                                             ; preds = %1071
  %1081 = load ptr, ptr %13, align 8, !tbaa !5
  %1082 = call i32 @strcmp(ptr noundef %1081, ptr noundef @.str.185) #11
  %1083 = icmp eq i32 %1082, 0
  br i1 %1083, label %1084, label %1089

1084:                                             ; preds = %1080
  %1085 = load ptr, ptr %14, align 8, !tbaa !5
  %1086 = call double @atof(ptr noundef %1085) #11
  %1087 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1088 = getelementptr inbounds %class.CoreStatistics, ptr %1087, i32 0, i32 4
  store double %1086, ptr %1088, align 8, !tbaa !138
  br label %1471

1089:                                             ; preds = %1080
  %1090 = load ptr, ptr %13, align 8, !tbaa !5
  %1091 = call i32 @strcmp(ptr noundef %1090, ptr noundef @.str.186) #11
  %1092 = icmp eq i32 %1091, 0
  br i1 %1092, label %1093, label %1098

1093:                                             ; preds = %1089
  %1094 = load ptr, ptr %14, align 8, !tbaa !5
  %1095 = call double @atof(ptr noundef %1094) #11
  %1096 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1097 = getelementptr inbounds %class.CoreStatistics, ptr %1096, i32 0, i32 5
  store double %1095, ptr %1097, align 8, !tbaa !139
  br label %1470

1098:                                             ; preds = %1089
  %1099 = load ptr, ptr %13, align 8, !tbaa !5
  %1100 = call i32 @strcmp(ptr noundef %1099, ptr noundef @.str.187) #11
  %1101 = icmp eq i32 %1100, 0
  br i1 %1101, label %1102, label %1107

1102:                                             ; preds = %1098
  %1103 = load ptr, ptr %14, align 8, !tbaa !5
  %1104 = call double @atof(ptr noundef %1103) #11
  %1105 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1106 = getelementptr inbounds %class.CoreStatistics, ptr %1105, i32 0, i32 6
  store double %1104, ptr %1106, align 8, !tbaa !140
  br label %1469

1107:                                             ; preds = %1098
  %1108 = load ptr, ptr %13, align 8, !tbaa !5
  %1109 = call i32 @strcmp(ptr noundef %1108, ptr noundef @.str.188) #11
  %1110 = icmp eq i32 %1109, 0
  br i1 %1110, label %1111, label %1116

1111:                                             ; preds = %1107
  %1112 = load ptr, ptr %14, align 8, !tbaa !5
  %1113 = call double @atof(ptr noundef %1112) #11
  %1114 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1115 = getelementptr inbounds %class.CoreStatistics, ptr %1114, i32 0, i32 8
  store double %1113, ptr %1115, align 8, !tbaa !141
  br label %1468

1116:                                             ; preds = %1107
  %1117 = load ptr, ptr %13, align 8, !tbaa !5
  %1118 = call i32 @strcmp(ptr noundef %1117, ptr noundef @.str.189) #11
  %1119 = icmp eq i32 %1118, 0
  br i1 %1119, label %1120, label %1125

1120:                                             ; preds = %1116
  %1121 = load ptr, ptr %14, align 8, !tbaa !5
  %1122 = call double @atof(ptr noundef %1121) #11
  %1123 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1124 = getelementptr inbounds %class.CoreStatistics, ptr %1123, i32 0, i32 7
  store double %1122, ptr %1124, align 8, !tbaa !142
  br label %1467

1125:                                             ; preds = %1116
  %1126 = load ptr, ptr %13, align 8, !tbaa !5
  %1127 = call i32 @strcmp(ptr noundef %1126, ptr noundef @.str.190) #11
  %1128 = icmp eq i32 %1127, 0
  br i1 %1128, label %1129, label %1134

1129:                                             ; preds = %1125
  %1130 = load ptr, ptr %14, align 8, !tbaa !5
  %1131 = call double @atof(ptr noundef %1130) #11
  %1132 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1133 = getelementptr inbounds %class.CoreStatistics, ptr %1132, i32 0, i32 46
  store double %1131, ptr %1133, align 8, !tbaa !143
  br label %1466

1134:                                             ; preds = %1125
  %1135 = load ptr, ptr %13, align 8, !tbaa !5
  %1136 = call i32 @strcmp(ptr noundef %1135, ptr noundef @.str.191) #11
  %1137 = icmp eq i32 %1136, 0
  br i1 %1137, label %1138, label %1143

1138:                                             ; preds = %1134
  %1139 = load ptr, ptr %14, align 8, !tbaa !5
  %1140 = call double @atof(ptr noundef %1139) #11
  %1141 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1142 = getelementptr inbounds %class.CoreStatistics, ptr %1141, i32 0, i32 45
  store double %1140, ptr %1142, align 8, !tbaa !144
  br label %1465

1143:                                             ; preds = %1134
  %1144 = load ptr, ptr %13, align 8, !tbaa !5
  %1145 = call i32 @strcmp(ptr noundef %1144, ptr noundef @.str.192) #11
  %1146 = icmp eq i32 %1145, 0
  br i1 %1146, label %1147, label %1152

1147:                                             ; preds = %1143
  %1148 = load ptr, ptr %14, align 8, !tbaa !5
  %1149 = call double @atof(ptr noundef %1148) #11
  %1150 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1151 = getelementptr inbounds %class.CoreStatistics, ptr %1150, i32 0, i32 47
  store double %1149, ptr %1151, align 8, !tbaa !145
  br label %1464

1152:                                             ; preds = %1143
  %1153 = load ptr, ptr %13, align 8, !tbaa !5
  %1154 = call i32 @strcmp(ptr noundef %1153, ptr noundef @.str.193) #11
  %1155 = icmp eq i32 %1154, 0
  br i1 %1155, label %1156, label %1161

1156:                                             ; preds = %1152
  %1157 = load ptr, ptr %14, align 8, !tbaa !5
  %1158 = call double @atof(ptr noundef %1157) #11
  %1159 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1160 = getelementptr inbounds %class.CoreStatistics, ptr %1159, i32 0, i32 48
  store double %1158, ptr %1160, align 8, !tbaa !146
  br label %1463

1161:                                             ; preds = %1152
  %1162 = load ptr, ptr %13, align 8, !tbaa !5
  %1163 = call i32 @strcmp(ptr noundef %1162, ptr noundef @.str.194) #11
  %1164 = icmp eq i32 %1163, 0
  br i1 %1164, label %1165, label %1170

1165:                                             ; preds = %1161
  %1166 = load ptr, ptr %14, align 8, !tbaa !5
  %1167 = call double @atof(ptr noundef %1166) #11
  %1168 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1169 = getelementptr inbounds %class.CoreStatistics, ptr %1168, i32 0, i32 17
  store double %1167, ptr %1169, align 8, !tbaa !147
  br label %1462

1170:                                             ; preds = %1161
  %1171 = load ptr, ptr %13, align 8, !tbaa !5
  %1172 = call i32 @strcmp(ptr noundef %1171, ptr noundef @.str.195) #11
  %1173 = icmp eq i32 %1172, 0
  br i1 %1173, label %1174, label %1179

1174:                                             ; preds = %1170
  %1175 = load ptr, ptr %14, align 8, !tbaa !5
  %1176 = call double @atof(ptr noundef %1175) #11
  %1177 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1178 = getelementptr inbounds %class.CoreStatistics, ptr %1177, i32 0, i32 18
  store double %1176, ptr %1178, align 8, !tbaa !148
  br label %1461

1179:                                             ; preds = %1170
  %1180 = load ptr, ptr %13, align 8, !tbaa !5
  %1181 = call i32 @strcmp(ptr noundef %1180, ptr noundef @.str.196) #11
  %1182 = icmp eq i32 %1181, 0
  br i1 %1182, label %1183, label %1188

1183:                                             ; preds = %1179
  %1184 = load ptr, ptr %14, align 8, !tbaa !5
  %1185 = call double @atof(ptr noundef %1184) #11
  %1186 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1187 = getelementptr inbounds %class.CoreStatistics, ptr %1186, i32 0, i32 19
  store double %1185, ptr %1187, align 8, !tbaa !149
  br label %1460

1188:                                             ; preds = %1179
  %1189 = load ptr, ptr %13, align 8, !tbaa !5
  %1190 = call i32 @strcmp(ptr noundef %1189, ptr noundef @.str.197) #11
  %1191 = icmp eq i32 %1190, 0
  br i1 %1191, label %1192, label %1197

1192:                                             ; preds = %1188
  %1193 = load ptr, ptr %14, align 8, !tbaa !5
  %1194 = call double @atof(ptr noundef %1193) #11
  %1195 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1196 = getelementptr inbounds %class.CoreStatistics, ptr %1195, i32 0, i32 20
  store double %1194, ptr %1196, align 8, !tbaa !150
  br label %1459

1197:                                             ; preds = %1188
  %1198 = load ptr, ptr %13, align 8, !tbaa !5
  %1199 = call i32 @strcmp(ptr noundef %1198, ptr noundef @.str.198) #11
  %1200 = icmp eq i32 %1199, 0
  br i1 %1200, label %1201, label %1206

1201:                                             ; preds = %1197
  %1202 = load ptr, ptr %14, align 8, !tbaa !5
  %1203 = call double @atof(ptr noundef %1202) #11
  %1204 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1205 = getelementptr inbounds %class.CoreStatistics, ptr %1204, i32 0, i32 21
  store double %1203, ptr %1205, align 8, !tbaa !151
  br label %1458

1206:                                             ; preds = %1197
  %1207 = load ptr, ptr %13, align 8, !tbaa !5
  %1208 = call i32 @strcmp(ptr noundef %1207, ptr noundef @.str.199) #11
  %1209 = icmp eq i32 %1208, 0
  br i1 %1209, label %1210, label %1215

1210:                                             ; preds = %1206
  %1211 = load ptr, ptr %14, align 8, !tbaa !5
  %1212 = call double @atof(ptr noundef %1211) #11
  %1213 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1214 = getelementptr inbounds %class.CoreStatistics, ptr %1213, i32 0, i32 22
  store double %1212, ptr %1214, align 8, !tbaa !152
  br label %1457

1215:                                             ; preds = %1206
  %1216 = load ptr, ptr %13, align 8, !tbaa !5
  %1217 = call i32 @strcmp(ptr noundef %1216, ptr noundef @.str.200) #11
  %1218 = icmp eq i32 %1217, 0
  br i1 %1218, label %1219, label %1224

1219:                                             ; preds = %1215
  %1220 = load ptr, ptr %14, align 8, !tbaa !5
  %1221 = call double @atof(ptr noundef %1220) #11
  %1222 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1223 = getelementptr inbounds %class.CoreStatistics, ptr %1222, i32 0, i32 23
  store double %1221, ptr %1223, align 8, !tbaa !153
  br label %1456

1224:                                             ; preds = %1215
  %1225 = load ptr, ptr %13, align 8, !tbaa !5
  %1226 = call i32 @strcmp(ptr noundef %1225, ptr noundef @.str.201) #11
  %1227 = icmp eq i32 %1226, 0
  br i1 %1227, label %1228, label %1233

1228:                                             ; preds = %1224
  %1229 = load ptr, ptr %14, align 8, !tbaa !5
  %1230 = call double @atof(ptr noundef %1229) #11
  %1231 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1232 = getelementptr inbounds %class.CoreStatistics, ptr %1231, i32 0, i32 24
  store double %1230, ptr %1232, align 8, !tbaa !154
  br label %1455

1233:                                             ; preds = %1224
  %1234 = load ptr, ptr %13, align 8, !tbaa !5
  %1235 = call i32 @strcmp(ptr noundef %1234, ptr noundef @.str.202) #11
  %1236 = icmp eq i32 %1235, 0
  br i1 %1236, label %1237, label %1242

1237:                                             ; preds = %1233
  %1238 = load ptr, ptr %14, align 8, !tbaa !5
  %1239 = call double @atof(ptr noundef %1238) #11
  %1240 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1241 = getelementptr inbounds %class.CoreStatistics, ptr %1240, i32 0, i32 25
  store double %1239, ptr %1241, align 8, !tbaa !155
  br label %1454

1242:                                             ; preds = %1233
  %1243 = load ptr, ptr %13, align 8, !tbaa !5
  %1244 = call i32 @strcmp(ptr noundef %1243, ptr noundef @.str.203) #11
  %1245 = icmp eq i32 %1244, 0
  br i1 %1245, label %1246, label %1251

1246:                                             ; preds = %1242
  %1247 = load ptr, ptr %14, align 8, !tbaa !5
  %1248 = call double @atof(ptr noundef %1247) #11
  %1249 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1250 = getelementptr inbounds %class.CoreStatistics, ptr %1249, i32 0, i32 26
  store double %1248, ptr %1250, align 8, !tbaa !156
  br label %1453

1251:                                             ; preds = %1242
  %1252 = load ptr, ptr %13, align 8, !tbaa !5
  %1253 = call i32 @strcmp(ptr noundef %1252, ptr noundef @.str.204) #11
  %1254 = icmp eq i32 %1253, 0
  br i1 %1254, label %1255, label %1260

1255:                                             ; preds = %1251
  %1256 = load ptr, ptr %14, align 8, !tbaa !5
  %1257 = call double @atof(ptr noundef %1256) #11
  %1258 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1259 = getelementptr inbounds %class.CoreStatistics, ptr %1258, i32 0, i32 15
  store double %1257, ptr %1259, align 8, !tbaa !157
  br label %1452

1260:                                             ; preds = %1251
  %1261 = load ptr, ptr %13, align 8, !tbaa !5
  %1262 = call i32 @strcmp(ptr noundef %1261, ptr noundef @.str.205) #11
  %1263 = icmp eq i32 %1262, 0
  br i1 %1263, label %1264, label %1269

1264:                                             ; preds = %1260
  %1265 = load ptr, ptr %14, align 8, !tbaa !5
  %1266 = call double @atof(ptr noundef %1265) #11
  %1267 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1268 = getelementptr inbounds %class.CoreStatistics, ptr %1267, i32 0, i32 16
  store double %1266, ptr %1268, align 8, !tbaa !158
  br label %1451

1269:                                             ; preds = %1260
  %1270 = load ptr, ptr %13, align 8, !tbaa !5
  %1271 = call i32 @strcmp(ptr noundef %1270, ptr noundef @.str.206) #11
  %1272 = icmp eq i32 %1271, 0
  br i1 %1272, label %1273, label %1278

1273:                                             ; preds = %1269
  %1274 = load ptr, ptr %14, align 8, !tbaa !5
  %1275 = call double @atof(ptr noundef %1274) #11
  %1276 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1277 = getelementptr inbounds %class.CoreStatistics, ptr %1276, i32 0, i32 27
  store double %1275, ptr %1277, align 8, !tbaa !159
  br label %1450

1278:                                             ; preds = %1269
  %1279 = load ptr, ptr %13, align 8, !tbaa !5
  %1280 = call i32 @strcmp(ptr noundef %1279, ptr noundef @.str.207) #11
  %1281 = icmp eq i32 %1280, 0
  br i1 %1281, label %1282, label %1287

1282:                                             ; preds = %1278
  %1283 = load ptr, ptr %14, align 8, !tbaa !5
  %1284 = call double @atof(ptr noundef %1283) #11
  %1285 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1286 = getelementptr inbounds %class.CoreStatistics, ptr %1285, i32 0, i32 28
  store double %1284, ptr %1286, align 8, !tbaa !160
  br label %1449

1287:                                             ; preds = %1278
  %1288 = load ptr, ptr %13, align 8, !tbaa !5
  %1289 = call i32 @strcmp(ptr noundef %1288, ptr noundef @.str.208) #11
  %1290 = icmp eq i32 %1289, 0
  br i1 %1290, label %1291, label %1296

1291:                                             ; preds = %1287
  %1292 = load ptr, ptr %14, align 8, !tbaa !5
  %1293 = call double @atof(ptr noundef %1292) #11
  %1294 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1295 = getelementptr inbounds %class.CoreStatistics, ptr %1294, i32 0, i32 29
  store double %1293, ptr %1295, align 8, !tbaa !161
  br label %1448

1296:                                             ; preds = %1287
  %1297 = load ptr, ptr %13, align 8, !tbaa !5
  %1298 = call i32 @strcmp(ptr noundef %1297, ptr noundef @.str.209) #11
  %1299 = icmp eq i32 %1298, 0
  br i1 %1299, label %1300, label %1305

1300:                                             ; preds = %1296
  %1301 = load ptr, ptr %14, align 8, !tbaa !5
  %1302 = call double @atof(ptr noundef %1301) #11
  %1303 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1304 = getelementptr inbounds %class.CoreStatistics, ptr %1303, i32 0, i32 30
  store double %1302, ptr %1304, align 8, !tbaa !162
  br label %1447

1305:                                             ; preds = %1296
  %1306 = load ptr, ptr %13, align 8, !tbaa !5
  %1307 = call i32 @strcmp(ptr noundef %1306, ptr noundef @.str.210) #11
  %1308 = icmp eq i32 %1307, 0
  br i1 %1308, label %1309, label %1314

1309:                                             ; preds = %1305
  %1310 = load ptr, ptr %14, align 8, !tbaa !5
  %1311 = call double @atof(ptr noundef %1310) #11
  %1312 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1313 = getelementptr inbounds %class.CoreStatistics, ptr %1312, i32 0, i32 31
  store double %1311, ptr %1313, align 8, !tbaa !163
  br label %1446

1314:                                             ; preds = %1305
  %1315 = load ptr, ptr %13, align 8, !tbaa !5
  %1316 = call i32 @strcmp(ptr noundef %1315, ptr noundef @.str.211) #11
  %1317 = icmp eq i32 %1316, 0
  br i1 %1317, label %1318, label %1323

1318:                                             ; preds = %1314
  %1319 = load ptr, ptr %14, align 8, !tbaa !5
  %1320 = call double @atof(ptr noundef %1319) #11
  %1321 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1322 = getelementptr inbounds %class.CoreStatistics, ptr %1321, i32 0, i32 32
  store double %1320, ptr %1322, align 8, !tbaa !164
  br label %1445

1323:                                             ; preds = %1314
  %1324 = load ptr, ptr %13, align 8, !tbaa !5
  %1325 = call i32 @strcmp(ptr noundef %1324, ptr noundef @.str.212) #11
  %1326 = icmp eq i32 %1325, 0
  br i1 %1326, label %1327, label %1332

1327:                                             ; preds = %1323
  %1328 = load ptr, ptr %14, align 8, !tbaa !5
  %1329 = call double @atof(ptr noundef %1328) #11
  %1330 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1331 = getelementptr inbounds %class.CoreStatistics, ptr %1330, i32 0, i32 33
  store double %1329, ptr %1331, align 8, !tbaa !165
  br label %1444

1332:                                             ; preds = %1323
  %1333 = load ptr, ptr %13, align 8, !tbaa !5
  %1334 = call i32 @strcmp(ptr noundef %1333, ptr noundef @.str.213) #11
  %1335 = icmp eq i32 %1334, 0
  br i1 %1335, label %1336, label %1341

1336:                                             ; preds = %1332
  %1337 = load ptr, ptr %14, align 8, !tbaa !5
  %1338 = call double @atof(ptr noundef %1337) #11
  %1339 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1340 = getelementptr inbounds %class.CoreStatistics, ptr %1339, i32 0, i32 34
  store double %1338, ptr %1340, align 8, !tbaa !166
  br label %1443

1341:                                             ; preds = %1332
  %1342 = load ptr, ptr %13, align 8, !tbaa !5
  %1343 = call i32 @strcmp(ptr noundef %1342, ptr noundef @.str.214) #11
  %1344 = icmp eq i32 %1343, 0
  br i1 %1344, label %1345, label %1350

1345:                                             ; preds = %1341
  %1346 = load ptr, ptr %14, align 8, !tbaa !5
  %1347 = call double @atof(ptr noundef %1346) #11
  %1348 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1349 = getelementptr inbounds %class.CoreStatistics, ptr %1348, i32 0, i32 35
  store double %1347, ptr %1349, align 8, !tbaa !167
  br label %1442

1350:                                             ; preds = %1341
  %1351 = load ptr, ptr %13, align 8, !tbaa !5
  %1352 = call i32 @strcmp(ptr noundef %1351, ptr noundef @.str.215) #11
  %1353 = icmp eq i32 %1352, 0
  br i1 %1353, label %1354, label %1359

1354:                                             ; preds = %1350
  %1355 = load ptr, ptr %14, align 8, !tbaa !5
  %1356 = call double @atof(ptr noundef %1355) #11
  %1357 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1358 = getelementptr inbounds %class.CoreStatistics, ptr %1357, i32 0, i32 36
  store double %1356, ptr %1358, align 8, !tbaa !168
  br label %1441

1359:                                             ; preds = %1350
  %1360 = load ptr, ptr %13, align 8, !tbaa !5
  %1361 = call i32 @strcmp(ptr noundef %1360, ptr noundef @.str.216) #11
  %1362 = icmp eq i32 %1361, 0
  br i1 %1362, label %1363, label %1368

1363:                                             ; preds = %1359
  %1364 = load ptr, ptr %14, align 8, !tbaa !5
  %1365 = call double @atof(ptr noundef %1364) #11
  %1366 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1367 = getelementptr inbounds %class.CoreStatistics, ptr %1366, i32 0, i32 37
  store double %1365, ptr %1367, align 8, !tbaa !169
  br label %1440

1368:                                             ; preds = %1359
  %1369 = load ptr, ptr %13, align 8, !tbaa !5
  %1370 = call i32 @strcmp(ptr noundef %1369, ptr noundef @.str.217) #11
  %1371 = icmp eq i32 %1370, 0
  br i1 %1371, label %1372, label %1377

1372:                                             ; preds = %1368
  %1373 = load ptr, ptr %14, align 8, !tbaa !5
  %1374 = call double @atof(ptr noundef %1373) #11
  %1375 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1376 = getelementptr inbounds %class.CoreStatistics, ptr %1375, i32 0, i32 38
  store double %1374, ptr %1376, align 8, !tbaa !170
  br label %1439

1377:                                             ; preds = %1368
  %1378 = load ptr, ptr %13, align 8, !tbaa !5
  %1379 = call i32 @strcmp(ptr noundef %1378, ptr noundef @.str.218) #11
  %1380 = icmp eq i32 %1379, 0
  br i1 %1380, label %1381, label %1386

1381:                                             ; preds = %1377
  %1382 = load ptr, ptr %14, align 8, !tbaa !5
  %1383 = call double @atof(ptr noundef %1382) #11
  %1384 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1385 = getelementptr inbounds %class.CoreStatistics, ptr %1384, i32 0, i32 39
  store double %1383, ptr %1385, align 8, !tbaa !171
  br label %1438

1386:                                             ; preds = %1377
  %1387 = load ptr, ptr %13, align 8, !tbaa !5
  %1388 = call i32 @strcmp(ptr noundef %1387, ptr noundef @.str.219) #11
  %1389 = icmp eq i32 %1388, 0
  br i1 %1389, label %1390, label %1395

1390:                                             ; preds = %1386
  %1391 = load ptr, ptr %14, align 8, !tbaa !5
  %1392 = call double @atof(ptr noundef %1391) #11
  %1393 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1394 = getelementptr inbounds %class.CoreStatistics, ptr %1393, i32 0, i32 40
  store double %1392, ptr %1394, align 8, !tbaa !172
  br label %1437

1395:                                             ; preds = %1386
  %1396 = load ptr, ptr %13, align 8, !tbaa !5
  %1397 = call i32 @strcmp(ptr noundef %1396, ptr noundef @.str.220) #11
  %1398 = icmp eq i32 %1397, 0
  br i1 %1398, label %1399, label %1404

1399:                                             ; preds = %1395
  %1400 = load ptr, ptr %14, align 8, !tbaa !5
  %1401 = call double @atof(ptr noundef %1400) #11
  %1402 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1403 = getelementptr inbounds %class.CoreStatistics, ptr %1402, i32 0, i32 41
  store double %1401, ptr %1403, align 8, !tbaa !173
  br label %1436

1404:                                             ; preds = %1395
  %1405 = load ptr, ptr %13, align 8, !tbaa !5
  %1406 = call i32 @strcmp(ptr noundef %1405, ptr noundef @.str.221) #11
  %1407 = icmp eq i32 %1406, 0
  br i1 %1407, label %1408, label %1413

1408:                                             ; preds = %1404
  %1409 = load ptr, ptr %14, align 8, !tbaa !5
  %1410 = call double @atof(ptr noundef %1409) #11
  %1411 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1412 = getelementptr inbounds %class.CoreStatistics, ptr %1411, i32 0, i32 42
  store double %1410, ptr %1412, align 8, !tbaa !174
  br label %1435

1413:                                             ; preds = %1404
  %1414 = load ptr, ptr %13, align 8, !tbaa !5
  %1415 = call i32 @strcmp(ptr noundef %1414, ptr noundef @.str.222) #11
  %1416 = icmp eq i32 %1415, 0
  br i1 %1416, label %1417, label %1422

1417:                                             ; preds = %1413
  %1418 = load ptr, ptr %14, align 8, !tbaa !5
  %1419 = call double @atof(ptr noundef %1418) #11
  %1420 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1421 = getelementptr inbounds %class.CoreStatistics, ptr %1420, i32 0, i32 43
  store double %1419, ptr %1421, align 8, !tbaa !175
  br label %1434

1422:                                             ; preds = %1413
  %1423 = load ptr, ptr %13, align 8, !tbaa !5
  %1424 = call i32 @strcmp(ptr noundef %1423, ptr noundef @.str.223) #11
  %1425 = icmp eq i32 %1424, 0
  br i1 %1425, label %1426, label %1431

1426:                                             ; preds = %1422
  %1427 = load ptr, ptr %14, align 8, !tbaa !5
  %1428 = call double @atof(ptr noundef %1427) #11
  %1429 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 15
  %1430 = getelementptr inbounds %class.CoreStatistics, ptr %1429, i32 0, i32 44
  store double %1428, ptr %1430, align 8, !tbaa !176
  br label %1433

1431:                                             ; preds = %1422
  %1432 = load ptr, ptr %13, align 8, !tbaa !5
  call void @_ZN14McPATComponent20warnUnrecognizedStatEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %1432)
  br label %1433

1433:                                             ; preds = %1431, %1426
  br label %1434

1434:                                             ; preds = %1433, %1417
  br label %1435

1435:                                             ; preds = %1434, %1408
  br label %1436

1436:                                             ; preds = %1435, %1399
  br label %1437

1437:                                             ; preds = %1436, %1390
  br label %1438

1438:                                             ; preds = %1437, %1381
  br label %1439

1439:                                             ; preds = %1438, %1372
  br label %1440

1440:                                             ; preds = %1439, %1363
  br label %1441

1441:                                             ; preds = %1440, %1354
  br label %1442

1442:                                             ; preds = %1441, %1345
  br label %1443

1443:                                             ; preds = %1442, %1336
  br label %1444

1444:                                             ; preds = %1443, %1327
  br label %1445

1445:                                             ; preds = %1444, %1318
  br label %1446

1446:                                             ; preds = %1445, %1309
  br label %1447

1447:                                             ; preds = %1446, %1300
  br label %1448

1448:                                             ; preds = %1447, %1291
  br label %1449

1449:                                             ; preds = %1448, %1282
  br label %1450

1450:                                             ; preds = %1449, %1273
  br label %1451

1451:                                             ; preds = %1450, %1264
  br label %1452

1452:                                             ; preds = %1451, %1255
  br label %1453

1453:                                             ; preds = %1452, %1246
  br label %1454

1454:                                             ; preds = %1453, %1237
  br label %1455

1455:                                             ; preds = %1454, %1228
  br label %1456

1456:                                             ; preds = %1455, %1219
  br label %1457

1457:                                             ; preds = %1456, %1210
  br label %1458

1458:                                             ; preds = %1457, %1201
  br label %1459

1459:                                             ; preds = %1458, %1192
  br label %1460

1460:                                             ; preds = %1459, %1183
  br label %1461

1461:                                             ; preds = %1460, %1174
  br label %1462

1462:                                             ; preds = %1461, %1165
  br label %1463

1463:                                             ; preds = %1462, %1156
  br label %1464

1464:                                             ; preds = %1463, %1147
  br label %1465

1465:                                             ; preds = %1464, %1138
  br label %1466

1466:                                             ; preds = %1465, %1129
  br label %1467

1467:                                             ; preds = %1466, %1120
  br label %1468

1468:                                             ; preds = %1467, %1111
  br label %1469

1469:                                             ; preds = %1468, %1102
  br label %1470

1470:                                             ; preds = %1469, %1093
  br label %1471

1471:                                             ; preds = %1470, %1084
  br label %1472

1472:                                             ; preds = %1471, %1075
  br label %1473

1473:                                             ; preds = %1472, %1066
  br label %1474

1474:                                             ; preds = %1473, %1057
  br label %1475

1475:                                             ; preds = %1474, %1048
  br label %1476

1476:                                             ; preds = %1475, %1039
  br label %1477

1477:                                             ; preds = %1476, %1030
  br label %1478

1478:                                             ; preds = %1477, %1021
  br label %1479

1479:                                             ; preds = %1478, %1012
  br label %1480

1480:                                             ; preds = %1479, %1003
  br label %1481

1481:                                             ; preds = %1480, %994
  br label %1482

1482:                                             ; preds = %1481, %987
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #10
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #10
  br label %1483

1483:                                             ; preds = %1482
  %1484 = load i32, ptr %4, align 4, !tbaa !30
  %1485 = add nsw i32 %1484, 1
  store i32 %1485, ptr %4, align 4, !tbaa !30
  br label %973, !llvm.loop !177

1486:                                             ; preds = %973
  %1487 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1488 = getelementptr inbounds %class.CoreParameters, ptr %1487, i32 0, i32 32
  %1489 = load i32, ptr %1488, align 4, !tbaa !45
  %1490 = icmp sgt i32 %1489, 1
  %1491 = zext i1 %1490 to i64
  %1492 = select i1 %1490, i1 true, i1 false
  %1493 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1494 = getelementptr inbounds %class.CoreParameters, ptr %1493, i32 0, i32 45
  %1495 = zext i1 %1492 to i8
  store i8 %1495, ptr %1494, align 1, !tbaa !178
  %1496 = load i32, ptr @_ZN14McPATComponent21virtual_address_widthE, align 4, !tbaa !30
  %1497 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1498 = getelementptr inbounds %class.CoreParameters, ptr %1497, i32 0, i32 29
  store i32 %1496, ptr %1498, align 8, !tbaa !179
  %1499 = load i32, ptr @_ZN14McPATComponent21virtual_address_widthE, align 4, !tbaa !30
  %1500 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1501 = getelementptr inbounds %class.CoreParameters, ptr %1500, i32 0, i32 42
  store i32 %1499, ptr %1501, align 8, !tbaa !180
  %1502 = load i32, ptr @_ZN14McPATComponent22physical_address_widthE, align 4, !tbaa !30
  %1503 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1504 = getelementptr inbounds %class.CoreParameters, ptr %1503, i32 0, i32 43
  store i32 %1502, ptr %1504, align 4, !tbaa !181
  %1505 = load i32, ptr @_ZN14McPATComponent15data_path_widthE, align 4, !tbaa !30
  %1506 = sitofp i32 %1505 to double
  %1507 = fdiv double %1506, 3.200000e+01
  %1508 = call double @llvm.ceil.f64(double %1507)
  %1509 = fptosi double %1508 to i32
  %1510 = mul nsw i32 %1509, 32
  %1511 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1512 = getelementptr inbounds %class.CoreParameters, ptr %1511, i32 0, i32 40
  store i32 %1510, ptr %1512, align 8, !tbaa !182
  %1513 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1514 = getelementptr inbounds %class.CoreParameters, ptr %1513, i32 0, i32 40
  %1515 = load i32, ptr %1514, align 8, !tbaa !182
  %1516 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1517 = getelementptr inbounds %class.CoreParameters, ptr %1516, i32 0, i32 41
  store i32 %1515, ptr %1517, align 4, !tbaa !183
  %1518 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1519 = getelementptr inbounds %class.CoreParameters, ptr %1518, i32 0, i32 9
  %1520 = load i32, ptr %1519, align 8, !tbaa !58
  %1521 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1520)
  %1522 = call double @llvm.ceil.f64(double %1521)
  %1523 = fptosi double %1522 to i32
  %1524 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1525 = getelementptr inbounds %class.CoreParameters, ptr %1524, i32 0, i32 7
  store i32 %1523, ptr %1525, align 8, !tbaa !184
  %1526 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1527 = getelementptr inbounds %class.CoreParameters, ptr %1526, i32 0, i32 10
  %1528 = load i32, ptr %1527, align 4, !tbaa !59
  %1529 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1528)
  %1530 = call double @llvm.ceil.f64(double %1529)
  %1531 = fptosi double %1530 to i32
  %1532 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1533 = getelementptr inbounds %class.CoreParameters, ptr %1532, i32 0, i32 8
  store i32 %1531, ptr %1533, align 4, !tbaa !185
  %1534 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1535 = getelementptr inbounds %class.CoreParameters, ptr %1534, i32 0, i32 9
  %1536 = load i32, ptr %1535, align 8, !tbaa !58
  %1537 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1538 = getelementptr inbounds %class.CoreParameters, ptr %1537, i32 0, i32 13
  store i32 %1536, ptr %1538, align 8, !tbaa !186
  %1539 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1540 = getelementptr inbounds %class.CoreParameters, ptr %1539, i32 0, i32 10
  %1541 = load i32, ptr %1540, align 4, !tbaa !59
  %1542 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1543 = getelementptr inbounds %class.CoreParameters, ptr %1542, i32 0, i32 14
  store i32 %1541, ptr %1543, align 4, !tbaa !187
  %1544 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1545 = getelementptr inbounds %class.CoreParameters, ptr %1544, i32 0, i32 28
  %1546 = load i32, ptr %1545, align 4, !tbaa !39
  %1547 = icmp sle i32 %1546, 0
  br i1 %1547, label %1548, label %1560

1548:                                             ; preds = %1486
  call void @llvm.lifetime.start.p0(i64 1, ptr %16) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef @.str.91, ptr noundef nonnull align 1 dereferenceable(1) %16)
          to label %1549 unwind label %1551

1549:                                             ; preds = %1548
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %15)
          to label %1550 unwind label %1555

1550:                                             ; preds = %1549
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #10
  br label %1560

1551:                                             ; preds = %1548
  %1552 = landingpad { ptr, i32 }
          cleanup
  %1553 = extractvalue { ptr, i32 } %1552, 0
  store ptr %1553, ptr %10, align 8
  %1554 = extractvalue { ptr, i32 } %1552, 1
  store i32 %1554, ptr %11, align 4
  br label %1559

1555:                                             ; preds = %1549
  %1556 = landingpad { ptr, i32 }
          cleanup
  %1557 = extractvalue { ptr, i32 } %1556, 0
  store ptr %1557, ptr %10, align 8
  %1558 = extractvalue { ptr, i32 } %1556, 1
  store i32 %1558, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #10
  br label %1559

1559:                                             ; preds = %1555, %1551
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #10
  br label %1837

1560:                                             ; preds = %1550, %1486
  %1561 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1562 = getelementptr inbounds %class.CoreParameters, ptr %1561, i32 0, i32 32
  %1563 = load i32, ptr %1562, align 4, !tbaa !45
  %1564 = icmp sle i32 %1563, 0
  br i1 %1564, label %1565, label %1577

1565:                                             ; preds = %1560
  call void @llvm.lifetime.start.p0(i64 1, ptr %18) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef @.str.97, ptr noundef nonnull align 1 dereferenceable(1) %18)
          to label %1566 unwind label %1568

1566:                                             ; preds = %1565
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %17)
          to label %1567 unwind label %1572

1567:                                             ; preds = %1566
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %18) #10
  br label %1577

1568:                                             ; preds = %1565
  %1569 = landingpad { ptr, i32 }
          cleanup
  %1570 = extractvalue { ptr, i32 } %1569, 0
  store ptr %1570, ptr %10, align 8
  %1571 = extractvalue { ptr, i32 } %1569, 1
  store i32 %1571, ptr %11, align 4
  br label %1576

1572:                                             ; preds = %1566
  %1573 = landingpad { ptr, i32 }
          cleanup
  %1574 = extractvalue { ptr, i32 } %1573, 0
  store ptr %1574, ptr %10, align 8
  %1575 = extractvalue { ptr, i32 } %1573, 1
  store i32 %1575, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  br label %1576

1576:                                             ; preds = %1572, %1568
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %18) #10
  br label %1837

1577:                                             ; preds = %1567, %1560
  %1578 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1579 = getelementptr inbounds %class.CoreParameters, ptr %1578, i32 0, i32 30
  %1580 = load i32, ptr %1579, align 4, !tbaa !40
  %1581 = icmp sle i32 %1580, 0
  br i1 %1581, label %1582, label %1594

1582:                                             ; preds = %1577
  call void @llvm.lifetime.start.p0(i64 1, ptr %20) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef @.str.92, ptr noundef nonnull align 1 dereferenceable(1) %20)
          to label %1583 unwind label %1585

1583:                                             ; preds = %1582
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %19)
          to label %1584 unwind label %1589

1584:                                             ; preds = %1583
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #10
  br label %1594

1585:                                             ; preds = %1582
  %1586 = landingpad { ptr, i32 }
          cleanup
  %1587 = extractvalue { ptr, i32 } %1586, 0
  store ptr %1587, ptr %10, align 8
  %1588 = extractvalue { ptr, i32 } %1586, 1
  store i32 %1588, ptr %11, align 4
  br label %1593

1589:                                             ; preds = %1583
  %1590 = landingpad { ptr, i32 }
          cleanup
  %1591 = extractvalue { ptr, i32 } %1590, 0
  store ptr %1591, ptr %10, align 8
  %1592 = extractvalue { ptr, i32 } %1590, 1
  store i32 %1592, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #10
  br label %1593

1593:                                             ; preds = %1589, %1585
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %20) #10
  br label %1837

1594:                                             ; preds = %1584, %1577
  %1595 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1596 = getelementptr inbounds %class.CoreParameters, ptr %1595, i32 0, i32 87
  %1597 = load i32, ptr %1596, align 4, !tbaa !100
  %1598 = icmp sle i32 %1597, 0
  br i1 %1598, label %1599, label %1611

1599:                                             ; preds = %1594
  call void @llvm.lifetime.start.p0(i64 1, ptr %22) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef @.str.152, ptr noundef nonnull align 1 dereferenceable(1) %22)
          to label %1600 unwind label %1602

1600:                                             ; preds = %1599
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %21)
          to label %1601 unwind label %1606

1601:                                             ; preds = %1600
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #10
  br label %1611

1602:                                             ; preds = %1599
  %1603 = landingpad { ptr, i32 }
          cleanup
  %1604 = extractvalue { ptr, i32 } %1603, 0
  store ptr %1604, ptr %10, align 8
  %1605 = extractvalue { ptr, i32 } %1603, 1
  store i32 %1605, ptr %11, align 4
  br label %1610

1606:                                             ; preds = %1600
  %1607 = landingpad { ptr, i32 }
          cleanup
  %1608 = extractvalue { ptr, i32 } %1607, 0
  store ptr %1608, ptr %10, align 8
  %1609 = extractvalue { ptr, i32 } %1607, 1
  store i32 %1609, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #10
  br label %1610

1610:                                             ; preds = %1606, %1602
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #10
  br label %1837

1611:                                             ; preds = %1601, %1594
  %1612 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1613 = getelementptr inbounds %class.CoreParameters, ptr %1612, i32 0, i32 91
  %1614 = load i32, ptr %1613, align 4, !tbaa !104
  %1615 = icmp sle i32 %1614, 0
  br i1 %1615, label %1616, label %1628

1616:                                             ; preds = %1611
  call void @llvm.lifetime.start.p0(i64 1, ptr %24) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef @.str.156, ptr noundef nonnull align 1 dereferenceable(1) %24)
          to label %1617 unwind label %1619

1617:                                             ; preds = %1616
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %23)
          to label %1618 unwind label %1623

1618:                                             ; preds = %1617
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %24) #10
  br label %1628

1619:                                             ; preds = %1616
  %1620 = landingpad { ptr, i32 }
          cleanup
  %1621 = extractvalue { ptr, i32 } %1620, 0
  store ptr %1621, ptr %10, align 8
  %1622 = extractvalue { ptr, i32 } %1620, 1
  store i32 %1622, ptr %11, align 4
  br label %1627

1623:                                             ; preds = %1617
  %1624 = landingpad { ptr, i32 }
          cleanup
  %1625 = extractvalue { ptr, i32 } %1624, 0
  store ptr %1625, ptr %10, align 8
  %1626 = extractvalue { ptr, i32 } %1624, 1
  store i32 %1626, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #10
  br label %1627

1627:                                             ; preds = %1623, %1619
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %24) #10
  br label %1837

1628:                                             ; preds = %1618, %1611
  %1629 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1630 = getelementptr inbounds %class.CoreParameters, ptr %1629, i32 0, i32 20
  %1631 = load i32, ptr %1630, align 4, !tbaa !49
  %1632 = icmp sle i32 %1631, 0
  br i1 %1632, label %1633, label %1645

1633:                                             ; preds = %1628
  call void @llvm.lifetime.start.p0(i64 1, ptr %26) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef @.str.101, ptr noundef nonnull align 1 dereferenceable(1) %26)
          to label %1634 unwind label %1636

1634:                                             ; preds = %1633
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %25)
          to label %1635 unwind label %1640

1635:                                             ; preds = %1634
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #10
  br label %1654

1636:                                             ; preds = %1633
  %1637 = landingpad { ptr, i32 }
          cleanup
  %1638 = extractvalue { ptr, i32 } %1637, 0
  store ptr %1638, ptr %10, align 8
  %1639 = extractvalue { ptr, i32 } %1637, 1
  store i32 %1639, ptr %11, align 4
  br label %1644

1640:                                             ; preds = %1634
  %1641 = landingpad { ptr, i32 }
          cleanup
  %1642 = extractvalue { ptr, i32 } %1641, 0
  store ptr %1642, ptr %10, align 8
  %1643 = extractvalue { ptr, i32 } %1641, 1
  store i32 %1643, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #10
  br label %1644

1644:                                             ; preds = %1640, %1636
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %26) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #10
  br label %1837

1645:                                             ; preds = %1628
  %1646 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1647 = getelementptr inbounds %class.CoreParameters, ptr %1646, i32 0, i32 22
  %1648 = load i32, ptr %1647, align 4, !tbaa !126
  %1649 = icmp sgt i32 %1648, 0
  br i1 %1649, label %1650, label %1651

1650:                                             ; preds = %1645
  br label %1653

1651:                                             ; preds = %1645
  call void @__assert_fail(ptr noundef @.str.224, ptr noundef @.str.225, i32 noundef 3956, ptr noundef @__PRETTY_FUNCTION__._ZN4Core14set_core_paramEv) #12
  unreachable

1652:                                             ; No predecessors!
  br label %1653

1653:                                             ; preds = %1652, %1650
  br label %1654

1654:                                             ; preds = %1653, %1635
  %1655 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1656 = getelementptr inbounds %class.CoreParameters, ptr %1655, i32 0, i32 3
  %1657 = load i32, ptr %1656, align 4, !tbaa !43
  %1658 = icmp eq i32 %1657, 0
  br i1 %1658, label %1659, label %1729

1659:                                             ; preds = %1654
  %1660 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1661 = getelementptr inbounds %class.CoreParameters, ptr %1660, i32 0, i32 5
  %1662 = load i32, ptr %1661, align 4, !tbaa !56
  %1663 = icmp eq i32 %1662, 0
  br i1 %1663, label %1664, label %1695

1664:                                             ; preds = %1659
  %1665 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1666 = getelementptr inbounds %class.CoreParameters, ptr %1665, i32 0, i32 60
  %1667 = load i32, ptr %1666, align 8, !tbaa !73
  %1668 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1667)
  %1669 = call double @llvm.ceil.f64(double %1668)
  %1670 = fptosi double %1669 to i32
  %1671 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1672 = getelementptr inbounds %class.CoreParameters, ptr %1671, i32 0, i32 11
  store i32 %1670, ptr %1672, align 8, !tbaa !188
  %1673 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1674 = getelementptr inbounds %class.CoreParameters, ptr %1673, i32 0, i32 66
  %1675 = load i32, ptr %1674, align 8, !tbaa !79
  %1676 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1675)
  %1677 = call double @llvm.ceil.f64(double %1676)
  %1678 = fptosi double %1677 to i32
  %1679 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1680 = getelementptr inbounds %class.CoreParameters, ptr %1679, i32 0, i32 12
  store i32 %1678, ptr %1680, align 4, !tbaa !189
  %1681 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1682 = getelementptr inbounds %class.CoreParameters, ptr %1681, i32 0, i32 60
  %1683 = load i32, ptr %1682, align 8, !tbaa !73
  %1684 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1685 = getelementptr inbounds %class.CoreParameters, ptr %1684, i32 0, i32 13
  store i32 %1683, ptr %1685, align 8, !tbaa !186
  %1686 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1687 = getelementptr inbounds %class.CoreParameters, ptr %1686, i32 0, i32 15
  store i32 %1683, ptr %1687, align 8, !tbaa !190
  %1688 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1689 = getelementptr inbounds %class.CoreParameters, ptr %1688, i32 0, i32 66
  %1690 = load i32, ptr %1689, align 8, !tbaa !79
  %1691 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1692 = getelementptr inbounds %class.CoreParameters, ptr %1691, i32 0, i32 14
  store i32 %1690, ptr %1692, align 4, !tbaa !187
  %1693 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1694 = getelementptr inbounds %class.CoreParameters, ptr %1693, i32 0, i32 16
  store i32 %1690, ptr %1694, align 4, !tbaa !191
  br label %1728

1695:                                             ; preds = %1659
  %1696 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1697 = getelementptr inbounds %class.CoreParameters, ptr %1696, i32 0, i32 5
  %1698 = load i32, ptr %1697, align 4, !tbaa !56
  %1699 = icmp eq i32 %1698, 1
  br i1 %1699, label %1700, label %1727

1700:                                             ; preds = %1695
  %1701 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1702 = getelementptr inbounds %class.CoreParameters, ptr %1701, i32 0, i32 47
  %1703 = load i32, ptr %1702, align 8, !tbaa !60
  %1704 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1703)
  %1705 = call double @llvm.ceil.f64(double %1704)
  %1706 = fptosi double %1705 to i32
  %1707 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1708 = getelementptr inbounds %class.CoreParameters, ptr %1707, i32 0, i32 11
  store i32 %1706, ptr %1708, align 8, !tbaa !188
  %1709 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1710 = getelementptr inbounds %class.CoreParameters, ptr %1709, i32 0, i32 47
  %1711 = load i32, ptr %1710, align 8, !tbaa !60
  %1712 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1711)
  %1713 = call double @llvm.ceil.f64(double %1712)
  %1714 = fptosi double %1713 to i32
  %1715 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1716 = getelementptr inbounds %class.CoreParameters, ptr %1715, i32 0, i32 12
  store i32 %1714, ptr %1716, align 4, !tbaa !189
  %1717 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1718 = getelementptr inbounds %class.CoreParameters, ptr %1717, i32 0, i32 47
  %1719 = load i32, ptr %1718, align 8, !tbaa !60
  %1720 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1721 = getelementptr inbounds %class.CoreParameters, ptr %1720, i32 0, i32 15
  store i32 %1719, ptr %1721, align 8, !tbaa !190
  %1722 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1723 = getelementptr inbounds %class.CoreParameters, ptr %1722, i32 0, i32 47
  %1724 = load i32, ptr %1723, align 8, !tbaa !60
  %1725 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1726 = getelementptr inbounds %class.CoreParameters, ptr %1725, i32 0, i32 16
  store i32 %1724, ptr %1726, align 4, !tbaa !191
  br label %1727

1727:                                             ; preds = %1700, %1695
  br label %1728

1728:                                             ; preds = %1727, %1664
  br label %1729

1729:                                             ; preds = %1728, %1654
  %1730 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1731 = getelementptr inbounds %class.CoreParameters, ptr %1730, i32 0, i32 53
  %1732 = load i32, ptr %1731, align 8, !tbaa !66
  %1733 = icmp sgt i32 %1732, 0
  br i1 %1733, label %1734, label %1739

1734:                                             ; preds = %1729
  %1735 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1736 = getelementptr inbounds %class.CoreParameters, ptr %1735, i32 0, i32 3
  %1737 = load i32, ptr %1736, align 4, !tbaa !43
  %1738 = icmp eq i32 %1737, 1
  br label %1739

1739:                                             ; preds = %1734, %1729
  %1740 = phi i1 [ false, %1729 ], [ %1738, %1734 ]
  %1741 = zext i1 %1740 to i64
  %1742 = select i1 %1740, i1 true, i1 false
  %1743 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1744 = getelementptr inbounds %class.CoreParameters, ptr %1743, i32 0, i32 44
  %1745 = zext i1 %1742 to i8
  store i8 %1745, ptr %1744, align 8, !tbaa !192
  %1746 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1747 = getelementptr inbounds %class.CoreParameters, ptr %1746, i32 0, i32 44
  %1748 = load i8, ptr %1747, align 8, !tbaa !192, !range !193, !noundef !194
  %1749 = trunc i8 %1748 to i1
  br i1 %1749, label %1750, label %1786

1750:                                             ; preds = %1739
  %1751 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1752 = getelementptr inbounds %class.CoreParameters, ptr %1751, i32 0, i32 54
  %1753 = load double, ptr %1752, align 8, !tbaa !67
  %1754 = fcmp ole double %1753, 0.000000e+00
  br i1 %1754, label %1755, label %1767

1755:                                             ; preds = %1750
  call void @llvm.lifetime.start.p0(i64 1, ptr %28) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %28) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef @.str.119, ptr noundef nonnull align 1 dereferenceable(1) %28)
          to label %1756 unwind label %1758

1756:                                             ; preds = %1755
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %27)
          to label %1757 unwind label %1762

1757:                                             ; preds = %1756
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %28) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #10
  br label %1785

1758:                                             ; preds = %1755
  %1759 = landingpad { ptr, i32 }
          cleanup
  %1760 = extractvalue { ptr, i32 } %1759, 0
  store ptr %1760, ptr %10, align 8
  %1761 = extractvalue { ptr, i32 } %1759, 1
  store i32 %1761, ptr %11, align 4
  br label %1766

1762:                                             ; preds = %1756
  %1763 = landingpad { ptr, i32 }
          cleanup
  %1764 = extractvalue { ptr, i32 } %1763, 0
  store ptr %1764, ptr %10, align 8
  %1765 = extractvalue { ptr, i32 } %1763, 1
  store i32 %1765, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #10
  br label %1766

1766:                                             ; preds = %1762, %1758
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %28) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #10
  br label %1837

1767:                                             ; preds = %1750
  %1768 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1769 = getelementptr inbounds %class.CoreParameters, ptr %1768, i32 0, i32 55
  %1770 = load double, ptr %1769, align 8, !tbaa !68
  %1771 = fcmp ole double %1770, 0.000000e+00
  br i1 %1771, label %1772, label %1784

1772:                                             ; preds = %1767
  call void @llvm.lifetime.start.p0(i64 1, ptr %30) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef @.str.120, ptr noundef nonnull align 1 dereferenceable(1) %30)
          to label %1773 unwind label %1775

1773:                                             ; preds = %1772
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %31, ptr noundef %29)
          to label %1774 unwind label %1779

1774:                                             ; preds = %1773
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %30) #10
  br label %1784

1775:                                             ; preds = %1772
  %1776 = landingpad { ptr, i32 }
          cleanup
  %1777 = extractvalue { ptr, i32 } %1776, 0
  store ptr %1777, ptr %10, align 8
  %1778 = extractvalue { ptr, i32 } %1776, 1
  store i32 %1778, ptr %11, align 4
  br label %1783

1779:                                             ; preds = %1773
  %1780 = landingpad { ptr, i32 }
          cleanup
  %1781 = extractvalue { ptr, i32 } %1780, 0
  store ptr %1781, ptr %10, align 8
  %1782 = extractvalue { ptr, i32 } %1780, 1
  store i32 %1782, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #10
  br label %1783

1783:                                             ; preds = %1779, %1775
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr %30) #10
  br label %1837

1784:                                             ; preds = %1774, %1767
  br label %1785

1785:                                             ; preds = %1784, %1757
  br label %1786

1786:                                             ; preds = %1785, %1739
  %1787 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1788 = getelementptr inbounds %class.CoreParameters, ptr %1787, i32 0, i32 46
  %1789 = getelementptr inbounds [4 x double], ptr %1788, i64 0, i64 0
  %1790 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1791 = getelementptr inbounds %class.CoreParameters, ptr %1790, i32 0, i32 32
  %1792 = load i32, ptr %1791, align 4, !tbaa !45
  %1793 = sitofp i32 %1792 to double
  %1794 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1795 = getelementptr inbounds %class.CoreParameters, ptr %1794, i32 0, i32 32
  %1796 = load i32, ptr %1795, align 4, !tbaa !45
  %1797 = sitofp i32 %1796 to double
  call void @_Z8set_pppmPddddd(ptr noundef %1789, double noundef 0.000000e+00, double noundef %1793, double noundef %1797, double noundef 0.000000e+00)
  %1798 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1799 = getelementptr inbounds %class.CoreParameters, ptr %1798, i32 0, i32 3
  %1800 = load i32, ptr %1799, align 4, !tbaa !43
  %1801 = icmp eq i32 %1800, 0
  br i1 %1801, label %1810, label %1802

1802:                                             ; preds = %1786
  %1803 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1804 = getelementptr inbounds %class.CoreParameters, ptr %1803, i32 0, i32 3
  %1805 = load i32, ptr %1804, align 4, !tbaa !43
  %1806 = icmp eq i32 %1805, 1
  br i1 %1806, label %1810, label %1807

1807:                                             ; preds = %1802
  %1808 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.226)
  %1809 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1808, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1810:                                             ; preds = %1802, %1786
  %1811 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1812 = getelementptr inbounds %class.CoreParameters, ptr %1811, i32 0, i32 5
  %1813 = load i32, ptr %1812, align 4, !tbaa !56
  %1814 = icmp eq i32 %1813, 0
  br i1 %1814, label %1823, label %1815

1815:                                             ; preds = %1810
  %1816 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1817 = getelementptr inbounds %class.CoreParameters, ptr %1816, i32 0, i32 5
  %1818 = load i32, ptr %1817, align 4, !tbaa !56
  %1819 = icmp eq i32 %1818, 1
  br i1 %1819, label %1823, label %1820

1820:                                             ; preds = %1815
  %1821 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.227)
  %1822 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1821, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1823:                                             ; preds = %1815, %1810
  %1824 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1825 = getelementptr inbounds %class.CoreParameters, ptr %1824, i32 0, i32 4
  %1826 = load i32, ptr %1825, align 8, !tbaa !57
  %1827 = icmp eq i32 %1826, 0
  br i1 %1827, label %1836, label %1828

1828:                                             ; preds = %1823
  %1829 = getelementptr inbounds %class.Core, ptr %31, i32 0, i32 14
  %1830 = getelementptr inbounds %class.CoreParameters, ptr %1829, i32 0, i32 4
  %1831 = load i32, ptr %1830, align 8, !tbaa !57
  %1832 = icmp eq i32 %1831, 1
  br i1 %1832, label %1836, label %1833

1833:                                             ; preds = %1828
  %1834 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef @.str.228)
  %1835 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1834, ptr noundef @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1836:                                             ; preds = %1828, %1823
  call void @llvm.lifetime.end.p0(i64 4, ptr %4) #10
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #10
  ret void

1837:                                             ; preds = %1783, %1766, %1644, %1627, %1610, %1593, %1576, %1559, %61
  call void @llvm.lifetime.end.p0(i64 4, ptr %4) #10
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #10
  br label %1838

1838:                                             ; preds = %1837
  %1839 = load ptr, ptr %10, align 8
  %1840 = load i32, ptr %11, align 4
  %1841 = insertvalue { ptr, i32 } poison, ptr %1839, 0
  %1842 = insertvalue { ptr, i32 } %1841, i32 %1840, 1
  resume { ptr, i32 } %1842
}

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN4Core17initialize_paramsEv(ptr noundef nonnull align 8 dereferenceable(2688)) #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN4Core16initialize_statsEv(ptr noundef nonnull align 8 dereferenceable(2688)) #4 align 2

; Function Attrs: noreturn nounwind
declare void @__assert_fail(ptr noundef, ptr noundef, i32 noundef, ptr noundef) #7

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_Z8set_pppmPddddd(ptr noundef, double noundef, double noundef, double noundef, double noundef) #8

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

; Function Attrs: mustprogress uwtable
declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #5 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)) #9

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

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { "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 = { nounwind willreturn memory(read) "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #4 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { inlinehint mustprogress nounwind willreturn memory(read) 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 #7 = { noreturn nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #8 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #9 = { 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 #10 = { nounwind }
attributes #11 = { nounwind willreturn memory(read) }
attributes #12 = { noreturn 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, !6, i64 288}
!10 = !{!"_ZTS14McPATComponent", !11, i64 8, !6, i64 288, !16, i64 296, !20, i64 664, !13, i64 696, !23, i64 704, !27, i64 728, !28, i64 776, !28, i64 944, !14, i64 1112, !14, i64 1232}
!11 = !{!"_ZTS9Component", !12, i64 0, !14, i64 24, !14, i64 144, !13, i64 264, !13, i64 272}
!12 = !{!"_ZTS4Area", !13, i64 0, !13, i64 8, !13, i64 16}
!13 = !{!"double", !7, i64 0}
!14 = !{!"_ZTS8powerDef", !15, i64 0, !15, i64 40, !15, i64 80}
!15 = !{!"_ZTS15powerComponents", !13, i64 0, !13, i64 8, !13, i64 16, !13, i64 24, !13, i64 32}
!16 = !{!"_ZTS14InputParameter", !17, i64 0, !17, i64 4, !17, i64 8, !17, i64 12, !17, i64 16, !18, i64 20, !17, i64 24, !17, i64 28, !17, i64 32, !17, i64 36, !17, i64 40, !17, i64 44, !13, i64 48, !13, i64 56, !17, i64 64, !17, i64 68, !17, i64 72, !17, i64 76, !17, i64 80, !18, i64 84, !18, i64 85, !18, i64 86, !18, i64 87, !18, i64 88, !17, i64 92, !17, i64 96, !17, i64 100, !17, i64 104, !17, i64 108, !17, i64 112, !17, i64 116, !17, i64 120, !17, i64 124, !17, i64 128, !17, i64 132, !17, i64 136, !17, i64 140, !17, i64 144, !17, i64 148, !19, i64 152, !17, i64 156, !18, i64 160, !17, i64 164, !17, i64 168, !17, i64 172, !17, i64 176, !17, i64 180, !17, i64 184, !17, i64 188, !18, i64 192, !17, i64 196, !17, i64 200, !17, i64 204, !17, i64 208, !17, i64 212, !17, i64 216, !17, i64 220, !17, i64 224, !17, i64 228, !17, i64 232, !17, i64 236, !17, i64 240, !17, i64 244, !17, i64 248, !17, i64 252, !17, i64 256, !17, i64 260, !17, i64 264, !17, i64 268, !17, i64 272, !17, i64 276, !17, i64 280, !17, i64 284, !17, i64 288, !17, i64 292, !17, i64 296, !18, i64 300, !17, i64 304, !17, i64 308, !17, i64 312, !18, i64 316, !18, i64 317, !17, i64 320, !17, i64 324, !18, i64 328, !13, i64 336, !13, i64 344, !18, i64 352, !17, i64 356, !17, i64 360, !18, i64 364}
!17 = !{!"int", !7, i64 0}
!18 = !{!"bool", !7, i64 0}
!19 = !{!"_ZTS9Wire_type", !7, i64 0}
!20 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !21, i64 0, !22, i64 8, !7, i64 16}
!21 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!22 = !{!"long", !7, i64 0}
!23 = !{!"_ZTSSt6vectorIP14McPATComponentSaIS1_EE", !24, i64 0}
!24 = !{!"_ZTSSt12_Vector_baseIP14McPATComponentSaIS1_EE", !25, i64 0}
!25 = !{!"_ZTSNSt12_Vector_baseIP14McPATComponentSaIS1_EE12_Vector_implE", !26, i64 0}
!26 = !{!"_ZTSNSt12_Vector_baseIP14McPATComponentSaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!27 = !{!"_ZTS11McPATOutput", !13, i64 0, !13, i64 8, !13, i64 16, !13, i64 24, !13, i64 32, !13, i64 40}
!28 = !{!"_ZTS8statsDef", !29, i64 0, !29, i64 24, !29, i64 48, !29, i64 72, !29, i64 96, !29, i64 120, !29, i64 144}
!29 = !{!"_ZTS15statsComponents", !13, i64 0, !13, i64 8, !13, i64 16}
!30 = !{!17, !17, i64 0}
!31 = !{!32, !18, i64 1816}
!32 = !{!"_ZTS4Core", !10, i64 0, !6, i64 1352, !6, i64 1360, !6, i64 1368, !6, i64 1376, !6, i64 1384, !6, i64 1392, !6, i64 1400, !6, i64 1408, !17, i64 1416, !16, i64 1424, !13, i64 1792, !13, i64 1800, !13, i64 1808, !33, i64 1816, !37, i64 2296}
!33 = !{!"_ZTS14CoreParameters", !18, i64 0, !18, i64 1, !18, i64 2, !34, i64 4, !35, i64 8, !36, i64 12, !13, i64 16, !17, i64 24, !17, i64 28, !17, i64 32, !17, i64 36, !17, i64 40, !17, i64 44, !17, i64 48, !17, i64 52, !17, i64 56, !17, i64 60, !17, i64 64, !17, i64 68, !17, i64 72, !17, i64 76, !17, i64 80, !17, i64 84, !17, i64 88, !17, i64 92, !17, i64 96, !17, i64 100, !17, i64 104, !17, i64 108, !17, i64 112, !17, i64 116, !17, i64 120, !17, i64 124, !17, i64 128, !17, i64 132, !17, i64 136, !17, i64 140, !17, i64 144, !17, i64 148, !13, i64 152, !17, i64 160, !17, i64 164, !17, i64 168, !17, i64 172, !18, i64 176, !18, i64 177, !7, i64 184, !17, i64 216, !17, i64 220, !17, i64 224, !17, i64 228, !17, i64 232, !17, i64 236, !17, i64 240, !13, i64 248, !13, i64 256, !17, i64 264, !17, i64 268, !17, i64 272, !17, i64 276, !17, i64 280, !17, i64 284, !17, i64 288, !17, i64 292, !17, i64 296, !17, i64 300, !17, i64 304, !17, i64 308, !17, i64 312, !17, i64 316, !17, i64 320, !17, i64 324, !17, i64 328, !17, i64 332, !17, i64 336, !17, i64 340, !17, i64 344, !17, i64 348, !17, i64 352, !17, i64 356, !17, i64 360, !17, i64 364, !17, i64 368, !17, i64 372, !17, i64 376, !17, i64 380, !17, i64 384, !17, i64 388, !17, i64 392, !17, i64 396, !17, i64 400, !17, i64 404, !17, i64 408, !17, i64 412, !17, i64 416, !17, i64 420, !19, i64 424, !19, i64 428, !17, i64 432, !13, i64 440, !13, i64 448, !17, i64 456, !13, i64 464, !13, i64 472}
!34 = !{!"_ZTS9Core_type", !7, i64 0}
!35 = !{!"_ZTS13Renaming_type", !7, i64 0}
!36 = !{!"_ZTS14Scheduler_type", !7, i64 0}
!37 = !{!"_ZTS14CoreStatistics", !13, i64 0, !13, i64 8, !13, i64 16, !13, i64 24, !13, i64 32, !13, i64 40, !13, i64 48, !13, i64 56, !13, i64 64, !13, i64 72, !13, i64 80, !13, i64 88, !13, i64 96, !13, i64 104, !13, i64 112, !13, i64 120, !13, i64 128, !13, i64 136, !13, i64 144, !13, i64 152, !13, i64 160, !13, i64 168, !13, i64 176, !13, i64 184, !13, i64 192, !13, i64 200, !13, i64 208, !13, i64 216, !13, i64 224, !13, i64 232, !13, i64 240, !13, i64 248, !13, i64 256, !13, i64 264, !13, i64 272, !13, i64 280, !13, i64 288, !13, i64 296, !13, i64 304, !13, i64 312, !13, i64 320, !13, i64 328, !13, i64 336, !13, i64 344, !13, i64 352, !13, i64 360, !13, i64 368, !13, i64 376, !13, i64 384}
!38 = !{!32, !13, i64 1832}
!39 = !{!32, !17, i64 1924}
!40 = !{!32, !17, i64 1932}
!41 = !{!32, !18, i64 1817}
!42 = !{!32, !18, i64 1818}
!43 = !{!32, !34, i64 1820}
!44 = !{!32, !17, i64 1936}
!45 = !{!32, !17, i64 1940}
!46 = !{!32, !17, i64 1880}
!47 = !{!32, !17, i64 1884}
!48 = !{!32, !17, i64 1888}
!49 = !{!32, !17, i64 1892}
!50 = !{!32, !17, i64 1896}
!51 = !{!32, !17, i64 1904}
!52 = !{!32, !17, i64 1960}
!53 = !{!32, !13, i64 1968}
!54 = !{!32, !17, i64 1964}
!55 = !{!32, !17, i64 1908}
!56 = !{!32, !36, i64 1828}
!57 = !{!32, !35, i64 1824}
!58 = !{!32, !17, i64 1848}
!59 = !{!32, !17, i64 1852}
!60 = !{!32, !17, i64 2032}
!61 = !{!32, !17, i64 2036}
!62 = !{!32, !17, i64 2040}
!63 = !{!32, !17, i64 2044}
!64 = !{!32, !17, i64 2048}
!65 = !{!32, !17, i64 2052}
!66 = !{!32, !17, i64 2056}
!67 = !{!32, !13, i64 2064}
!68 = !{!32, !13, i64 2072}
!69 = !{!32, !17, i64 2080}
!70 = !{!32, !17, i64 2084}
!71 = !{!32, !17, i64 2088}
!72 = !{!32, !17, i64 2092}
!73 = !{!32, !17, i64 2096}
!74 = !{!32, !17, i64 2100}
!75 = !{!32, !17, i64 2104}
!76 = !{!32, !17, i64 2108}
!77 = !{!32, !17, i64 2112}
!78 = !{!32, !17, i64 2116}
!79 = !{!32, !17, i64 2120}
!80 = !{!32, !17, i64 2124}
!81 = !{!32, !17, i64 2128}
!82 = !{!32, !17, i64 2132}
!83 = !{!32, !17, i64 2136}
!84 = !{!32, !17, i64 2140}
!85 = !{!32, !17, i64 2144}
!86 = !{!32, !17, i64 2148}
!87 = !{!32, !17, i64 2152}
!88 = !{!32, !17, i64 2156}
!89 = !{!32, !17, i64 2160}
!90 = !{!32, !17, i64 2164}
!91 = !{!32, !17, i64 2168}
!92 = !{!32, !17, i64 2172}
!93 = !{!32, !17, i64 2176}
!94 = !{!32, !17, i64 2180}
!95 = !{!32, !17, i64 2184}
!96 = !{!32, !17, i64 2188}
!97 = !{!32, !17, i64 2192}
!98 = !{!32, !17, i64 2196}
!99 = !{!32, !17, i64 2200}
!100 = !{!32, !17, i64 2204}
!101 = !{!32, !17, i64 2208}
!102 = !{!32, !17, i64 2212}
!103 = !{!32, !17, i64 2216}
!104 = !{!32, !17, i64 2220}
!105 = !{!32, !17, i64 2224}
!106 = !{!32, !19, i64 2244}
!107 = !{!32, !17, i64 2248}
!108 = !{!32, !17, i64 2228}
!109 = !{!32, !17, i64 2232}
!110 = !{!32, !17, i64 2236}
!111 = !{!32, !19, i64 2240}
!112 = !{!32, !13, i64 2256}
!113 = !{!32, !13, i64 2264}
!114 = !{!32, !17, i64 2272}
!115 = !{!32, !13, i64 2280}
!116 = !{!32, !13, i64 2288}
!117 = !{!32, !17, i64 1944}
!118 = !{!32, !17, i64 1948}
!119 = !{!32, !17, i64 1952}
!120 = !{!32, !17, i64 1956}
!121 = !{!32, !17, i64 1920}
!122 = !{!32, !17, i64 1916}
!123 = distinct !{!123, !124}
!124 = !{!"llvm.loop.mustprogress"}
!125 = !{!10, !13, i64 696}
!126 = !{!32, !17, i64 1900}
!127 = !{!32, !17, i64 1912}
!128 = !{!32, !13, i64 2368}
!129 = !{!32, !13, i64 2384}
!130 = !{!32, !13, i64 2376}
!131 = !{!32, !13, i64 2392}
!132 = !{!32, !13, i64 2408}
!133 = !{!32, !13, i64 2400}
!134 = !{!32, !13, i64 2296}
!135 = !{!32, !13, i64 2304}
!136 = !{!32, !13, i64 2312}
!137 = !{!32, !13, i64 2320}
!138 = !{!32, !13, i64 2328}
!139 = !{!32, !13, i64 2336}
!140 = !{!32, !13, i64 2344}
!141 = !{!32, !13, i64 2360}
!142 = !{!32, !13, i64 2352}
!143 = !{!32, !13, i64 2664}
!144 = !{!32, !13, i64 2656}
!145 = !{!32, !13, i64 2672}
!146 = !{!32, !13, i64 2680}
!147 = !{!32, !13, i64 2432}
!148 = !{!32, !13, i64 2440}
!149 = !{!32, !13, i64 2448}
!150 = !{!32, !13, i64 2456}
!151 = !{!32, !13, i64 2464}
!152 = !{!32, !13, i64 2472}
!153 = !{!32, !13, i64 2480}
!154 = !{!32, !13, i64 2488}
!155 = !{!32, !13, i64 2496}
!156 = !{!32, !13, i64 2504}
!157 = !{!32, !13, i64 2416}
!158 = !{!32, !13, i64 2424}
!159 = !{!32, !13, i64 2512}
!160 = !{!32, !13, i64 2520}
!161 = !{!32, !13, i64 2528}
!162 = !{!32, !13, i64 2536}
!163 = !{!32, !13, i64 2544}
!164 = !{!32, !13, i64 2552}
!165 = !{!32, !13, i64 2560}
!166 = !{!32, !13, i64 2568}
!167 = !{!32, !13, i64 2576}
!168 = !{!32, !13, i64 2584}
!169 = !{!32, !13, i64 2592}
!170 = !{!32, !13, i64 2600}
!171 = !{!32, !13, i64 2608}
!172 = !{!32, !13, i64 2616}
!173 = !{!32, !13, i64 2624}
!174 = !{!32, !13, i64 2632}
!175 = !{!32, !13, i64 2640}
!176 = !{!32, !13, i64 2648}
!177 = distinct !{!177, !124}
!178 = !{!32, !18, i64 1993}
!179 = !{!32, !17, i64 1928}
!180 = !{!32, !17, i64 1984}
!181 = !{!32, !17, i64 1988}
!182 = !{!32, !17, i64 1976}
!183 = !{!32, !17, i64 1980}
!184 = !{!32, !17, i64 1840}
!185 = !{!32, !17, i64 1844}
!186 = !{!32, !17, i64 1864}
!187 = !{!32, !17, i64 1868}
!188 = !{!32, !17, i64 1856}
!189 = !{!32, !17, i64 1860}
!190 = !{!32, !17, i64 1872}
!191 = !{!32, !17, i64 1876}
!192 = !{!32, !18, i64 1992}
!193 = !{i8 0, i8 2}
!194 = !{}


; 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 }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }

@.str.3 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN14McPATComponent21virtual_address_widthE = external local_unnamed_addr global i32, align 4
@.str.14 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [5 x i8], align 1
@_ZN14McPATComponent15data_path_widthE = external local_unnamed_addr global i32, align 4
@_ZN14McPATComponent22physical_address_widthE = external local_unnamed_addr global i32, align 4
@.str.89 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.100 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.101 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.102 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.103 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.104 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.105 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.106 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.107 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.108 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.109 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.110 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.111 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.112 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.113 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.114 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.115 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.116 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.117 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.118 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.119 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.120 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.121 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.122 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.123 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.124 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.125 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.126 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.127 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.128 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.129 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.130 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.131 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.132 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.133 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.134 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.135 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.136 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.137 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.138 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.139 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.140 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.141 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.142 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.143 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.144 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.145 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.146 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.147 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.148 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.149 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.150 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.151 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.152 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.153 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.154 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.155 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.156 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.157 = external hidden unnamed_addr constant [9 x i8], align 1
@.str.158 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.159 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.160 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.161 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.162 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.163 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.164 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.165 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.166 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.167 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.168 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.169 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.170 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.171 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.172 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.173 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.174 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.175 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.176 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.177 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.178 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.179 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.180 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.181 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.182 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.183 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.184 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.185 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.186 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.187 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.188 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.189 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.190 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.191 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.192 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.193 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.194 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.195 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.196 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.197 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.198 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.199 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.200 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.201 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.202 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.203 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.204 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.205 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.206 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.207 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.208 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.209 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.210 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.211 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.212 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.213 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.214 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.215 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.216 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.217 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.218 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.219 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.220 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.221 = external hidden unnamed_addr constant [14 x i8], align 1
@.str.222 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.223 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.224 = external hidden unnamed_addr constant [29 x i8], align 1
@.str.225 = external hidden unnamed_addr constant [61 x i8], align 1
@__PRETTY_FUNCTION__._ZN4Core14set_core_paramEv = external hidden unnamed_addr constant [28 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@.str.226 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.227 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.228 = external hidden unnamed_addr constant [26 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

declare i32 @__gxx_personality_v0(...)

declare noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #1

declare noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef) local_unnamed_addr #1

declare noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nofree nounwind willreturn memory(argmem: read)
declare i32 @strcmp(ptr nocapture noundef, ptr nocapture noundef) local_unnamed_addr #2

; 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 nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.ceil.f64(double) #3

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef) local_unnamed_addr #4

declare void @_ZN14McPATComponent20warnMissingParamNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) local_unnamed_addr #1

; Function Attrs: inlinehint mustprogress nofree nounwind willreturn memory(read) uwtable
declare i32 @atoi(ptr nocapture noundef nonnull) local_unnamed_addr #6

declare void @_ZN14McPATComponent21warnUnrecognizedParamEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) local_unnamed_addr #1

declare void @_ZN14McPATComponent19warnMissingStatNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) local_unnamed_addr #1

; Function Attrs: inlinehint mustprogress nofree nounwind willreturn memory(read) uwtable
declare double @atof(ptr nocapture noundef nonnull) local_unnamed_addr #6

declare void @_ZN14McPATComponent20warnUnrecognizedStatEPKc(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) local_unnamed_addr #1

declare void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352), ptr noundef) local_unnamed_addr #1

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4Core14set_core_paramEv(ptr noundef nonnull align 8 dereferenceable(2688) %0) local_unnamed_addr #5 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca i32, align 4
  %3 = alloca %"class.std::__cxx11::basic_string", align 8
  %4 = alloca %"class.std::allocator", align 1
  %5 = alloca %"class.std::__cxx11::basic_string", align 8
  %6 = alloca %"class.std::allocator", align 1
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca %"class.std::allocator", align 1
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::allocator", align 1
  %11 = alloca %"class.std::__cxx11::basic_string", align 8
  %12 = alloca %"class.std::allocator", align 1
  %13 = alloca %"class.std::__cxx11::basic_string", align 8
  %14 = alloca %"class.std::allocator", align 1
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::allocator", align 1
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::allocator", align 1
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::allocator", align 1
  tail call void @_ZN4Core17initialize_paramsEv(ptr noundef nonnull align 8 dereferenceable(2688) %0)
  tail call void @_ZN4Core16initialize_statsEv(ptr noundef nonnull align 8 dereferenceable(2688) %0)
  %21 = getelementptr inbounds i8, ptr %0, i64 288
  %22 = load ptr, ptr %21, align 8, !tbaa !5
  %23 = tail call noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull @.str.14)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %2) #10
  store i32 0, ptr %2, align 4, !tbaa !29
  %24 = icmp sgt i32 %23, 0
  br i1 %24, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %1
  %25 = getelementptr inbounds i8, ptr %0, i64 1916
  %26 = getelementptr inbounds i8, ptr %0, i64 1920
  %27 = getelementptr inbounds i8, ptr %0, i64 1956
  %28 = getelementptr inbounds i8, ptr %0, i64 1952
  %29 = getelementptr inbounds i8, ptr %0, i64 1948
  %30 = getelementptr inbounds i8, ptr %0, i64 1944
  %31 = getelementptr inbounds i8, ptr %0, i64 2288
  %32 = getelementptr inbounds i8, ptr %0, i64 2280
  %33 = getelementptr inbounds i8, ptr %0, i64 2272
  %34 = getelementptr inbounds i8, ptr %0, i64 2264
  %35 = getelementptr inbounds i8, ptr %0, i64 2256
  %36 = getelementptr inbounds i8, ptr %0, i64 2240
  %37 = getelementptr inbounds i8, ptr %0, i64 2236
  %38 = getelementptr inbounds i8, ptr %0, i64 2232
  %39 = getelementptr inbounds i8, ptr %0, i64 2228
  %40 = getelementptr inbounds i8, ptr %0, i64 2248
  %41 = getelementptr inbounds i8, ptr %0, i64 2244
  %42 = getelementptr inbounds i8, ptr %0, i64 2224
  %43 = getelementptr inbounds i8, ptr %0, i64 2220
  %44 = getelementptr inbounds i8, ptr %0, i64 2216
  %45 = getelementptr inbounds i8, ptr %0, i64 2212
  %46 = getelementptr inbounds i8, ptr %0, i64 2208
  %47 = getelementptr inbounds i8, ptr %0, i64 2204
  %48 = getelementptr inbounds i8, ptr %0, i64 2200
  %49 = getelementptr inbounds i8, ptr %0, i64 2196
  %50 = getelementptr inbounds i8, ptr %0, i64 2192
  %51 = getelementptr inbounds i8, ptr %0, i64 2188
  %52 = getelementptr inbounds i8, ptr %0, i64 2184
  %53 = getelementptr inbounds i8, ptr %0, i64 2180
  %54 = getelementptr inbounds i8, ptr %0, i64 2176
  %55 = getelementptr inbounds i8, ptr %0, i64 2172
  %56 = getelementptr inbounds i8, ptr %0, i64 2168
  %57 = getelementptr inbounds i8, ptr %0, i64 2164
  %58 = getelementptr inbounds i8, ptr %0, i64 2160
  %59 = getelementptr inbounds i8, ptr %0, i64 2156
  %60 = getelementptr inbounds i8, ptr %0, i64 2152
  %61 = getelementptr inbounds i8, ptr %0, i64 2148
  %62 = getelementptr inbounds i8, ptr %0, i64 2144
  %63 = getelementptr inbounds i8, ptr %0, i64 2140
  %64 = getelementptr inbounds i8, ptr %0, i64 2136
  %65 = getelementptr inbounds i8, ptr %0, i64 2132
  %66 = getelementptr inbounds i8, ptr %0, i64 2128
  %67 = getelementptr inbounds i8, ptr %0, i64 2124
  %68 = getelementptr inbounds i8, ptr %0, i64 2120
  %69 = getelementptr inbounds i8, ptr %0, i64 2116
  %70 = getelementptr inbounds i8, ptr %0, i64 2112
  %71 = getelementptr inbounds i8, ptr %0, i64 2108
  %72 = getelementptr inbounds i8, ptr %0, i64 2104
  %73 = getelementptr inbounds i8, ptr %0, i64 2100
  %74 = getelementptr inbounds i8, ptr %0, i64 2096
  %75 = getelementptr inbounds i8, ptr %0, i64 2092
  %76 = getelementptr inbounds i8, ptr %0, i64 2088
  %77 = getelementptr inbounds i8, ptr %0, i64 2084
  %78 = getelementptr inbounds i8, ptr %0, i64 2080
  %79 = getelementptr inbounds i8, ptr %0, i64 2072
  %80 = getelementptr inbounds i8, ptr %0, i64 2064
  %81 = getelementptr inbounds i8, ptr %0, i64 2056
  %82 = getelementptr inbounds i8, ptr %0, i64 2052
  %83 = getelementptr inbounds i8, ptr %0, i64 2048
  %84 = getelementptr inbounds i8, ptr %0, i64 2044
  %85 = getelementptr inbounds i8, ptr %0, i64 2040
  %86 = getelementptr inbounds i8, ptr %0, i64 2036
  %87 = getelementptr inbounds i8, ptr %0, i64 2032
  %88 = getelementptr inbounds i8, ptr %0, i64 1852
  %89 = getelementptr inbounds i8, ptr %0, i64 1848
  %90 = getelementptr inbounds i8, ptr %0, i64 1824
  %91 = getelementptr inbounds i8, ptr %0, i64 1828
  %92 = getelementptr inbounds i8, ptr %0, i64 1908
  %93 = getelementptr inbounds i8, ptr %0, i64 1964
  %94 = getelementptr inbounds i8, ptr %0, i64 1968
  %95 = getelementptr inbounds i8, ptr %0, i64 1960
  %96 = getelementptr inbounds i8, ptr %0, i64 1904
  %97 = getelementptr inbounds i8, ptr %0, i64 1896
  %98 = getelementptr inbounds i8, ptr %0, i64 1892
  %99 = getelementptr inbounds i8, ptr %0, i64 1888
  %100 = getelementptr inbounds i8, ptr %0, i64 1884
  %101 = getelementptr inbounds i8, ptr %0, i64 1880
  %102 = getelementptr inbounds i8, ptr %0, i64 1940
  %103 = getelementptr inbounds i8, ptr %0, i64 1936
  %104 = getelementptr inbounds i8, ptr %0, i64 1820
  %105 = getelementptr inbounds i8, ptr %0, i64 1818
  %106 = getelementptr inbounds i8, ptr %0, i64 1817
  %107 = getelementptr inbounds i8, ptr %0, i64 1932
  %108 = getelementptr inbounds i8, ptr %0, i64 1924
  %109 = getelementptr inbounds i8, ptr %0, i64 1832
  %110 = getelementptr inbounds i8, ptr %0, i64 1816
  %111 = getelementptr inbounds i8, ptr %0, i64 664
  br label %112

112:                                              ; preds = %.lr.ph, %567
  %113 = load ptr, ptr %21, align 8, !tbaa !5
  %114 = call noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %113, ptr noundef nonnull @.str.14, ptr noundef nonnull %2)
  %115 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %114, ptr noundef nonnull @.str.5, ptr noundef null)
  %116 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %114, ptr noundef nonnull @.str.15, ptr noundef null)
  %.not319 = icmp eq ptr %115, null
  br i1 %.not319, label %117, label %119

117:                                              ; preds = %112
  %118 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %114, ptr noundef nonnull @.str.3, ptr noundef null)
  call void @_ZN14McPATComponent20warnMissingParamNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef %118)
  br label %567

119:                                              ; preds = %112
  %120 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.5) #11
  %121 = icmp eq i32 %120, 0
  br i1 %121, label %122, label %127

122:                                              ; preds = %119
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %3) #10
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %4) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %4) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %3, ptr noundef %116, ptr noundef nonnull align 1 dereferenceable(1) %4)
          to label %123 unwind label %125

123:                                              ; preds = %122
  %124 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef nonnull align 8 dereferenceable(32) %3) #10
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %3) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %4) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %4) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #10
  br label %567

125:                                              ; preds = %122
  %126 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %4) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %4) #10
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %3) #10
  br label %1088

127:                                              ; preds = %119
  %128 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.89) #11
  %129 = icmp eq i32 %128, 0
  br i1 %129, label %130, label %134

130:                                              ; preds = %127
  %131 = call i32 @atoi(ptr nocapture noundef %116) #11
  %132 = icmp ne i32 %131, 0
  %133 = zext i1 %132 to i8
  store i8 %133, ptr %110, align 8, !tbaa !30
  br label %567

134:                                              ; preds = %127
  %135 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.90) #11
  %136 = icmp eq i32 %135, 0
  br i1 %136, label %137, label %139

137:                                              ; preds = %134
  %138 = call double @atof(ptr noundef %116) #11
  store double %138, ptr %109, align 8, !tbaa !37
  br label %567

139:                                              ; preds = %134
  %140 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.91) #11
  %141 = icmp eq i32 %140, 0
  br i1 %141, label %142, label %144

142:                                              ; preds = %139
  %143 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %143, ptr %108, align 4, !tbaa !38
  br label %567

144:                                              ; preds = %139
  %145 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.92) #11
  %146 = icmp eq i32 %145, 0
  br i1 %146, label %147, label %149

147:                                              ; preds = %144
  %148 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %148, ptr %107, align 4, !tbaa !39
  br label %567

149:                                              ; preds = %144
  %150 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.93) #11
  %151 = icmp eq i32 %150, 0
  br i1 %151, label %152, label %156

152:                                              ; preds = %149
  %153 = call i32 @atoi(ptr nocapture noundef %116) #11
  %154 = icmp ne i32 %153, 0
  %155 = zext i1 %154 to i8
  store i8 %155, ptr %106, align 1, !tbaa !40
  br label %567

156:                                              ; preds = %149
  %157 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.94) #11
  %158 = icmp eq i32 %157, 0
  br i1 %158, label %159, label %163

159:                                              ; preds = %156
  %160 = call i32 @atoi(ptr nocapture noundef %116) #11
  %161 = icmp ne i32 %160, 0
  %162 = zext i1 %161 to i8
  store i8 %162, ptr %105, align 2, !tbaa !41
  br label %567

163:                                              ; preds = %156
  %164 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.95) #11
  %165 = icmp eq i32 %164, 0
  br i1 %165, label %166, label %168

166:                                              ; preds = %163
  %167 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %167, ptr %104, align 4, !tbaa !42
  br label %567

168:                                              ; preds = %163
  %169 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.96) #11
  %170 = icmp eq i32 %169, 0
  br i1 %170, label %171, label %173

171:                                              ; preds = %168
  %172 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %172, ptr %103, align 8, !tbaa !43
  br label %567

173:                                              ; preds = %168
  %174 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.97) #11
  %175 = icmp eq i32 %174, 0
  br i1 %175, label %176, label %178

176:                                              ; preds = %173
  %177 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %177, ptr %102, align 4, !tbaa !44
  br label %567

178:                                              ; preds = %173
  %179 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.98) #11
  %180 = icmp eq i32 %179, 0
  br i1 %180, label %181, label %183

181:                                              ; preds = %178
  %182 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %182, ptr %101, align 8, !tbaa !45
  br label %567

183:                                              ; preds = %178
  %184 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.99) #11
  %185 = icmp eq i32 %184, 0
  br i1 %185, label %186, label %188

186:                                              ; preds = %183
  %187 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %187, ptr %100, align 4, !tbaa !46
  br label %567

188:                                              ; preds = %183
  %189 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.100) #11
  %190 = icmp eq i32 %189, 0
  br i1 %190, label %191, label %193

191:                                              ; preds = %188
  %192 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %192, ptr %99, align 8, !tbaa !47
  br label %567

193:                                              ; preds = %188
  %194 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.101) #11
  %195 = icmp eq i32 %194, 0
  br i1 %195, label %196, label %198

196:                                              ; preds = %193
  %197 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %197, ptr %98, align 4, !tbaa !48
  br label %567

198:                                              ; preds = %193
  %199 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.102) #11
  %200 = icmp eq i32 %199, 0
  br i1 %200, label %201, label %203

201:                                              ; preds = %198
  %202 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %202, ptr %97, align 8, !tbaa !49
  br label %567

203:                                              ; preds = %198
  %204 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.103) #11
  %205 = icmp eq i32 %204, 0
  br i1 %205, label %206, label %208

206:                                              ; preds = %203
  %207 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %207, ptr %96, align 8, !tbaa !50
  br label %567

208:                                              ; preds = %203
  %209 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.104) #11
  %210 = icmp eq i32 %209, 0
  br i1 %210, label %211, label %213

211:                                              ; preds = %208
  %212 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %212, ptr %95, align 8, !tbaa !51
  br label %567

213:                                              ; preds = %208
  %214 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.105) #11
  %215 = icmp eq i32 %214, 0
  br i1 %215, label %216, label %219

216:                                              ; preds = %213
  %217 = call i32 @atoi(ptr nocapture noundef %116) #11
  %218 = sitofp i32 %217 to double
  store double %218, ptr %94, align 8, !tbaa !52
  br label %567

219:                                              ; preds = %213
  %220 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.106) #11
  %221 = icmp eq i32 %220, 0
  br i1 %221, label %222, label %224

222:                                              ; preds = %219
  %223 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %223, ptr %93, align 4, !tbaa !53
  br label %567

224:                                              ; preds = %219
  %225 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.107) #11
  %226 = icmp eq i32 %225, 0
  br i1 %226, label %227, label %229

227:                                              ; preds = %224
  %228 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %228, ptr %92, align 4, !tbaa !54
  br label %567

229:                                              ; preds = %224
  %230 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.108) #11
  %231 = icmp eq i32 %230, 0
  br i1 %231, label %232, label %234

232:                                              ; preds = %229
  %233 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %233, ptr %91, align 4, !tbaa !55
  br label %567

234:                                              ; preds = %229
  %235 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.109) #11
  %236 = icmp eq i32 %235, 0
  br i1 %236, label %237, label %239

237:                                              ; preds = %234
  %238 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %238, ptr %90, align 8, !tbaa !56
  br label %567

239:                                              ; preds = %234
  %240 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.110) #11
  %241 = icmp eq i32 %240, 0
  br i1 %241, label %242, label %244

242:                                              ; preds = %239
  %243 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %243, ptr %89, align 8, !tbaa !57
  br label %567

244:                                              ; preds = %239
  %245 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.111) #11
  %246 = icmp eq i32 %245, 0
  br i1 %246, label %247, label %249

247:                                              ; preds = %244
  %248 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %248, ptr %88, align 4, !tbaa !58
  br label %567

249:                                              ; preds = %244
  %250 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.112) #11
  %251 = icmp eq i32 %250, 0
  br i1 %251, label %252, label %254

252:                                              ; preds = %249
  %253 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %253, ptr %87, align 8, !tbaa !59
  br label %567

254:                                              ; preds = %249
  %255 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.113) #11
  %256 = icmp eq i32 %255, 0
  br i1 %256, label %257, label %259

257:                                              ; preds = %254
  %258 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %258, ptr %86, align 4, !tbaa !60
  br label %567

259:                                              ; preds = %254
  %260 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.114) #11
  %261 = icmp eq i32 %260, 0
  br i1 %261, label %262, label %264

262:                                              ; preds = %259
  %263 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %263, ptr %85, align 8, !tbaa !61
  br label %567

264:                                              ; preds = %259
  %265 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.115) #11
  %266 = icmp eq i32 %265, 0
  br i1 %266, label %267, label %269

267:                                              ; preds = %264
  %268 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %268, ptr %84, align 4, !tbaa !62
  br label %567

269:                                              ; preds = %264
  %270 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.116) #11
  %271 = icmp eq i32 %270, 0
  br i1 %271, label %272, label %274

272:                                              ; preds = %269
  %273 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %273, ptr %83, align 8, !tbaa !63
  br label %567

274:                                              ; preds = %269
  %275 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.117) #11
  %276 = icmp eq i32 %275, 0
  br i1 %276, label %277, label %279

277:                                              ; preds = %274
  %278 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %278, ptr %82, align 4, !tbaa !64
  br label %567

279:                                              ; preds = %274
  %280 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.118) #11
  %281 = icmp eq i32 %280, 0
  br i1 %281, label %282, label %284

282:                                              ; preds = %279
  %283 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %283, ptr %81, align 8, !tbaa !65
  br label %567

284:                                              ; preds = %279
  %285 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.119) #11
  %286 = icmp eq i32 %285, 0
  br i1 %286, label %287, label %290

287:                                              ; preds = %284
  %288 = call i32 @atoi(ptr nocapture noundef %116) #11
  %289 = sitofp i32 %288 to double
  store double %289, ptr %80, align 8, !tbaa !66
  br label %567

290:                                              ; preds = %284
  %291 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.120) #11
  %292 = icmp eq i32 %291, 0
  br i1 %292, label %293, label %296

293:                                              ; preds = %290
  %294 = call i32 @atoi(ptr nocapture noundef %116) #11
  %295 = sitofp i32 %294 to double
  store double %295, ptr %79, align 8, !tbaa !67
  br label %567

296:                                              ; preds = %290
  %297 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.121) #11
  %298 = icmp eq i32 %297, 0
  br i1 %298, label %299, label %301

299:                                              ; preds = %296
  %300 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %300, ptr %78, align 8, !tbaa !68
  br label %567

301:                                              ; preds = %296
  %302 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.122) #11
  %303 = icmp eq i32 %302, 0
  br i1 %303, label %304, label %306

304:                                              ; preds = %301
  %305 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %305, ptr %77, align 4, !tbaa !69
  br label %567

306:                                              ; preds = %301
  %307 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.123) #11
  %308 = icmp eq i32 %307, 0
  br i1 %308, label %309, label %311

309:                                              ; preds = %306
  %310 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %310, ptr %76, align 8, !tbaa !70
  br label %567

311:                                              ; preds = %306
  %312 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.124) #11
  %313 = icmp eq i32 %312, 0
  br i1 %313, label %314, label %316

314:                                              ; preds = %311
  %315 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %315, ptr %75, align 4, !tbaa !71
  br label %567

316:                                              ; preds = %311
  %317 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.125) #11
  %318 = icmp eq i32 %317, 0
  br i1 %318, label %319, label %321

319:                                              ; preds = %316
  %320 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %320, ptr %74, align 8, !tbaa !72
  br label %567

321:                                              ; preds = %316
  %322 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.126) #11
  %323 = icmp eq i32 %322, 0
  br i1 %323, label %324, label %326

324:                                              ; preds = %321
  %325 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %325, ptr %73, align 4, !tbaa !73
  br label %567

326:                                              ; preds = %321
  %327 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.127) #11
  %328 = icmp eq i32 %327, 0
  br i1 %328, label %329, label %331

329:                                              ; preds = %326
  %330 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %330, ptr %72, align 8, !tbaa !74
  br label %567

331:                                              ; preds = %326
  %332 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.128) #11
  %333 = icmp eq i32 %332, 0
  br i1 %333, label %334, label %336

334:                                              ; preds = %331
  %335 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %335, ptr %71, align 4, !tbaa !75
  br label %567

336:                                              ; preds = %331
  %337 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.129) #11
  %338 = icmp eq i32 %337, 0
  br i1 %338, label %339, label %341

339:                                              ; preds = %336
  %340 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %340, ptr %70, align 8, !tbaa !76
  br label %567

341:                                              ; preds = %336
  %342 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.130) #11
  %343 = icmp eq i32 %342, 0
  br i1 %343, label %344, label %346

344:                                              ; preds = %341
  %345 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %345, ptr %69, align 4, !tbaa !77
  br label %567

346:                                              ; preds = %341
  %347 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.131) #11
  %348 = icmp eq i32 %347, 0
  br i1 %348, label %349, label %351

349:                                              ; preds = %346
  %350 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %350, ptr %68, align 8, !tbaa !78
  br label %567

351:                                              ; preds = %346
  %352 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.132) #11
  %353 = icmp eq i32 %352, 0
  br i1 %353, label %354, label %356

354:                                              ; preds = %351
  %355 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %355, ptr %67, align 4, !tbaa !79
  br label %567

356:                                              ; preds = %351
  %357 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.133) #11
  %358 = icmp eq i32 %357, 0
  br i1 %358, label %359, label %361

359:                                              ; preds = %356
  %360 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %360, ptr %66, align 8, !tbaa !80
  br label %567

361:                                              ; preds = %356
  %362 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.134) #11
  %363 = icmp eq i32 %362, 0
  br i1 %363, label %364, label %366

364:                                              ; preds = %361
  %365 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %365, ptr %65, align 4, !tbaa !81
  br label %567

366:                                              ; preds = %361
  %367 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.135) #11
  %368 = icmp eq i32 %367, 0
  br i1 %368, label %369, label %371

369:                                              ; preds = %366
  %370 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %370, ptr %64, align 8, !tbaa !82
  br label %567

371:                                              ; preds = %366
  %372 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.136) #11
  %373 = icmp eq i32 %372, 0
  br i1 %373, label %374, label %376

374:                                              ; preds = %371
  %375 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %375, ptr %63, align 4, !tbaa !83
  br label %567

376:                                              ; preds = %371
  %377 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.137) #11
  %378 = icmp eq i32 %377, 0
  br i1 %378, label %379, label %381

379:                                              ; preds = %376
  %380 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %380, ptr %62, align 8, !tbaa !84
  br label %567

381:                                              ; preds = %376
  %382 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.138) #11
  %383 = icmp eq i32 %382, 0
  br i1 %383, label %384, label %386

384:                                              ; preds = %381
  %385 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %385, ptr %61, align 4, !tbaa !85
  br label %567

386:                                              ; preds = %381
  %387 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.139) #11
  %388 = icmp eq i32 %387, 0
  br i1 %388, label %389, label %391

389:                                              ; preds = %386
  %390 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %390, ptr %60, align 8, !tbaa !86
  br label %567

391:                                              ; preds = %386
  %392 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.140) #11
  %393 = icmp eq i32 %392, 0
  br i1 %393, label %394, label %396

394:                                              ; preds = %391
  %395 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %395, ptr %59, align 4, !tbaa !87
  br label %567

396:                                              ; preds = %391
  %397 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.141) #11
  %398 = icmp eq i32 %397, 0
  br i1 %398, label %399, label %401

399:                                              ; preds = %396
  %400 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %400, ptr %58, align 8, !tbaa !88
  br label %567

401:                                              ; preds = %396
  %402 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.142) #11
  %403 = icmp eq i32 %402, 0
  br i1 %403, label %404, label %406

404:                                              ; preds = %401
  %405 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %405, ptr %57, align 4, !tbaa !89
  br label %567

406:                                              ; preds = %401
  %407 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.143) #11
  %408 = icmp eq i32 %407, 0
  br i1 %408, label %409, label %411

409:                                              ; preds = %406
  %410 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %410, ptr %56, align 8, !tbaa !90
  br label %567

411:                                              ; preds = %406
  %412 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.144) #11
  %413 = icmp eq i32 %412, 0
  br i1 %413, label %414, label %416

414:                                              ; preds = %411
  %415 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %415, ptr %55, align 4, !tbaa !91
  br label %567

416:                                              ; preds = %411
  %417 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.145) #11
  %418 = icmp eq i32 %417, 0
  br i1 %418, label %419, label %421

419:                                              ; preds = %416
  %420 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %420, ptr %54, align 8, !tbaa !92
  br label %567

421:                                              ; preds = %416
  %422 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.146) #11
  %423 = icmp eq i32 %422, 0
  br i1 %423, label %424, label %426

424:                                              ; preds = %421
  %425 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %425, ptr %53, align 4, !tbaa !93
  br label %567

426:                                              ; preds = %421
  %427 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.147) #11
  %428 = icmp eq i32 %427, 0
  br i1 %428, label %429, label %431

429:                                              ; preds = %426
  %430 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %430, ptr %52, align 8, !tbaa !94
  br label %567

431:                                              ; preds = %426
  %432 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.148) #11
  %433 = icmp eq i32 %432, 0
  br i1 %433, label %434, label %436

434:                                              ; preds = %431
  %435 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %435, ptr %51, align 4, !tbaa !95
  br label %567

436:                                              ; preds = %431
  %437 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.149) #11
  %438 = icmp eq i32 %437, 0
  br i1 %438, label %439, label %441

439:                                              ; preds = %436
  %440 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %440, ptr %50, align 8, !tbaa !96
  br label %567

441:                                              ; preds = %436
  %442 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.150) #11
  %443 = icmp eq i32 %442, 0
  br i1 %443, label %444, label %446

444:                                              ; preds = %441
  %445 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %445, ptr %49, align 4, !tbaa !97
  br label %567

446:                                              ; preds = %441
  %447 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.151) #11
  %448 = icmp eq i32 %447, 0
  br i1 %448, label %449, label %451

449:                                              ; preds = %446
  %450 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %450, ptr %48, align 8, !tbaa !98
  br label %567

451:                                              ; preds = %446
  %452 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.152) #11
  %453 = icmp eq i32 %452, 0
  br i1 %453, label %454, label %456

454:                                              ; preds = %451
  %455 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %455, ptr %47, align 4, !tbaa !99
  br label %567

456:                                              ; preds = %451
  %457 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.153) #11
  %458 = icmp eq i32 %457, 0
  br i1 %458, label %459, label %461

459:                                              ; preds = %456
  %460 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %460, ptr %46, align 8, !tbaa !100
  br label %567

461:                                              ; preds = %456
  %462 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.154) #11
  %463 = icmp eq i32 %462, 0
  br i1 %463, label %464, label %466

464:                                              ; preds = %461
  %465 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %465, ptr %45, align 4, !tbaa !101
  br label %567

466:                                              ; preds = %461
  %467 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.155) #11
  %468 = icmp eq i32 %467, 0
  br i1 %468, label %469, label %471

469:                                              ; preds = %466
  %470 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %470, ptr %44, align 8, !tbaa !102
  br label %567

471:                                              ; preds = %466
  %472 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.156) #11
  %473 = icmp eq i32 %472, 0
  br i1 %473, label %474, label %476

474:                                              ; preds = %471
  %475 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %475, ptr %43, align 4, !tbaa !103
  br label %567

476:                                              ; preds = %471
  %477 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.157) #11
  %478 = icmp eq i32 %477, 0
  br i1 %478, label %479, label %481

479:                                              ; preds = %476
  %480 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %480, ptr %42, align 8, !tbaa !104
  br label %567

481:                                              ; preds = %476
  %482 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.158) #11
  %483 = icmp eq i32 %482, 0
  br i1 %483, label %484, label %486

484:                                              ; preds = %481
  %485 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %485, ptr %41, align 4, !tbaa !105
  br label %567

486:                                              ; preds = %481
  %487 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.159) #11
  %488 = icmp eq i32 %487, 0
  br i1 %488, label %489, label %491

489:                                              ; preds = %486
  %490 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %490, ptr %40, align 8, !tbaa !106
  br label %567

491:                                              ; preds = %486
  %492 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.160) #11
  %493 = icmp eq i32 %492, 0
  br i1 %493, label %494, label %496

494:                                              ; preds = %491
  %495 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %495, ptr %39, align 4, !tbaa !107
  br label %567

496:                                              ; preds = %491
  %497 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.161) #11
  %498 = icmp eq i32 %497, 0
  br i1 %498, label %499, label %501

499:                                              ; preds = %496
  %500 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %500, ptr %38, align 8, !tbaa !108
  br label %567

501:                                              ; preds = %496
  %502 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.162) #11
  %503 = icmp eq i32 %502, 0
  br i1 %503, label %504, label %506

504:                                              ; preds = %501
  %505 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %505, ptr %37, align 4, !tbaa !109
  br label %567

506:                                              ; preds = %501
  %507 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.163) #11
  %508 = icmp eq i32 %507, 0
  br i1 %508, label %509, label %511

509:                                              ; preds = %506
  %510 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %510, ptr %36, align 8, !tbaa !110
  br label %567

511:                                              ; preds = %506
  %512 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.164) #11
  %513 = icmp eq i32 %512, 0
  br i1 %513, label %514, label %516

514:                                              ; preds = %511
  %515 = call double @atof(ptr noundef %116) #11
  store double %515, ptr %35, align 8, !tbaa !111
  br label %567

516:                                              ; preds = %511
  %517 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.165) #11
  %518 = icmp eq i32 %517, 0
  br i1 %518, label %519, label %521

519:                                              ; preds = %516
  %520 = call double @atof(ptr noundef %116) #11
  store double %520, ptr %34, align 8, !tbaa !112
  br label %567

521:                                              ; preds = %516
  %522 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.166) #11
  %523 = icmp eq i32 %522, 0
  br i1 %523, label %524, label %526

524:                                              ; preds = %521
  %525 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %525, ptr %33, align 8, !tbaa !113
  br label %567

526:                                              ; preds = %521
  %527 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.167) #11
  %528 = icmp eq i32 %527, 0
  br i1 %528, label %529, label %531

529:                                              ; preds = %526
  %530 = call double @atof(ptr noundef %116) #11
  store double %530, ptr %32, align 8, !tbaa !114
  br label %567

531:                                              ; preds = %526
  %532 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.168) #11
  %533 = icmp eq i32 %532, 0
  br i1 %533, label %534, label %536

534:                                              ; preds = %531
  %535 = call double @atof(ptr noundef %116) #11
  store double %535, ptr %31, align 8, !tbaa !115
  br label %567

536:                                              ; preds = %531
  %537 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.169) #11
  %538 = icmp eq i32 %537, 0
  br i1 %538, label %539, label %541

539:                                              ; preds = %536
  %540 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %540, ptr %30, align 8, !tbaa !116
  br label %567

541:                                              ; preds = %536
  %542 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.170) #11
  %543 = icmp eq i32 %542, 0
  br i1 %543, label %544, label %546

544:                                              ; preds = %541
  %545 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %545, ptr %29, align 4, !tbaa !117
  br label %567

546:                                              ; preds = %541
  %547 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.171) #11
  %548 = icmp eq i32 %547, 0
  br i1 %548, label %549, label %551

549:                                              ; preds = %546
  %550 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %550, ptr %28, align 8, !tbaa !118
  br label %567

551:                                              ; preds = %546
  %552 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.172) #11
  %553 = icmp eq i32 %552, 0
  br i1 %553, label %554, label %556

554:                                              ; preds = %551
  %555 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %555, ptr %27, align 4, !tbaa !119
  br label %567

556:                                              ; preds = %551
  %557 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.173) #11
  %558 = icmp eq i32 %557, 0
  br i1 %558, label %559, label %561

559:                                              ; preds = %556
  %560 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %560, ptr %26, align 8, !tbaa !120
  br label %567

561:                                              ; preds = %556
  %562 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %115, ptr noundef nonnull dereferenceable(1) @.str.174) #11
  %563 = icmp eq i32 %562, 0
  br i1 %563, label %564, label %566

564:                                              ; preds = %561
  %565 = call i32 @atoi(ptr nocapture noundef %116) #11
  store i32 %565, ptr %25, align 4, !tbaa !121
  br label %567

566:                                              ; preds = %561
  call void @_ZN14McPATComponent21warnUnrecognizedParamEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %115)
  br label %567

567:                                              ; preds = %123, %137, %147, %159, %171, %181, %191, %201, %211, %222, %232, %242, %252, %262, %272, %282, %293, %304, %314, %324, %334, %344, %354, %364, %374, %384, %394, %404, %414, %424, %434, %444, %454, %464, %474, %484, %494, %504, %514, %524, %534, %544, %554, %564, %566, %559, %549, %539, %529, %519, %509, %499, %489, %479, %469, %459, %449, %439, %429, %419, %409, %399, %389, %379, %369, %359, %349, %339, %329, %319, %309, %299, %287, %277, %267, %257, %247, %237, %227, %216, %206, %196, %186, %176, %166, %152, %142, %130, %117
  %568 = load i32, ptr %2, align 4, !tbaa !29
  %569 = add nsw i32 %568, 1
  store i32 %569, ptr %2, align 4, !tbaa !29
  %570 = icmp slt i32 %569, %23
  br i1 %570, label %112, label %._crit_edge, !llvm.loop !122

._crit_edge:                                      ; preds = %567, %1
  %571 = getelementptr inbounds i8, ptr %0, i64 1832
  %572 = load double, ptr %571, align 8, !tbaa !37
  %573 = fmul double %572, 1.000000e+06
  store double %573, ptr %571, align 8, !tbaa !37
  %574 = getelementptr inbounds i8, ptr %0, i64 696
  store double %573, ptr %574, align 8, !tbaa !124
  %575 = getelementptr inbounds i8, ptr %0, i64 1892
  %576 = load i32, ptr %575, align 4, !tbaa !48
  %577 = getelementptr inbounds i8, ptr %0, i64 1900
  store i32 %576, ptr %577, align 4, !tbaa !125
  %578 = getelementptr inbounds i8, ptr %0, i64 1908
  %579 = load i32, ptr %578, align 4, !tbaa !54
  %580 = getelementptr inbounds i8, ptr %0, i64 1912
  store i32 %579, ptr %580, align 8, !tbaa !126
  %581 = load ptr, ptr %21, align 8, !tbaa !5
  %582 = call noundef i32 @_ZNK7XMLNode10nChildNodeEPKc(ptr noundef nonnull align 8 dereferenceable(8) %581, ptr noundef nonnull @.str.23)
  store i32 0, ptr %2, align 4, !tbaa !29
  %583 = icmp sgt i32 %582, 0
  br i1 %583, label %.lr.ph325, label %._crit_edge326

.lr.ph325:                                        ; preds = %._crit_edge
  %584 = getelementptr inbounds i8, ptr %0, i64 2648
  %585 = getelementptr inbounds i8, ptr %0, i64 2640
  %586 = getelementptr inbounds i8, ptr %0, i64 2632
  %587 = getelementptr inbounds i8, ptr %0, i64 2624
  %588 = getelementptr inbounds i8, ptr %0, i64 2616
  %589 = getelementptr inbounds i8, ptr %0, i64 2608
  %590 = getelementptr inbounds i8, ptr %0, i64 2600
  %591 = getelementptr inbounds i8, ptr %0, i64 2592
  %592 = getelementptr inbounds i8, ptr %0, i64 2584
  %593 = getelementptr inbounds i8, ptr %0, i64 2576
  %594 = getelementptr inbounds i8, ptr %0, i64 2568
  %595 = getelementptr inbounds i8, ptr %0, i64 2560
  %596 = getelementptr inbounds i8, ptr %0, i64 2552
  %597 = getelementptr inbounds i8, ptr %0, i64 2544
  %598 = getelementptr inbounds i8, ptr %0, i64 2536
  %599 = getelementptr inbounds i8, ptr %0, i64 2528
  %600 = getelementptr inbounds i8, ptr %0, i64 2520
  %601 = getelementptr inbounds i8, ptr %0, i64 2512
  %602 = getelementptr inbounds i8, ptr %0, i64 2424
  %603 = getelementptr inbounds i8, ptr %0, i64 2416
  %604 = getelementptr inbounds i8, ptr %0, i64 2504
  %605 = getelementptr inbounds i8, ptr %0, i64 2496
  %606 = getelementptr inbounds i8, ptr %0, i64 2488
  %607 = getelementptr inbounds i8, ptr %0, i64 2480
  %608 = getelementptr inbounds i8, ptr %0, i64 2472
  %609 = getelementptr inbounds i8, ptr %0, i64 2464
  %610 = getelementptr inbounds i8, ptr %0, i64 2456
  %611 = getelementptr inbounds i8, ptr %0, i64 2448
  %612 = getelementptr inbounds i8, ptr %0, i64 2440
  %613 = getelementptr inbounds i8, ptr %0, i64 2432
  %614 = getelementptr inbounds i8, ptr %0, i64 2680
  %615 = getelementptr inbounds i8, ptr %0, i64 2672
  %616 = getelementptr inbounds i8, ptr %0, i64 2656
  %617 = getelementptr inbounds i8, ptr %0, i64 2664
  %618 = getelementptr inbounds i8, ptr %0, i64 2352
  %619 = getelementptr inbounds i8, ptr %0, i64 2360
  %620 = getelementptr inbounds i8, ptr %0, i64 2344
  %621 = getelementptr inbounds i8, ptr %0, i64 2336
  %622 = getelementptr inbounds i8, ptr %0, i64 2328
  %623 = getelementptr inbounds i8, ptr %0, i64 2320
  %624 = getelementptr inbounds i8, ptr %0, i64 2312
  %625 = getelementptr inbounds i8, ptr %0, i64 2304
  %626 = getelementptr inbounds i8, ptr %0, i64 2296
  %627 = getelementptr inbounds i8, ptr %0, i64 2400
  %628 = getelementptr inbounds i8, ptr %0, i64 2408
  %629 = getelementptr inbounds i8, ptr %0, i64 2392
  %630 = getelementptr inbounds i8, ptr %0, i64 2376
  %631 = getelementptr inbounds i8, ptr %0, i64 2384
  %632 = getelementptr inbounds i8, ptr %0, i64 2368
  br label %633

633:                                              ; preds = %.lr.ph325, %886
  %634 = load ptr, ptr %21, align 8, !tbaa !5
  %635 = call noundef ptr @_ZNK7XMLNode15getChildNodePtrEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %634, ptr noundef nonnull @.str.23, ptr noundef nonnull %2)
  %636 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %635, ptr noundef nonnull @.str.5, ptr noundef null)
  %637 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %635, ptr noundef nonnull @.str.15, ptr noundef null)
  %.not = icmp eq ptr %636, null
  br i1 %.not, label %638, label %640

638:                                              ; preds = %633
  %639 = call noundef ptr @_ZNK7XMLNode12getAttributeEPKcPi(ptr noundef nonnull align 8 dereferenceable(8) %635, ptr noundef nonnull @.str.3, ptr noundef null)
  call void @_ZN14McPATComponent19warnMissingStatNameEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef %639)
  br label %886

640:                                              ; preds = %633
  %641 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.175) #11
  %642 = icmp eq i32 %641, 0
  br i1 %642, label %643, label %645

643:                                              ; preds = %640
  %644 = call double @atof(ptr noundef %637) #11
  store double %644, ptr %632, align 8, !tbaa !127
  br label %886

645:                                              ; preds = %640
  %646 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.176) #11
  %647 = icmp eq i32 %646, 0
  br i1 %647, label %648, label %650

648:                                              ; preds = %645
  %649 = call double @atof(ptr noundef %637) #11
  store double %649, ptr %631, align 8, !tbaa !128
  br label %886

650:                                              ; preds = %645
  %651 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.177) #11
  %652 = icmp eq i32 %651, 0
  br i1 %652, label %653, label %655

653:                                              ; preds = %650
  %654 = call double @atof(ptr noundef %637) #11
  store double %654, ptr %630, align 8, !tbaa !129
  br label %886

655:                                              ; preds = %650
  %656 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.178) #11
  %657 = icmp eq i32 %656, 0
  br i1 %657, label %658, label %660

658:                                              ; preds = %655
  %659 = call double @atof(ptr noundef %637) #11
  store double %659, ptr %629, align 8, !tbaa !130
  br label %886

660:                                              ; preds = %655
  %661 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.179) #11
  %662 = icmp eq i32 %661, 0
  br i1 %662, label %663, label %665

663:                                              ; preds = %660
  %664 = call double @atof(ptr noundef %637) #11
  store double %664, ptr %628, align 8, !tbaa !131
  br label %886

665:                                              ; preds = %660
  %666 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.180) #11
  %667 = icmp eq i32 %666, 0
  br i1 %667, label %668, label %670

668:                                              ; preds = %665
  %669 = call double @atof(ptr noundef %637) #11
  store double %669, ptr %627, align 8, !tbaa !132
  br label %886

670:                                              ; preds = %665
  %671 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.181) #11
  %672 = icmp eq i32 %671, 0
  br i1 %672, label %673, label %675

673:                                              ; preds = %670
  %674 = call double @atof(ptr noundef %637) #11
  store double %674, ptr %626, align 8, !tbaa !133
  br label %886

675:                                              ; preds = %670
  %676 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.182) #11
  %677 = icmp eq i32 %676, 0
  br i1 %677, label %678, label %680

678:                                              ; preds = %675
  %679 = call double @atof(ptr noundef %637) #11
  store double %679, ptr %625, align 8, !tbaa !134
  br label %886

680:                                              ; preds = %675
  %681 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.183) #11
  %682 = icmp eq i32 %681, 0
  br i1 %682, label %683, label %685

683:                                              ; preds = %680
  %684 = call double @atof(ptr noundef %637) #11
  store double %684, ptr %624, align 8, !tbaa !135
  br label %886

685:                                              ; preds = %680
  %686 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.184) #11
  %687 = icmp eq i32 %686, 0
  br i1 %687, label %688, label %690

688:                                              ; preds = %685
  %689 = call double @atof(ptr noundef %637) #11
  store double %689, ptr %623, align 8, !tbaa !136
  br label %886

690:                                              ; preds = %685
  %691 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.185) #11
  %692 = icmp eq i32 %691, 0
  br i1 %692, label %693, label %695

693:                                              ; preds = %690
  %694 = call double @atof(ptr noundef %637) #11
  store double %694, ptr %622, align 8, !tbaa !137
  br label %886

695:                                              ; preds = %690
  %696 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.186) #11
  %697 = icmp eq i32 %696, 0
  br i1 %697, label %698, label %700

698:                                              ; preds = %695
  %699 = call double @atof(ptr noundef %637) #11
  store double %699, ptr %621, align 8, !tbaa !138
  br label %886

700:                                              ; preds = %695
  %701 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.187) #11
  %702 = icmp eq i32 %701, 0
  br i1 %702, label %703, label %705

703:                                              ; preds = %700
  %704 = call double @atof(ptr noundef %637) #11
  store double %704, ptr %620, align 8, !tbaa !139
  br label %886

705:                                              ; preds = %700
  %706 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.188) #11
  %707 = icmp eq i32 %706, 0
  br i1 %707, label %708, label %710

708:                                              ; preds = %705
  %709 = call double @atof(ptr noundef %637) #11
  store double %709, ptr %619, align 8, !tbaa !140
  br label %886

710:                                              ; preds = %705
  %711 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.189) #11
  %712 = icmp eq i32 %711, 0
  br i1 %712, label %713, label %715

713:                                              ; preds = %710
  %714 = call double @atof(ptr noundef %637) #11
  store double %714, ptr %618, align 8, !tbaa !141
  br label %886

715:                                              ; preds = %710
  %716 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.190) #11
  %717 = icmp eq i32 %716, 0
  br i1 %717, label %718, label %720

718:                                              ; preds = %715
  %719 = call double @atof(ptr noundef %637) #11
  store double %719, ptr %617, align 8, !tbaa !142
  br label %886

720:                                              ; preds = %715
  %721 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.191) #11
  %722 = icmp eq i32 %721, 0
  br i1 %722, label %723, label %725

723:                                              ; preds = %720
  %724 = call double @atof(ptr noundef %637) #11
  store double %724, ptr %616, align 8, !tbaa !143
  br label %886

725:                                              ; preds = %720
  %726 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.192) #11
  %727 = icmp eq i32 %726, 0
  br i1 %727, label %728, label %730

728:                                              ; preds = %725
  %729 = call double @atof(ptr noundef %637) #11
  store double %729, ptr %615, align 8, !tbaa !144
  br label %886

730:                                              ; preds = %725
  %731 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.193) #11
  %732 = icmp eq i32 %731, 0
  br i1 %732, label %733, label %735

733:                                              ; preds = %730
  %734 = call double @atof(ptr noundef %637) #11
  store double %734, ptr %614, align 8, !tbaa !145
  br label %886

735:                                              ; preds = %730
  %736 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.194) #11
  %737 = icmp eq i32 %736, 0
  br i1 %737, label %738, label %740

738:                                              ; preds = %735
  %739 = call double @atof(ptr noundef %637) #11
  store double %739, ptr %613, align 8, !tbaa !146
  br label %886

740:                                              ; preds = %735
  %741 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.195) #11
  %742 = icmp eq i32 %741, 0
  br i1 %742, label %743, label %745

743:                                              ; preds = %740
  %744 = call double @atof(ptr noundef %637) #11
  store double %744, ptr %612, align 8, !tbaa !147
  br label %886

745:                                              ; preds = %740
  %746 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.196) #11
  %747 = icmp eq i32 %746, 0
  br i1 %747, label %748, label %750

748:                                              ; preds = %745
  %749 = call double @atof(ptr noundef %637) #11
  store double %749, ptr %611, align 8, !tbaa !148
  br label %886

750:                                              ; preds = %745
  %751 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.197) #11
  %752 = icmp eq i32 %751, 0
  br i1 %752, label %753, label %755

753:                                              ; preds = %750
  %754 = call double @atof(ptr noundef %637) #11
  store double %754, ptr %610, align 8, !tbaa !149
  br label %886

755:                                              ; preds = %750
  %756 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.198) #11
  %757 = icmp eq i32 %756, 0
  br i1 %757, label %758, label %760

758:                                              ; preds = %755
  %759 = call double @atof(ptr noundef %637) #11
  store double %759, ptr %609, align 8, !tbaa !150
  br label %886

760:                                              ; preds = %755
  %761 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.199) #11
  %762 = icmp eq i32 %761, 0
  br i1 %762, label %763, label %765

763:                                              ; preds = %760
  %764 = call double @atof(ptr noundef %637) #11
  store double %764, ptr %608, align 8, !tbaa !151
  br label %886

765:                                              ; preds = %760
  %766 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.200) #11
  %767 = icmp eq i32 %766, 0
  br i1 %767, label %768, label %770

768:                                              ; preds = %765
  %769 = call double @atof(ptr noundef %637) #11
  store double %769, ptr %607, align 8, !tbaa !152
  br label %886

770:                                              ; preds = %765
  %771 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.201) #11
  %772 = icmp eq i32 %771, 0
  br i1 %772, label %773, label %775

773:                                              ; preds = %770
  %774 = call double @atof(ptr noundef %637) #11
  store double %774, ptr %606, align 8, !tbaa !153
  br label %886

775:                                              ; preds = %770
  %776 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.202) #11
  %777 = icmp eq i32 %776, 0
  br i1 %777, label %778, label %780

778:                                              ; preds = %775
  %779 = call double @atof(ptr noundef %637) #11
  store double %779, ptr %605, align 8, !tbaa !154
  br label %886

780:                                              ; preds = %775
  %781 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.203) #11
  %782 = icmp eq i32 %781, 0
  br i1 %782, label %783, label %785

783:                                              ; preds = %780
  %784 = call double @atof(ptr noundef %637) #11
  store double %784, ptr %604, align 8, !tbaa !155
  br label %886

785:                                              ; preds = %780
  %786 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.204) #11
  %787 = icmp eq i32 %786, 0
  br i1 %787, label %788, label %790

788:                                              ; preds = %785
  %789 = call double @atof(ptr noundef %637) #11
  store double %789, ptr %603, align 8, !tbaa !156
  br label %886

790:                                              ; preds = %785
  %791 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.205) #11
  %792 = icmp eq i32 %791, 0
  br i1 %792, label %793, label %795

793:                                              ; preds = %790
  %794 = call double @atof(ptr noundef %637) #11
  store double %794, ptr %602, align 8, !tbaa !157
  br label %886

795:                                              ; preds = %790
  %796 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.206) #11
  %797 = icmp eq i32 %796, 0
  br i1 %797, label %798, label %800

798:                                              ; preds = %795
  %799 = call double @atof(ptr noundef %637) #11
  store double %799, ptr %601, align 8, !tbaa !158
  br label %886

800:                                              ; preds = %795
  %801 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.207) #11
  %802 = icmp eq i32 %801, 0
  br i1 %802, label %803, label %805

803:                                              ; preds = %800
  %804 = call double @atof(ptr noundef %637) #11
  store double %804, ptr %600, align 8, !tbaa !159
  br label %886

805:                                              ; preds = %800
  %806 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.208) #11
  %807 = icmp eq i32 %806, 0
  br i1 %807, label %808, label %810

808:                                              ; preds = %805
  %809 = call double @atof(ptr noundef %637) #11
  store double %809, ptr %599, align 8, !tbaa !160
  br label %886

810:                                              ; preds = %805
  %811 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.209) #11
  %812 = icmp eq i32 %811, 0
  br i1 %812, label %813, label %815

813:                                              ; preds = %810
  %814 = call double @atof(ptr noundef %637) #11
  store double %814, ptr %598, align 8, !tbaa !161
  br label %886

815:                                              ; preds = %810
  %816 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.210) #11
  %817 = icmp eq i32 %816, 0
  br i1 %817, label %818, label %820

818:                                              ; preds = %815
  %819 = call double @atof(ptr noundef %637) #11
  store double %819, ptr %597, align 8, !tbaa !162
  br label %886

820:                                              ; preds = %815
  %821 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.211) #11
  %822 = icmp eq i32 %821, 0
  br i1 %822, label %823, label %825

823:                                              ; preds = %820
  %824 = call double @atof(ptr noundef %637) #11
  store double %824, ptr %596, align 8, !tbaa !163
  br label %886

825:                                              ; preds = %820
  %826 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.212) #11
  %827 = icmp eq i32 %826, 0
  br i1 %827, label %828, label %830

828:                                              ; preds = %825
  %829 = call double @atof(ptr noundef %637) #11
  store double %829, ptr %595, align 8, !tbaa !164
  br label %886

830:                                              ; preds = %825
  %831 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.213) #11
  %832 = icmp eq i32 %831, 0
  br i1 %832, label %833, label %835

833:                                              ; preds = %830
  %834 = call double @atof(ptr noundef %637) #11
  store double %834, ptr %594, align 8, !tbaa !165
  br label %886

835:                                              ; preds = %830
  %836 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.214) #11
  %837 = icmp eq i32 %836, 0
  br i1 %837, label %838, label %840

838:                                              ; preds = %835
  %839 = call double @atof(ptr noundef %637) #11
  store double %839, ptr %593, align 8, !tbaa !166
  br label %886

840:                                              ; preds = %835
  %841 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.215) #11
  %842 = icmp eq i32 %841, 0
  br i1 %842, label %843, label %845

843:                                              ; preds = %840
  %844 = call double @atof(ptr noundef %637) #11
  store double %844, ptr %592, align 8, !tbaa !167
  br label %886

845:                                              ; preds = %840
  %846 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.216) #11
  %847 = icmp eq i32 %846, 0
  br i1 %847, label %848, label %850

848:                                              ; preds = %845
  %849 = call double @atof(ptr noundef %637) #11
  store double %849, ptr %591, align 8, !tbaa !168
  br label %886

850:                                              ; preds = %845
  %851 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.217) #11
  %852 = icmp eq i32 %851, 0
  br i1 %852, label %853, label %855

853:                                              ; preds = %850
  %854 = call double @atof(ptr noundef %637) #11
  store double %854, ptr %590, align 8, !tbaa !169
  br label %886

855:                                              ; preds = %850
  %856 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.218) #11
  %857 = icmp eq i32 %856, 0
  br i1 %857, label %858, label %860

858:                                              ; preds = %855
  %859 = call double @atof(ptr noundef %637) #11
  store double %859, ptr %589, align 8, !tbaa !170
  br label %886

860:                                              ; preds = %855
  %861 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.219) #11
  %862 = icmp eq i32 %861, 0
  br i1 %862, label %863, label %865

863:                                              ; preds = %860
  %864 = call double @atof(ptr noundef %637) #11
  store double %864, ptr %588, align 8, !tbaa !171
  br label %886

865:                                              ; preds = %860
  %866 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.220) #11
  %867 = icmp eq i32 %866, 0
  br i1 %867, label %868, label %870

868:                                              ; preds = %865
  %869 = call double @atof(ptr noundef %637) #11
  store double %869, ptr %587, align 8, !tbaa !172
  br label %886

870:                                              ; preds = %865
  %871 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.221) #11
  %872 = icmp eq i32 %871, 0
  br i1 %872, label %873, label %875

873:                                              ; preds = %870
  %874 = call double @atof(ptr noundef %637) #11
  store double %874, ptr %586, align 8, !tbaa !173
  br label %886

875:                                              ; preds = %870
  %876 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.222) #11
  %877 = icmp eq i32 %876, 0
  br i1 %877, label %878, label %880

878:                                              ; preds = %875
  %879 = call double @atof(ptr noundef %637) #11
  store double %879, ptr %585, align 8, !tbaa !174
  br label %886

880:                                              ; preds = %875
  %881 = call i32 @strcmp(ptr noundef nonnull dereferenceable(1) %636, ptr noundef nonnull dereferenceable(1) @.str.223) #11
  %882 = icmp eq i32 %881, 0
  br i1 %882, label %883, label %885

883:                                              ; preds = %880
  %884 = call double @atof(ptr noundef %637) #11
  store double %884, ptr %584, align 8, !tbaa !175
  br label %886

885:                                              ; preds = %880
  call void @_ZN14McPATComponent20warnUnrecognizedStatEPKc(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %636)
  br label %886

886:                                              ; preds = %643, %653, %663, %673, %683, %693, %703, %713, %723, %733, %743, %753, %763, %773, %783, %793, %803, %813, %823, %833, %843, %853, %863, %873, %883, %885, %878, %868, %858, %848, %838, %828, %818, %808, %798, %788, %778, %768, %758, %748, %738, %728, %718, %708, %698, %688, %678, %668, %658, %648, %638
  %887 = load i32, ptr %2, align 4, !tbaa !29
  %888 = add nsw i32 %887, 1
  store i32 %888, ptr %2, align 4, !tbaa !29
  %889 = icmp slt i32 %888, %582
  br i1 %889, label %633, label %._crit_edge326, !llvm.loop !176

._crit_edge326:                                   ; preds = %886, %._crit_edge
  %890 = getelementptr inbounds i8, ptr %0, i64 1940
  %891 = load i32, ptr %890, align 4, !tbaa !44
  %892 = icmp sgt i32 %891, 1
  %893 = getelementptr inbounds i8, ptr %0, i64 1993
  %894 = zext i1 %892 to i8
  store i8 %894, ptr %893, align 1, !tbaa !177
  %895 = load i32, ptr @_ZN14McPATComponent21virtual_address_widthE, align 4, !tbaa !29
  %896 = getelementptr inbounds i8, ptr %0, i64 1928
  store i32 %895, ptr %896, align 8, !tbaa !178
  %897 = getelementptr inbounds i8, ptr %0, i64 1984
  store i32 %895, ptr %897, align 8, !tbaa !179
  %898 = load i32, ptr @_ZN14McPATComponent22physical_address_widthE, align 4, !tbaa !29
  %899 = getelementptr inbounds i8, ptr %0, i64 1988
  store i32 %898, ptr %899, align 4, !tbaa !180
  %900 = load i32, ptr @_ZN14McPATComponent15data_path_widthE, align 4, !tbaa !29
  %901 = sitofp i32 %900 to double
  %902 = fmul double %901, 3.125000e-02
  %903 = call double @llvm.ceil.f64(double %902)
  %904 = fptosi double %903 to i32
  %905 = shl nsw i32 %904, 5
  %906 = getelementptr inbounds i8, ptr %0, i64 1976
  store i32 %905, ptr %906, align 8, !tbaa !181
  %907 = getelementptr inbounds i8, ptr %0, i64 1980
  store i32 %905, ptr %907, align 4, !tbaa !182
  %908 = getelementptr inbounds i8, ptr %0, i64 1848
  %909 = load i32, ptr %908, align 8, !tbaa !57
  %910 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %909)
  %911 = call double @llvm.ceil.f64(double %910)
  %912 = fptosi double %911 to i32
  %913 = getelementptr inbounds i8, ptr %0, i64 1840
  store i32 %912, ptr %913, align 8, !tbaa !183
  %914 = getelementptr inbounds i8, ptr %0, i64 1852
  %915 = load i32, ptr %914, align 4, !tbaa !58
  %916 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %915)
  %917 = call double @llvm.ceil.f64(double %916)
  %918 = fptosi double %917 to i32
  %919 = getelementptr inbounds i8, ptr %0, i64 1844
  store i32 %918, ptr %919, align 4, !tbaa !184
  %920 = getelementptr inbounds i8, ptr %0, i64 1864
  %921 = getelementptr inbounds i8, ptr %0, i64 1868
  %922 = load <2 x i32>, ptr %908, align 8, !tbaa !29
  store <2 x i32> %922, ptr %920, align 8, !tbaa !29
  %923 = getelementptr inbounds i8, ptr %0, i64 1924
  %924 = load i32, ptr %923, align 4, !tbaa !38
  %925 = icmp slt i32 %924, 1
  br i1 %925, label %926, label %934

926:                                              ; preds = %._crit_edge326
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %6) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %5, ptr noundef nonnull @.str.91, ptr noundef nonnull align 1 dereferenceable(1) %6)
          to label %927 unwind label %929

927:                                              ; preds = %926
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %5)
          to label %928 unwind label %931

928:                                              ; preds = %927
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %6) #10
  br label %934

929:                                              ; preds = %926
  %930 = landingpad { ptr, i32 }
          cleanup
  br label %933

931:                                              ; preds = %927
  %932 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %5) #10
  br label %933

933:                                              ; preds = %931, %929
  %.pn = phi { ptr, i32 } [ %932, %931 ], [ %930, %929 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %6) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %6) #10
  br label %1088

934:                                              ; preds = %928, %._crit_edge326
  %935 = load i32, ptr %890, align 4, !tbaa !44
  %936 = icmp slt i32 %935, 1
  br i1 %936, label %937, label %945

937:                                              ; preds = %934
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %8) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull @.str.97, ptr noundef nonnull align 1 dereferenceable(1) %8)
          to label %938 unwind label %940

938:                                              ; preds = %937
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %7)
          to label %939 unwind label %942

939:                                              ; preds = %938
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %8) #10
  br label %945

940:                                              ; preds = %937
  %941 = landingpad { ptr, i32 }
          cleanup
  br label %944

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

944:                                              ; preds = %942, %940
  %.pn305 = phi { ptr, i32 } [ %943, %942 ], [ %941, %940 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %8) #10
  br label %1088

945:                                              ; preds = %939, %934
  %946 = getelementptr inbounds i8, ptr %0, i64 1932
  %947 = load i32, ptr %946, align 4, !tbaa !39
  %948 = icmp slt i32 %947, 1
  br i1 %948, label %949, label %957

949:                                              ; preds = %945
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %10) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef nonnull @.str.92, ptr noundef nonnull align 1 dereferenceable(1) %10)
          to label %950 unwind label %952

950:                                              ; preds = %949
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %9)
          to label %951 unwind label %954

951:                                              ; preds = %950
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %10) #10
  br label %957

952:                                              ; preds = %949
  %953 = landingpad { ptr, i32 }
          cleanup
  br label %956

954:                                              ; preds = %950
  %955 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #10
  br label %956

956:                                              ; preds = %954, %952
  %.pn307 = phi { ptr, i32 } [ %955, %954 ], [ %953, %952 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %10) #10
  br label %1088

957:                                              ; preds = %951, %945
  %958 = getelementptr inbounds i8, ptr %0, i64 2204
  %959 = load i32, ptr %958, align 4, !tbaa !99
  %960 = icmp slt i32 %959, 1
  br i1 %960, label %961, label %969

961:                                              ; preds = %957
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %12) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull @.str.152, ptr noundef nonnull align 1 dereferenceable(1) %12)
          to label %962 unwind label %964

962:                                              ; preds = %961
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %11)
          to label %963 unwind label %966

963:                                              ; preds = %962
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #10
  br label %969

964:                                              ; preds = %961
  %965 = landingpad { ptr, i32 }
          cleanup
  br label %968

966:                                              ; preds = %962
  %967 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #10
  br label %968

968:                                              ; preds = %966, %964
  %.pn309 = phi { ptr, i32 } [ %967, %966 ], [ %965, %964 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #10
  br label %1088

969:                                              ; preds = %963, %957
  %970 = getelementptr inbounds i8, ptr %0, i64 2220
  %971 = load i32, ptr %970, align 4, !tbaa !103
  %972 = icmp slt i32 %971, 1
  br i1 %972, label %973, label %981

973:                                              ; preds = %969
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %14) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef nonnull @.str.156, ptr noundef nonnull align 1 dereferenceable(1) %14)
          to label %974 unwind label %976

974:                                              ; preds = %973
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %13)
          to label %975 unwind label %978

975:                                              ; preds = %974
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %14) #10
  br label %981

976:                                              ; preds = %973
  %977 = landingpad { ptr, i32 }
          cleanup
  br label %980

978:                                              ; preds = %974
  %979 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #10
  br label %980

980:                                              ; preds = %978, %976
  %.pn311 = phi { ptr, i32 } [ %979, %978 ], [ %977, %976 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %14) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %14) #10
  br label %1088

981:                                              ; preds = %975, %969
  %982 = load i32, ptr %575, align 4, !tbaa !48
  %983 = icmp slt i32 %982, 1
  br i1 %983, label %984, label %992

984:                                              ; preds = %981
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %16) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef nonnull @.str.101, ptr noundef nonnull align 1 dereferenceable(1) %16)
          to label %985 unwind label %987

985:                                              ; preds = %984
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %15)
          to label %986 unwind label %989

986:                                              ; preds = %985
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %16) #10
  br label %996

987:                                              ; preds = %984
  %988 = landingpad { ptr, i32 }
          cleanup
  br label %991

989:                                              ; preds = %985
  %990 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #10
  br label %991

991:                                              ; preds = %989, %987
  %.pn313 = phi { ptr, i32 } [ %990, %989 ], [ %988, %987 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %16) #10
  br label %1088

992:                                              ; preds = %981
  %993 = load i32, ptr %577, align 4, !tbaa !125
  %994 = icmp sgt i32 %993, 0
  br i1 %994, label %996, label %995

995:                                              ; preds = %992
  call void @__assert_fail(ptr noundef nonnull @.str.224, ptr noundef nonnull @.str.225, i32 noundef 3956, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN4Core14set_core_paramEv) #12
  unreachable

996:                                              ; preds = %992, %986
  %997 = getelementptr inbounds i8, ptr %0, i64 1820
  %998 = load i32, ptr %997, align 4, !tbaa !42
  %999 = icmp eq i32 %998, 0
  br i1 %999, label %1000, label %1034

1000:                                             ; preds = %996
  %1001 = getelementptr inbounds i8, ptr %0, i64 1828
  %1002 = load i32, ptr %1001, align 4, !tbaa !55
  switch i32 %1002, label %1034 [
    i32 0, label %1003
    i32 1, label %1019
  ]

1003:                                             ; preds = %1000
  %1004 = getelementptr inbounds i8, ptr %0, i64 2096
  %1005 = load i32, ptr %1004, align 8, !tbaa !72
  %1006 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1005)
  %1007 = call double @llvm.ceil.f64(double %1006)
  %1008 = fptosi double %1007 to i32
  %1009 = getelementptr inbounds i8, ptr %0, i64 1856
  store i32 %1008, ptr %1009, align 8, !tbaa !185
  %1010 = getelementptr inbounds i8, ptr %0, i64 2120
  %1011 = load i32, ptr %1010, align 8, !tbaa !78
  %1012 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1011)
  %1013 = call double @llvm.ceil.f64(double %1012)
  %1014 = fptosi double %1013 to i32
  %1015 = getelementptr inbounds i8, ptr %0, i64 1860
  store i32 %1014, ptr %1015, align 4, !tbaa !186
  %1016 = load i32, ptr %1004, align 8, !tbaa !72
  store i32 %1016, ptr %920, align 8, !tbaa !187
  %1017 = getelementptr inbounds i8, ptr %0, i64 1872
  store i32 %1016, ptr %1017, align 8, !tbaa !188
  %1018 = load i32, ptr %1010, align 8, !tbaa !78
  store i32 %1018, ptr %921, align 4, !tbaa !189
  br label %.sink.split

1019:                                             ; preds = %1000
  %1020 = getelementptr inbounds i8, ptr %0, i64 2032
  %1021 = load i32, ptr %1020, align 8, !tbaa !59
  %1022 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1021)
  %1023 = call double @llvm.ceil.f64(double %1022)
  %1024 = fptosi double %1023 to i32
  %1025 = getelementptr inbounds i8, ptr %0, i64 1856
  store i32 %1024, ptr %1025, align 8, !tbaa !185
  %1026 = load i32, ptr %1020, align 8, !tbaa !59
  %1027 = call noundef double @_ZSt4log2IiEN9__gnu_cxx11__enable_ifIXsr12__is_integerIT_EE7__valueEdE6__typeES2_(i32 noundef %1026)
  %1028 = call double @llvm.ceil.f64(double %1027)
  %1029 = fptosi double %1028 to i32
  %1030 = getelementptr inbounds i8, ptr %0, i64 1860
  store i32 %1029, ptr %1030, align 4, !tbaa !186
  %1031 = load i32, ptr %1020, align 8, !tbaa !59
  %1032 = getelementptr inbounds i8, ptr %0, i64 1872
  store i32 %1031, ptr %1032, align 8, !tbaa !188
  br label %.sink.split

.sink.split:                                      ; preds = %1019, %1003
  %.sink = phi i32 [ %1018, %1003 ], [ %1031, %1019 ]
  %1033 = getelementptr inbounds i8, ptr %0, i64 1876
  store i32 %.sink, ptr %1033, align 4, !tbaa !190
  br label %1034

1034:                                             ; preds = %.sink.split, %1000, %996
  %1035 = getelementptr inbounds i8, ptr %0, i64 2056
  %1036 = load i32, ptr %1035, align 8, !tbaa !65
  %1037 = icmp sgt i32 %1036, 0
  %1038 = load i32, ptr %997, align 4
  %1039 = icmp eq i32 %1038, 1
  %1040 = select i1 %1037, i1 %1039, i1 false
  %1041 = getelementptr inbounds i8, ptr %0, i64 1992
  %1042 = zext i1 %1040 to i8
  store i8 %1042, ptr %1041, align 8, !tbaa !191
  br i1 %1040, label %1043, label %1067

1043:                                             ; preds = %1034
  %1044 = getelementptr inbounds i8, ptr %0, i64 2064
  %1045 = load double, ptr %1044, align 8, !tbaa !66
  %1046 = fcmp ugt double %1045, 0.000000e+00
  br i1 %1046, label %1055, label %1047

1047:                                             ; preds = %1043
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %18) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull @.str.119, ptr noundef nonnull align 1 dereferenceable(1) %18)
          to label %1048 unwind label %1050

1048:                                             ; preds = %1047
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %17)
          to label %1049 unwind label %1052

1049:                                             ; preds = %1048
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #10
  br label %1067

1050:                                             ; preds = %1047
  %1051 = landingpad { ptr, i32 }
          cleanup
  br label %1054

1052:                                             ; preds = %1048
  %1053 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #10
  br label %1054

1054:                                             ; preds = %1052, %1050
  %.pn317 = phi { ptr, i32 } [ %1053, %1052 ], [ %1051, %1050 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #10
  br label %1088

1055:                                             ; preds = %1043
  %1056 = getelementptr inbounds i8, ptr %0, i64 2072
  %1057 = load double, ptr %1056, align 8, !tbaa !67
  %1058 = fcmp ugt double %1057, 0.000000e+00
  br i1 %1058, label %1067, label %1059

1059:                                             ; preds = %1055
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %20) #10
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef nonnull @.str.120, ptr noundef nonnull align 1 dereferenceable(1) %20)
          to label %1060 unwind label %1062

1060:                                             ; preds = %1059
  invoke void @_ZN14McPATComponent21errorNonPositiveParamENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(1352) %0, ptr noundef nonnull %19)
          to label %1061 unwind label %1064

1061:                                             ; preds = %1060
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #10
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %20) #10
  br label %1067

1062:                                             ; preds = %1059
  %1063 = landingpad { ptr, i32 }
          cleanup
  br label %1066

1064:                                             ; preds = %1060
  %1065 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #10
  br label %1066

1066:                                             ; preds = %1064, %1062
  %.pn315 = phi { ptr, i32 } [ %1065, %1064 ], [ %1063, %1062 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %20) #10
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %20) #10
  br label %1088

1067:                                             ; preds = %1049, %1061, %1055, %1034
  %1068 = getelementptr inbounds i8, ptr %0, i64 2000
  %1069 = load i32, ptr %890, align 4, !tbaa !44
  %1070 = sitofp i32 %1069 to double
  call void @_Z8set_pppmPddddd(ptr noundef nonnull %1068, double noundef 0.000000e+00, double noundef %1070, double noundef %1070, double noundef 0.000000e+00)
  %1071 = load i32, ptr %997, align 4, !tbaa !42
  %switch = icmp ult i32 %1071, 2
  br i1 %switch, label %1075, label %1072

1072:                                             ; preds = %1067
  %1073 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.226)
  %1074 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1073, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1075:                                             ; preds = %1067
  %1076 = getelementptr inbounds i8, ptr %0, i64 1828
  %1077 = load i32, ptr %1076, align 4, !tbaa !55
  %switch322 = icmp ult i32 %1077, 2
  br i1 %switch322, label %1081, label %1078

1078:                                             ; preds = %1075
  %1079 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.227)
  %1080 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1079, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1081:                                             ; preds = %1075
  %1082 = getelementptr inbounds i8, ptr %0, i64 1824
  %1083 = load i32, ptr %1082, align 8, !tbaa !56
  %switch323 = icmp ult i32 %1083, 2
  br i1 %switch323, label %1087, label %1084

1084:                                             ; preds = %1081
  %1085 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) @_ZSt4cout, ptr noundef nonnull @.str.228)
  %1086 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEPFRSoS_E(ptr noundef nonnull align 8 dereferenceable(8) %1085, ptr noundef nonnull @_ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_)
  call void @exit(i32 noundef 0) #12
  unreachable

1087:                                             ; preds = %1081
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %2) #10
  ret void

1088:                                             ; preds = %1066, %1054, %991, %980, %968, %956, %944, %933, %125
  %.pn320 = phi { ptr, i32 } [ %126, %125 ], [ %.pn317, %1054 ], [ %.pn315, %1066 ], [ %.pn313, %991 ], [ %.pn311, %980 ], [ %.pn309, %968 ], [ %.pn307, %956 ], [ %.pn305, %944 ], [ %.pn, %933 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %2) #10
  resume { ptr, i32 } %.pn320
}

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN4Core17initialize_paramsEv(ptr noundef nonnull align 8 dereferenceable(2688)) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN4Core16initialize_statsEv(ptr noundef nonnull align 8 dereferenceable(2688)) local_unnamed_addr #4 align 2

; Function Attrs: noreturn nounwind
declare void @__assert_fail(ptr noundef, ptr noundef, i32 noundef, ptr noundef) local_unnamed_addr #7

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_Z8set_pppmPddddd(ptr noundef, double noundef, double noundef, double noundef, double noundef) local_unnamed_addr #8

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

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

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

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress nofree nounwind willreturn memory(argmem: read) "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #4 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { inlinehint mustprogress nofree nounwind willreturn memory(read) 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 #7 = { noreturn nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #8 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #9 = { 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 #10 = { nounwind }
attributes #11 = { nounwind willreturn memory(read) }
attributes #12 = { noreturn 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 288}
!6 = !{!"_ZTS14McPATComponent", !7, i64 8, !14, i64 288, !15, i64 296, !19, i64 664, !9, i64 696, !22, i64 704, !26, i64 728, !27, i64 776, !27, i64 944, !12, i64 1112, !12, i64 1232}
!7 = !{!"_ZTS9Component", !8, i64 0, !12, i64 24, !12, i64 144, !9, i64 264, !9, i64 272}
!8 = !{!"_ZTS4Area", !9, i64 0, !9, i64 8, !9, i64 16}
!9 = !{!"double", !10, i64 0}
!10 = !{!"omnipotent char", !11, i64 0}
!11 = !{!"Simple C++ TBAA"}
!12 = !{!"_ZTS8powerDef", !13, i64 0, !13, i64 40, !13, i64 80}
!13 = !{!"_ZTS15powerComponents", !9, i64 0, !9, i64 8, !9, i64 16, !9, i64 24, !9, i64 32}
!14 = !{!"any pointer", !10, i64 0}
!15 = !{!"_ZTS14InputParameter", !16, i64 0, !16, i64 4, !16, i64 8, !16, i64 12, !16, i64 16, !17, i64 20, !16, i64 24, !16, i64 28, !16, i64 32, !16, i64 36, !16, i64 40, !16, i64 44, !9, i64 48, !9, i64 56, !16, i64 64, !16, i64 68, !16, i64 72, !16, i64 76, !16, i64 80, !17, i64 84, !17, i64 85, !17, i64 86, !17, i64 87, !17, i64 88, !16, i64 92, !16, i64 96, !16, i64 100, !16, i64 104, !16, i64 108, !16, i64 112, !16, i64 116, !16, i64 120, !16, i64 124, !16, i64 128, !16, i64 132, !16, i64 136, !16, i64 140, !16, i64 144, !16, i64 148, !18, i64 152, !16, i64 156, !17, i64 160, !16, i64 164, !16, i64 168, !16, i64 172, !16, i64 176, !16, i64 180, !16, i64 184, !16, i64 188, !17, i64 192, !16, i64 196, !16, i64 200, !16, i64 204, !16, i64 208, !16, i64 212, !16, i64 216, !16, i64 220, !16, i64 224, !16, i64 228, !16, i64 232, !16, i64 236, !16, i64 240, !16, i64 244, !16, i64 248, !16, i64 252, !16, i64 256, !16, i64 260, !16, i64 264, !16, i64 268, !16, i64 272, !16, i64 276, !16, i64 280, !16, i64 284, !16, i64 288, !16, i64 292, !16, i64 296, !17, i64 300, !16, i64 304, !16, i64 308, !16, i64 312, !17, i64 316, !17, i64 317, !16, i64 320, !16, i64 324, !17, i64 328, !9, i64 336, !9, i64 344, !17, i64 352, !16, i64 356, !16, i64 360, !17, i64 364}
!16 = !{!"int", !10, i64 0}
!17 = !{!"bool", !10, i64 0}
!18 = !{!"_ZTS9Wire_type", !10, i64 0}
!19 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !20, i64 0, !21, i64 8, !10, i64 16}
!20 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !14, i64 0}
!21 = !{!"long", !10, i64 0}
!22 = !{!"_ZTSSt6vectorIP14McPATComponentSaIS1_EE", !23, i64 0}
!23 = !{!"_ZTSSt12_Vector_baseIP14McPATComponentSaIS1_EE", !24, i64 0}
!24 = !{!"_ZTSNSt12_Vector_baseIP14McPATComponentSaIS1_EE12_Vector_implE", !25, i64 0}
!25 = !{!"_ZTSNSt12_Vector_baseIP14McPATComponentSaIS1_EE17_Vector_impl_dataE", !14, i64 0, !14, i64 8, !14, i64 16}
!26 = !{!"_ZTS11McPATOutput", !9, i64 0, !9, i64 8, !9, i64 16, !9, i64 24, !9, i64 32, !9, i64 40}
!27 = !{!"_ZTS8statsDef", !28, i64 0, !28, i64 24, !28, i64 48, !28, i64 72, !28, i64 96, !28, i64 120, !28, i64 144}
!28 = !{!"_ZTS15statsComponents", !9, i64 0, !9, i64 8, !9, i64 16}
!29 = !{!16, !16, i64 0}
!30 = !{!31, !17, i64 1816}
!31 = !{!"_ZTS4Core", !6, i64 0, !14, i64 1352, !14, i64 1360, !14, i64 1368, !14, i64 1376, !14, i64 1384, !14, i64 1392, !14, i64 1400, !14, i64 1408, !16, i64 1416, !15, i64 1424, !9, i64 1792, !9, i64 1800, !9, i64 1808, !32, i64 1816, !36, i64 2296}
!32 = !{!"_ZTS14CoreParameters", !17, i64 0, !17, i64 1, !17, i64 2, !33, i64 4, !34, i64 8, !35, i64 12, !9, i64 16, !16, i64 24, !16, i64 28, !16, i64 32, !16, i64 36, !16, i64 40, !16, i64 44, !16, i64 48, !16, i64 52, !16, i64 56, !16, i64 60, !16, i64 64, !16, i64 68, !16, i64 72, !16, i64 76, !16, i64 80, !16, i64 84, !16, i64 88, !16, i64 92, !16, i64 96, !16, i64 100, !16, i64 104, !16, i64 108, !16, i64 112, !16, i64 116, !16, i64 120, !16, i64 124, !16, i64 128, !16, i64 132, !16, i64 136, !16, i64 140, !16, i64 144, !16, i64 148, !9, i64 152, !16, i64 160, !16, i64 164, !16, i64 168, !16, i64 172, !17, i64 176, !17, i64 177, !10, i64 184, !16, i64 216, !16, i64 220, !16, i64 224, !16, i64 228, !16, i64 232, !16, i64 236, !16, i64 240, !9, i64 248, !9, i64 256, !16, i64 264, !16, i64 268, !16, i64 272, !16, i64 276, !16, i64 280, !16, i64 284, !16, i64 288, !16, i64 292, !16, i64 296, !16, i64 300, !16, i64 304, !16, i64 308, !16, i64 312, !16, i64 316, !16, i64 320, !16, i64 324, !16, i64 328, !16, i64 332, !16, i64 336, !16, i64 340, !16, i64 344, !16, i64 348, !16, i64 352, !16, i64 356, !16, i64 360, !16, i64 364, !16, i64 368, !16, i64 372, !16, i64 376, !16, i64 380, !16, i64 384, !16, i64 388, !16, i64 392, !16, i64 396, !16, i64 400, !16, i64 404, !16, i64 408, !16, i64 412, !16, i64 416, !16, i64 420, !18, i64 424, !18, i64 428, !16, i64 432, !9, i64 440, !9, i64 448, !16, i64 456, !9, i64 464, !9, i64 472}
!33 = !{!"_ZTS9Core_type", !10, i64 0}
!34 = !{!"_ZTS13Renaming_type", !10, i64 0}
!35 = !{!"_ZTS14Scheduler_type", !10, i64 0}
!36 = !{!"_ZTS14CoreStatistics", !9, i64 0, !9, i64 8, !9, i64 16, !9, i64 24, !9, i64 32, !9, i64 40, !9, i64 48, !9, i64 56, !9, i64 64, !9, i64 72, !9, i64 80, !9, i64 88, !9, i64 96, !9, i64 104, !9, i64 112, !9, i64 120, !9, i64 128, !9, i64 136, !9, i64 144, !9, i64 152, !9, i64 160, !9, i64 168, !9, i64 176, !9, i64 184, !9, i64 192, !9, i64 200, !9, i64 208, !9, i64 216, !9, i64 224, !9, i64 232, !9, i64 240, !9, i64 248, !9, i64 256, !9, i64 264, !9, i64 272, !9, i64 280, !9, i64 288, !9, i64 296, !9, i64 304, !9, i64 312, !9, i64 320, !9, i64 328, !9, i64 336, !9, i64 344, !9, i64 352, !9, i64 360, !9, i64 368, !9, i64 376, !9, i64 384}
!37 = !{!31, !9, i64 1832}
!38 = !{!31, !16, i64 1924}
!39 = !{!31, !16, i64 1932}
!40 = !{!31, !17, i64 1817}
!41 = !{!31, !17, i64 1818}
!42 = !{!31, !33, i64 1820}
!43 = !{!31, !16, i64 1936}
!44 = !{!31, !16, i64 1940}
!45 = !{!31, !16, i64 1880}
!46 = !{!31, !16, i64 1884}
!47 = !{!31, !16, i64 1888}
!48 = !{!31, !16, i64 1892}
!49 = !{!31, !16, i64 1896}
!50 = !{!31, !16, i64 1904}
!51 = !{!31, !16, i64 1960}
!52 = !{!31, !9, i64 1968}
!53 = !{!31, !16, i64 1964}
!54 = !{!31, !16, i64 1908}
!55 = !{!31, !35, i64 1828}
!56 = !{!31, !34, i64 1824}
!57 = !{!31, !16, i64 1848}
!58 = !{!31, !16, i64 1852}
!59 = !{!31, !16, i64 2032}
!60 = !{!31, !16, i64 2036}
!61 = !{!31, !16, i64 2040}
!62 = !{!31, !16, i64 2044}
!63 = !{!31, !16, i64 2048}
!64 = !{!31, !16, i64 2052}
!65 = !{!31, !16, i64 2056}
!66 = !{!31, !9, i64 2064}
!67 = !{!31, !9, i64 2072}
!68 = !{!31, !16, i64 2080}
!69 = !{!31, !16, i64 2084}
!70 = !{!31, !16, i64 2088}
!71 = !{!31, !16, i64 2092}
!72 = !{!31, !16, i64 2096}
!73 = !{!31, !16, i64 2100}
!74 = !{!31, !16, i64 2104}
!75 = !{!31, !16, i64 2108}
!76 = !{!31, !16, i64 2112}
!77 = !{!31, !16, i64 2116}
!78 = !{!31, !16, i64 2120}
!79 = !{!31, !16, i64 2124}
!80 = !{!31, !16, i64 2128}
!81 = !{!31, !16, i64 2132}
!82 = !{!31, !16, i64 2136}
!83 = !{!31, !16, i64 2140}
!84 = !{!31, !16, i64 2144}
!85 = !{!31, !16, i64 2148}
!86 = !{!31, !16, i64 2152}
!87 = !{!31, !16, i64 2156}
!88 = !{!31, !16, i64 2160}
!89 = !{!31, !16, i64 2164}
!90 = !{!31, !16, i64 2168}
!91 = !{!31, !16, i64 2172}
!92 = !{!31, !16, i64 2176}
!93 = !{!31, !16, i64 2180}
!94 = !{!31, !16, i64 2184}
!95 = !{!31, !16, i64 2188}
!96 = !{!31, !16, i64 2192}
!97 = !{!31, !16, i64 2196}
!98 = !{!31, !16, i64 2200}
!99 = !{!31, !16, i64 2204}
!100 = !{!31, !16, i64 2208}
!101 = !{!31, !16, i64 2212}
!102 = !{!31, !16, i64 2216}
!103 = !{!31, !16, i64 2220}
!104 = !{!31, !16, i64 2224}
!105 = !{!31, !18, i64 2244}
!106 = !{!31, !16, i64 2248}
!107 = !{!31, !16, i64 2228}
!108 = !{!31, !16, i64 2232}
!109 = !{!31, !16, i64 2236}
!110 = !{!31, !18, i64 2240}
!111 = !{!31, !9, i64 2256}
!112 = !{!31, !9, i64 2264}
!113 = !{!31, !16, i64 2272}
!114 = !{!31, !9, i64 2280}
!115 = !{!31, !9, i64 2288}
!116 = !{!31, !16, i64 1944}
!117 = !{!31, !16, i64 1948}
!118 = !{!31, !16, i64 1952}
!119 = !{!31, !16, i64 1956}
!120 = !{!31, !16, i64 1920}
!121 = !{!31, !16, i64 1916}
!122 = distinct !{!122, !123}
!123 = !{!"llvm.loop.mustprogress"}
!124 = !{!6, !9, i64 696}
!125 = !{!31, !16, i64 1900}
!126 = !{!31, !16, i64 1912}
!127 = !{!31, !9, i64 2368}
!128 = !{!31, !9, i64 2384}
!129 = !{!31, !9, i64 2376}
!130 = !{!31, !9, i64 2392}
!131 = !{!31, !9, i64 2408}
!132 = !{!31, !9, i64 2400}
!133 = !{!31, !9, i64 2296}
!134 = !{!31, !9, i64 2304}
!135 = !{!31, !9, i64 2312}
!136 = !{!31, !9, i64 2320}
!137 = !{!31, !9, i64 2328}
!138 = !{!31, !9, i64 2336}
!139 = !{!31, !9, i64 2344}
!140 = !{!31, !9, i64 2360}
!141 = !{!31, !9, i64 2352}
!142 = !{!31, !9, i64 2664}
!143 = !{!31, !9, i64 2656}
!144 = !{!31, !9, i64 2672}
!145 = !{!31, !9, i64 2680}
!146 = !{!31, !9, i64 2432}
!147 = !{!31, !9, i64 2440}
!148 = !{!31, !9, i64 2448}
!149 = !{!31, !9, i64 2456}
!150 = !{!31, !9, i64 2464}
!151 = !{!31, !9, i64 2472}
!152 = !{!31, !9, i64 2480}
!153 = !{!31, !9, i64 2488}
!154 = !{!31, !9, i64 2496}
!155 = !{!31, !9, i64 2504}
!156 = !{!31, !9, i64 2416}
!157 = !{!31, !9, i64 2424}
!158 = !{!31, !9, i64 2512}
!159 = !{!31, !9, i64 2520}
!160 = !{!31, !9, i64 2528}
!161 = !{!31, !9, i64 2536}
!162 = !{!31, !9, i64 2544}
!163 = !{!31, !9, i64 2552}
!164 = !{!31, !9, i64 2560}
!165 = !{!31, !9, i64 2568}
!166 = !{!31, !9, i64 2576}
!167 = !{!31, !9, i64 2584}
!168 = !{!31, !9, i64 2592}
!169 = !{!31, !9, i64 2600}
!170 = !{!31, !9, i64 2608}
!171 = !{!31, !9, i64 2616}
!172 = !{!31, !9, i64 2624}
!173 = !{!31, !9, i64 2632}
!174 = !{!31, !9, i64 2640}
!175 = !{!31, !9, i64 2648}
!176 = distinct !{!176, !123}
!177 = !{!31, !17, i64 1993}
!178 = !{!31, !16, i64 1928}
!179 = !{!31, !16, i64 1984}
!180 = !{!31, !16, i64 1988}
!181 = !{!31, !16, i64 1976}
!182 = !{!31, !16, i64 1980}
!183 = !{!31, !16, i64 1840}
!184 = !{!31, !16, i64 1844}
!185 = !{!31, !16, i64 1856}
!186 = !{!31, !16, i64 1860}
!187 = !{!31, !16, i64 1864}
!188 = !{!31, !16, i64 1872}
!189 = !{!31, !16, i64 1868}
!190 = !{!31, !16, i64 1876}
!191 = !{!31, !17, i64 1992}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,SLPVectorizerPass,SROAPass,SimplifyCFGPass,TailCallElimPass