; LLVM IR from ERGO-Code/HiGHS :: src/mip/HighsPrimalHeuristics.ll (ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE)

; 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.HighsPseudocost = type { %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", double, double, double, double, i64, i64, i64, i32, double }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.3" = type { %"struct.std::_Vector_base.4" }
%"struct.std::_Vector_base.4" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsSearch = type { ptr, ptr, %class.HighsDomain, ptr, %class.HighsRandom, i64, i64, i64, i64, double, %class.HighsCDouble, %"class.std::vector", %"class.std::vector.3", i32, i8, i8, i8, i32, %"class.std::vector.3", %"class.std::vector.354", %class.HighsHashTable.309 }
%class.HighsDomain = type { %"class.std::vector.30", %"class.std::vector", %"class.std::vector.25", %"class.std::vector.63", %"class.std::vector.73", %"class.std::vector.78", %"class.std::vector.83", %"class.std::vector.83", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.30", %"class.std::vector", %"struct.HighsDomain::ObjectivePropagation", ptr, %"class.std::deque", %"class.std::deque.101", i8, %"struct.HighsDomain::Reason", i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %class.HighsHashTable, i8, %"class.std::vector.3", %"class.std::vector.3" }
%"class.std::vector.25" = type { %"struct.std::_Vector_base.26" }
%"struct.std::_Vector_base.26" = type { %"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.63" = type { %"struct.std::_Vector_base.64" }
%"struct.std::_Vector_base.64" = type { %"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.73" = type { %"struct.std::_Vector_base.74" }
%"struct.std::_Vector_base.74" = type { %"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.78" = type { %"struct.std::_Vector_base.79" }
%"struct.std::_Vector_base.79" = type { %"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.83" = type { %"struct.std::_Vector_base.84" }
%"struct.std::_Vector_base.84" = type { %"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.HighsDomain::ObjectivePropagation" = type { ptr, ptr, ptr, %class.HighsCDouble, i32, double, i8, %"class.std::vector.88", %"class.std::vector.25", %"class.std::vector.3", %"class.std::vector.93" }
%"class.std::vector.88" = type { %"struct.std::_Vector_base.89" }
%"struct.std::_Vector_base.89" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.93" = type { %"struct.std::_Vector_base.94" }
%"struct.std::_Vector_base.94" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::deque" = type { %"class.std::_Deque_base" }
%"class.std::_Deque_base" = type { %"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl" }
%"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl" = type { %"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl_data" }
%"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator", %"struct.std::_Deque_iterator" }
%"struct.std::_Deque_iterator" = type { ptr, ptr, ptr, ptr }
%"class.std::deque.101" = type { %"class.std::_Deque_base.102" }
%"class.std::_Deque_base.102" = type { %"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl" }
%"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl" = type { %"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl_data" }
%"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator.106", %"struct.std::_Deque_iterator.106" }
%"struct.std::_Deque_iterator.106" = type { ptr, ptr, ptr, ptr }
%"struct.HighsDomain::Reason" = type { i32, i32 }
%class.HighsHashTable = type { %"class.std::unique_ptr.107", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.107" = type { %"struct.std::__uniq_ptr_data.108" }
%"struct.std::__uniq_ptr_data.108" = type { %"class.std::__uniq_ptr_impl.109" }
%"class.std::__uniq_ptr_impl.109" = type { %"class.std::tuple.110" }
%"class.std::tuple.110" = type { %"struct.std::_Tuple_impl.111" }
%"struct.std::_Tuple_impl.111" = type { %"struct.std::_Head_base.114" }
%"struct.std::_Head_base.114" = type { ptr }
%"class.std::unique_ptr.115" = type { %"struct.std::__uniq_ptr_data.116" }
%"struct.std::__uniq_ptr_data.116" = type { %"class.std::__uniq_ptr_impl.117" }
%"class.std::__uniq_ptr_impl.117" = type { %"class.std::tuple.118" }
%"class.std::tuple.118" = type { %"struct.std::_Tuple_impl.119" }
%"struct.std::_Tuple_impl.119" = type { %"struct.std::_Head_base.122" }
%"struct.std::_Head_base.122" = type { ptr }
%class.HighsRandom = type { i64 }
%class.HighsCDouble = type { double, double }
%"class.std::vector.354" = type { %"struct.std::_Vector_base.355" }
%"struct.std::_Vector_base.355" = type { %"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsHashTable.309 = type { %"class.std::unique_ptr.310", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.310" = type { %"struct.std::__uniq_ptr_data.311" }
%"struct.std::__uniq_ptr_data.311" = type { %"class.std::__uniq_ptr_impl.312" }
%"class.std::__uniq_ptr_impl.312" = type { %"class.std::tuple.313" }
%"class.std::tuple.313" = type { %"struct.std::_Tuple_impl.314" }
%"struct.std::_Tuple_impl.314" = type { %"struct.std::_Head_base.317" }
%"struct.std::_Head_base.317" = type { ptr }
%"class.__gnu_cxx::__normal_iterator.359" = type { ptr }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%class.anon.360 = type { ptr }
%class.HighsLpRelaxation = type <{ ptr, %class.Highs, %"class.std::vector.238", %"class.std::vector.53", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %class.HVectorBase, %class.HighsSparseVectorSum, double, i8, [7 x i8], double, %"class.std::shared_ptr", i8, [7 x i8], i64, i64, double, i64, i64, i32, i32, i8, [7 x i8] }>
%class.Highs = type { ptr, %struct.HighsSolution, %struct.HighsBasis, %struct.ICrashInfo, %class.HighsModel, %"class.std::vector.157", %class.HighsModel, %class.HighsTimer, %struct.HighsCallback, %class.HighsOptions, %class.HighsInfo, %struct.HighsRanging, %class.HighsIis, %"class.std::vector.8", i32, i32, i8, double, %"class.std::vector.3", %"class.std::vector.3", %class.HighsSparseMatrix, %class.HEkk, %struct.HighsPresolveLog, i32, i8, i32, i8, %class.PresolveComponent }
%struct.HighsSolution = type { i8, i8, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3" }
%struct.HighsBasis = type { i8, i8, i8, i8, i32, i32, %"class.std::__cxx11::basic_string", %"class.std::vector.123", %"class.std::vector.123" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::vector.123" = type { %"struct.std::_Vector_base.124" }
%"struct.std::_Vector_base.124" = type { %"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.ICrashInfo = type { i32, double, double, double, double, double, %"class.std::vector.128", %"class.std::vector.3", double }
%"class.std::vector.128" = type { %"struct.std::_Vector_base.129" }
%"struct.std::_Vector_base.129" = type { %"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl" }
%"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl" = type { %"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl_data" }
%"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.157" = type { %"struct.std::_Vector_base.158" }
%"struct.std::_Vector_base.158" = type { %"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsModel = type { %class.HighsLp, %class.HighsHessian }
%class.HighsLp = type { i32, i32, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %class.HighsSparseMatrix, i32, double, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, i32, %"class.std::vector.15", %"class.std::vector.15", %"class.std::vector.133", %struct.HighsNameHash, %struct.HighsNameHash, i32, i32, %struct.HighsScale, i8, i8, i32, i8, %struct.HighsLpMods }
%"class.std::vector.15" = type { %"struct.std::_Vector_base.16" }
%"struct.std::_Vector_base.16" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.133" = type { %"struct.std::_Vector_base.134" }
%"struct.std::_Vector_base.134" = type { %"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsNameHash = type { %"class.std::unordered_map" }
%"class.std::unordered_map" = type { %"class.std::_Hashtable.138" }
%"class.std::_Hashtable.138" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%struct.HighsScale = type { i32, i8, i32, i32, double, %"class.std::vector.3", %"class.std::vector.3" }
%struct.HighsLpMods = type { %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.133", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3" }
%class.HighsHessian = type { i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%class.HighsTimer = type <{ ptr, double, i32, [4 x i8], %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.15", i32, i32, i32, [4 x i8] }>
%struct.HighsCallback = type { %"class.std::function", ptr, ptr, %"class.std::vector.162", %struct.HighsCallbackDataOut, %struct.HighsCallbackDataIn }
%"class.std::function" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.std::vector.162" = type { %"struct.std::_Bvector_base" }
%"struct.std::_Bvector_base" = type { %"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl" }
%"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl" = type { %"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl_data" }
%"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl_data" = type { %"struct.std::_Bit_iterator", %"struct.std::_Bit_iterator", ptr }
%"struct.std::_Bit_iterator" = type { %"struct.std::_Bit_iterator_base.base", [4 x i8] }
%"struct.std::_Bit_iterator_base.base" = type <{ ptr, i32 }>
%struct.HighsCallbackDataOut = type { i32, double, i32, i32, i32, double, i64, i64, double, double, double, ptr, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, i32 }
%struct.HighsCallbackDataIn = type { i32, ptr }
%class.HighsOptions = type <{ %struct.HighsOptionsStruct, %"class.std::vector.20", i32, [4 x i8] }>
%struct.HighsOptionsStruct = type { ptr, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", double, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, %"class.std::__cxx11::basic_string", double, double, double, double, double, double, double, double, double, double, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %"class.std::__cxx11::basic_string", i8, i8, i8, i32, i32, %"class.std::__cxx11::basic_string", i8, i8, i8, i32, i8, i8, i32, i32, double, i32, i32, i32, i8, i32, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i8, i8, i8, double, double, double, double, double, double, double, double, double, double, double, i8, i8, i8, i8, i32, double, i8, i8, %"class.std::__cxx11::basic_string", double, i32, i32, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, double, i8, i8, %"class.std::__cxx11::basic_string", i8, i32, %struct.HighsLogOptions }
%struct.HighsLogOptions = type <{ ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::function", ptr, i8, [7 x i8] }>
%"class.std::vector.20" = type { %"struct.std::_Vector_base.21" }
%"struct.std::_Vector_base.21" = type { %"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl" }
%"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl" = type { %"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsInfo = type { ptr, %struct.HighsInfoStruct, %"class.std::vector.166" }
%struct.HighsInfoStruct = type { i8, i64, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, i32, double, double, i32, double, double, double, double, double }
%"class.std::vector.166" = type { %"struct.std::_Vector_base.167" }
%"struct.std::_Vector_base.167" = type { %"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl" }
%"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl" = type { %"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsRanging = type { i8, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord }
%struct.HighsRangingRecord = type { %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector" }
%class.HighsIis = type { i8, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.171" }
%"class.std::vector.171" = type { %"struct.std::_Vector_base.172" }
%"struct.std::_Vector_base.172" = type { %"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.8" = type { %"struct.std::_Vector_base.9" }
%"struct.std::_Vector_base.9" = type { %"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsSparseMatrix = type { i32, i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%class.HEkk = type { ptr, ptr, ptr, %class.HighsSimplexAnalysis, %class.HighsLp, %"class.std::__cxx11::basic_string", %struct.HighsSimplexStatus, [3 x i8], %struct.HighsSimplexInfo, i32, %struct.SimplexBasis, %class.HighsHashTable.199, %class.HighsRandom, %"class.std::vector.3", %"class.std::vector.3", i8, %class.HighsSparseMatrix, %class.HighsSparseMatrix, %class.HSimplexNla, %struct.HotStart, double, double, double, i32, i32, i32, i32, i8, i8, i32, i32, i32, %"class.std::vector", %"class.std::vector.3", %struct.HighsRayRecord, %struct.HighsRayRecord, i32, i32, i32, double, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", double, double, double, i32, i32, i8, i32, i8, i8, i8, i8, double, %"class.std::vector.218", %"class.std::vector.3", %struct.HighsSimplexStats }
%class.HighsSimplexAnalysis = type { ptr, %"class.std::vector.176", %"class.std::vector.176", ptr, i32, i32, i32, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %struct.HighsLogOptions, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, %"class.std::__cxx11::basic_string", double, double, double, double, double, double, double, double, double, double, double, double, i32, i32, double, double, i32, double, double, i32, double, double, double, double, double, double, double, double, double, double, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, [4 x i8], %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, i32, i32, i32, i32, double, double, i32, i32, i32, i32, i32, double, double, i32, double, double, i32, i32, double, double, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.181", %"class.std::unique_ptr.186", i32, i32, i32, i32, double, double, double, double, double, double, double, double, double, double, i32, i32, double, double, double, i8, double, double, i32, i32, i32, i32, i32, double, double, double, double, double, double, double, double, double, i32, i32, [10 x %"struct.HighsSimplexAnalysis::AnIterOpRec"], i32, i32, [22 x %"struct.HighsSimplexAnalysis::AnIterTraceRec"], [12 x i32], [3 x i32], [4 x i8], %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution }
%"class.std::vector.176" = type { %"struct.std::_Vector_base.177" }
%"struct.std::_Vector_base.177" = type { %"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.181" = type { %"struct.std::_Vector_base.182" }
%"struct.std::_Vector_base.182" = type { %"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl" }
%"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl" = type { %"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl_data" }
%"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::unique_ptr.186" = type { %"struct.std::__uniq_ptr_data.187" }
%"struct.std::__uniq_ptr_data.187" = type { %"class.std::__uniq_ptr_impl.188" }
%"class.std::__uniq_ptr_impl.188" = type { %"class.std::tuple.189" }
%"class.std::tuple.189" = type { %"struct.std::_Tuple_impl.190" }
%"struct.std::_Tuple_impl.190" = type { %"struct.std::_Head_base.193" }
%"struct.std::_Head_base.193" = type { ptr }
%"struct.HighsSimplexAnalysis::AnIterOpRec" = type { double, double, i32, i32, i32, i32, double, i32, %"class.std::__cxx11::basic_string", %struct.HighsValueDistribution }
%"struct.HighsSimplexAnalysis::AnIterTraceRec" = type { double, double, [10 x double], double, i32, i32, i32 }
%struct.HighsValueDistribution = type <{ %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, i32, i32, [4 x i8], double, double, %"class.std::vector.3", %"class.std::vector", i32, [4 x i8] }>
%struct.HighsSimplexStatus = type { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8 }
%struct.HighsSimplexInfo = type <{ %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", i32, i32, i8, i8, [6 x i8], %struct.SimplexBasis, i32, i32, i32, [4 x i8], %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", i32, i32, i32, i32, double, double, double, double, i32, i32, double, double, double, double, double, double, double, double, double, double, i8, [7 x i8], double, double, i32, [4 x i8], double, double, double, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, [4 x i8], double, double, i32, [4 x i8], double, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, i32, [4 x i8] }>
%struct.SimplexBasis = type { %"class.std::vector", %"class.std::vector.194", %"class.std::vector.194", i64, i32, i32, %"class.std::__cxx11::basic_string" }
%"class.std::vector.194" = type { %"struct.std::_Vector_base.195" }
%"struct.std::_Vector_base.195" = type { %"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl" }
%"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl" = type { %"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsHashTable.199 = type { %"class.std::unique_ptr.200", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.200" = type { %"struct.std::__uniq_ptr_data.201" }
%"struct.std::__uniq_ptr_data.201" = type { %"class.std::__uniq_ptr_impl.202" }
%"class.std::__uniq_ptr_impl.202" = type { %"class.std::tuple.203" }
%"class.std::tuple.203" = type { %"struct.std::_Tuple_impl.204" }
%"struct.std::_Tuple_impl.204" = type { %"struct.std::_Head_base.207" }
%"struct.std::_Head_base.207" = type { ptr }
%class.HSimplexNla = type { ptr, ptr, ptr, ptr, ptr, ptr, %class.HFactor, i8, double, %struct.ProductFormUpdate, %struct.SimplexIterate }
%class.HFactor = type { double, double, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %struct.RefactorInfo, i32, i32, i32, i32, i32, i32, i32, double, i8, ptr, ptr, ptr, ptr, double, double, i32, double, %"class.std::unique_ptr.208", %struct.HighsLogOptions, i8, i8, i32, i32, ptr, i32, %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.216", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %class.HVectorBase }
%struct.RefactorInfo = type { i8, %"class.std::vector", %"class.std::vector", %"class.std::vector.194", double }
%"class.std::unique_ptr.208" = type { %"struct.std::__uniq_ptr_data.209" }
%"struct.std::__uniq_ptr_data.209" = type { %"class.std::__uniq_ptr_impl.210" }
%"class.std::__uniq_ptr_impl.210" = type { %"class.std::tuple.211" }
%"class.std::tuple.211" = type { %"struct.std::_Tuple_impl.212" }
%"struct.std::_Tuple_impl.212" = type { %"struct.std::_Head_base.215" }
%"struct.std::_Head_base.215" = type { ptr }
%"class.std::vector.216" = type { %"struct.std::_Vector_base.217" }
%"struct.std::_Vector_base.217" = type { %"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl" }
%"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl" = type { %"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.ProductFormUpdate = type { i8, i32, i32, %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%struct.SimplexIterate = type { i8, %struct.SimplexBasis, %struct.InvertibleRepresentation, %"class.std::vector.3" }
%struct.InvertibleRepresentation = type { %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3" }
%struct.HotStart = type { i8, %struct.RefactorInfo, %"class.std::vector.194" }
%struct.HighsRayRecord = type { i32, i32, %"class.std::vector.3" }
%"class.std::vector.218" = type { %"struct.std::_Vector_base.219" }
%"struct.std::_Vector_base.219" = type { %"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsSimplexStats = type { i8, i32, i32, i32, i32, double, double, double, double }
%struct.HighsPresolveLog = type { %"class.std::vector.223" }
%"class.std::vector.223" = type { %"struct.std::_Vector_base.224" }
%"struct.std::_Vector_base.224" = type { %"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.PresolveComponent = type { %class.HighsComponent.base, %struct.PresolveComponentInfo, %struct.PresolveComponentData, ptr, ptr, i32, i32 }
%class.HighsComponent.base = type <{ ptr, %struct.HighsComponentInfo, %struct.HighsComponentData, %struct.HighsComponentOptions }>
%struct.HighsComponentInfo = type { i8 }
%struct.HighsComponentData = type { i8 }
%struct.HighsComponentOptions = type { i8 }
%struct.PresolveComponentInfo = type { ptr, %struct.HighsComponentInfo, i32, i32, i32, double, double }
%struct.PresolveComponentData = type { ptr, %struct.HighsComponentData, %class.HighsLp, %"class.presolve::HighsPostsolveStack", %struct.HighsSolution, %struct.HighsBasis, %struct.HighsPresolveLog }
%"class.presolve::HighsPostsolveStack" = type { i64, double, double, double, double, %class.HighsDataStack, %"class.std::vector.228", %"class.std::vector", %"class.std::vector", %"class.std::vector.30", %"class.std::vector.233", %"class.std::vector.233", i32, i32 }
%class.HighsDataStack = type { %"class.std::vector.216", i64 }
%"class.std::vector.228" = type { %"struct.std::_Vector_base.229" }
%"struct.std::_Vector_base.229" = type { %"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.233" = type { %"struct.std::_Vector_base.234" }
%"struct.std::_Vector_base.234" = type { %"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl" }
%"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl" = type { %"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl_data" }
%"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.238" = type { %"struct.std::_Vector_base.239" }
%"struct.std::_Vector_base.239" = type { %"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.53" = type { %"struct.std::_Vector_base.54" }
%"struct.std::_Vector_base.54" = type { %"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HVectorBase = type { i32, i32, %"class.std::vector", %"class.std::vector.3", double, %"class.std::vector.216", %"class.std::vector", ptr, i8, i32, %"class.std::vector", %"class.std::vector.3" }
%class.HighsSparseVectorSum = type { %"class.std::vector.83", %"class.std::vector" }
%"class.std::shared_ptr" = type { %"class.std::__shared_ptr" }
%"class.std::__shared_ptr" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%class.HeuristicNeighbourhood = type <{ ptr, i32, [4 x i8], %class.HighsHashTable, i64, i64, i32, [4 x i8] }>
%class.anon.361 = type { ptr, ptr }
%"class.__gnu_cxx::__normal_iterator.362" = type { ptr }
%class.anon.363 = type { ptr, ptr }
%"struct.std::pair.364" = type { i32, double }
%class.HighsPrimalHeuristics = type { ptr, i64, i64, i64, i64, double, i32, double, i32, %class.HighsRandom, %"class.std::vector" }
%class.HighsMipSolver = type { ptr, ptr, ptr, ptr, i32, %"class.std::vector.3", double, double, double, double, double, double, double, i64, i64, double, ptr, %"class.std::vector.8", i8, i32, i32, ptr, ptr, ptr, ptr, %"class.std::unique_ptr", %class.HighsMipAnalysis, %class.HighsTimer }
%"class.std::unique_ptr" = type { %"struct.std::__uniq_ptr_data" }
%"struct.std::__uniq_ptr_data" = type { %"class.std::__uniq_ptr_impl" }
%"class.std::__uniq_ptr_impl" = type { %"class.std::tuple" }
%"class.std::tuple" = type { %"struct.std::_Tuple_impl" }
%"struct.std::_Tuple_impl" = type { %"struct.std::_Head_base.14" }
%"struct.std::_Head_base.14" = type { ptr }
%class.HighsMipAnalysis = type { ptr, %"class.std::__cxx11::basic_string", %struct.HighsTimerClock, i8, %"class.std::vector.3", %"class.std::vector.3" }
%struct.HighsTimerClock = type { ptr, %"class.std::vector" }
%struct.HighsMipSolverData = type <{ ptr, %class.HighsCutPool, %class.HighsConflictPool, %class.HighsDomain, %class.HighsLpRelaxation, %class.HighsPseudocost, %class.HighsCliqueTable, %class.HighsImplications, %class.HighsPrimalHeuristics, %class.HighsRedcostFixing, %class.HighsObjectiveFunction, %"class.presolve::HighsPostsolveStack", i32, [4 x i8], %class.HighsLp, i8, i8, i8, i8, i32, i8, [3 x i8], i32, i32, i32, i32, [4 x i8], %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.30", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %struct.HighsSymmetries, %"class.std::shared_ptr.318", double, double, double, i64, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", double, %struct.HighsBasis, double, i32, i32, %class.HighsCDouble, double, double, double, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i64, i32, [4 x i8], double, double, double, double, %"class.std::vector.3", %class.HighsNodeQueue, %struct.HighsPrimaDualIntegral, [8 x i8] }>
%class.HighsCutPool = type { %class.HighsDynamicRowMatrix, %"class.std::vector.3", %"class.std::vector.38", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.30", %"class.std::unordered_multimap", %"class.std::vector.48", %"class.std::set", double, double, double, i32, i32, i32, i32, i32, %"class.std::vector", %"class.std::vector.53" }
%class.HighsDynamicRowMatrix = type { %"class.std::vector.25", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.30", %"class.std::set", %"class.std::vector" }
%"class.std::vector.38" = type { %"struct.std::_Vector_base.39" }
%"struct.std::_Vector_base.39" = type { %"struct.std::_Vector_base<short, std::allocator<short>>::_Vector_impl" }
%"struct.std::_Vector_base<short, std::allocator<short>>::_Vector_impl" = type { %"struct.std::_Vector_base<short, std::allocator<short>>::_Vector_impl_data" }
%"struct.std::_Vector_base<short, std::allocator<short>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::unordered_multimap" = type { %"class.std::_Hashtable" }
%"class.std::_Hashtable" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"class.std::vector.48" = type { %"struct.std::_Vector_base.49" }
%"struct.std::_Vector_base.49" = type { %"struct.std::_Vector_base<HighsDomain::CutpoolPropagation *, std::allocator<HighsDomain::CutpoolPropagation *>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::CutpoolPropagation *, std::allocator<HighsDomain::CutpoolPropagation *>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::CutpoolPropagation *, std::allocator<HighsDomain::CutpoolPropagation *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::CutpoolPropagation *, std::allocator<HighsDomain::CutpoolPropagation *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::set" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<std::pair<int, int>, std::pair<int, int>, std::_Identity<std::pair<int, int>>, std::less<std::pair<int, int>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::pair<int, int>, std::pair<int, int>, std::_Identity<std::pair<int, int>>, std::less<std::pair<int, int>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%class.HighsConflictPool = type { i32, i32, %"class.std::vector", %"class.std::vector.38", %"class.std::vector.58", %"class.std::vector.63", %"class.std::vector.25", %"class.std::set", %"class.std::vector", %"class.std::vector.68" }
%"class.std::vector.58" = type { %"struct.std::_Vector_base.59" }
%"struct.std::_Vector_base.59" = type { %"struct.std::_Vector_base<unsigned int, std::allocator<unsigned int>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned int, std::allocator<unsigned int>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned int, std::allocator<unsigned int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned int, std::allocator<unsigned int>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.68" = type { %"struct.std::_Vector_base.69" }
%"struct.std::_Vector_base.69" = type { %"struct.std::_Vector_base<HighsDomain::ConflictPoolPropagation *, std::allocator<HighsDomain::ConflictPoolPropagation *>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::ConflictPoolPropagation *, std::allocator<HighsDomain::ConflictPoolPropagation *>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::ConflictPoolPropagation *, std::allocator<HighsDomain::ConflictPoolPropagation *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::ConflictPoolPropagation *, std::allocator<HighsDomain::ConflictPoolPropagation *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsCliqueTable = type { %"class.std::vector.243", %"class.std::vector.248", %"class.std::vector.253", %class.HighsHashTable.258, %"class.std::set", %"class.std::vector", %"class.std::vector.267", %"class.std::vector", %"class.std::vector.243", %"class.std::vector", %"class.std::vector.272", %"class.std::vector", %"class.std::vector.277", %"class.std::vector.30", %"class.std::vector.30", %"class.std::vector.58", %"class.std::vector", %class.HighsRandom, i32, i32, i32, i32, i8, i64 }
%"class.std::vector.248" = type { %"struct.std::_Vector_base.249" }
%"struct.std::_Vector_base.249" = type { %"struct.std::_Vector_base<HighsHashTree<int, int>, std::allocator<HighsHashTree<int, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsHashTree<int, int>, std::allocator<HighsHashTree<int, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsHashTree<int, int>, std::allocator<HighsHashTree<int, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsHashTree<int, int>, std::allocator<HighsHashTree<int, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.253" = type { %"struct.std::_Vector_base.254" }
%"struct.std::_Vector_base.254" = type { %"struct.std::_Vector_base<HighsHashTree<int>, std::allocator<HighsHashTree<int>>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsHashTree<int>, std::allocator<HighsHashTree<int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsHashTree<int>, std::allocator<HighsHashTree<int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsHashTree<int>, std::allocator<HighsHashTree<int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsHashTable.258 = type { %"class.std::unique_ptr.259", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.259" = type { %"struct.std::__uniq_ptr_data.260" }
%"struct.std::__uniq_ptr_data.260" = type { %"class.std::__uniq_ptr_impl.261" }
%"class.std::__uniq_ptr_impl.261" = type { %"class.std::tuple.262" }
%"class.std::tuple.262" = type { %"struct.std::_Tuple_impl.263" }
%"struct.std::_Tuple_impl.263" = type { %"struct.std::_Head_base.266" }
%"struct.std::_Head_base.266" = type { ptr }
%"class.std::vector.267" = type { %"struct.std::_Vector_base.268" }
%"struct.std::_Vector_base.268" = type { %"struct.std::_Vector_base<HighsCliqueTable::Clique, std::allocator<HighsCliqueTable::Clique>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsCliqueTable::Clique, std::allocator<HighsCliqueTable::Clique>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsCliqueTable::Clique, std::allocator<HighsCliqueTable::Clique>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsCliqueTable::Clique, std::allocator<HighsCliqueTable::Clique>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.243" = type { %"struct.std::_Vector_base.244" }
%"struct.std::_Vector_base.244" = type { %"struct.std::_Vector_base<HighsCliqueTable::CliqueVar, std::allocator<HighsCliqueTable::CliqueVar>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsCliqueTable::CliqueVar, std::allocator<HighsCliqueTable::CliqueVar>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsCliqueTable::CliqueVar, std::allocator<HighsCliqueTable::CliqueVar>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsCliqueTable::CliqueVar, std::allocator<HighsCliqueTable::CliqueVar>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.272" = type { %"struct.std::_Vector_base.273" }
%"struct.std::_Vector_base.273" = type { %"struct.std::_Vector_base<HighsCliqueTable::Substitution, std::allocator<HighsCliqueTable::Substitution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsCliqueTable::Substitution, std::allocator<HighsCliqueTable::Substitution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsCliqueTable::Substitution, std::allocator<HighsCliqueTable::Substitution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsCliqueTable::Substitution, std::allocator<HighsCliqueTable::Substitution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.277" = type { %"struct.std::_Vector_base.278" }
%"struct.std::_Vector_base.278" = type { %"struct.std::_Vector_base<std::pair<int, HighsCliqueTable::CliqueVar>, std::allocator<std::pair<int, HighsCliqueTable::CliqueVar>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<int, HighsCliqueTable::CliqueVar>, std::allocator<std::pair<int, HighsCliqueTable::CliqueVar>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<int, HighsCliqueTable::CliqueVar>, std::allocator<std::pair<int, HighsCliqueTable::CliqueVar>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<int, HighsCliqueTable::CliqueVar>, std::allocator<std::pair<int, HighsCliqueTable::CliqueVar>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsImplications = type { i32, %"class.std::vector.282", i64, %"class.std::vector.287", %"class.std::vector.287", ptr, %"class.std::vector.292", %"class.std::vector.30", %"class.std::function.297" }
%"class.std::vector.282" = type { %"struct.std::_Vector_base.283" }
%"struct.std::_Vector_base.283" = type { %"struct.std::_Vector_base<HighsImplications::Implics, std::allocator<HighsImplications::Implics>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsImplications::Implics, std::allocator<HighsImplications::Implics>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsImplications::Implics, std::allocator<HighsImplications::Implics>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsImplications::Implics, std::allocator<HighsImplications::Implics>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.287" = type { %"struct.std::_Vector_base.288" }
%"struct.std::_Vector_base.288" = type { %"struct.std::_Vector_base<HighsHashTree<int, HighsImplications::VarBound>, std::allocator<HighsHashTree<int, HighsImplications::VarBound>>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsHashTree<int, HighsImplications::VarBound>, std::allocator<HighsHashTree<int, HighsImplications::VarBound>>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsHashTree<int, HighsImplications::VarBound>, std::allocator<HighsHashTree<int, HighsImplications::VarBound>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsHashTree<int, HighsImplications::VarBound>, std::allocator<HighsHashTree<int, HighsImplications::VarBound>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.292" = type { %"struct.std::_Vector_base.293" }
%"struct.std::_Vector_base.293" = type { %"struct.std::_Vector_base<HighsSubstitution, std::allocator<HighsSubstitution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsSubstitution, std::allocator<HighsSubstitution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsSubstitution, std::allocator<HighsSubstitution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsSubstitution, std::allocator<HighsSubstitution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::function.297" = type { %"class.std::_Function_base", ptr }
%class.HighsRedcostFixing = type { %"class.std::vector.299", %"class.std::vector.299" }
%"class.std::vector.299" = type { %"struct.std::_Vector_base.300" }
%"struct.std::_Vector_base.300" = type { %"struct.std::_Vector_base<std::multimap<double, int>, std::allocator<std::multimap<double, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::multimap<double, int>, std::allocator<std::multimap<double, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::multimap<double, int>, std::allocator<std::multimap<double, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::multimap<double, int>, std::allocator<std::multimap<double, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsObjectiveFunction = type { ptr, double, i32, i32, %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector" }
%struct.HighsSymmetries = type { %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.304", %class.HighsHashTable.309, i32, i32 }
%"class.std::vector.304" = type { %"struct.std::_Vector_base.305" }
%"struct.std::_Vector_base.305" = type { %"struct.std::_Vector_base<HighsOrbitopeMatrix, std::allocator<HighsOrbitopeMatrix>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsOrbitopeMatrix, std::allocator<HighsOrbitopeMatrix>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsOrbitopeMatrix, std::allocator<HighsOrbitopeMatrix>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsOrbitopeMatrix, std::allocator<HighsOrbitopeMatrix>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::shared_ptr.318" = type { %"class.std::__shared_ptr.319" }
%"class.std::__shared_ptr.319" = type { ptr, %"class.std::__shared_count" }
%class.HighsNodeQueue = type <{ %"class.std::unique_ptr.321", %"class.std::vector.329", %"class.std::priority_queue", %"class.std::unique_ptr.339", %"class.std::unique_ptr.339", i64, i64, i64, i64, i64, i64, i64, double, i32, [4 x i8] }>
%"class.std::unique_ptr.321" = type { %"struct.std::__uniq_ptr_data.322" }
%"struct.std::__uniq_ptr_data.322" = type { %"class.std::__uniq_ptr_impl.323" }
%"class.std::__uniq_ptr_impl.323" = type { %"class.std::tuple.324" }
%"class.std::tuple.324" = type { %"struct.std::_Tuple_impl.325" }
%"struct.std::_Tuple_impl.325" = type { %"struct.std::_Head_base.328" }
%"struct.std::_Head_base.328" = type { ptr }
%"class.std::vector.329" = type { %"struct.std::_Vector_base.330" }
%"struct.std::_Vector_base.330" = type { %"struct.std::_Vector_base<HighsNodeQueue::OpenNode, std::allocator<HighsNodeQueue::OpenNode>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsNodeQueue::OpenNode, std::allocator<HighsNodeQueue::OpenNode>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsNodeQueue::OpenNode, std::allocator<HighsNodeQueue::OpenNode>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsNodeQueue::OpenNode, std::allocator<HighsNodeQueue::OpenNode>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::priority_queue" = type <{ %"class.std::vector.334", [8 x i8] }>
%"class.std::vector.334" = type { %"struct.std::_Vector_base.335" }
%"struct.std::_Vector_base.335" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl" = type { %"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" }
%"struct.std::_Vector_base<long, std::allocator<long>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::unique_ptr.339" = type { %"struct.std::__uniq_ptr_data.340" }
%"struct.std::__uniq_ptr_data.340" = type { %"class.std::__uniq_ptr_impl.341" }
%"class.std::__uniq_ptr_impl.341" = type { %"class.std::tuple.342" }
%"class.std::tuple.342" = type { %"struct.std::_Tuple_impl.343" }
%"struct.std::_Tuple_impl.343" = type { %"struct.std::_Head_base.346" }
%"struct.std::_Head_base.346" = type { ptr }
%struct.HighsPrimaDualIntegral = type { double, double, double, double, double }

@.str.52 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [83 x i8], align 1
@__PRETTY_FUNCTION__._ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE = external hidden unnamed_addr constant [62 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(...)

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

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

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

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN21HighsPrimalHeuristics11solveSubMipERK7HighsLpRK10HighsBasisdSt6vectorIdSaIdEES8_iii(ptr noundef nonnull align 8 dereferenceable(104), ptr noundef nonnull align 8 dereferenceable(920), ptr noundef nonnull align 8 dereferenceable(96), double noundef, ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK14HighsMipSolver6numColEv(ptr noundef nonnull align 8 dereferenceable(496)) #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN21HighsPrimalHeuristics25determineTargetFixingRateEv(ptr noundef nonnull align 8 dereferenceable(104)) #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN22HeuristicNeighbourhoodC2ER14HighsMipSolverR11HighsDomain(ptr noundef nonnull align 8 dereferenceable(76), ptr noundef nonnull align 8 dereferenceable(496), ptr noundef nonnull align 8 dereferenceable(824)) unnamed_addr #2 align 2

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

declare noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824)) #1 align 2

declare void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824), ptr noundef nonnull align 8 dereferenceable(224)) #5

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76)) #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76)) #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE(ptr noundef nonnull align 8 dereferenceable(104) %0, ptr noundef nonnull align 8 dereferenceable(24) %1) #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca %class.HighsPseudocost, align 8
  %6 = alloca %class.HighsSearch, align 8
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca %"class.__gnu_cxx::__normal_iterator.359", align 8
  %11 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %12 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %13 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %14 = alloca %class.anon.360, align 8
  %15 = alloca %"class.__gnu_cxx::__normal_iterator.359", align 8
  %16 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %17 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %18 = alloca %class.HighsLpRelaxation, align 8
  %19 = alloca double, align 8
  %20 = alloca double, align 8
  %21 = alloca i8, align 1
  %22 = alloca i32, align 4
  %23 = alloca i32, align 4
  %24 = alloca %class.HeuristicNeighbourhood, align 8
  %25 = alloca i32, align 4
  %26 = alloca i32, align 4
  %27 = alloca double, align 8
  %28 = alloca double, align 8
  %29 = alloca ptr, align 8
  %30 = alloca ptr, align 8
  %31 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %32 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %33 = alloca i32, align 4
  %34 = alloca double, align 8
  %35 = alloca double, align 8
  %36 = alloca %class.anon.361, align 8
  %37 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %38 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %39 = alloca %class.anon.363, align 8
  %40 = alloca double, align 8
  %41 = alloca ptr, align 8
  %42 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %43 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %44 = alloca %"struct.std::pair.364", align 8
  %45 = alloca double, align 8
  %46 = alloca i8, align 1
  %47 = alloca %"class.std::vector.3", align 8
  %48 = alloca %"class.std::vector.3", align 8
  %49 = alloca i64, align 8
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %50 = load ptr, ptr %3, align 8
  %51 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %52 = load ptr, ptr %51, align 8, !tbaa !9
  %53 = getelementptr inbounds %class.HighsMipSolver, ptr %52, i32 0, i32 25
  %54 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %53) #9
  %55 = getelementptr inbounds %struct.HighsMipSolverData, ptr %54, i32 0, i32 3
  %56 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %55)
  br i1 %56, label %57, label %58

57:                                               ; preds = %2
  br label %753

58:                                               ; preds = %2
  call void @llvm.lifetime.start.p0(i64 360, ptr %5) #9
  %59 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %60 = load ptr, ptr %59, align 8, !tbaa !9
  %61 = getelementptr inbounds %class.HighsMipSolver, ptr %60, i32 0, i32 25
  %62 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %61) #9
  %63 = getelementptr inbounds %struct.HighsMipSolverData, ptr %62, i32 0, i32 5
  call void @_ZN15HighsPseudocostC2ERKS_(ptr noundef nonnull align 8 dereferenceable(360) %5, ptr noundef nonnull align 8 dereferenceable(360) %63)
  call void @llvm.lifetime.start.p0(i64 1064, ptr %6) #9
  %64 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %65 = load ptr, ptr %64, align 8, !tbaa !9
  invoke void @_ZN11HighsSearchC1ER14HighsMipSolverR15HighsPseudocost(ptr noundef nonnull align 8 dereferenceable(1064) %6, ptr noundef nonnull align 8 dereferenceable(496) %65, ptr noundef nonnull align 8 dereferenceable(360) %5)
          to label %66 unwind label %154

66:                                               ; preds = %58
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #9
  %67 = invoke noundef nonnull align 8 dereferenceable(824) ptr @_ZN11HighsSearch14getLocalDomainEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %68 unwind label %158

68:                                               ; preds = %66
  store ptr %67, ptr %9, align 8, !tbaa !5
  invoke void @_ZN11HighsSearch12setHeuristicEb(ptr noundef nonnull align 8 dereferenceable(1064) %6, i1 noundef zeroext true)
          to label %69 unwind label %158

69:                                               ; preds = %68
  %70 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 10
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #9
  %71 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 10
  %72 = call ptr @_ZNSt6vectorIiSaIiEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %71) #9
  %73 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %12, i32 0, i32 0
  store ptr %72, ptr %73, align 8
  %74 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 10
  %75 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %74) #9
  %76 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %13, i32 0, i32 0
  store ptr %75, ptr %76, align 8
  %77 = getelementptr inbounds %class.anon.360, ptr %14, i32 0, i32 0
  store ptr %50, ptr %77, align 8, !tbaa !19
  %78 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %12, i32 0, i32 0
  %79 = load ptr, ptr %78, align 8
  %80 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %13, i32 0, i32 0
  %81 = load ptr, ptr %80, align 8
  %82 = getelementptr inbounds %class.anon.360, ptr %14, i32 0, i32 0
  %83 = load ptr, ptr %82, align 8
  %84 = invoke ptr @"_ZSt9remove_ifIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEZN21HighsPrimalHeuristics4RENSERKS3_IdSaIdEEE3$_0ET_SD_SD_T0_"(ptr %79, ptr %81, ptr %83)
          to label %85 unwind label %162

85:                                               ; preds = %69
  %86 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %11, i32 0, i32 0
  store ptr %84, ptr %86, align 8
  call void @_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEC2IPivEERKNS0_IT_S5_EE(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull align 8 dereferenceable(8) %11) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #9
  %87 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 10
  %88 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %87) #9
  %89 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %16, i32 0, i32 0
  store ptr %88, ptr %89, align 8
  call void @_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEC2IPivEERKNS0_IT_S5_EE(ptr noundef nonnull align 8 dereferenceable(8) %15, ptr noundef nonnull align 8 dereferenceable(8) %16) #9
  %90 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.359", ptr %10, i32 0, i32 0
  %91 = load ptr, ptr %90, align 8
  %92 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.359", ptr %15, i32 0, i32 0
  %93 = load ptr, ptr %92, align 8
  %94 = invoke ptr @_ZNSt6vectorIiSaIiEE5eraseEN9__gnu_cxx17__normal_iteratorIPKiS1_EES6_(ptr noundef nonnull align 8 dereferenceable(24) %70, ptr %91, ptr %93)
          to label %95 unwind label %166

95:                                               ; preds = %85
  %96 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %17, i32 0, i32 0
  store ptr %94, ptr %96, align 8
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #9
  call void @llvm.lifetime.start.p0(i64 21432, ptr %18) #9
  %97 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %98 = load ptr, ptr %97, align 8, !tbaa !9
  %99 = getelementptr inbounds %class.HighsMipSolver, ptr %98, i32 0, i32 25
  %100 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %99) #9
  %101 = getelementptr inbounds %struct.HighsMipSolverData, ptr %100, i32 0, i32 4
  invoke void @_ZN17HighsLpRelaxationC1ERKS_(ptr noundef nonnull align 8 dereferenceable(21425) %18, ptr noundef nonnull align 8 dereferenceable(21425) %101)
          to label %102 unwind label %171

102:                                              ; preds = %95
  %103 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %104 = load ptr, ptr %103, align 8, !tbaa !9
  %105 = getelementptr inbounds %class.HighsMipSolver, ptr %104, i32 0, i32 25
  %106 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %105) #9
  %107 = getelementptr inbounds %struct.HighsMipSolverData, ptr %106, i32 0, i32 77
  %108 = load double, ptr %107, align 8, !tbaa !21
  invoke void @_ZN17HighsLpRelaxation17setObjectiveLimitEd(ptr noundef nonnull align 8 dereferenceable(21425) %18, double noundef %108)
          to label %109 unwind label %175

109:                                              ; preds = %102
  invoke void @_ZN17HighsLpRelaxation30setAdjustSymmetricBranchingColEb(ptr noundef nonnull align 8 dereferenceable(21425) %18, i1 noundef zeroext false)
          to label %110 unwind label %175

110:                                              ; preds = %109
  invoke void @_ZN11HighsSearch15setLpRelaxationEP17HighsLpRelaxation(ptr noundef nonnull align 8 dereferenceable(1064) %6, ptr noundef %18)
          to label %111 unwind label %175

111:                                              ; preds = %110
  %112 = invoke noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %113 unwind label %175

113:                                              ; preds = %111
  %114 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %115 = load ptr, ptr %114, align 8, !tbaa !9
  %116 = invoke noundef i32 @_ZNK14HighsMipSolver6numColEv(ptr noundef nonnull align 8 dereferenceable(496) %115)
          to label %117 unwind label %175

117:                                              ; preds = %113
  %118 = sub nsw i32 %116, 1
  %119 = load ptr, ptr %9, align 8, !tbaa !5
  %120 = getelementptr inbounds %class.HighsDomain, ptr %119, i32 0, i32 25
  %121 = call noundef ptr @_ZNSt6vectorIdSaIdEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %120) #9
  %122 = load ptr, ptr %9, align 8, !tbaa !5
  %123 = getelementptr inbounds %class.HighsDomain, ptr %122, i32 0, i32 26
  %124 = call noundef ptr @_ZNSt6vectorIdSaIdEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %123) #9
  %125 = invoke noundef i32 @_ZN5Highs16changeColsBoundsEiiPKdS1_(ptr noundef nonnull align 8 dereferenceable(20928) %112, i32 noundef 0, i32 noundef %118, ptr noundef %121, ptr noundef %124)
          to label %126 unwind label %175

126:                                              ; preds = %117
  %127 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN11HighsDomain16clearChangedColsEv(ptr noundef nonnull align 8 dereferenceable(824) %127)
          to label %128 unwind label %175

128:                                              ; preds = %126
  invoke void @_ZN11HighsSearch13createNewNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %129 unwind label %175

129:                                              ; preds = %128
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #9
  %130 = invoke noundef double @_ZN21HighsPrimalHeuristics25determineTargetFixingRateEv(ptr noundef nonnull align 8 dereferenceable(104) %50)
          to label %131 unwind label %179

131:                                              ; preds = %129
  store double %130, ptr %19, align 8, !tbaa !381
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #9
  store double 0.000000e+00, ptr %20, align 8, !tbaa !381
  call void @llvm.lifetime.start.p0(i64 1, ptr %21) #9
  store i8 0, ptr %21, align 1, !tbaa !382
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #9
  store i32 1, ptr %22, align 4, !tbaa !383
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #9
  store i32 -1, ptr %23, align 4, !tbaa !383
  call void @llvm.lifetime.start.p0(i64 80, ptr %24) #9
  %132 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %133 = load ptr, ptr %132, align 8, !tbaa !9
  %134 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN22HeuristicNeighbourhoodC2ER14HighsMipSolverR11HighsDomain(ptr noundef nonnull align 8 dereferenceable(76) %24, ptr noundef nonnull align 8 dereferenceable(496) %133, ptr noundef nonnull align 8 dereferenceable(824) %134)
          to label %135 unwind label %183

135:                                              ; preds = %131
  br label %136

136:                                              ; preds = %749, %135
  %137 = load i32, ptr %23, align 4, !tbaa !383
  %138 = add nsw i32 %137, 1
  store i32 %138, ptr %23, align 4, !tbaa !383
  invoke void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %139 unwind label %187

139:                                              ; preds = %136
  %140 = invoke noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %141 unwind label %187

141:                                              ; preds = %139
  %142 = load i32, ptr %22, align 4, !tbaa !383
  %143 = icmp sgt i32 %140, %142
  br i1 %143, label %144, label %192

144:                                              ; preds = %141
  %145 = load i32, ptr %22, align 4, !tbaa !383
  %146 = invoke noundef zeroext i1 @_ZN11HighsSearch19backtrackUntilDepthEi(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef %145)
          to label %147 unwind label %187

147:                                              ; preds = %144
  br i1 %146, label %191, label %148

148:                                              ; preds = %147
  %149 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %150 unwind label %187

150:                                              ; preds = %148
  %151 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %152 = load i64, ptr %151, align 8, !tbaa !384
  %153 = add i64 %152, %149
  store i64 %153, ptr %151, align 8, !tbaa !384
  store i32 1, ptr %25, align 4
  br label %751

154:                                              ; preds = %58
  %155 = landingpad { ptr, i32 }
          cleanup
  %156 = extractvalue { ptr, i32 } %155, 0
  store ptr %156, ptr %7, align 8
  %157 = extractvalue { ptr, i32 } %155, 1
  store i32 %157, ptr %8, align 4
  br label %761

158:                                              ; preds = %68, %66
  %159 = landingpad { ptr, i32 }
          cleanup
  %160 = extractvalue { ptr, i32 } %159, 0
  store ptr %160, ptr %7, align 8
  %161 = extractvalue { ptr, i32 } %159, 1
  store i32 %161, ptr %8, align 4
  br label %760

162:                                              ; preds = %69
  %163 = landingpad { ptr, i32 }
          cleanup
  %164 = extractvalue { ptr, i32 } %163, 0
  store ptr %164, ptr %7, align 8
  %165 = extractvalue { ptr, i32 } %163, 1
  store i32 %165, ptr %8, align 4
  br label %170

166:                                              ; preds = %85
  %167 = landingpad { ptr, i32 }
          cleanup
  %168 = extractvalue { ptr, i32 } %167, 0
  store ptr %168, ptr %7, align 8
  %169 = extractvalue { ptr, i32 } %167, 1
  store i32 %169, ptr %8, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #9
  br label %170

170:                                              ; preds = %166, %162
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #9
  br label %760

171:                                              ; preds = %95
  %172 = landingpad { ptr, i32 }
          cleanup
  %173 = extractvalue { ptr, i32 } %172, 0
  store ptr %173, ptr %7, align 8
  %174 = extractvalue { ptr, i32 } %172, 1
  store i32 %174, ptr %8, align 4
  br label %759

175:                                              ; preds = %128, %126, %117, %113, %111, %110, %109, %102
  %176 = landingpad { ptr, i32 }
          cleanup
  %177 = extractvalue { ptr, i32 } %176, 0
  store ptr %177, ptr %7, align 8
  %178 = extractvalue { ptr, i32 } %176, 1
  store i32 %178, ptr %8, align 4
  br label %758

179:                                              ; preds = %129
  %180 = landingpad { ptr, i32 }
          cleanup
  %181 = extractvalue { ptr, i32 } %180, 0
  store ptr %181, ptr %7, align 8
  %182 = extractvalue { ptr, i32 } %180, 1
  store i32 %182, ptr %8, align 4
  br label %757

183:                                              ; preds = %131
  %184 = landingpad { ptr, i32 }
          cleanup
  %185 = extractvalue { ptr, i32 } %184, 0
  store ptr %185, ptr %7, align 8
  %186 = extractvalue { ptr, i32 } %184, 1
  store i32 %186, ptr %8, align 4
  br label %756

187:                                              ; preds = %637, %626, %615, %614, %613, %594, %588, %585, %227, %225, %221, %215, %205, %202, %200, %192, %148, %144, %139, %136
  %188 = landingpad { ptr, i32 }
          cleanup
  %189 = extractvalue { ptr, i32 } %188, 0
  store ptr %189, ptr %7, align 8
  %190 = extractvalue { ptr, i32 } %188, 1
  store i32 %190, ptr %8, align 4
  br label %755

191:                                              ; preds = %147
  br label %192

192:                                              ; preds = %191, %141
  %193 = invoke noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %194 unwind label %187

194:                                              ; preds = %192
  br i1 %193, label %195, label %196

195:                                              ; preds = %194
  br label %198

196:                                              ; preds = %194
  call void @__assert_fail(ptr noundef @.str.52, ptr noundef @.str.53, i32 noundef 374, ptr noundef @__PRETTY_FUNCTION__._ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE) #10
  unreachable

197:                                              ; No predecessors!
  br label %198

198:                                              ; preds = %197, %195
  br label %199

199:                                              ; preds = %582, %226, %198
  br label %200

200:                                              ; preds = %199
  %201 = invoke noundef i32 @_ZN11HighsSearch12evaluateNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %202 unwind label %187

202:                                              ; preds = %200
  %203 = invoke noundef zeroext i1 @_ZNK11HighsSearch17currentNodePrunedEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %204 unwind label %187

204:                                              ; preds = %202
  br i1 %203, label %205, label %227

205:                                              ; preds = %204
  %206 = load i32, ptr %23, align 4, !tbaa !383
  %207 = add nsw i32 %206, 1
  store i32 %207, ptr %23, align 4, !tbaa !383
  %208 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %209 = load ptr, ptr %208, align 8, !tbaa !9
  %210 = getelementptr inbounds %class.HighsMipSolver, ptr %209, i32 0, i32 25
  %211 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %210) #9
  %212 = getelementptr inbounds %struct.HighsMipSolverData, ptr %211, i32 0, i32 3
  %213 = invoke noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %212)
          to label %214 unwind label %187

214:                                              ; preds = %205
  br i1 %213, label %215, label %221

215:                                              ; preds = %214
  %216 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %217 unwind label %187

217:                                              ; preds = %215
  %218 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %219 = load i64, ptr %218, align 8, !tbaa !384
  %220 = add i64 %219, %216
  store i64 %220, ptr %218, align 8, !tbaa !384
  store i32 1, ptr %25, align 4
  br label %751

221:                                              ; preds = %214
  %222 = invoke noundef zeroext i1 @_ZN11HighsSearch9backtrackEb(ptr noundef nonnull align 8 dereferenceable(1064) %6, i1 noundef zeroext true)
          to label %223 unwind label %187

223:                                              ; preds = %221
  br i1 %222, label %225, label %224

224:                                              ; preds = %223
  br label %585

225:                                              ; preds = %223
  invoke void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %226 unwind label %187

226:                                              ; preds = %225
  br label %199, !llvm.loop !385

227:                                              ; preds = %204
  %228 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %229 unwind label %187

229:                                              ; preds = %227
  store double %228, ptr %20, align 8, !tbaa !381
  %230 = load double, ptr %20, align 8, !tbaa !381
  %231 = load double, ptr %19, align 8, !tbaa !381
  %232 = fcmp oge double %230, %231
  br i1 %232, label %233, label %234

233:                                              ; preds = %229
  br label %585

234:                                              ; preds = %229
  %235 = load i8, ptr %21, align 1, !tbaa !382, !range !387, !noundef !388
  %236 = trunc i8 %235 to i1
  br i1 %236, label %237, label %238

237:                                              ; preds = %234
  br label %585

238:                                              ; preds = %234
  %239 = load i32, ptr %23, align 4, !tbaa !383
  %240 = icmp sge i32 %239, 10
  br i1 %240, label %241, label %242

241:                                              ; preds = %238
  br label %585

242:                                              ; preds = %238
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #9
  store i32 0, ptr %26, align 4, !tbaa !383
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #9
  call void @llvm.lifetime.start.p0(i64 8, ptr %28) #9
  %243 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %244 unwind label %264

244:                                              ; preds = %242
  %245 = fsub double 1.000000e+00, %243
  %246 = fneg double %245
  %247 = call double @llvm.fmuladd.f64(double %246, double 9.000000e-01, double 1.000000e+00)
  store double %247, ptr %28, align 8, !tbaa !381
  %248 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3minIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %28, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %249 unwind label %264

249:                                              ; preds = %244
  %250 = load double, ptr %248, align 8, !tbaa !381
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #9
  store double %250, ptr %27, align 8, !tbaa !381
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #9
  %251 = invoke noundef nonnull align 8 dereferenceable(104) ptr @_ZNK17HighsLpRelaxation11getSolutionEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %252 unwind label %268

252:                                              ; preds = %249
  %253 = getelementptr inbounds %struct.HighsSolution, ptr %251, i32 0, i32 2
  store ptr %253, ptr %29, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %30) #9
  %254 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 10
  store ptr %254, ptr %30, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #9
  %255 = load ptr, ptr %30, align 8, !tbaa !5
  %256 = call ptr @_ZNSt6vectorIiSaIiEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %255) #9
  %257 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %31, i32 0, i32 0
  store ptr %256, ptr %257, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #9
  %258 = load ptr, ptr %30, align 8, !tbaa !5
  %259 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %258) #9
  %260 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %32, i32 0, i32 0
  store ptr %259, ptr %260, align 8
  br label %261

261:                                              ; preds = %412, %252
  %262 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %31, ptr noundef nonnull align 8 dereferenceable(8) %32) #9
  br i1 %262, label %272, label %263

263:                                              ; preds = %261
  store i32 5, ptr %25, align 4
  br label %414

264:                                              ; preds = %244, %242
  %265 = landingpad { ptr, i32 }
          cleanup
  %266 = extractvalue { ptr, i32 } %265, 0
  store ptr %266, ptr %7, align 8
  %267 = extractvalue { ptr, i32 } %265, 1
  store i32 %267, ptr %8, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #9
  br label %584

268:                                              ; preds = %577, %249
  %269 = landingpad { ptr, i32 }
          cleanup
  %270 = extractvalue { ptr, i32 } %269, 0
  store ptr %270, ptr %7, align 8
  %271 = extractvalue { ptr, i32 } %269, 1
  store i32 %271, ptr %8, align 4
  br label %583

272:                                              ; preds = %261
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #9
  %273 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %31) #9
  %274 = load i32, ptr %273, align 4, !tbaa !383
  store i32 %274, ptr %33, align 4, !tbaa !383
  %275 = load ptr, ptr %9, align 8, !tbaa !5
  %276 = getelementptr inbounds %class.HighsDomain, ptr %275, i32 0, i32 25
  %277 = load i32, ptr %33, align 4, !tbaa !383
  %278 = sext i32 %277 to i64
  %279 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %276, i64 noundef %278) #9
  %280 = load double, ptr %279, align 8, !tbaa !381
  %281 = load ptr, ptr %9, align 8, !tbaa !5
  %282 = getelementptr inbounds %class.HighsDomain, ptr %281, i32 0, i32 26
  %283 = load i32, ptr %33, align 4, !tbaa !383
  %284 = sext i32 %283 to i64
  %285 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %282, i64 noundef %284) #9
  %286 = load double, ptr %285, align 8, !tbaa !381
  %287 = fcmp oeq double %280, %286
  br i1 %287, label %288, label %289

288:                                              ; preds = %272
  store i32 6, ptr %25, align 4
  br label %409

289:                                              ; preds = %272
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #9
  %290 = load ptr, ptr %29, align 8, !tbaa !5
  %291 = load i32, ptr %33, align 4, !tbaa !383
  %292 = sext i32 %291 to i64
  %293 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %290, i64 noundef %292) #9
  %294 = load double, ptr %293, align 8, !tbaa !381
  %295 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %296 = load ptr, ptr %295, align 8, !tbaa !9
  %297 = getelementptr inbounds %class.HighsMipSolver, ptr %296, i32 0, i32 25
  %298 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %297) #9
  %299 = getelementptr inbounds %struct.HighsMipSolverData, ptr %298, i32 0, i32 40
  %300 = load double, ptr %299, align 8, !tbaa !389
  %301 = fadd double %294, %300
  %302 = call double @llvm.floor.f64(double %301)
  store double %302, ptr %34, align 8, !tbaa !381
  call void @llvm.lifetime.start.p0(i64 8, ptr %35) #9
  %303 = load ptr, ptr %29, align 8, !tbaa !5
  %304 = load i32, ptr %33, align 4, !tbaa !383
  %305 = sext i32 %304 to i64
  %306 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %303, i64 noundef %305) #9
  %307 = load double, ptr %306, align 8, !tbaa !381
  %308 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %309 = load ptr, ptr %308, align 8, !tbaa !9
  %310 = getelementptr inbounds %class.HighsMipSolver, ptr %309, i32 0, i32 25
  %311 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %310) #9
  %312 = getelementptr inbounds %struct.HighsMipSolverData, ptr %311, i32 0, i32 40
  %313 = load double, ptr %312, align 8, !tbaa !389
  %314 = fsub double %307, %313
  %315 = call double @llvm.ceil.f64(double %314)
  store double %315, ptr %35, align 8, !tbaa !381
  %316 = load ptr, ptr %9, align 8, !tbaa !5
  %317 = getelementptr inbounds %class.HighsDomain, ptr %316, i32 0, i32 26
  %318 = load i32, ptr %33, align 4, !tbaa !383
  %319 = sext i32 %318 to i64
  %320 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %317, i64 noundef %319) #9
  %321 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3minIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %34, ptr noundef nonnull align 8 dereferenceable(8) %320)
          to label %322 unwind label %362

322:                                              ; preds = %289
  %323 = load double, ptr %321, align 8, !tbaa !381
  store double %323, ptr %34, align 8, !tbaa !381
  %324 = load ptr, ptr %9, align 8, !tbaa !5
  %325 = getelementptr inbounds %class.HighsDomain, ptr %324, i32 0, i32 25
  %326 = load i32, ptr %33, align 4, !tbaa !383
  %327 = sext i32 %326 to i64
  %328 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %325, i64 noundef %327) #9
  %329 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3maxIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %35, ptr noundef nonnull align 8 dereferenceable(8) %328)
          to label %330 unwind label %362

330:                                              ; preds = %322
  %331 = load double, ptr %329, align 8, !tbaa !381
  store double %331, ptr %35, align 8, !tbaa !381
  %332 = load ptr, ptr %9, align 8, !tbaa !5
  %333 = getelementptr inbounds %class.HighsDomain, ptr %332, i32 0, i32 25
  %334 = load i32, ptr %33, align 4, !tbaa !383
  %335 = sext i32 %334 to i64
  %336 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %333, i64 noundef %335) #9
  %337 = load double, ptr %336, align 8, !tbaa !381
  %338 = load double, ptr %34, align 8, !tbaa !381
  %339 = fcmp olt double %337, %338
  br i1 %339, label %340, label %367

340:                                              ; preds = %330
  %341 = load i32, ptr %26, align 4, !tbaa !383
  %342 = add nsw i32 %341, 1
  store i32 %342, ptr %26, align 4, !tbaa !383
  %343 = load i32, ptr %33, align 4, !tbaa !383
  %344 = load double, ptr %34, align 8, !tbaa !381
  %345 = load double, ptr %34, align 8, !tbaa !381
  %346 = fsub double %345, 5.000000e-01
  invoke void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef %343, double noundef %344, double noundef %346)
          to label %347 unwind label %362

347:                                              ; preds = %340
  %348 = load ptr, ptr %9, align 8, !tbaa !5
  %349 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %348)
          to label %350 unwind label %362

350:                                              ; preds = %347
  %351 = load ptr, ptr %9, align 8, !tbaa !5
  %352 = invoke noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %351)
          to label %353 unwind label %362

353:                                              ; preds = %350
  br i1 %352, label %354, label %366

354:                                              ; preds = %353
  %355 = load ptr, ptr %9, align 8, !tbaa !5
  %356 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %357 = load ptr, ptr %356, align 8, !tbaa !9
  %358 = getelementptr inbounds %class.HighsMipSolver, ptr %357, i32 0, i32 25
  %359 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %358) #9
  %360 = getelementptr inbounds %struct.HighsMipSolverData, ptr %359, i32 0, i32 2
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %355, ptr noundef nonnull align 8 dereferenceable(224) %360)
          to label %361 unwind label %362

361:                                              ; preds = %354
  store i32 5, ptr %25, align 4
  br label %406

362:                                              ; preds = %399, %390, %386, %383, %376, %354, %350, %347, %340, %322, %289
  %363 = landingpad { ptr, i32 }
          cleanup
  %364 = extractvalue { ptr, i32 } %363, 0
  store ptr %364, ptr %7, align 8
  %365 = extractvalue { ptr, i32 } %363, 1
  store i32 %365, ptr %8, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #9
  br label %583

366:                                              ; preds = %353
  br label %367

367:                                              ; preds = %366, %330
  %368 = load ptr, ptr %9, align 8, !tbaa !5
  %369 = getelementptr inbounds %class.HighsDomain, ptr %368, i32 0, i32 26
  %370 = load i32, ptr %33, align 4, !tbaa !383
  %371 = sext i32 %370 to i64
  %372 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %369, i64 noundef %371) #9
  %373 = load double, ptr %372, align 8, !tbaa !381
  %374 = load double, ptr %35, align 8, !tbaa !381
  %375 = fcmp ogt double %373, %374
  br i1 %375, label %376, label %399

376:                                              ; preds = %367
  %377 = load i32, ptr %26, align 4, !tbaa !383
  %378 = add nsw i32 %377, 1
  store i32 %378, ptr %26, align 4, !tbaa !383
  %379 = load i32, ptr %33, align 4, !tbaa !383
  %380 = load double, ptr %35, align 8, !tbaa !381
  %381 = load double, ptr %35, align 8, !tbaa !381
  %382 = fadd double %381, 5.000000e-01
  invoke void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef %379, double noundef %380, double noundef %382)
          to label %383 unwind label %362

383:                                              ; preds = %376
  %384 = load ptr, ptr %9, align 8, !tbaa !5
  %385 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %384)
          to label %386 unwind label %362

386:                                              ; preds = %383
  %387 = load ptr, ptr %9, align 8, !tbaa !5
  %388 = invoke noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %387)
          to label %389 unwind label %362

389:                                              ; preds = %386
  br i1 %388, label %390, label %398

390:                                              ; preds = %389
  %391 = load ptr, ptr %9, align 8, !tbaa !5
  %392 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %393 = load ptr, ptr %392, align 8, !tbaa !9
  %394 = getelementptr inbounds %class.HighsMipSolver, ptr %393, i32 0, i32 25
  %395 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %394) #9
  %396 = getelementptr inbounds %struct.HighsMipSolverData, ptr %395, i32 0, i32 2
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %391, ptr noundef nonnull align 8 dereferenceable(224) %396)
          to label %397 unwind label %362

397:                                              ; preds = %390
  store i32 5, ptr %25, align 4
  br label %406

398:                                              ; preds = %389
  br label %399

399:                                              ; preds = %398, %367
  %400 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %401 unwind label %362

401:                                              ; preds = %399
  %402 = load double, ptr %27, align 8, !tbaa !381
  %403 = fcmp oge double %400, %402
  br i1 %403, label %404, label %405

404:                                              ; preds = %401
  store i32 5, ptr %25, align 4
  br label %406

405:                                              ; preds = %401
  store i32 0, ptr %25, align 4
  br label %406

406:                                              ; preds = %405, %404, %397, %361
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #9
  %407 = load i32, ptr %25, align 4
  switch i32 %407, label %409 [
    i32 0, label %408
  ]

408:                                              ; preds = %406
  store i32 0, ptr %25, align 4
  br label %409

409:                                              ; preds = %408, %406, %288
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #9
  %410 = load i32, ptr %25, align 4
  switch i32 %410, label %414 [
    i32 0, label %411
    i32 6, label %412
  ]

411:                                              ; preds = %409
  br label %412

412:                                              ; preds = %411, %409
  %413 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %31) #9
  br label %261

414:                                              ; preds = %409, %263
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #9
  br label %415

415:                                              ; preds = %414
  %416 = load i32, ptr %26, align 4, !tbaa !383
  %417 = icmp eq i32 %416, 0
  br i1 %417, label %418, label %573

418:                                              ; preds = %415
  call void @llvm.lifetime.start.p0(i64 16, ptr %36) #9
  %419 = getelementptr inbounds %class.anon.361, ptr %36, i32 0, i32 0
  store ptr %50, ptr %419, align 8, !tbaa !390
  %420 = getelementptr inbounds %class.anon.361, ptr %36, i32 0, i32 1
  %421 = load ptr, ptr %9, align 8, !tbaa !5
  store ptr %421, ptr %420, align 8, !tbaa !5
  %422 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %423 unwind label %452

423:                                              ; preds = %418
  %424 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %422) #9
  %425 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %37, i32 0, i32 0
  store ptr %424, ptr %425, align 8
  %426 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %427 unwind label %452

427:                                              ; preds = %423
  %428 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %426) #9
  %429 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %38, i32 0, i32 0
  store ptr %428, ptr %429, align 8
  %430 = getelementptr inbounds %class.anon.363, ptr %39, i32 0, i32 0
  store ptr %36, ptr %430, align 8, !tbaa !5
  %431 = getelementptr inbounds %class.anon.363, ptr %39, i32 0, i32 1
  store ptr %18, ptr %431, align 8, !tbaa !5
  %432 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %37, i32 0, i32 0
  %433 = load ptr, ptr %432, align 8
  %434 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %38, i32 0, i32 0
  %435 = load ptr, ptr %434, align 8
  %436 = getelementptr inbounds { ptr, ptr }, ptr %39, i32 0, i32 0
  %437 = load ptr, ptr %436, align 8
  %438 = getelementptr inbounds { ptr, ptr }, ptr %39, i32 0, i32 1
  %439 = load ptr, ptr %438, align 8
  invoke void @"_Z7pdqsortIN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS3_SaIS3_EEEEZN21HighsPrimalHeuristics4RENSERKS5_IdSaIdEEE3$_2EvT_SF_T0_"(ptr %433, ptr %435, ptr %437, ptr %439)
          to label %440 unwind label %452

440:                                              ; preds = %427
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #9
  store double 0.000000e+00, ptr %40, align 8, !tbaa !381
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #9
  %441 = invoke noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %442 unwind label %456

442:                                              ; preds = %440
  store ptr %441, ptr %41, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #9
  %443 = load ptr, ptr %41, align 8, !tbaa !5
  %444 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %443) #9
  %445 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %42, i32 0, i32 0
  store ptr %444, ptr %445, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #9
  %446 = load ptr, ptr %41, align 8, !tbaa !5
  %447 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %446) #9
  %448 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.362", ptr %43, i32 0, i32 0
  store ptr %447, ptr %448, align 8
  br label %449

449:                                              ; preds = %567, %442
  %450 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPSt4pairIidESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_(ptr noundef nonnull align 8 dereferenceable(8) %42, ptr noundef nonnull align 8 dereferenceable(8) %43) #9
  br i1 %450, label %460, label %451

451:                                              ; preds = %449
  store i32 7, ptr %25, align 4
  br label %569

452:                                              ; preds = %427, %423, %418
  %453 = landingpad { ptr, i32 }
          cleanup
  %454 = extractvalue { ptr, i32 } %453, 0
  store ptr %454, ptr %7, align 8
  %455 = extractvalue { ptr, i32 } %453, 1
  store i32 %455, ptr %8, align 4
  br label %572

456:                                              ; preds = %440
  %457 = landingpad { ptr, i32 }
          cleanup
  %458 = extractvalue { ptr, i32 } %457, 0
  store ptr %458, ptr %7, align 8
  %459 = extractvalue { ptr, i32 } %457, 1
  store i32 %459, ptr %8, align 4
  br label %570

460:                                              ; preds = %449
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #9
  %461 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS2_SaIS2_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %42) #9
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %44, ptr align 8 %461, i64 16, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #9
  %462 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 0
  %463 = load i32, ptr %462, align 8, !tbaa !392
  %464 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 1
  %465 = load double, ptr %464, align 8, !tbaa !394
  %466 = invoke noundef double @"_ZZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEENK3$_1clEid"(ptr noundef nonnull align 8 dereferenceable(16) %36, i32 noundef %463, double noundef %465)
          to label %467 unwind label %500

467:                                              ; preds = %460
  store double %466, ptr %45, align 8, !tbaa !381
  %468 = load ptr, ptr %9, align 8, !tbaa !5
  %469 = getelementptr inbounds %class.HighsDomain, ptr %468, i32 0, i32 25
  %470 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 0
  %471 = load i32, ptr %470, align 8, !tbaa !392
  %472 = sext i32 %471 to i64
  %473 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %469, i64 noundef %472) #9
  %474 = load double, ptr %473, align 8, !tbaa !381
  %475 = load double, ptr %45, align 8, !tbaa !381
  %476 = fcmp olt double %474, %475
  br i1 %476, label %477, label %507

477:                                              ; preds = %467
  %478 = load i32, ptr %26, align 4, !tbaa !383
  %479 = add nsw i32 %478, 1
  store i32 %479, ptr %26, align 4, !tbaa !383
  %480 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 0
  %481 = load i32, ptr %480, align 8, !tbaa !392
  %482 = load double, ptr %45, align 8, !tbaa !381
  %483 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 1
  %484 = load double, ptr %483, align 8, !tbaa !394
  invoke void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef %481, double noundef %482, double noundef %484)
          to label %485 unwind label %500

485:                                              ; preds = %477
  %486 = load ptr, ptr %9, align 8, !tbaa !5
  %487 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %486)
          to label %488 unwind label %500

488:                                              ; preds = %485
  %489 = load ptr, ptr %9, align 8, !tbaa !5
  %490 = invoke noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %489)
          to label %491 unwind label %500

491:                                              ; preds = %488
  br i1 %490, label %492, label %504

492:                                              ; preds = %491
  %493 = load ptr, ptr %9, align 8, !tbaa !5
  %494 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %495 = load ptr, ptr %494, align 8, !tbaa !9
  %496 = getelementptr inbounds %class.HighsMipSolver, ptr %495, i32 0, i32 25
  %497 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %496) #9
  %498 = getelementptr inbounds %struct.HighsMipSolverData, ptr %497, i32 0, i32 2
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %493, ptr noundef nonnull align 8 dereferenceable(224) %498)
          to label %499 unwind label %500

499:                                              ; preds = %492
  store i32 7, ptr %25, align 4
  br label %561

500:                                              ; preds = %548, %540, %532, %528, %525, %517, %504, %492, %488, %485, %477, %460
  %501 = landingpad { ptr, i32 }
          cleanup
  %502 = extractvalue { ptr, i32 } %501, 0
  store ptr %502, ptr %7, align 8
  %503 = extractvalue { ptr, i32 } %501, 1
  store i32 %503, ptr %8, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #9
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #9
  br label %570

504:                                              ; preds = %491
  %505 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %506 unwind label %500

506:                                              ; preds = %504
  store double %505, ptr %20, align 8, !tbaa !381
  br label %507

507:                                              ; preds = %506, %467
  %508 = load ptr, ptr %9, align 8, !tbaa !5
  %509 = getelementptr inbounds %class.HighsDomain, ptr %508, i32 0, i32 26
  %510 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 0
  %511 = load i32, ptr %510, align 8, !tbaa !392
  %512 = sext i32 %511 to i64
  %513 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %509, i64 noundef %512) #9
  %514 = load double, ptr %513, align 8, !tbaa !381
  %515 = load double, ptr %45, align 8, !tbaa !381
  %516 = fcmp ogt double %514, %515
  br i1 %516, label %517, label %543

517:                                              ; preds = %507
  %518 = load i32, ptr %26, align 4, !tbaa !383
  %519 = add nsw i32 %518, 1
  store i32 %519, ptr %26, align 4, !tbaa !383
  %520 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 0
  %521 = load i32, ptr %520, align 8, !tbaa !392
  %522 = load double, ptr %45, align 8, !tbaa !381
  %523 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 1
  %524 = load double, ptr %523, align 8, !tbaa !394
  invoke void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef %521, double noundef %522, double noundef %524)
          to label %525 unwind label %500

525:                                              ; preds = %517
  %526 = load ptr, ptr %9, align 8, !tbaa !5
  %527 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %526)
          to label %528 unwind label %500

528:                                              ; preds = %525
  %529 = load ptr, ptr %9, align 8, !tbaa !5
  %530 = invoke noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %529)
          to label %531 unwind label %500

531:                                              ; preds = %528
  br i1 %530, label %532, label %540

532:                                              ; preds = %531
  %533 = load ptr, ptr %9, align 8, !tbaa !5
  %534 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %535 = load ptr, ptr %534, align 8, !tbaa !9
  %536 = getelementptr inbounds %class.HighsMipSolver, ptr %535, i32 0, i32 25
  %537 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %536) #9
  %538 = getelementptr inbounds %struct.HighsMipSolverData, ptr %537, i32 0, i32 2
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %533, ptr noundef nonnull align 8 dereferenceable(224) %538)
          to label %539 unwind label %500

539:                                              ; preds = %532
  store i32 7, ptr %25, align 4
  br label %561

540:                                              ; preds = %531
  %541 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %542 unwind label %500

542:                                              ; preds = %540
  store double %541, ptr %20, align 8, !tbaa !381
  br label %543

543:                                              ; preds = %542, %507
  %544 = load double, ptr %20, align 8, !tbaa !381
  %545 = load double, ptr %19, align 8, !tbaa !381
  %546 = fcmp oge double %544, %545
  br i1 %546, label %547, label %548

547:                                              ; preds = %543
  store i32 7, ptr %25, align 4
  br label %561

548:                                              ; preds = %543
  %549 = load double, ptr %45, align 8, !tbaa !381
  %550 = getelementptr inbounds %"struct.std::pair.364", ptr %44, i32 0, i32 1
  %551 = load double, ptr %550, align 8, !tbaa !394
  %552 = fsub double %549, %551
  %553 = invoke noundef double @_ZSt3absd(double noundef %552)
          to label %554 unwind label %500

554:                                              ; preds = %548
  %555 = load double, ptr %40, align 8, !tbaa !381
  %556 = fadd double %555, %553
  store double %556, ptr %40, align 8, !tbaa !381
  %557 = load double, ptr %40, align 8, !tbaa !381
  %558 = fcmp oge double %557, 5.000000e-01
  br i1 %558, label %559, label %560

559:                                              ; preds = %554
  store i32 7, ptr %25, align 4
  br label %561

560:                                              ; preds = %554
  store i32 0, ptr %25, align 4
  br label %561

561:                                              ; preds = %560, %559, %547, %539, %499
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #9
  %562 = load i32, ptr %25, align 4
  switch i32 %562, label %564 [
    i32 0, label %563
  ]

563:                                              ; preds = %561
  store i32 0, ptr %25, align 4
  br label %564

564:                                              ; preds = %563, %561
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #9
  %565 = load i32, ptr %25, align 4
  switch i32 %565, label %569 [
    i32 0, label %566
  ]

566:                                              ; preds = %564
  br label %567

567:                                              ; preds = %566
  %568 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS2_SaIS2_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %42) #9
  br label %449

569:                                              ; preds = %564, %451
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #9
  br label %571

570:                                              ; preds = %500, %456
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #9
  br label %572

571:                                              ; preds = %569
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #9
  call void @llvm.lifetime.end.p0(i64 16, ptr %36) #9
  br label %573

572:                                              ; preds = %570, %452
  call void @llvm.lifetime.end.p0(i64 16, ptr %36) #9
  br label %583

573:                                              ; preds = %571, %415
  %574 = load i32, ptr %26, align 4, !tbaa !383
  %575 = icmp eq i32 %574, 0
  br i1 %575, label %576, label %577

576:                                              ; preds = %573
  store i32 4, ptr %25, align 4
  br label %580

577:                                              ; preds = %573
  %578 = load ptr, ptr %9, align 8, !tbaa !5
  invoke void @_ZN17HighsLpRelaxation11flushDomainER11HighsDomainb(ptr noundef nonnull align 8 dereferenceable(21425) %18, ptr noundef nonnull align 8 dereferenceable(824) %578, i1 noundef zeroext false)
          to label %579 unwind label %268

579:                                              ; preds = %577
  store i32 0, ptr %25, align 4
  br label %580

580:                                              ; preds = %579, %576
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #9
  %581 = load i32, ptr %25, align 4
  switch i32 %581, label %767 [
    i32 0, label %582
    i32 4, label %585
  ]

582:                                              ; preds = %580
  br label %199, !llvm.loop !385

583:                                              ; preds = %572, %362, %268
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #9
  br label %584

584:                                              ; preds = %583, %264
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #9
  br label %755

585:                                              ; preds = %580, %241, %237, %233, %224
  %586 = invoke noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %587 unwind label %187

587:                                              ; preds = %585
  br i1 %586, label %594, label %588

588:                                              ; preds = %587
  %589 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %590 unwind label %187

590:                                              ; preds = %588
  %591 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %592 = load i64, ptr %591, align 8, !tbaa !384
  %593 = add i64 %592, %589
  store i64 %593, ptr %591, align 8, !tbaa !384
  store i32 1, ptr %25, align 4
  br label %751

594:                                              ; preds = %587
  %595 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %24)
          to label %596 unwind label %187

596:                                              ; preds = %594
  store double %595, ptr %20, align 8, !tbaa !381
  %597 = load double, ptr %20, align 8, !tbaa !381
  %598 = fcmp olt double %597, 1.000000e-01
  br i1 %598, label %613, label %599

599:                                              ; preds = %596
  %600 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %601 = load ptr, ptr %600, align 8, !tbaa !9
  %602 = getelementptr inbounds %class.HighsMipSolver, ptr %601, i32 0, i32 18
  %603 = load i8, ptr %602, align 8, !tbaa !395, !range !387, !noundef !388
  %604 = trunc i8 %603 to i1
  br i1 %604, label %605, label %637

605:                                              ; preds = %599
  %606 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %607 = load ptr, ptr %606, align 8, !tbaa !9
  %608 = getelementptr inbounds %class.HighsMipSolver, ptr %607, i32 0, i32 25
  %609 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %608) #9
  %610 = getelementptr inbounds %struct.HighsMipSolverData, ptr %609, i32 0, i32 73
  %611 = load i32, ptr %610, align 8, !tbaa !405
  %612 = icmp ne i32 %611, 0
  br i1 %612, label %613, label %637

613:                                              ; preds = %605, %596
  invoke void @_ZN11HighsSearch14setMinReliableEi(ptr noundef nonnull align 8 dereferenceable(1064) %6, i32 noundef 0)
          to label %614 unwind label %187

614:                                              ; preds = %613
  invoke void @_ZN11HighsSearch15solveDepthFirstEl(ptr noundef nonnull align 8 dereferenceable(1064) %6, i64 noundef 10)
          to label %615 unwind label %187

615:                                              ; preds = %614
  %616 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %617 unwind label %187

617:                                              ; preds = %615
  %618 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %619 = load i64, ptr %618, align 8, !tbaa !384
  %620 = add i64 %619, %616
  store i64 %620, ptr %618, align 8, !tbaa !384
  %621 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %622 = load ptr, ptr %621, align 8, !tbaa !9
  %623 = getelementptr inbounds %class.HighsMipSolver, ptr %622, i32 0, i32 18
  %624 = load i8, ptr %623, align 8, !tbaa !395, !range !387, !noundef !388
  %625 = trunc i8 %624 to i1
  br i1 %625, label %626, label %636

626:                                              ; preds = %617
  %627 = invoke noundef i64 @_ZNK11HighsSearch13getLocalNodesEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %628 unwind label %187

628:                                              ; preds = %626
  %629 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %630 = load ptr, ptr %629, align 8, !tbaa !9
  %631 = getelementptr inbounds %class.HighsMipSolver, ptr %630, i32 0, i32 25
  %632 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %631) #9
  %633 = getelementptr inbounds %struct.HighsMipSolverData, ptr %632, i32 0, i32 57
  %634 = load i64, ptr %633, align 8, !tbaa !406
  %635 = add nsw i64 %634, %627
  store i64 %635, ptr %633, align 8, !tbaa !406
  br label %636

636:                                              ; preds = %628, %617
  store i32 1, ptr %25, align 4
  br label %751

637:                                              ; preds = %605, %599
  invoke void @_ZN17HighsLpRelaxation18removeObsoleteRowsEb(ptr noundef nonnull align 8 dereferenceable(21425) %18, i1 noundef zeroext false)
          to label %638 unwind label %187

638:                                              ; preds = %637
  call void @llvm.lifetime.start.p0(i64 1, ptr %46) #9
  %639 = invoke noundef nonnull align 8 dereferenceable(920) ptr @_ZNK17HighsLpRelaxation5getLpEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %640 unwind label %706

640:                                              ; preds = %638
  %641 = invoke noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425) %18)
          to label %642 unwind label %706

642:                                              ; preds = %640
  %643 = invoke noundef nonnull align 8 dereferenceable(96) ptr @_ZNK5Highs8getBasisEv(ptr noundef nonnull align 8 dereferenceable(20928) %641)
          to label %644 unwind label %706

644:                                              ; preds = %642
  %645 = load double, ptr %20, align 8, !tbaa !381
  %646 = load ptr, ptr %9, align 8, !tbaa !5
  %647 = getelementptr inbounds %class.HighsDomain, ptr %646, i32 0, i32 25
  invoke void @_ZNSt6vectorIdSaIdEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %47, ptr noundef nonnull align 8 dereferenceable(24) %647)
          to label %648 unwind label %706

648:                                              ; preds = %644
  %649 = load ptr, ptr %9, align 8, !tbaa !5
  %650 = getelementptr inbounds %class.HighsDomain, ptr %649, i32 0, i32 26
  invoke void @_ZNSt6vectorIdSaIdEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %48, ptr noundef nonnull align 8 dereferenceable(24) %650)
          to label %651 unwind label %710

651:                                              ; preds = %648
  %652 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %653 = load ptr, ptr %652, align 8, !tbaa !9
  %654 = getelementptr inbounds %class.HighsMipSolver, ptr %653, i32 0, i32 25
  %655 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %654) #9
  %656 = getelementptr inbounds %struct.HighsMipSolverData, ptr %655, i32 0, i32 57
  %657 = load i64, ptr %656, align 8, !tbaa !406
  %658 = sdiv i64 %657, 20
  %659 = add nsw i64 200, %658
  %660 = trunc i64 %659 to i32
  %661 = invoke noundef zeroext i1 @_ZN21HighsPrimalHeuristics11solveSubMipERK7HighsLpRK10HighsBasisdSt6vectorIdSaIdEES8_iii(ptr noundef nonnull align 8 dereferenceable(104) %50, ptr noundef nonnull align 8 dereferenceable(920) %639, ptr noundef nonnull align 8 dereferenceable(96) %643, double noundef %645, ptr noundef %47, ptr noundef %48, i32 noundef 500, i32 noundef %660, i32 noundef 12)
          to label %662 unwind label %714

662:                                              ; preds = %651
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #9
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #9
  %663 = zext i1 %661 to i8
  store i8 %663, ptr %46, align 1, !tbaa !382
  %664 = load i8, ptr %46, align 1, !tbaa !382, !range !387, !noundef !388
  %665 = trunc i8 %664 to i1
  br i1 %665, label %743, label %666

666:                                              ; preds = %662
  call void @llvm.lifetime.start.p0(i64 8, ptr %49) #9
  %667 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %668 = load i64, ptr %667, align 8, !tbaa !384
  %669 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %670 unwind label %719

670:                                              ; preds = %666
  %671 = add i64 %668, %669
  store i64 %671, ptr %49, align 8, !tbaa !407
  %672 = load i64, ptr %49, align 8, !tbaa !407
  %673 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %674 = load ptr, ptr %673, align 8, !tbaa !9
  %675 = getelementptr inbounds %class.HighsMipSolver, ptr %674, i32 0, i32 25
  %676 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %675) #9
  %677 = getelementptr inbounds %struct.HighsMipSolverData, ptr %676, i32 0, i32 65
  %678 = load i64, ptr %677, align 8, !tbaa !408
  %679 = add nsw i64 %672, %678
  %680 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %681 = load ptr, ptr %680, align 8, !tbaa !9
  %682 = getelementptr inbounds %class.HighsMipSolver, ptr %681, i32 0, i32 25
  %683 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %682) #9
  %684 = getelementptr inbounds %struct.HighsMipSolverData, ptr %683, i32 0, i32 64
  %685 = load i64, ptr %684, align 8, !tbaa !409
  %686 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %687 = load ptr, ptr %686, align 8, !tbaa !9
  %688 = getelementptr inbounds %class.HighsMipSolver, ptr %687, i32 0, i32 25
  %689 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %688) #9
  %690 = getelementptr inbounds %struct.HighsMipSolverData, ptr %689, i32 0, i32 65
  %691 = load i64, ptr %690, align 8, !tbaa !408
  %692 = sub nsw i64 %685, %691
  %693 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %694 = load ptr, ptr %693, align 8, !tbaa !9
  %695 = getelementptr inbounds %class.HighsMipSolver, ptr %694, i32 0, i32 25
  %696 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %695) #9
  %697 = getelementptr inbounds %struct.HighsMipSolverData, ptr %696, i32 0, i32 67
  %698 = load i64, ptr %697, align 8, !tbaa !410
  %699 = sub nsw i64 %692, %698
  %700 = ashr i64 %699, 1
  %701 = add nsw i64 100000, %700
  %702 = icmp sgt i64 %679, %701
  br i1 %702, label %703, label %723

703:                                              ; preds = %670
  %704 = load i64, ptr %49, align 8, !tbaa !407
  %705 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  store i64 %704, ptr %705, align 8, !tbaa !384
  store i32 1, ptr %25, align 4
  br label %742

706:                                              ; preds = %743, %644, %642, %640, %638
  %707 = landingpad { ptr, i32 }
          cleanup
  %708 = extractvalue { ptr, i32 } %707, 0
  store ptr %708, ptr %7, align 8
  %709 = extractvalue { ptr, i32 } %707, 1
  store i32 %709, ptr %8, align 4
  br label %754

710:                                              ; preds = %648
  %711 = landingpad { ptr, i32 }
          cleanup
  %712 = extractvalue { ptr, i32 } %711, 0
  store ptr %712, ptr %7, align 8
  %713 = extractvalue { ptr, i32 } %711, 1
  store i32 %713, ptr %8, align 4
  br label %718

714:                                              ; preds = %651
  %715 = landingpad { ptr, i32 }
          cleanup
  %716 = extractvalue { ptr, i32 } %715, 0
  store ptr %716, ptr %7, align 8
  %717 = extractvalue { ptr, i32 } %715, 1
  store i32 %717, ptr %8, align 4
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %48) #9
  br label %718

718:                                              ; preds = %714, %710
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %47) #9
  br label %754

719:                                              ; preds = %729, %723, %666
  %720 = landingpad { ptr, i32 }
          cleanup
  %721 = extractvalue { ptr, i32 } %720, 0
  store ptr %721, ptr %7, align 8
  %722 = extractvalue { ptr, i32 } %720, 1
  store i32 %722, ptr %8, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #9
  br label %754

723:                                              ; preds = %670
  %724 = invoke noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %725 unwind label %719

725:                                              ; preds = %723
  %726 = sdiv i32 %724, 2
  store i32 %726, ptr %22, align 4, !tbaa !383
  %727 = load i32, ptr %22, align 4, !tbaa !383
  %728 = icmp sle i32 %727, 1
  br i1 %728, label %736, label %729

729:                                              ; preds = %725
  %730 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 0
  %731 = load ptr, ptr %730, align 8, !tbaa !9
  %732 = getelementptr inbounds %class.HighsMipSolver, ptr %731, i32 0, i32 25
  %733 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %732) #9
  %734 = invoke noundef zeroext i1 @_ZNK18HighsMipSolverData11checkLimitsEl(ptr noundef nonnull align 8 dereferenceable(26801) %733, i64 noundef 0)
          to label %735 unwind label %719

735:                                              ; preds = %729
  br i1 %734, label %736, label %739

736:                                              ; preds = %735, %725
  %737 = load i64, ptr %49, align 8, !tbaa !407
  %738 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  store i64 %737, ptr %738, align 8, !tbaa !384
  store i32 1, ptr %25, align 4
  br label %742

739:                                              ; preds = %735
  %740 = load double, ptr %20, align 8, !tbaa !381
  %741 = fmul double %740, 5.000000e-01
  store double %741, ptr %19, align 8, !tbaa !381
  store i32 2, ptr %25, align 4
  br label %742

742:                                              ; preds = %739, %736, %703
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #9
  br label %749

743:                                              ; preds = %662
  %744 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %6)
          to label %745 unwind label %706

745:                                              ; preds = %743
  %746 = getelementptr inbounds %class.HighsPrimalHeuristics, ptr %50, i32 0, i32 4
  %747 = load i64, ptr %746, align 8, !tbaa !384
  %748 = add i64 %747, %744
  store i64 %748, ptr %746, align 8, !tbaa !384
  store i32 0, ptr %25, align 4
  br label %749

749:                                              ; preds = %745, %742
  call void @llvm.lifetime.end.p0(i64 1, ptr %46) #9
  %750 = load i32, ptr %25, align 4
  switch i32 %750, label %751 [
    i32 2, label %136
  ]

751:                                              ; preds = %749, %636, %590, %217, %150
  call void @_ZN22HeuristicNeighbourhoodD2Ev(ptr noundef nonnull align 8 dereferenceable(76) %24) #9
  call void @llvm.lifetime.end.p0(i64 80, ptr %24) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #9
  call void @_ZN17HighsLpRelaxationD2Ev(ptr noundef nonnull align 8 dereferenceable(21425) %18) #9
  call void @llvm.lifetime.end.p0(i64 21432, ptr %18) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #9
  call void @_ZN11HighsSearchD2Ev(ptr noundef nonnull align 8 dereferenceable(1064) %6) #9
  call void @llvm.lifetime.end.p0(i64 1064, ptr %6) #9
  call void @_ZN15HighsPseudocostD2Ev(ptr noundef nonnull align 8 dereferenceable(360) %5) #9
  call void @llvm.lifetime.end.p0(i64 360, ptr %5) #9
  %752 = load i32, ptr %25, align 4
  switch i32 %752, label %767 [
    i32 0, label %753
    i32 1, label %753
  ]

753:                                              ; preds = %751, %751, %57
  ret void

754:                                              ; preds = %719, %718, %706
  call void @llvm.lifetime.end.p0(i64 1, ptr %46) #9
  br label %755

755:                                              ; preds = %754, %584, %187
  call void @_ZN22HeuristicNeighbourhoodD2Ev(ptr noundef nonnull align 8 dereferenceable(76) %24) #9
  br label %756

756:                                              ; preds = %755, %183
  call void @llvm.lifetime.end.p0(i64 80, ptr %24) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #9
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #9
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #9
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #9
  br label %757

757:                                              ; preds = %756, %179
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #9
  br label %758

758:                                              ; preds = %757, %175
  call void @_ZN17HighsLpRelaxationD2Ev(ptr noundef nonnull align 8 dereferenceable(21425) %18) #9
  br label %759

759:                                              ; preds = %758, %171
  call void @llvm.lifetime.end.p0(i64 21432, ptr %18) #9
  br label %760

760:                                              ; preds = %759, %170, %158
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #9
  call void @_ZN11HighsSearchD2Ev(ptr noundef nonnull align 8 dereferenceable(1064) %6) #9
  br label %761

761:                                              ; preds = %760, %154
  call void @llvm.lifetime.end.p0(i64 1064, ptr %6) #9
  call void @_ZN15HighsPseudocostD2Ev(ptr noundef nonnull align 8 dereferenceable(360) %5) #9
  call void @llvm.lifetime.end.p0(i64 360, ptr %5) #9
  br label %762

762:                                              ; preds = %761
  %763 = load ptr, ptr %7, align 8
  %764 = load i32, ptr %8, align 4
  %765 = insertvalue { ptr, i32 } poison, ptr %763, 0
  %766 = insertvalue { ptr, i32 } %765, i32 %764, 1
  resume { ptr, i32 } %766

767:                                              ; preds = %751, %580
  unreachable
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN15HighsPseudocostC2ERKS_(ptr noundef nonnull align 8 dereferenceable(360), ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #6 align 2

declare void @_ZN11HighsSearchC1ER14HighsMipSolverR15HighsPseudocost(ptr noundef nonnull align 8 dereferenceable(1064), ptr noundef nonnull align 8 dereferenceable(496), ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(824) ptr @_ZN11HighsSearch14getLocalDomainEv(ptr noundef nonnull align 8 dereferenceable(1064)) #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN11HighsSearch12setHeuristicEb(ptr noundef nonnull align 8 dereferenceable(1064), i1 noundef zeroext) #1 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare hidden ptr @"_ZSt9remove_ifIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEZN21HighsPrimalHeuristics4RENSERKS3_IdSaIdEEE3$_0ET_SD_SD_T0_"(ptr, ptr, ptr) #6

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

declare void @_ZN17HighsLpRelaxationC1ERKS_(ptr noundef nonnull align 8 dereferenceable(21425), ptr noundef nonnull align 8 dereferenceable(21425)) unnamed_addr #5

declare void @_ZN17HighsLpRelaxation17setObjectiveLimitEd(ptr noundef nonnull align 8 dereferenceable(21425), double noundef) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN17HighsLpRelaxation30setAdjustSymmetricBranchingColEb(ptr noundef nonnull align 8 dereferenceable(21425), i1 noundef zeroext) #1 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425)) #1 align 2

declare noundef i32 @_ZN5Highs16changeColsBoundsEiiPKdS1_(ptr noundef nonnull align 8 dereferenceable(20928), i32 noundef, i32 noundef, ptr noundef, ptr noundef) #5

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN11HighsDomain16clearChangedColsEv(ptr noundef nonnull align 8 dereferenceable(824)) #1 align 2

declare void @_ZN11HighsSearch13createNewNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064)) #1 align 2

declare noundef zeroext i1 @_ZN11HighsSearch19backtrackUntilDepthEi(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef) #5

declare noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) #1 align 2

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

declare noundef i32 @_ZN11HighsSearch12evaluateNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsSearch17currentNodePrunedEv(ptr noundef nonnull align 8 dereferenceable(1064)) #1 align 2

declare noundef zeroext i1 @_ZN11HighsSearch9backtrackEb(ptr noundef nonnull align 8 dereferenceable(1064), i1 noundef zeroext) #5

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(104) ptr @_ZNK17HighsLpRelaxation11getSolutionEv(ptr noundef nonnull align 8 dereferenceable(21425)) #2 align 2

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

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

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

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

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

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

declare void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef, double noundef, double noundef) #5

declare void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef, double noundef, double noundef) #5

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

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_Z7pdqsortIN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS3_SaIS3_EEEEZN21HighsPrimalHeuristics4RENSERKS5_IdSaIdEEE3$_2EvT_SF_T0_"(ptr, ptr, ptr, ptr) #6

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

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

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

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

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

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare hidden noundef double @"_ZZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEENK3$_1clEid"(ptr noundef nonnull align 8 dereferenceable(16), i32 noundef, double noundef) #3 align 2

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

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

declare void @_ZN17HighsLpRelaxation11flushDomainER11HighsDomainb(ptr noundef nonnull align 8 dereferenceable(21425), ptr noundef nonnull align 8 dereferenceable(824), i1 noundef zeroext) #5

declare void @_ZN11HighsSearch14setMinReliableEi(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef) #5

declare void @_ZN11HighsSearch15solveDepthFirstEl(ptr noundef nonnull align 8 dereferenceable(1064), i64 noundef) #5

declare noundef i64 @_ZNK11HighsSearch13getLocalNodesEv(ptr noundef nonnull align 8 dereferenceable(1064)) #5

declare void @_ZN17HighsLpRelaxation18removeObsoleteRowsEb(ptr noundef nonnull align 8 dereferenceable(21425), i1 noundef zeroext) #5

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(920) ptr @_ZNK17HighsLpRelaxation5getLpEv(ptr noundef nonnull align 8 dereferenceable(21425)) #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(96) ptr @_ZNK5Highs8getBasisEv(ptr noundef nonnull align 8 dereferenceable(20928)) #1 align 2

declare noundef zeroext i1 @_ZNK18HighsMipSolverData11checkLimitsEl(ptr noundef nonnull align 8 dereferenceable(26801), i64 noundef) #5

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

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

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { 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 #2 = { 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 #3 = { 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 #4 = { nocallback nofree nounwind willreturn memory(argmem: readwrite) }
attributes #5 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { 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 #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 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #9 = { nounwind }
attributes #10 = { 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 0}
!10 = !{!"_ZTS21HighsPrimalHeuristics", !6, i64 0, !11, i64 8, !11, i64 16, !11, i64 24, !11, i64 32, !12, i64 40, !13, i64 48, !12, i64 56, !13, i64 64, !14, i64 72, !15, i64 80}
!11 = !{!"long", !7, i64 0}
!12 = !{!"double", !7, i64 0}
!13 = !{!"int", !7, i64 0}
!14 = !{!"_ZTS11HighsRandom", !11, i64 0}
!15 = !{!"_ZTSSt6vectorIiSaIiEE", !16, i64 0}
!16 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !17, i64 0}
!17 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !18, i64 0}
!18 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!19 = !{!20, !6, i64 0}
!20 = !{!"_ZTSZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEE3$_0", !6, i64 0}
!21 = !{!22, !12, i64 26568}
!22 = !{!"_ZTS18HighsMipSolverData", !6, i64 0, !23, i64 8, !62, i64 688, !75, i64 912, !123, i64 1736, !289, i64 23168, !290, i64 23528, !322, i64 24016, !10, i64 24192, !336, i64 24296, !341, i64 24344, !269, i64 24464, !198, i64 24688, !139, i64 24696, !90, i64 25616, !90, i64 25617, !90, i64 25618, !199, i64 25620, !90, i64 25624, !13, i64 25628, !13, i64 25632, !13, i64 25636, !13, i64 25640, !15, i64 25648, !15, i64 25672, !29, i64 25696, !29, i64 25720, !33, i64 25744, !15, i64 25768, !15, i64 25792, !15, i64 25816, !15, i64 25840, !15, i64 25864, !15, i64 25888, !342, i64 25912, !354, i64 26128, !12, i64 26144, !12, i64 26152, !12, i64 26160, !11, i64 26168, !29, i64 26176, !29, i64 26200, !29, i64 26224, !12, i64 26248, !126, i64 26256, !12, i64 26352, !13, i64 26360, !13, i64 26364, !89, i64 26368, !12, i64 26384, !12, i64 26392, !12, i64 26400, !11, i64 26408, !11, i64 26416, !11, i64 26424, !11, i64 26432, !11, i64 26440, !11, i64 26448, !11, i64 26456, !11, i64 26464, !11, i64 26472, !11, i64 26480, !11, i64 26488, !11, i64 26496, !11, i64 26504, !11, i64 26512, !11, i64 26520, !11, i64 26528, !11, i64 26536, !13, i64 26544, !12, i64 26552, !12, i64 26560, !12, i64 26568, !12, i64 26576, !29, i64 26584, !356, i64 26608, !379, i64 26760, !380, i64 26800}
!23 = !{!"_ZTS12HighsCutPool", !24, i64 0, !29, i64 336, !45, i64 360, !29, i64 384, !29, i64 408, !33, i64 432, !49, i64 456, !54, i64 512, !37, i64 536, !12, i64 584, !12, i64 592, !12, i64 600, !13, i64 608, !13, i64 612, !13, i64 616, !13, i64 620, !13, i64 624, !15, i64 632, !58, i64 656}
!24 = !{!"_ZTS21HighsDynamicRowMatrix", !25, i64 0, !15, i64 24, !29, i64 48, !15, i64 72, !15, i64 96, !15, i64 120, !15, i64 144, !15, i64 168, !15, i64 192, !15, i64 216, !33, i64 240, !37, i64 264, !15, i64 312}
!25 = !{!"_ZTSSt6vectorISt4pairIiiESaIS1_EE", !26, i64 0}
!26 = !{!"_ZTSSt12_Vector_baseISt4pairIiiESaIS1_EE", !27, i64 0}
!27 = !{!"_ZTSNSt12_Vector_baseISt4pairIiiESaIS1_EE12_Vector_implE", !28, i64 0}
!28 = !{!"_ZTSNSt12_Vector_baseISt4pairIiiESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!29 = !{!"_ZTSSt6vectorIdSaIdEE", !30, i64 0}
!30 = !{!"_ZTSSt12_Vector_baseIdSaIdEE", !31, i64 0}
!31 = !{!"_ZTSNSt12_Vector_baseIdSaIdEE12_Vector_implE", !32, i64 0}
!32 = !{!"_ZTSNSt12_Vector_baseIdSaIdEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!33 = !{!"_ZTSSt6vectorIhSaIhEE", !34, i64 0}
!34 = !{!"_ZTSSt12_Vector_baseIhSaIhEE", !35, i64 0}
!35 = !{!"_ZTSNSt12_Vector_baseIhSaIhEE12_Vector_implE", !36, i64 0}
!36 = !{!"_ZTSNSt12_Vector_baseIhSaIhEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!37 = !{!"_ZTSSt3setISt4pairIiiESt4lessIS1_ESaIS1_EE", !38, i64 0}
!38 = !{!"_ZTSSt8_Rb_treeISt4pairIiiES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE", !39, i64 0}
!39 = !{!"_ZTSNSt8_Rb_treeISt4pairIiiES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE13_Rb_tree_implIS5_Lb1EEE", !40, i64 0, !42, i64 8}
!40 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessISt4pairIiiEEE", !41, i64 0}
!41 = !{!"_ZTSSt4lessISt4pairIiiEE"}
!42 = !{!"_ZTSSt15_Rb_tree_header", !43, i64 0, !11, i64 32}
!43 = !{!"_ZTSSt18_Rb_tree_node_base", !44, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!44 = !{!"_ZTSSt14_Rb_tree_color", !7, i64 0}
!45 = !{!"_ZTSSt6vectorIsSaIsEE", !46, i64 0}
!46 = !{!"_ZTSSt12_Vector_baseIsSaIsEE", !47, i64 0}
!47 = !{!"_ZTSNSt12_Vector_baseIsSaIsEE12_Vector_implE", !48, i64 0}
!48 = !{!"_ZTSNSt12_Vector_baseIsSaIsEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!49 = !{!"_ZTSSt18unordered_multimapImiSt4hashImESt8equal_toImESaISt4pairIKmiEEE", !50, i64 0}
!50 = !{!"_ZTSSt10_HashtableImSt4pairIKmiESaIS2_ENSt8__detail10_Select1stESt8equal_toImESt4hashImENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb0EEEE", !6, i64 0, !11, i64 8, !51, i64 16, !11, i64 24, !52, i64 32, !6, i64 48}
!51 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !6, i64 0}
!52 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !53, i64 0, !11, i64 8}
!53 = !{!"float", !7, i64 0}
!54 = !{!"_ZTSSt6vectorIPN11HighsDomain18CutpoolPropagationESaIS2_EE", !55, i64 0}
!55 = !{!"_ZTSSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE", !56, i64 0}
!56 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE12_Vector_implE", !57, i64 0}
!57 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!58 = !{!"_ZTSSt6vectorISt4pairIidESaIS1_EE", !59, i64 0}
!59 = !{!"_ZTSSt12_Vector_baseISt4pairIidESaIS1_EE", !60, i64 0}
!60 = !{!"_ZTSNSt12_Vector_baseISt4pairIidESaIS1_EE12_Vector_implE", !61, i64 0}
!61 = !{!"_ZTSNSt12_Vector_baseISt4pairIidESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!62 = !{!"_ZTS17HighsConflictPool", !13, i64 0, !13, i64 4, !15, i64 8, !45, i64 32, !63, i64 56, !67, i64 80, !25, i64 104, !37, i64 128, !15, i64 176, !71, i64 200}
!63 = !{!"_ZTSSt6vectorIjSaIjEE", !64, i64 0}
!64 = !{!"_ZTSSt12_Vector_baseIjSaIjEE", !65, i64 0}
!65 = !{!"_ZTSNSt12_Vector_baseIjSaIjEE12_Vector_implE", !66, i64 0}
!66 = !{!"_ZTSNSt12_Vector_baseIjSaIjEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!67 = !{!"_ZTSSt6vectorI17HighsDomainChangeSaIS0_EE", !68, i64 0}
!68 = !{!"_ZTSSt12_Vector_baseI17HighsDomainChangeSaIS0_EE", !69, i64 0}
!69 = !{!"_ZTSNSt12_Vector_baseI17HighsDomainChangeSaIS0_EE12_Vector_implE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseI17HighsDomainChangeSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!71 = !{!"_ZTSSt6vectorIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE", !72, i64 0}
!72 = !{!"_ZTSSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE", !73, i64 0}
!73 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE12_Vector_implE", !74, i64 0}
!74 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!75 = !{!"_ZTS11HighsDomain", !33, i64 0, !15, i64 24, !25, i64 48, !67, i64 72, !76, i64 96, !80, i64 120, !84, i64 144, !84, i64 168, !15, i64 192, !15, i64 216, !29, i64 240, !33, i64 264, !15, i64 288, !88, i64 312, !6, i64 472, !99, i64 480, !104, i64 560, !90, i64 640, !109, i64 644, !13, i64 652, !15, i64 656, !15, i64 680, !15, i64 704, !110, i64 728, !90, i64 768, !29, i64 776, !29, i64 800}
!76 = !{!"_ZTSSt6vectorIN11HighsDomain6ReasonESaIS1_EE", !77, i64 0}
!77 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE", !78, i64 0}
!78 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE12_Vector_implE", !79, i64 0}
!79 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!80 = !{!"_ZTSSt6vectorISt4pairIdiESaIS1_EE", !81, i64 0}
!81 = !{!"_ZTSSt12_Vector_baseISt4pairIdiESaIS1_EE", !82, i64 0}
!82 = !{!"_ZTSNSt12_Vector_baseISt4pairIdiESaIS1_EE12_Vector_implE", !83, i64 0}
!83 = !{!"_ZTSNSt12_Vector_baseISt4pairIdiESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!84 = !{!"_ZTSSt6vectorI12HighsCDoubleSaIS0_EE", !85, i64 0}
!85 = !{!"_ZTSSt12_Vector_baseI12HighsCDoubleSaIS0_EE", !86, i64 0}
!86 = !{!"_ZTSNSt12_Vector_baseI12HighsCDoubleSaIS0_EE12_Vector_implE", !87, i64 0}
!87 = !{!"_ZTSNSt12_Vector_baseI12HighsCDoubleSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!88 = !{!"_ZTSN11HighsDomain20ObjectivePropagationE", !6, i64 0, !6, i64 8, !6, i64 16, !89, i64 24, !13, i64 40, !12, i64 48, !90, i64 56, !91, i64 64, !25, i64 88, !29, i64 112, !95, i64 136}
!89 = !{!"_ZTS12HighsCDouble", !12, i64 0, !12, i64 8}
!90 = !{!"bool", !7, i64 0}
!91 = !{!"_ZTSSt6vectorIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE", !92, i64 0}
!92 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE", !93, i64 0}
!93 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE12_Vector_implE", !94, i64 0}
!94 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!95 = !{!"_ZTSSt6vectorIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE", !96, i64 0}
!96 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE", !97, i64 0}
!97 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE12_Vector_implE", !98, i64 0}
!98 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!99 = !{!"_ZTSSt5dequeIN11HighsDomain18CutpoolPropagationESaIS1_EE", !100, i64 0}
!100 = !{!"_ZTSSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE", !101, i64 0}
!101 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE11_Deque_implE", !102, i64 0}
!102 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE16_Deque_impl_dataE", !6, i64 0, !11, i64 8, !103, i64 16, !103, i64 48}
!103 = !{!"_ZTSSt15_Deque_iteratorIN11HighsDomain18CutpoolPropagationERS1_PS1_E", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!104 = !{!"_ZTSSt5dequeIN11HighsDomain23ConflictPoolPropagationESaIS1_EE", !105, i64 0}
!105 = !{!"_ZTSSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE", !106, i64 0}
!106 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE11_Deque_implE", !107, i64 0}
!107 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE16_Deque_impl_dataE", !6, i64 0, !11, i64 8, !108, i64 16, !108, i64 48}
!108 = !{!"_ZTSSt15_Deque_iteratorIN11HighsDomain23ConflictPoolPropagationERS1_PS1_E", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24}
!109 = !{!"_ZTSN11HighsDomain6ReasonE", !13, i64 0, !13, i64 4}
!110 = !{!"_ZTS14HighsHashTableIivE", !111, i64 0, !117, i64 8, !11, i64 16, !11, i64 24, !11, i64 32}
!111 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEE", !112, i64 0}
!112 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterELb1ELb1EE", !113, i64 0}
!113 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEE", !114, i64 0}
!114 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEEE", !115, i64 0}
!115 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEEE", !116, i64 0}
!116 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryIivELb0EE", !6, i64 0}
!117 = !{!"_ZTSSt10unique_ptrIA_hSt14default_deleteIS0_EE", !118, i64 0}
!118 = !{!"_ZTSSt15__uniq_ptr_dataIhSt14default_deleteIA_hELb1ELb1EE", !119, i64 0}
!119 = !{!"_ZTSSt15__uniq_ptr_implIhSt14default_deleteIA_hEE", !120, i64 0}
!120 = !{!"_ZTSSt5tupleIJPhSt14default_deleteIA_hEEE", !121, i64 0}
!121 = !{!"_ZTSSt11_Tuple_implILm0EJPhSt14default_deleteIA_hEEE", !122, i64 0}
!122 = !{!"_ZTSSt10_Head_baseILm0EPhLb0EE", !6, i64 0}
!123 = !{!"_ZTS17HighsLpRelaxation", !6, i64 0, !124, i64 8, !280, i64 20936, !58, i64 20960, !29, i64 20984, !15, i64 21008, !29, i64 21032, !29, i64 21056, !29, i64 21080, !245, i64 21104, !284, i64 21280, !12, i64 21328, !90, i64 21336, !12, i64 21344, !285, i64 21352, !90, i64 21368, !11, i64 21376, !11, i64 21384, !12, i64 21392, !11, i64 21400, !11, i64 21408, !13, i64 21416, !288, i64 21420, !90, i64 21424}
!124 = !{!"_ZTS5Highs", !125, i64 8, !126, i64 112, !133, i64 208, !138, i64 312, !158, i64 1312, !138, i64 1336, !162, i64 2336, !163, i64 2472, !174, i64 2728, !181, i64 3752, !187, i64 3936, !189, i64 4520, !194, i64 4648, !198, i64 4672, !199, i64 4676, !90, i64 4680, !12, i64 4688, !29, i64 4696, !29, i64 4720, !140, i64 4744, !200, i64 4856, !257, i64 19424, !13, i64 19448, !90, i64 19452, !13, i64 19456, !90, i64 19460, !262, i64 19464}
!125 = !{!"_ZTS13HighsSolution", !90, i64 0, !90, i64 1, !29, i64 8, !29, i64 32, !29, i64 56, !29, i64 80}
!126 = !{!"_ZTS10HighsBasis", !90, i64 0, !90, i64 1, !90, i64 2, !90, i64 3, !13, i64 4, !13, i64 8, !127, i64 16, !129, i64 48, !129, i64 72}
!127 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !128, i64 0, !11, i64 8, !7, i64 16}
!128 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!129 = !{!"_ZTSSt6vectorI16HighsBasisStatusSaIS0_EE", !130, i64 0}
!130 = !{!"_ZTSSt12_Vector_baseI16HighsBasisStatusSaIS0_EE", !131, i64 0}
!131 = !{!"_ZTSNSt12_Vector_baseI16HighsBasisStatusSaIS0_EE12_Vector_implE", !132, i64 0}
!132 = !{!"_ZTSNSt12_Vector_baseI16HighsBasisStatusSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!133 = !{!"_ZTS10ICrashInfo", !13, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !12, i64 32, !12, i64 40, !134, i64 48, !29, i64 72, !12, i64 96}
!134 = !{!"_ZTSSt6vectorI22ICrashIterationDetailsSaIS0_EE", !135, i64 0}
!135 = !{!"_ZTSSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE", !136, i64 0}
!136 = !{!"_ZTSNSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE12_Vector_implE", !137, i64 0}
!137 = !{!"_ZTSNSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!138 = !{!"_ZTS10HighsModel", !139, i64 0, !156, i64 920}
!139 = !{!"_ZTS7HighsLp", !13, i64 0, !13, i64 4, !29, i64 8, !29, i64 32, !29, i64 56, !29, i64 80, !29, i64 104, !140, i64 128, !142, i64 240, !12, i64 248, !127, i64 256, !127, i64 288, !13, i64 320, !13, i64 324, !143, i64 328, !143, i64 352, !147, i64 376, !151, i64 400, !151, i64 456, !13, i64 512, !13, i64 516, !154, i64 520, !90, i64 592, !90, i64 593, !13, i64 596, !90, i64 600, !155, i64 608}
!140 = !{!"_ZTS17HighsSparseMatrix", !141, i64 0, !13, i64 4, !13, i64 8, !15, i64 16, !15, i64 40, !15, i64 64, !29, i64 88}
!141 = !{!"_ZTS12MatrixFormat", !7, i64 0}
!142 = !{!"_ZTS8ObjSense", !7, i64 0}
!143 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !144, i64 0}
!144 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !145, i64 0}
!145 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !146, i64 0}
!146 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!147 = !{!"_ZTSSt6vectorI12HighsVarTypeSaIS0_EE", !148, i64 0}
!148 = !{!"_ZTSSt12_Vector_baseI12HighsVarTypeSaIS0_EE", !149, i64 0}
!149 = !{!"_ZTSNSt12_Vector_baseI12HighsVarTypeSaIS0_EE12_Vector_implE", !150, i64 0}
!150 = !{!"_ZTSNSt12_Vector_baseI12HighsVarTypeSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!151 = !{!"_ZTS13HighsNameHash", !152, i64 0}
!152 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_iEEE", !153, i64 0}
!153 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESaIS8_ENSt8__detail10_Select1stESt8equal_toIS5_ESt4hashIS5_ENSA_18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyENSA_17_Hashtable_traitsILb1ELb0ELb1EEEE", !6, i64 0, !11, i64 8, !51, i64 16, !11, i64 24, !52, i64 32, !6, i64 48}
!154 = !{!"_ZTS10HighsScale", !13, i64 0, !90, i64 4, !13, i64 8, !13, i64 12, !12, i64 16, !29, i64 24, !29, i64 48}
!155 = !{!"_ZTS11HighsLpMods", !15, i64 0, !15, i64 24, !29, i64 48, !29, i64 72, !147, i64 96, !15, i64 120, !29, i64 144, !15, i64 168, !29, i64 192, !15, i64 216, !29, i64 240, !29, i64 264, !29, i64 288}
!156 = !{!"_ZTS12HighsHessian", !13, i64 0, !157, i64 4, !15, i64 8, !15, i64 32, !29, i64 56}
!157 = !{!"_ZTS13HessianFormat", !7, i64 0}
!158 = !{!"_ZTSSt6vectorI20HighsLinearObjectiveSaIS0_EE", !159, i64 0}
!159 = !{!"_ZTSSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE", !160, i64 0}
!160 = !{!"_ZTSNSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE12_Vector_implE", !161, i64 0}
!161 = !{!"_ZTSNSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!162 = !{!"_ZTS10HighsTimer", !12, i64 8, !13, i64 16, !15, i64 24, !29, i64 48, !29, i64 72, !143, i64 96, !13, i64 120, !13, i64 124, !13, i64 128}
!163 = !{!"_ZTS13HighsCallback", !164, i64 0, !6, i64 32, !6, i64 40, !166, i64 48, !172, i64 88, !173, i64 240}
!164 = !{!"_ZTSSt8functionIFviRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPK20HighsCallbackDataOutP19HighsCallbackDataInPvEE", !165, i64 0, !6, i64 24}
!165 = !{!"_ZTSSt14_Function_base", !7, i64 0, !6, i64 16}
!166 = !{!"_ZTSSt6vectorIbSaIbEE", !167, i64 0}
!167 = !{!"_ZTSSt13_Bvector_baseISaIbEE", !168, i64 0}
!168 = !{!"_ZTSNSt13_Bvector_baseISaIbEE13_Bvector_implE", !169, i64 0}
!169 = !{!"_ZTSNSt13_Bvector_baseISaIbEE18_Bvector_impl_dataE", !170, i64 0, !170, i64 16, !6, i64 32}
!170 = !{!"_ZTSSt13_Bit_iterator", !171, i64 0}
!171 = !{!"_ZTSSt18_Bit_iterator_base", !6, i64 0, !13, i64 8}
!172 = !{!"_ZTS20HighsCallbackDataOut", !13, i64 0, !12, i64 8, !13, i64 16, !13, i64 20, !13, i64 24, !12, i64 32, !11, i64 40, !11, i64 48, !12, i64 56, !12, i64 64, !12, i64 72, !6, i64 80, !13, i64 88, !13, i64 92, !13, i64 96, !6, i64 104, !6, i64 112, !6, i64 120, !6, i64 128, !6, i64 136, !13, i64 144}
!173 = !{!"_ZTS19HighsCallbackDataIn", !13, i64 0, !6, i64 8}
!174 = !{!"_ZTS12HighsOptions", !175, i64 0, !177, i64 992, !13, i64 1016}
!175 = !{!"_ZTS18HighsOptionsStruct", !127, i64 8, !127, i64 40, !127, i64 72, !127, i64 104, !12, i64 136, !127, i64 144, !127, i64 176, !13, i64 208, !127, i64 216, !12, i64 248, !12, i64 256, !12, i64 264, !12, i64 272, !12, i64 280, !12, i64 288, !12, i64 296, !12, i64 304, !12, i64 312, !12, i64 320, !12, i64 328, !13, i64 336, !13, i64 340, !13, i64 344, !13, i64 348, !13, i64 352, !13, i64 356, !13, i64 360, !13, i64 364, !13, i64 368, !13, i64 372, !13, i64 376, !13, i64 380, !13, i64 384, !13, i64 388, !127, i64 392, !90, i64 424, !90, i64 425, !90, i64 426, !13, i64 428, !13, i64 432, !127, i64 440, !90, i64 472, !90, i64 473, !90, i64 474, !13, i64 476, !90, i64 480, !90, i64 481, !13, i64 484, !13, i64 488, !12, i64 496, !13, i64 504, !13, i64 508, !13, i64 512, !90, i64 516, !13, i64 520, !90, i64 524, !90, i64 525, !90, i64 526, !90, i64 527, !90, i64 528, !90, i64 529, !90, i64 530, !13, i64 532, !13, i64 536, !13, i64 540, !13, i64 544, !13, i64 548, !13, i64 552, !13, i64 556, !13, i64 560, !13, i64 564, !13, i64 568, !13, i64 572, !13, i64 576, !13, i64 580, !13, i64 584, !13, i64 588, !90, i64 592, !90, i64 593, !90, i64 594, !90, i64 595, !12, i64 600, !12, i64 608, !12, i64 616, !12, i64 624, !12, i64 632, !12, i64 640, !12, i64 648, !12, i64 656, !12, i64 664, !12, i64 672, !12, i64 680, !90, i64 688, !90, i64 689, !90, i64 690, !90, i64 691, !13, i64 692, !12, i64 696, !90, i64 704, !90, i64 705, !127, i64 712, !12, i64 744, !13, i64 752, !13, i64 756, !90, i64 760, !90, i64 761, !90, i64 762, !90, i64 763, !13, i64 764, !13, i64 768, !13, i64 772, !13, i64 776, !13, i64 780, !13, i64 784, !13, i64 788, !13, i64 792, !13, i64 796, !13, i64 800, !13, i64 804, !12, i64 808, !12, i64 816, !12, i64 824, !12, i64 832, !12, i64 840, !90, i64 848, !90, i64 849, !127, i64 856, !90, i64 888, !13, i64 892, !176, i64 896}
!176 = !{!"_ZTS15HighsLogOptions", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !164, i64 48, !6, i64 80, !90, i64 88}
!177 = !{!"_ZTSSt6vectorIP12OptionRecordSaIS1_EE", !178, i64 0}
!178 = !{!"_ZTSSt12_Vector_baseIP12OptionRecordSaIS1_EE", !179, i64 0}
!179 = !{!"_ZTSNSt12_Vector_baseIP12OptionRecordSaIS1_EE12_Vector_implE", !180, i64 0}
!180 = !{!"_ZTSNSt12_Vector_baseIP12OptionRecordSaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!181 = !{!"_ZTS9HighsInfo", !182, i64 8, !183, i64 160}
!182 = !{!"_ZTS15HighsInfoStruct", !90, i64 0, !11, i64 8, !13, i64 16, !13, i64 20, !13, i64 24, !13, i64 28, !13, i64 32, !13, i64 36, !13, i64 40, !13, i64 44, !12, i64 48, !12, i64 56, !12, i64 64, !12, i64 72, !13, i64 80, !12, i64 88, !12, i64 96, !13, i64 104, !12, i64 112, !12, i64 120, !12, i64 128, !12, i64 136, !12, i64 144}
!183 = !{!"_ZTSSt6vectorIP10InfoRecordSaIS1_EE", !184, i64 0}
!184 = !{!"_ZTSSt12_Vector_baseIP10InfoRecordSaIS1_EE", !185, i64 0}
!185 = !{!"_ZTSNSt12_Vector_baseIP10InfoRecordSaIS1_EE12_Vector_implE", !186, i64 0}
!186 = !{!"_ZTSNSt12_Vector_baseIP10InfoRecordSaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!187 = !{!"_ZTS12HighsRanging", !90, i64 0, !188, i64 8, !188, i64 104, !188, i64 200, !188, i64 296, !188, i64 392, !188, i64 488}
!188 = !{!"_ZTS18HighsRangingRecord", !29, i64 0, !29, i64 24, !15, i64 48, !15, i64 72}
!189 = !{!"_ZTS8HighsIis", !90, i64 0, !13, i64 4, !15, i64 8, !15, i64 32, !15, i64 56, !15, i64 80, !190, i64 104}
!190 = !{!"_ZTSSt6vectorI12HighsIisInfoSaIS0_EE", !191, i64 0}
!191 = !{!"_ZTSSt12_Vector_baseI12HighsIisInfoSaIS0_EE", !192, i64 0}
!192 = !{!"_ZTSNSt12_Vector_baseI12HighsIisInfoSaIS0_EE12_Vector_implE", !193, i64 0}
!193 = !{!"_ZTSNSt12_Vector_baseI12HighsIisInfoSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!194 = !{!"_ZTSSt6vectorI22HighsObjectiveSolutionSaIS0_EE", !195, i64 0}
!195 = !{!"_ZTSSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE", !196, i64 0}
!196 = !{!"_ZTSNSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE12_Vector_implE", !197, i64 0}
!197 = !{!"_ZTSNSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!198 = !{!"_ZTS19HighsPresolveStatus", !7, i64 0}
!199 = !{!"_ZTS16HighsModelStatus", !7, i64 0}
!200 = !{!"_ZTS4HEkk", !6, i64 0, !6, i64 8, !6, i64 16, !201, i64 24, !139, i64 8600, !127, i64 9520, !218, i64 9552, !219, i64 9568, !199, i64 10608, !220, i64 10616, !225, i64 10736, !14, i64 10776, !29, i64 10784, !29, i64 10808, !90, i64 10832, !140, i64 10840, !140, i64 10952, !232, i64 11064, !249, i64 13928, !12, i64 14048, !12, i64 14056, !12, i64 14064, !13, i64 14072, !13, i64 14076, !13, i64 14080, !13, i64 14084, !90, i64 14088, !90, i64 14089, !250, i64 14092, !13, i64 14096, !13, i64 14100, !15, i64 14104, !29, i64 14128, !251, i64 14152, !251, i64 14184, !13, i64 14216, !13, i64 14220, !13, i64 14224, !12, i64 14232, !29, i64 14240, !29, i64 14264, !29, i64 14288, !29, i64 14312, !29, i64 14336, !15, i64 14360, !15, i64 14384, !12, i64 14408, !12, i64 14416, !12, i64 14424, !13, i64 14432, !13, i64 14436, !90, i64 14440, !13, i64 14444, !90, i64 14448, !90, i64 14449, !90, i64 14450, !90, i64 14451, !12, i64 14456, !252, i64 14464, !29, i64 14488, !256, i64 14512}
!201 = !{!"_ZTS20HighsSimplexAnalysis", !6, i64 0, !202, i64 8, !202, i64 32, !6, i64 56, !13, i64 64, !13, i64 68, !13, i64 72, !127, i64 80, !127, i64 112, !176, i64 144, !90, i64 240, !90, i64 241, !90, i64 242, !90, i64 243, !90, i64 244, !90, i64 245, !90, i64 246, !13, i64 248, !206, i64 252, !13, i64 256, !13, i64 260, !13, i64 264, !13, i64 268, !13, i64 272, !13, i64 276, !13, i64 280, !127, i64 288, !12, i64 320, !12, i64 328, !12, i64 336, !12, i64 344, !12, i64 352, !12, i64 360, !12, i64 368, !12, i64 376, !12, i64 384, !12, i64 392, !12, i64 400, !12, i64 408, !13, i64 416, !13, i64 420, !12, i64 424, !12, i64 432, !13, i64 440, !12, i64 448, !12, i64 456, !13, i64 464, !12, i64 472, !12, i64 480, !12, i64 488, !12, i64 496, !12, i64 504, !12, i64 512, !12, i64 520, !12, i64 528, !12, i64 536, !12, i64 544, !13, i64 552, !12, i64 560, !13, i64 568, !13, i64 572, !13, i64 576, !13, i64 580, !13, i64 584, !13, i64 588, !13, i64 592, !13, i64 596, !13, i64 600, !207, i64 608, !207, i64 760, !207, i64 912, !207, i64 1064, !207, i64 1216, !207, i64 1368, !207, i64 1520, !207, i64 1672, !207, i64 1824, !207, i64 1976, !13, i64 2128, !13, i64 2132, !13, i64 2136, !13, i64 2140, !12, i64 2144, !12, i64 2152, !13, i64 2160, !13, i64 2164, !13, i64 2168, !13, i64 2172, !13, i64 2176, !12, i64 2184, !12, i64 2192, !13, i64 2200, !12, i64 2208, !12, i64 2216, !13, i64 2224, !13, i64 2228, !12, i64 2232, !12, i64 2240, !29, i64 2248, !29, i64 2272, !29, i64 2296, !29, i64 2320, !208, i64 2344, !212, i64 2368, !13, i64 2376, !13, i64 2380, !13, i64 2384, !13, i64 2388, !12, i64 2392, !12, i64 2400, !12, i64 2408, !12, i64 2416, !12, i64 2424, !12, i64 2432, !12, i64 2440, !12, i64 2448, !12, i64 2456, !12, i64 2464, !13, i64 2472, !13, i64 2476, !12, i64 2480, !12, i64 2488, !12, i64 2496, !90, i64 2504, !12, i64 2512, !12, i64 2520, !13, i64 2528, !13, i64 2532, !13, i64 2536, !13, i64 2540, !13, i64 2544, !12, i64 2552, !12, i64 2560, !12, i64 2568, !12, i64 2576, !12, i64 2584, !12, i64 2592, !12, i64 2600, !12, i64 2608, !12, i64 2616, !13, i64 2624, !13, i64 2628, !7, i64 2632, !13, i64 4952, !13, i64 4956, !7, i64 4960, !7, i64 7600, !7, i64 7648, !207, i64 7664, !207, i64 7816, !207, i64 7968, !207, i64 8120, !207, i64 8272, !207, i64 8424}
!202 = !{!"_ZTSSt6vectorI15HighsTimerClockSaIS0_EE", !203, i64 0}
!203 = !{!"_ZTSSt12_Vector_baseI15HighsTimerClockSaIS0_EE", !204, i64 0}
!204 = !{!"_ZTSNSt12_Vector_baseI15HighsTimerClockSaIS0_EE12_Vector_implE", !205, i64 0}
!205 = !{!"_ZTSNSt12_Vector_baseI15HighsTimerClockSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!206 = !{!"_ZTS14EdgeWeightMode", !7, i64 0}
!207 = !{!"_ZTS22HighsValueDistribution", !127, i64 0, !127, i64 32, !13, i64 64, !13, i64 68, !13, i64 72, !12, i64 80, !12, i64 88, !29, i64 96, !15, i64 120, !13, i64 144}
!208 = !{!"_ZTSSt6vectorI17TranStageAnalysisSaIS0_EE", !209, i64 0}
!209 = !{!"_ZTSSt12_Vector_baseI17TranStageAnalysisSaIS0_EE", !210, i64 0}
!210 = !{!"_ZTSNSt12_Vector_baseI17TranStageAnalysisSaIS0_EE12_Vector_implE", !211, i64 0}
!211 = !{!"_ZTSNSt12_Vector_baseI17TranStageAnalysisSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!212 = !{!"_ZTSSt10unique_ptrINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EE", !213, i64 0}
!213 = !{!"_ZTSSt15__uniq_ptr_dataINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_ELb1ELb1EE", !214, i64 0}
!214 = !{!"_ZTSSt15__uniq_ptr_implINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EE", !215, i64 0}
!215 = !{!"_ZTSSt5tupleIJPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EEE", !216, i64 0}
!216 = !{!"_ZTSSt11_Tuple_implILm0EJPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EEE", !217, i64 0}
!217 = !{!"_ZTSSt10_Head_baseILm0EPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEELb0EE", !6, i64 0}
!218 = !{!"_ZTS18HighsSimplexStatus", !90, i64 0, !90, i64 1, !90, i64 2, !90, i64 3, !90, i64 4, !90, i64 5, !90, i64 6, !90, i64 7, !90, i64 8, !90, i64 9, !90, i64 10, !90, i64 11, !90, i64 12}
!219 = !{!"_ZTS16HighsSimplexInfo", !29, i64 0, !29, i64 24, !29, i64 48, !29, i64 72, !29, i64 96, !29, i64 120, !29, i64 144, !29, i64 168, !29, i64 192, !29, i64 216, !29, i64 240, !29, i64 264, !29, i64 288, !15, i64 312, !15, i64 336, !15, i64 360, !15, i64 384, !29, i64 408, !13, i64 432, !13, i64 436, !90, i64 440, !90, i64 441, !220, i64 448, !13, i64 568, !13, i64 572, !13, i64 576, !29, i64 584, !29, i64 608, !29, i64 632, !29, i64 656, !13, i64 680, !13, i64 684, !13, i64 688, !13, i64 692, !12, i64 696, !12, i64 704, !12, i64 712, !12, i64 720, !13, i64 728, !13, i64 732, !12, i64 736, !12, i64 744, !12, i64 752, !12, i64 760, !12, i64 768, !12, i64 776, !12, i64 784, !12, i64 792, !12, i64 800, !12, i64 808, !90, i64 816, !12, i64 824, !12, i64 832, !13, i64 840, !12, i64 848, !12, i64 856, !12, i64 864, !90, i64 872, !90, i64 873, !90, i64 874, !90, i64 875, !90, i64 876, !90, i64 877, !90, i64 878, !90, i64 879, !90, i64 880, !90, i64 881, !90, i64 882, !90, i64 883, !90, i64 884, !90, i64 885, !90, i64 886, !13, i64 888, !12, i64 896, !12, i64 904, !13, i64 912, !12, i64 920, !12, i64 928, !13, i64 936, !13, i64 940, !13, i64 944, !13, i64 948, !13, i64 952, !13, i64 956, !13, i64 960, !13, i64 964, !13, i64 968, !13, i64 972, !13, i64 976, !13, i64 980, !13, i64 984, !13, i64 988, !13, i64 992, !13, i64 996, !12, i64 1000, !12, i64 1008, !12, i64 1016, !12, i64 1024, !13, i64 1032}
!220 = !{!"_ZTS12SimplexBasis", !15, i64 0, !221, i64 24, !221, i64 48, !11, i64 72, !13, i64 80, !13, i64 84, !127, i64 88}
!221 = !{!"_ZTSSt6vectorIaSaIaEE", !222, i64 0}
!222 = !{!"_ZTSSt12_Vector_baseIaSaIaEE", !223, i64 0}
!223 = !{!"_ZTSNSt12_Vector_baseIaSaIaEE12_Vector_implE", !224, i64 0}
!224 = !{!"_ZTSNSt12_Vector_baseIaSaIaEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!225 = !{!"_ZTS14HighsHashTableImvE", !226, i64 0, !117, i64 8, !11, i64 16, !11, i64 24, !11, i64 32}
!226 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEE", !227, i64 0}
!227 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterELb1ELb1EE", !228, i64 0}
!228 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEE", !229, i64 0}
!229 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEEE", !230, i64 0}
!230 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEEE", !231, i64 0}
!231 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryImvELb0EE", !6, i64 0}
!232 = !{!"_ZTS11HSimplexNla", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !233, i64 48, !90, i64 1960, !12, i64 1968, !246, i64 1976, !247, i64 2112}
!233 = !{!"_ZTS7HFactor", !12, i64 0, !12, i64 8, !13, i64 16, !15, i64 24, !15, i64 48, !15, i64 72, !234, i64 96, !13, i64 184, !13, i64 188, !13, i64 192, !13, i64 196, !13, i64 200, !13, i64 204, !13, i64 208, !12, i64 216, !90, i64 224, !6, i64 232, !6, i64 240, !6, i64 248, !6, i64 256, !12, i64 264, !12, i64 272, !13, i64 280, !12, i64 288, !235, i64 296, !176, i64 304, !90, i64 400, !90, i64 401, !13, i64 404, !13, i64 408, !6, i64 416, !13, i64 424, !15, i64 432, !29, i64 456, !15, i64 480, !15, i64 504, !15, i64 528, !29, i64 552, !15, i64 576, !15, i64 600, !15, i64 624, !15, i64 648, !15, i64 672, !15, i64 696, !15, i64 720, !29, i64 744, !29, i64 768, !15, i64 792, !15, i64 816, !15, i64 840, !15, i64 864, !15, i64 888, !15, i64 912, !241, i64 936, !29, i64 960, !15, i64 984, !15, i64 1008, !15, i64 1032, !15, i64 1056, !15, i64 1080, !15, i64 1104, !15, i64 1128, !15, i64 1152, !15, i64 1176, !15, i64 1200, !29, i64 1224, !15, i64 1248, !15, i64 1272, !29, i64 1296, !15, i64 1320, !15, i64 1344, !29, i64 1368, !13, i64 1392, !13, i64 1396, !15, i64 1400, !15, i64 1424, !15, i64 1448, !29, i64 1472, !15, i64 1496, !15, i64 1520, !15, i64 1544, !15, i64 1568, !29, i64 1592, !29, i64 1616, !15, i64 1640, !15, i64 1664, !15, i64 1688, !29, i64 1712, !245, i64 1736}
!234 = !{!"_ZTS12RefactorInfo", !90, i64 0, !15, i64 8, !15, i64 32, !221, i64 56, !12, i64 80}
!235 = !{!"_ZTSSt10unique_ptrIN7HFactor7LogDataESt14default_deleteIS1_EE", !236, i64 0}
!236 = !{!"_ZTSSt15__uniq_ptr_dataIN7HFactor7LogDataESt14default_deleteIS1_ELb1ELb1EE", !237, i64 0}
!237 = !{!"_ZTSSt15__uniq_ptr_implIN7HFactor7LogDataESt14default_deleteIS1_EE", !238, i64 0}
!238 = !{!"_ZTSSt5tupleIJPN7HFactor7LogDataESt14default_deleteIS1_EEE", !239, i64 0}
!239 = !{!"_ZTSSt11_Tuple_implILm0EJPN7HFactor7LogDataESt14default_deleteIS1_EEE", !240, i64 0}
!240 = !{!"_ZTSSt10_Head_baseILm0EPN7HFactor7LogDataELb0EE", !6, i64 0}
!241 = !{!"_ZTSSt6vectorIcSaIcEE", !242, i64 0}
!242 = !{!"_ZTSSt12_Vector_baseIcSaIcEE", !243, i64 0}
!243 = !{!"_ZTSNSt12_Vector_baseIcSaIcEE12_Vector_implE", !244, i64 0}
!244 = !{!"_ZTSNSt12_Vector_baseIcSaIcEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!245 = !{!"_ZTS11HVectorBaseIdE", !13, i64 0, !13, i64 4, !15, i64 8, !29, i64 32, !12, i64 56, !241, i64 64, !15, i64 88, !6, i64 112, !90, i64 120, !13, i64 124, !15, i64 128, !29, i64 152}
!246 = !{!"_ZTS17ProductFormUpdate", !90, i64 0, !13, i64 4, !13, i64 8, !15, i64 16, !29, i64 40, !15, i64 64, !15, i64 88, !29, i64 112}
!247 = !{!"_ZTS14SimplexIterate", !90, i64 0, !220, i64 8, !248, i64 128, !29, i64 728}
!248 = !{!"_ZTS24InvertibleRepresentation", !15, i64 0, !15, i64 24, !15, i64 48, !15, i64 72, !29, i64 96, !15, i64 120, !15, i64 144, !29, i64 168, !15, i64 192, !15, i64 216, !29, i64 240, !15, i64 264, !15, i64 288, !15, i64 312, !29, i64 336, !15, i64 360, !15, i64 384, !15, i64 408, !15, i64 432, !29, i64 456, !15, i64 480, !15, i64 504, !29, i64 528, !15, i64 552, !29, i64 576}
!249 = !{!"_ZTS8HotStart", !90, i64 0, !234, i64 8, !221, i64 96}
!250 = !{!"_ZTS16SimplexAlgorithm", !7, i64 0}
!251 = !{!"_ZTS14HighsRayRecord", !13, i64 0, !13, i64 4, !29, i64 8}
!252 = !{!"_ZTSSt6vectorI32HighsSimplexBadBasisChangeRecordSaIS0_EE", !253, i64 0}
!253 = !{!"_ZTSSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE", !254, i64 0}
!254 = !{!"_ZTSNSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE12_Vector_implE", !255, i64 0}
!255 = !{!"_ZTSNSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!256 = !{!"_ZTS17HighsSimplexStats", !90, i64 0, !13, i64 4, !13, i64 8, !13, i64 12, !13, i64 16, !12, i64 24, !12, i64 32, !12, i64 40, !12, i64 48}
!257 = !{!"_ZTS16HighsPresolveLog", !258, i64 0}
!258 = !{!"_ZTSSt6vectorI20HighsPresolveRuleLogSaIS0_EE", !259, i64 0}
!259 = !{!"_ZTSSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE", !260, i64 0}
!260 = !{!"_ZTSNSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE12_Vector_implE", !261, i64 0}
!261 = !{!"_ZTSNSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!262 = !{!"_ZTS17PresolveComponent", !263, i64 0, !267, i64 16, !268, i64 56, !6, i64 1440, !6, i64 1448, !198, i64 1456, !279, i64 1460}
!263 = !{!"_ZTS14HighsComponent", !264, i64 8, !265, i64 9, !266, i64 10}
!264 = !{!"_ZTS18HighsComponentInfo", !90, i64 0}
!265 = !{!"_ZTS18HighsComponentData", !90, i64 0}
!266 = !{!"_ZTS21HighsComponentOptions", !90, i64 0}
!267 = !{!"_ZTS21PresolveComponentInfo", !264, i64 8, !13, i64 12, !13, i64 16, !13, i64 20, !12, i64 24, !12, i64 32}
!268 = !{!"_ZTS21PresolveComponentData", !265, i64 8, !139, i64 16, !269, i64 936, !125, i64 1160, !126, i64 1264, !257, i64 1360}
!269 = !{!"_ZTSN8presolve19HighsPostsolveStackE", !11, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !12, i64 32, !270, i64 40, !271, i64 72, !15, i64 96, !15, i64 120, !33, i64 144, !275, i64 168, !275, i64 192, !13, i64 216, !13, i64 220}
!270 = !{!"_ZTS14HighsDataStack", !241, i64 0, !11, i64 24}
!271 = !{!"_ZTSSt6vectorISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE", !272, i64 0}
!272 = !{!"_ZTSSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE", !273, i64 0}
!273 = !{!"_ZTSNSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE12_Vector_implE", !274, i64 0}
!274 = !{!"_ZTSNSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!275 = !{!"_ZTSSt6vectorIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE", !276, i64 0}
!276 = !{!"_ZTSSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE", !277, i64 0}
!277 = !{!"_ZTSNSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE12_Vector_implE", !278, i64 0}
!278 = !{!"_ZTSNSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!279 = !{!"_ZTS20HighsPostsolveStatus", !7, i64 0}
!280 = !{!"_ZTSSt6vectorIN17HighsLpRelaxation5LpRowESaIS1_EE", !281, i64 0}
!281 = !{!"_ZTSSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE", !282, i64 0}
!282 = !{!"_ZTSNSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE12_Vector_implE", !283, i64 0}
!283 = !{!"_ZTSNSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!284 = !{!"_ZTS20HighsSparseVectorSum", !84, i64 0, !15, i64 24}
!285 = !{!"_ZTSSt10shared_ptrIK10HighsBasisE", !286, i64 0}
!286 = !{!"_ZTSSt12__shared_ptrIK10HighsBasisLN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !287, i64 8}
!287 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0}
!288 = !{!"_ZTSN17HighsLpRelaxation6StatusE", !7, i64 0}
!289 = !{!"_ZTS15HighsPseudocost", !29, i64 0, !29, i64 24, !15, i64 48, !15, i64 72, !29, i64 96, !29, i64 120, !15, i64 144, !15, i64 168, !15, i64 192, !15, i64 216, !29, i64 240, !29, i64 264, !12, i64 288, !12, i64 296, !12, i64 304, !12, i64 312, !11, i64 320, !11, i64 328, !11, i64 336, !13, i64 344, !12, i64 352}
!290 = !{!"_ZTS16HighsCliqueTable", !291, i64 0, !295, i64 24, !299, i64 48, !303, i64 72, !37, i64 112, !15, i64 160, !310, i64 184, !15, i64 208, !291, i64 232, !15, i64 256, !314, i64 280, !15, i64 304, !318, i64 328, !33, i64 352, !33, i64 376, !63, i64 400, !15, i64 424, !14, i64 448, !13, i64 456, !13, i64 460, !13, i64 464, !13, i64 468, !90, i64 472, !11, i64 480}
!291 = !{!"_ZTSSt6vectorIN16HighsCliqueTable9CliqueVarESaIS1_EE", !292, i64 0}
!292 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE", !293, i64 0}
!293 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE12_Vector_implE", !294, i64 0}
!294 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!295 = !{!"_ZTSSt6vectorI13HighsHashTreeIiiESaIS1_EE", !296, i64 0}
!296 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE", !297, i64 0}
!297 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE12_Vector_implE", !298, i64 0}
!298 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!299 = !{!"_ZTSSt6vectorI13HighsHashTreeIivESaIS1_EE", !300, i64 0}
!300 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE", !301, i64 0}
!301 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE12_Vector_implE", !302, i64 0}
!302 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!303 = !{!"_ZTS14HighsHashTableISt4pairIN16HighsCliqueTable9CliqueVarES2_EiE", !304, i64 0, !117, i64 8, !11, i64 16, !11, i64 24, !11, i64 32}
!304 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEE", !305, i64 0}
!305 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterELb1ELb1EE", !306, i64 0}
!306 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEE", !307, i64 0}
!307 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEEE", !308, i64 0}
!308 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEEE", !309, i64 0}
!309 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiELb0EE", !6, i64 0}
!310 = !{!"_ZTSSt6vectorIN16HighsCliqueTable6CliqueESaIS1_EE", !311, i64 0}
!311 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE", !312, i64 0}
!312 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE12_Vector_implE", !313, i64 0}
!313 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!314 = !{!"_ZTSSt6vectorIN16HighsCliqueTable12SubstitutionESaIS1_EE", !315, i64 0}
!315 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE", !316, i64 0}
!316 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE12_Vector_implE", !317, i64 0}
!317 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!318 = !{!"_ZTSSt6vectorISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE", !319, i64 0}
!319 = !{!"_ZTSSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE", !320, i64 0}
!320 = !{!"_ZTSNSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE12_Vector_implE", !321, i64 0}
!321 = !{!"_ZTSNSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!322 = !{!"_ZTS17HighsImplications", !13, i64 0, !323, i64 8, !11, i64 32, !327, i64 40, !327, i64 64, !6, i64 88, !331, i64 96, !33, i64 120, !335, i64 144}
!323 = !{!"_ZTSSt6vectorIN17HighsImplications7ImplicsESaIS1_EE", !324, i64 0}
!324 = !{!"_ZTSSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE", !325, i64 0}
!325 = !{!"_ZTSNSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE12_Vector_implE", !326, i64 0}
!326 = !{!"_ZTSNSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!327 = !{!"_ZTSSt6vectorI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE", !328, i64 0}
!328 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE", !329, i64 0}
!329 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE12_Vector_implE", !330, i64 0}
!330 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!331 = !{!"_ZTSSt6vectorI17HighsSubstitutionSaIS0_EE", !332, i64 0}
!332 = !{!"_ZTSSt12_Vector_baseI17HighsSubstitutionSaIS0_EE", !333, i64 0}
!333 = !{!"_ZTSNSt12_Vector_baseI17HighsSubstitutionSaIS0_EE12_Vector_implE", !334, i64 0}
!334 = !{!"_ZTSNSt12_Vector_baseI17HighsSubstitutionSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!335 = !{!"_ZTSSt8functionIFviiidEE", !165, i64 0, !6, i64 24}
!336 = !{!"_ZTS18HighsRedcostFixing", !337, i64 0, !337, i64 24}
!337 = !{!"_ZTSSt6vectorISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE", !338, i64 0}
!338 = !{!"_ZTSSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE", !339, i64 0}
!339 = !{!"_ZTSNSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE12_Vector_implE", !340, i64 0}
!340 = !{!"_ZTSNSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!341 = !{!"_ZTS22HighsObjectiveFunction", !6, i64 0, !12, i64 8, !13, i64 16, !13, i64 20, !15, i64 24, !29, i64 48, !15, i64 72, !15, i64 96}
!342 = !{!"_ZTS15HighsSymmetries", !15, i64 0, !15, i64 24, !15, i64 48, !15, i64 72, !15, i64 96, !15, i64 120, !343, i64 144, !347, i64 168, !13, i64 208, !13, i64 212}
!343 = !{!"_ZTSSt6vectorI19HighsOrbitopeMatrixSaIS0_EE", !344, i64 0}
!344 = !{!"_ZTSSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE", !345, i64 0}
!345 = !{!"_ZTSNSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE12_Vector_implE", !346, i64 0}
!346 = !{!"_ZTSNSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!347 = !{!"_ZTS14HighsHashTableIiiE", !348, i64 0, !117, i64 8, !11, i64 16, !11, i64 24, !11, i64 32}
!348 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEE", !349, i64 0}
!349 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterELb1ELb1EE", !350, i64 0}
!350 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEE", !351, i64 0}
!351 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEEE", !352, i64 0}
!352 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEEE", !353, i64 0}
!353 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryIiiELb0EE", !6, i64 0}
!354 = !{!"_ZTSSt10shared_ptrIK16StabilizerOrbitsE", !355, i64 0}
!355 = !{!"_ZTSSt12__shared_ptrIK16StabilizerOrbitsLN9__gnu_cxx12_Lock_policyE2EE", !6, i64 0, !287, i64 8}
!356 = !{!"_ZTS14HighsNodeQueue", !357, i64 0, !363, i64 8, !367, i64 32, !373, i64 64, !373, i64 72, !11, i64 80, !11, i64 88, !11, i64 96, !11, i64 104, !11, i64 112, !11, i64 120, !11, i64 128, !12, i64 136, !13, i64 144}
!357 = !{!"_ZTSSt10unique_ptrIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EE", !358, i64 0}
!358 = !{!"_ZTSSt15__uniq_ptr_dataIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_ELb1ELb1EE", !359, i64 0}
!359 = !{!"_ZTSSt15__uniq_ptr_implIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EE", !360, i64 0}
!360 = !{!"_ZTSSt5tupleIJPN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EEE", !361, i64 0}
!361 = !{!"_ZTSSt11_Tuple_implILm0EJPN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EEE", !362, i64 0}
!362 = !{!"_ZTSSt10_Head_baseILm0EPN14HighsNodeQueue14AllocatorStateELb0EE", !6, i64 0}
!363 = !{!"_ZTSSt6vectorIN14HighsNodeQueue8OpenNodeESaIS1_EE", !364, i64 0}
!364 = !{!"_ZTSSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE", !365, i64 0}
!365 = !{!"_ZTSNSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE12_Vector_implE", !366, i64 0}
!366 = !{!"_ZTSNSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!367 = !{!"_ZTSSt14priority_queueIlSt6vectorIlSaIlEESt7greaterIlEE", !368, i64 0, !372, i64 24}
!368 = !{!"_ZTSSt6vectorIlSaIlEE", !369, i64 0}
!369 = !{!"_ZTSSt12_Vector_baseIlSaIlEE", !370, i64 0}
!370 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE12_Vector_implE", !371, i64 0}
!371 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!372 = !{!"_ZTSSt7greaterIlE"}
!373 = !{!"_ZTSSt10unique_ptrISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEE", !374, i64 0}
!374 = !{!"_ZTSSt15__uniq_ptr_dataISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteELb1ELb1EE", !375, i64 0}
!375 = !{!"_ZTSSt15__uniq_ptr_implISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEE", !376, i64 0}
!376 = !{!"_ZTSSt5tupleIJPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEEE", !377, i64 0}
!377 = !{!"_ZTSSt11_Tuple_implILm0EJPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEEE", !378, i64 0}
!378 = !{!"_ZTSSt10_Head_baseILm0EPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEELb0EE", !6, i64 0}
!379 = !{!"_ZTS22HighsPrimaDualIntegral", !12, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !12, i64 32}
!380 = !{!"_ZTS13HighsDebugSol"}
!381 = !{!12, !12, i64 0}
!382 = !{!90, !90, i64 0}
!383 = !{!13, !13, i64 0}
!384 = !{!10, !11, i64 32}
!385 = distinct !{!385, !386}
!386 = !{!"llvm.loop.mustprogress"}
!387 = !{i8 0, i8 2}
!388 = !{}
!389 = !{!22, !12, i64 26144}
!390 = !{!391, !6, i64 0}
!391 = !{!"_ZTSZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEE3$_1", !6, i64 0, !6, i64 8}
!392 = !{!393, !13, i64 0}
!393 = !{!"_ZTSSt4pairIidE", !13, i64 0, !12, i64 8}
!394 = !{!393, !12, i64 8}
!395 = !{!396, !90, i64 176}
!396 = !{!"_ZTS14HighsMipSolver", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !199, i64 32, !29, i64 40, !12, i64 64, !12, i64 72, !12, i64 80, !12, i64 88, !12, i64 96, !12, i64 104, !12, i64 112, !11, i64 120, !11, i64 128, !12, i64 136, !6, i64 144, !194, i64 152, !90, i64 176, !13, i64 180, !13, i64 184, !6, i64 192, !6, i64 200, !6, i64 208, !6, i64 216, !397, i64 224, !403, i64 232, !162, i64 360}
!397 = !{!"_ZTSSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EE", !398, i64 0}
!398 = !{!"_ZTSSt15__uniq_ptr_dataI18HighsMipSolverDataSt14default_deleteIS0_ELb1ELb1EE", !399, i64 0}
!399 = !{!"_ZTSSt15__uniq_ptr_implI18HighsMipSolverDataSt14default_deleteIS0_EE", !400, i64 0}
!400 = !{!"_ZTSSt5tupleIJP18HighsMipSolverDataSt14default_deleteIS0_EEE", !401, i64 0}
!401 = !{!"_ZTSSt11_Tuple_implILm0EJP18HighsMipSolverDataSt14default_deleteIS0_EEE", !402, i64 0}
!402 = !{!"_ZTSSt10_Head_baseILm0EP18HighsMipSolverDataLb0EE", !6, i64 0}
!403 = !{!"_ZTS16HighsMipAnalysis", !6, i64 0, !127, i64 8, !404, i64 40, !90, i64 72, !29, i64 80, !29, i64 104}
!404 = !{!"_ZTS15HighsTimerClock", !6, i64 0, !15, i64 8}
!405 = !{!22, !13, i64 26544}
!406 = !{!22, !11, i64 26416}
!407 = !{!11, !11, i64 0}
!408 = !{!22, !11, i64 26480}
!409 = !{!22, !11, i64 26472}
!410 = !{!22, !11, i64 26496}


; 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.HighsPseudocost = type { %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", double, double, double, double, i64, i64, i64, i32, double }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl" = type { %"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" }
%"struct.std::_Vector_base<int, std::allocator<int>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.3" = type { %"struct.std::_Vector_base.4" }
%"struct.std::_Vector_base.4" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsSearch = type { ptr, ptr, %class.HighsDomain, ptr, %class.HighsRandom, i64, i64, i64, i64, double, %class.HighsCDouble, %"class.std::vector", %"class.std::vector.3", i32, i8, i8, i8, i32, %"class.std::vector.3", %"class.std::vector.354", %class.HighsHashTable.309 }
%class.HighsDomain = type { %"class.std::vector.30", %"class.std::vector", %"class.std::vector.25", %"class.std::vector.63", %"class.std::vector.73", %"class.std::vector.78", %"class.std::vector.83", %"class.std::vector.83", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.30", %"class.std::vector", %"struct.HighsDomain::ObjectivePropagation", ptr, %"class.std::deque", %"class.std::deque.101", i8, %"struct.HighsDomain::Reason", i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %class.HighsHashTable, i8, %"class.std::vector.3", %"class.std::vector.3" }
%"class.std::vector.25" = type { %"struct.std::_Vector_base.26" }
%"struct.std::_Vector_base.26" = type { %"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<int, int>, std::allocator<std::pair<int, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.63" = type { %"struct.std::_Vector_base.64" }
%"struct.std::_Vector_base.64" = type { %"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomainChange, std::allocator<HighsDomainChange>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.73" = type { %"struct.std::_Vector_base.74" }
%"struct.std::_Vector_base.74" = type { %"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::Reason, std::allocator<HighsDomain::Reason>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.78" = type { %"struct.std::_Vector_base.79" }
%"struct.std::_Vector_base.79" = type { %"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<double, int>, std::allocator<std::pair<double, int>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.83" = type { %"struct.std::_Vector_base.84" }
%"struct.std::_Vector_base.84" = type { %"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsCDouble, std::allocator<HighsCDouble>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.30" = type { %"struct.std::_Vector_base.31" }
%"struct.std::_Vector_base.31" = type { %"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl" }
%"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl" = type { %"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<unsigned char, std::allocator<unsigned char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"struct.HighsDomain::ObjectivePropagation" = type { ptr, ptr, ptr, %class.HighsCDouble, i32, double, i8, %"class.std::vector.88", %"class.std::vector.25", %"class.std::vector.3", %"class.std::vector.93" }
%"class.std::vector.88" = type { %"struct.std::_Vector_base.89" }
%"struct.std::_Vector_base.89" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::ObjectiveContribution, std::allocator<HighsDomain::ObjectivePropagation::ObjectiveContribution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.93" = type { %"struct.std::_Vector_base.94" }
%"struct.std::_Vector_base.94" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsDomain::ObjectivePropagation::PartitionCliqueData, std::allocator<HighsDomain::ObjectivePropagation::PartitionCliqueData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::deque" = type { %"class.std::_Deque_base" }
%"class.std::_Deque_base" = type { %"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl" }
%"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl" = type { %"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl_data" }
%"struct.std::_Deque_base<HighsDomain::CutpoolPropagation, std::allocator<HighsDomain::CutpoolPropagation>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator", %"struct.std::_Deque_iterator" }
%"struct.std::_Deque_iterator" = type { ptr, ptr, ptr, ptr }
%"class.std::deque.101" = type { %"class.std::_Deque_base.102" }
%"class.std::_Deque_base.102" = type { %"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl" }
%"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl" = type { %"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl_data" }
%"struct.std::_Deque_base<HighsDomain::ConflictPoolPropagation, std::allocator<HighsDomain::ConflictPoolPropagation>>::_Deque_impl_data" = type { ptr, i64, %"struct.std::_Deque_iterator.106", %"struct.std::_Deque_iterator.106" }
%"struct.std::_Deque_iterator.106" = type { ptr, ptr, ptr, ptr }
%"struct.HighsDomain::Reason" = type { i32, i32 }
%class.HighsHashTable = type { %"class.std::unique_ptr.107", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.107" = type { %"struct.std::__uniq_ptr_data.108" }
%"struct.std::__uniq_ptr_data.108" = type { %"class.std::__uniq_ptr_impl.109" }
%"class.std::__uniq_ptr_impl.109" = type { %"class.std::tuple.110" }
%"class.std::tuple.110" = type { %"struct.std::_Tuple_impl.111" }
%"struct.std::_Tuple_impl.111" = type { %"struct.std::_Head_base.114" }
%"struct.std::_Head_base.114" = type { ptr }
%"class.std::unique_ptr.115" = type { %"struct.std::__uniq_ptr_data.116" }
%"struct.std::__uniq_ptr_data.116" = type { %"class.std::__uniq_ptr_impl.117" }
%"class.std::__uniq_ptr_impl.117" = type { %"class.std::tuple.118" }
%"class.std::tuple.118" = type { %"struct.std::_Tuple_impl.119" }
%"struct.std::_Tuple_impl.119" = type { %"struct.std::_Head_base.122" }
%"struct.std::_Head_base.122" = type { ptr }
%class.HighsRandom = type { i64 }
%class.HighsCDouble = type { double, double }
%"class.std::vector.354" = type { %"struct.std::_Vector_base.355" }
%"struct.std::_Vector_base.355" = type { %"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsSearch::NodeData, std::allocator<HighsSearch::NodeData>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsHashTable.309 = type { %"class.std::unique_ptr.310", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.310" = type { %"struct.std::__uniq_ptr_data.311" }
%"struct.std::__uniq_ptr_data.311" = type { %"class.std::__uniq_ptr_impl.312" }
%"class.std::__uniq_ptr_impl.312" = type { %"class.std::tuple.313" }
%"class.std::tuple.313" = type { %"struct.std::_Tuple_impl.314" }
%"struct.std::_Tuple_impl.314" = type { %"struct.std::_Head_base.317" }
%"struct.std::_Head_base.317" = type { ptr }
%"class.__gnu_cxx::__normal_iterator.359" = type { ptr }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%class.HighsLpRelaxation = type <{ ptr, %class.Highs, %"class.std::vector.238", %"class.std::vector.53", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %class.HVectorBase, %class.HighsSparseVectorSum, double, i8, [7 x i8], double, %"class.std::shared_ptr", i8, [7 x i8], i64, i64, double, i64, i64, i32, i32, i8, [7 x i8] }>
%class.Highs = type { ptr, %struct.HighsSolution, %struct.HighsBasis, %struct.ICrashInfo, %class.HighsModel, %"class.std::vector.157", %class.HighsModel, %class.HighsTimer, %struct.HighsCallback, %class.HighsOptions, %class.HighsInfo, %struct.HighsRanging, %class.HighsIis, %"class.std::vector.8", i32, i32, i8, double, %"class.std::vector.3", %"class.std::vector.3", %class.HighsSparseMatrix, %class.HEkk, %struct.HighsPresolveLog, i32, i8, i32, i8, %class.PresolveComponent }
%struct.HighsSolution = type { i8, i8, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3" }
%struct.HighsBasis = type { i8, i8, i8, i8, i32, i32, %"class.std::__cxx11::basic_string", %"class.std::vector.123", %"class.std::vector.123" }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::vector.123" = type { %"struct.std::_Vector_base.124" }
%"struct.std::_Vector_base.124" = type { %"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsBasisStatus, std::allocator<HighsBasisStatus>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.ICrashInfo = type { i32, double, double, double, double, double, %"class.std::vector.128", %"class.std::vector.3", double }
%"class.std::vector.128" = type { %"struct.std::_Vector_base.129" }
%"struct.std::_Vector_base.129" = type { %"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl" }
%"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl" = type { %"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl_data" }
%"struct.std::_Vector_base<ICrashIterationDetails, std::allocator<ICrashIterationDetails>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.157" = type { %"struct.std::_Vector_base.158" }
%"struct.std::_Vector_base.158" = type { %"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsLinearObjective, std::allocator<HighsLinearObjective>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsModel = type { %class.HighsLp, %class.HighsHessian }
%class.HighsLp = type { i32, i32, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %class.HighsSparseMatrix, i32, double, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, i32, %"class.std::vector.15", %"class.std::vector.15", %"class.std::vector.133", %struct.HighsNameHash, %struct.HighsNameHash, i32, i32, %struct.HighsScale, i8, i8, i32, i8, %struct.HighsLpMods }
%"class.std::vector.15" = type { %"struct.std::_Vector_base.16" }
%"struct.std::_Vector_base.16" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.133" = type { %"struct.std::_Vector_base.134" }
%"struct.std::_Vector_base.134" = type { %"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsVarType, std::allocator<HighsVarType>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsNameHash = type { %"class.std::unordered_map" }
%"class.std::unordered_map" = type { %"class.std::_Hashtable.138" }
%"class.std::_Hashtable.138" = type { ptr, i64, %"struct.std::__detail::_Hash_node_base", i64, %"struct.std::__detail::_Prime_rehash_policy", ptr }
%"struct.std::__detail::_Hash_node_base" = type { ptr }
%"struct.std::__detail::_Prime_rehash_policy" = type { float, i64 }
%struct.HighsScale = type { i32, i8, i32, i32, double, %"class.std::vector.3", %"class.std::vector.3" }
%struct.HighsLpMods = type { %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.133", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3" }
%class.HighsHessian = type { i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%class.HighsTimer = type <{ ptr, double, i32, [4 x i8], %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.15", i32, i32, i32, [4 x i8] }>
%struct.HighsCallback = type { %"class.std::function", ptr, ptr, %"class.std::vector.162", %struct.HighsCallbackDataOut, %struct.HighsCallbackDataIn }
%"class.std::function" = type { %"class.std::_Function_base", ptr }
%"class.std::_Function_base" = type { %"union.std::_Any_data", ptr }
%"union.std::_Any_data" = type { %"union.std::_Nocopy_types" }
%"union.std::_Nocopy_types" = type { { i64, i64 } }
%"class.std::vector.162" = type { %"struct.std::_Bvector_base" }
%"struct.std::_Bvector_base" = type { %"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl" }
%"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl" = type { %"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl_data" }
%"struct.std::_Bvector_base<std::allocator<bool>>::_Bvector_impl_data" = type { %"struct.std::_Bit_iterator", %"struct.std::_Bit_iterator", ptr }
%"struct.std::_Bit_iterator" = type { %"struct.std::_Bit_iterator_base.base", [4 x i8] }
%"struct.std::_Bit_iterator_base.base" = type <{ ptr, i32 }>
%struct.HighsCallbackDataOut = type { i32, double, i32, i32, i32, double, i64, i64, double, double, double, ptr, i32, i32, i32, ptr, ptr, ptr, ptr, ptr, i32 }
%struct.HighsCallbackDataIn = type { i32, ptr }
%class.HighsOptions = type <{ %struct.HighsOptionsStruct, %"class.std::vector.20", i32, [4 x i8] }>
%struct.HighsOptionsStruct = type { ptr, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", double, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, %"class.std::__cxx11::basic_string", double, double, double, double, double, double, double, double, double, double, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, %"class.std::__cxx11::basic_string", i8, i8, i8, i32, i32, %"class.std::__cxx11::basic_string", i8, i8, i8, i32, i8, i8, i32, i32, double, i32, i32, i32, i8, i32, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i8, i8, i8, i8, double, double, double, double, double, double, double, double, double, double, double, i8, i8, i8, i8, i32, double, i8, i8, %"class.std::__cxx11::basic_string", double, i32, i32, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, double, i8, i8, %"class.std::__cxx11::basic_string", i8, i32, %struct.HighsLogOptions }
%struct.HighsLogOptions = type <{ ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::function", ptr, i8, [7 x i8] }>
%"class.std::vector.20" = type { %"struct.std::_Vector_base.21" }
%"struct.std::_Vector_base.21" = type { %"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl" }
%"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl" = type { %"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<OptionRecord *, std::allocator<OptionRecord *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsInfo = type { ptr, %struct.HighsInfoStruct, %"class.std::vector.166" }
%struct.HighsInfoStruct = type { i8, i64, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, i32, double, double, i32, double, double, double, double, double }
%"class.std::vector.166" = type { %"struct.std::_Vector_base.167" }
%"struct.std::_Vector_base.167" = type { %"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl" }
%"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl" = type { %"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<InfoRecord *, std::allocator<InfoRecord *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsRanging = type { i8, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord, %struct.HighsRangingRecord }
%struct.HighsRangingRecord = type { %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector" }
%class.HighsIis = type { i8, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.171" }
%"class.std::vector.171" = type { %"struct.std::_Vector_base.172" }
%"struct.std::_Vector_base.172" = type { %"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsIisInfo, std::allocator<HighsIisInfo>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.8" = type { %"struct.std::_Vector_base.9" }
%"struct.std::_Vector_base.9" = type { %"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsObjectiveSolution, std::allocator<HighsObjectiveSolution>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsSparseMatrix = type { i32, i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%class.HEkk = type { ptr, ptr, ptr, %class.HighsSimplexAnalysis, %class.HighsLp, %"class.std::__cxx11::basic_string", %struct.HighsSimplexStatus, [3 x i8], %struct.HighsSimplexInfo, i32, %struct.SimplexBasis, %class.HighsHashTable.199, %class.HighsRandom, %"class.std::vector.3", %"class.std::vector.3", i8, %class.HighsSparseMatrix, %class.HighsSparseMatrix, %class.HSimplexNla, %struct.HotStart, double, double, double, i32, i32, i32, i32, i8, i8, i32, i32, i32, %"class.std::vector", %"class.std::vector.3", %struct.HighsRayRecord, %struct.HighsRayRecord, i32, i32, i32, double, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", double, double, double, i32, i32, i8, i32, i8, i8, i8, i8, double, %"class.std::vector.218", %"class.std::vector.3", %struct.HighsSimplexStats }
%class.HighsSimplexAnalysis = type { ptr, %"class.std::vector.176", %"class.std::vector.176", ptr, i32, i32, i32, %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %struct.HighsLogOptions, i8, i8, i8, i8, i8, i8, i8, i32, i32, i32, i32, i32, i32, i32, i32, i32, %"class.std::__cxx11::basic_string", double, double, double, double, double, double, double, double, double, double, double, double, i32, i32, double, double, i32, double, double, i32, double, double, double, double, double, double, double, double, double, double, i32, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, [4 x i8], %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, i32, i32, i32, i32, double, double, i32, i32, i32, i32, i32, double, double, i32, double, double, i32, i32, double, double, %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.181", %"class.std::unique_ptr.186", i32, i32, i32, i32, double, double, double, double, double, double, double, double, double, double, i32, i32, double, double, double, i8, double, double, i32, i32, i32, i32, i32, double, double, double, double, double, double, double, double, double, i32, i32, [10 x %"struct.HighsSimplexAnalysis::AnIterOpRec"], i32, i32, [22 x %"struct.HighsSimplexAnalysis::AnIterTraceRec"], [12 x i32], [3 x i32], [4 x i8], %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution, %struct.HighsValueDistribution }
%"class.std::vector.176" = type { %"struct.std::_Vector_base.177" }
%"struct.std::_Vector_base.177" = type { %"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsTimerClock, std::allocator<HighsTimerClock>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.181" = type { %"struct.std::_Vector_base.182" }
%"struct.std::_Vector_base.182" = type { %"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl" }
%"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl" = type { %"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl_data" }
%"struct.std::_Vector_base<TranStageAnalysis, std::allocator<TranStageAnalysis>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::unique_ptr.186" = type { %"struct.std::__uniq_ptr_data.187" }
%"struct.std::__uniq_ptr_data.187" = type { %"class.std::__uniq_ptr_impl.188" }
%"class.std::__uniq_ptr_impl.188" = type { %"class.std::tuple.189" }
%"class.std::tuple.189" = type { %"struct.std::_Tuple_impl.190" }
%"struct.std::_Tuple_impl.190" = type { %"struct.std::_Head_base.193" }
%"struct.std::_Head_base.193" = type { ptr }
%"struct.HighsSimplexAnalysis::AnIterOpRec" = type { double, double, i32, i32, i32, i32, double, i32, %"class.std::__cxx11::basic_string", %struct.HighsValueDistribution }
%"struct.HighsSimplexAnalysis::AnIterTraceRec" = type { double, double, [10 x double], double, i32, i32, i32 }
%struct.HighsValueDistribution = type <{ %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", i32, i32, i32, [4 x i8], double, double, %"class.std::vector.3", %"class.std::vector", i32, [4 x i8] }>
%struct.HighsSimplexStatus = type { i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8 }
%struct.HighsSimplexInfo = type <{ %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", i32, i32, i8, i8, [6 x i8], %struct.SimplexBasis, i32, i32, i32, [4 x i8], %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector.3", i32, i32, i32, i32, double, double, double, double, i32, i32, double, double, double, double, double, double, double, double, double, double, i8, [7 x i8], double, double, i32, [4 x i8], double, double, double, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i8, i32, [4 x i8], double, double, i32, [4 x i8], double, double, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, double, double, double, double, i32, [4 x i8] }>
%struct.SimplexBasis = type { %"class.std::vector", %"class.std::vector.194", %"class.std::vector.194", i64, i32, i32, %"class.std::__cxx11::basic_string" }
%"class.std::vector.194" = type { %"struct.std::_Vector_base.195" }
%"struct.std::_Vector_base.195" = type { %"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl" }
%"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl" = type { %"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<signed char, std::allocator<signed char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HighsHashTable.199 = type { %"class.std::unique_ptr.200", %"class.std::unique_ptr.115", i64, i64, i64 }
%"class.std::unique_ptr.200" = type { %"struct.std::__uniq_ptr_data.201" }
%"struct.std::__uniq_ptr_data.201" = type { %"class.std::__uniq_ptr_impl.202" }
%"class.std::__uniq_ptr_impl.202" = type { %"class.std::tuple.203" }
%"class.std::tuple.203" = type { %"struct.std::_Tuple_impl.204" }
%"struct.std::_Tuple_impl.204" = type { %"struct.std::_Head_base.207" }
%"struct.std::_Head_base.207" = type { ptr }
%class.HSimplexNla = type { ptr, ptr, ptr, ptr, ptr, ptr, %class.HFactor, i8, double, %struct.ProductFormUpdate, %struct.SimplexIterate }
%class.HFactor = type { double, double, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %struct.RefactorInfo, i32, i32, i32, i32, i32, i32, i32, double, i8, ptr, ptr, ptr, ptr, double, double, i32, double, %"class.std::unique_ptr.208", %struct.HighsLogOptions, i8, i8, i32, i32, ptr, i32, %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.216", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", i32, i32, %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %class.HVectorBase }
%struct.RefactorInfo = type { i8, %"class.std::vector", %"class.std::vector", %"class.std::vector.194", double }
%"class.std::unique_ptr.208" = type { %"struct.std::__uniq_ptr_data.209" }
%"struct.std::__uniq_ptr_data.209" = type { %"class.std::__uniq_ptr_impl.210" }
%"class.std::__uniq_ptr_impl.210" = type { %"class.std::tuple.211" }
%"class.std::tuple.211" = type { %"struct.std::_Tuple_impl.212" }
%"struct.std::_Tuple_impl.212" = type { %"struct.std::_Head_base.215" }
%"struct.std::_Head_base.215" = type { ptr }
%"class.std::vector.216" = type { %"struct.std::_Vector_base.217" }
%"struct.std::_Vector_base.217" = type { %"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl" }
%"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl" = type { %"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl_data" }
%"struct.std::_Vector_base<char, std::allocator<char>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.ProductFormUpdate = type { i8, i32, i32, %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3" }
%struct.SimplexIterate = type { i8, %struct.SimplexBasis, %struct.InvertibleRepresentation, %"class.std::vector.3" }
%struct.InvertibleRepresentation = type { %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::vector.3" }
%struct.HotStart = type { i8, %struct.RefactorInfo, %"class.std::vector.194" }
%struct.HighsRayRecord = type { i32, i32, %"class.std::vector.3" }
%"class.std::vector.218" = type { %"struct.std::_Vector_base.219" }
%"struct.std::_Vector_base.219" = type { %"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsSimplexBadBasisChangeRecord, std::allocator<HighsSimplexBadBasisChangeRecord>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%struct.HighsSimplexStats = type { i8, i32, i32, i32, i32, double, double, double, double }
%struct.HighsPresolveLog = type { %"class.std::vector.223" }
%"class.std::vector.223" = type { %"struct.std::_Vector_base.224" }
%"struct.std::_Vector_base.224" = type { %"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsPresolveRuleLog, std::allocator<HighsPresolveRuleLog>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.PresolveComponent = type { %class.HighsComponent.base, %struct.PresolveComponentInfo, %struct.PresolveComponentData, ptr, ptr, i32, i32 }
%class.HighsComponent.base = type <{ ptr, %struct.HighsComponentInfo, %struct.HighsComponentData, %struct.HighsComponentOptions }>
%struct.HighsComponentInfo = type { i8 }
%struct.HighsComponentData = type { i8 }
%struct.HighsComponentOptions = type { i8 }
%struct.PresolveComponentInfo = type { ptr, %struct.HighsComponentInfo, i32, i32, i32, double, double }
%struct.PresolveComponentData = type { ptr, %struct.HighsComponentData, %class.HighsLp, %"class.presolve::HighsPostsolveStack", %struct.HighsSolution, %struct.HighsBasis, %struct.HighsPresolveLog }
%"class.presolve::HighsPostsolveStack" = type { i64, double, double, double, double, %class.HighsDataStack, %"class.std::vector.228", %"class.std::vector", %"class.std::vector", %"class.std::vector.30", %"class.std::vector.233", %"class.std::vector.233", i32, i32 }
%class.HighsDataStack = type { %"class.std::vector.216", i64 }
%"class.std::vector.228" = type { %"struct.std::_Vector_base.229" }
%"struct.std::_Vector_base.229" = type { %"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>, std::allocator<std::pair<presolve::HighsPostsolveStack::ReductionType, unsigned long>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.233" = type { %"struct.std::_Vector_base.234" }
%"struct.std::_Vector_base.234" = type { %"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl" }
%"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl" = type { %"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl_data" }
%"struct.std::_Vector_base<presolve::HighsPostsolveStack::Nonzero, std::allocator<presolve::HighsPostsolveStack::Nonzero>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.238" = type { %"struct.std::_Vector_base.239" }
%"struct.std::_Vector_base.239" = type { %"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl" }
%"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl" = type { %"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl_data" }
%"struct.std::_Vector_base<HighsLpRelaxation::LpRow, std::allocator<HighsLpRelaxation::LpRow>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.53" = type { %"struct.std::_Vector_base.54" }
%"struct.std::_Vector_base.54" = type { %"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::pair<int, double>, std::allocator<std::pair<int, double>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%class.HVectorBase = type { i32, i32, %"class.std::vector", %"class.std::vector.3", double, %"class.std::vector.216", %"class.std::vector", ptr, i8, i32, %"class.std::vector", %"class.std::vector.3" }
%class.HighsSparseVectorSum = type { %"class.std::vector.83", %"class.std::vector" }
%"class.std::shared_ptr" = type { %"class.std::__shared_ptr" }
%"class.std::__shared_ptr" = type { ptr, %"class.std::__shared_count" }
%"class.std::__shared_count" = type { ptr }
%class.HeuristicNeighbourhood = type <{ ptr, i32, [4 x i8], %class.HighsHashTable, i64, i64, i32, [4 x i8] }>
%class.anon.361 = type { ptr, ptr }
%"class.__gnu_cxx::__normal_iterator.362" = type { ptr }

@.str.52 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [83 x i8], align 1
@__PRETTY_FUNCTION__._ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE = external hidden unnamed_addr constant [62 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(...)

; 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 nounwind uwtable
declare dso_local noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1 align 2

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

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

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN21HighsPrimalHeuristics11solveSubMipERK7HighsLpRK10HighsBasisdSt6vectorIdSaIdEES8_iii(ptr noundef nonnull align 8 dereferenceable(104), ptr noundef nonnull align 8 dereferenceable(920), ptr noundef nonnull align 8 dereferenceable(96), double noundef, ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK14HighsMipSolver6numColEv(ptr noundef nonnull align 8 dereferenceable(496)) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN21HighsPrimalHeuristics25determineTargetFixingRateEv(ptr noundef nonnull align 8 dereferenceable(104)) local_unnamed_addr #2 align 2

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

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN22HeuristicNeighbourhoodC2ER14HighsMipSolverR11HighsDomain(ptr noundef nonnull align 8 dereferenceable(76), ptr noundef nonnull align 8 dereferenceable(496), ptr noundef nonnull align 8 dereferenceable(824)) unnamed_addr #2 align 2

declare noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824)) local_unnamed_addr #1 align 2

declare void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824), ptr noundef nonnull align 8 dereferenceable(224)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76)) local_unnamed_addr #2 align 2

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

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

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

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE(ptr noundef nonnull align 8 dereferenceable(104) %0, ptr nocapture noundef nonnull readnone align 8 dereferenceable(24) %1) local_unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca %class.HighsPseudocost, align 8
  %4 = alloca %class.HighsSearch, align 8
  %5 = alloca %"class.__gnu_cxx::__normal_iterator.359", align 8
  %6 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %7 = alloca %"class.__gnu_cxx::__normal_iterator.359", align 8
  %8 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %9 = alloca %class.HighsLpRelaxation, align 8
  %10 = alloca double, align 8
  %11 = alloca %class.HeuristicNeighbourhood, align 8
  %12 = alloca double, align 8
  %13 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %14 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %15 = alloca double, align 8
  %16 = alloca double, align 8
  %17 = alloca %class.anon.361, align 8
  %18 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %19 = alloca %"class.__gnu_cxx::__normal_iterator.362", align 8
  %20 = alloca %"class.std::vector.3", align 8
  %21 = alloca %"class.std::vector.3", align 8
  %22 = load ptr, ptr %0, align 8, !tbaa !5
  %23 = getelementptr inbounds i8, ptr %22, i64 224
  %24 = tail call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %23) #8
  %25 = getelementptr inbounds i8, ptr %24, i64 912
  %26 = tail call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %25)
  br i1 %26, label %402, label %27

27:                                               ; preds = %2
  call void @llvm.lifetime.start.p0(i64 360, ptr nonnull %3) #8
  %28 = load ptr, ptr %0, align 8, !tbaa !5
  %29 = getelementptr inbounds i8, ptr %28, i64 224
  %30 = tail call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %29) #8
  %31 = getelementptr inbounds i8, ptr %30, i64 23168
  call void @_ZN15HighsPseudocostC2ERKS_(ptr noundef nonnull align 8 dereferenceable(360) %3, ptr noundef nonnull align 8 dereferenceable(360) %31)
  call void @llvm.lifetime.start.p0(i64 1064, ptr nonnull %4) #8
  %32 = load ptr, ptr %0, align 8, !tbaa !5
  invoke void @_ZN11HighsSearchC1ER14HighsMipSolverR15HighsPseudocost(ptr noundef nonnull align 8 dereferenceable(1064) %4, ptr noundef nonnull align 8 dereferenceable(496) %32, ptr noundef nonnull align 8 dereferenceable(360) %3)
          to label %33 unwind label %85

33:                                               ; preds = %27
  %34 = call noundef nonnull align 8 dereferenceable(824) ptr @_ZN11HighsSearch14getLocalDomainEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  call void @_ZN11HighsSearch12setHeuristicEb(ptr noundef nonnull align 8 dereferenceable(1064) %4, i1 noundef zeroext true)
  %35 = getelementptr inbounds i8, ptr %0, i64 80
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %6) #8
  %36 = call ptr @_ZNSt6vectorIiSaIiEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  %37 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  %38 = invoke ptr @"_ZSt9remove_ifIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEZN21HighsPrimalHeuristics4RENSERKS3_IdSaIdEEE3$_0ET_SD_SD_T0_"(ptr %36, ptr %37, ptr nonnull %0)
          to label %39 unwind label %87

39:                                               ; preds = %33
  store ptr %38, ptr %6, align 8
  call void @_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEC2IPivEERKNS0_IT_S5_EE(ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull align 8 dereferenceable(8) %6) #8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %8) #8
  %40 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  store ptr %40, ptr %8, align 8
  call void @_ZN9__gnu_cxx17__normal_iteratorIPKiSt6vectorIiSaIiEEEC2IPivEERKNS0_IT_S5_EE(ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef nonnull align 8 dereferenceable(8) %8) #8
  %41 = load ptr, ptr %5, align 8
  %42 = load ptr, ptr %7, align 8
  %43 = invoke ptr @_ZNSt6vectorIiSaIiEE5eraseEN9__gnu_cxx17__normal_iteratorIPKiS1_EES6_(ptr noundef nonnull align 8 dereferenceable(24) %35, ptr %41, ptr %42)
          to label %44 unwind label %89

44:                                               ; preds = %39
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #8
  call void @llvm.lifetime.start.p0(i64 21432, ptr nonnull %9) #8
  %45 = load ptr, ptr %0, align 8, !tbaa !5
  %46 = getelementptr inbounds i8, ptr %45, i64 224
  %47 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %46) #8
  %48 = getelementptr inbounds i8, ptr %47, i64 1736
  invoke void @_ZN17HighsLpRelaxationC1ERKS_(ptr noundef nonnull align 8 dereferenceable(21425) %9, ptr noundef nonnull align 8 dereferenceable(21425) %48)
          to label %49 unwind label %92

49:                                               ; preds = %44
  %50 = load ptr, ptr %0, align 8, !tbaa !5
  %51 = getelementptr inbounds i8, ptr %50, i64 224
  %52 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %51) #8
  %53 = getelementptr inbounds i8, ptr %52, i64 26568
  %54 = load double, ptr %53, align 8, !tbaa !18
  invoke void @_ZN17HighsLpRelaxation17setObjectiveLimitEd(ptr noundef nonnull align 8 dereferenceable(21425) %9, double noundef %54)
          to label %55 unwind label %94

55:                                               ; preds = %49
  call void @_ZN17HighsLpRelaxation30setAdjustSymmetricBranchingColEb(ptr noundef nonnull align 8 dereferenceable(21425) %9, i1 noundef zeroext false)
  call void @_ZN11HighsSearch15setLpRelaxationEP17HighsLpRelaxation(ptr noundef nonnull align 8 dereferenceable(1064) %4, ptr noundef nonnull %9)
  %56 = call noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
  %57 = load ptr, ptr %0, align 8, !tbaa !5
  %58 = call noundef i32 @_ZNK14HighsMipSolver6numColEv(ptr noundef nonnull align 8 dereferenceable(496) %57)
  %59 = add nsw i32 %58, -1
  %60 = getelementptr inbounds i8, ptr %34, i64 776
  %61 = call noundef ptr @_ZNSt6vectorIdSaIdEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %60) #8
  %62 = getelementptr inbounds i8, ptr %34, i64 800
  %63 = call noundef ptr @_ZNSt6vectorIdSaIdEE4dataEv(ptr noundef nonnull align 8 dereferenceable(24) %62) #8
  %64 = invoke noundef i32 @_ZN5Highs16changeColsBoundsEiiPKdS1_(ptr noundef nonnull align 8 dereferenceable(20928) %56, i32 noundef 0, i32 noundef %59, ptr noundef %61, ptr noundef %63)
          to label %65 unwind label %94

65:                                               ; preds = %55
  call void @_ZN11HighsDomain16clearChangedColsEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
  invoke void @_ZN11HighsSearch13createNewNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %66 unwind label %94

66:                                               ; preds = %65
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #8
  %67 = invoke noundef double @_ZN21HighsPrimalHeuristics25determineTargetFixingRateEv(ptr noundef nonnull align 8 dereferenceable(104) %0)
          to label %68 unwind label %96

68:                                               ; preds = %66
  store double %67, ptr %10, align 8, !tbaa !378
  call void @llvm.lifetime.start.p0(i64 80, ptr nonnull %11) #8
  %69 = load ptr, ptr %0, align 8, !tbaa !5
  invoke void @_ZN22HeuristicNeighbourhoodC2ER14HighsMipSolverR11HighsDomain(ptr noundef nonnull align 8 dereferenceable(76) %11, ptr noundef nonnull align 8 dereferenceable(496) %69, ptr noundef nonnull align 8 dereferenceable(824) %34)
          to label %.preheader212 unwind label %98

.preheader212:                                    ; preds = %68
  %70 = getelementptr inbounds i8, ptr %17, i64 8
  %71 = getelementptr inbounds i8, ptr %0, i64 32
  br label %72

72:                                               ; preds = %.preheader212, %400
  %.0122 = phi i32 [ %.2124, %400 ], [ -1, %.preheader212 ]
  %.0119 = phi i32 [ %386, %400 ], [ 1, %.preheader212 ]
  %73 = add i32 %.0122, 1
  invoke void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %74 unwind label %.loopexit.split-lp204.loopexit

74:                                               ; preds = %72
  %75 = call noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  %76 = icmp sgt i32 %75, %.0119
  br i1 %76, label %77, label %100

77:                                               ; preds = %74
  %78 = invoke noundef zeroext i1 @_ZN11HighsSearch19backtrackUntilDepthEi(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef %.0119)
          to label %79 unwind label %.loopexit.split-lp204.loopexit

79:                                               ; preds = %77
  br i1 %78, label %100, label %80

80:                                               ; preds = %79
  %81 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %82 unwind label %.loopexit.split-lp204.loopexit.split-lp

82:                                               ; preds = %80
  %83 = load i64, ptr %71, align 8, !tbaa !379
  %84 = add i64 %83, %81
  store i64 %84, ptr %71, align 8, !tbaa !379
  br label %.thread191

85:                                               ; preds = %27
  %86 = landingpad { ptr, i32 }
          cleanup
  br label %408

87:                                               ; preds = %33
  %88 = landingpad { ptr, i32 }
          cleanup
  br label %91

89:                                               ; preds = %39
  %90 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #8
  br label %91

91:                                               ; preds = %89, %87
  %.pn = phi { ptr, i32 } [ %90, %89 ], [ %88, %87 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #8
  br label %407

92:                                               ; preds = %44
  %93 = landingpad { ptr, i32 }
          cleanup
  br label %406

94:                                               ; preds = %65, %55, %49
  %95 = landingpad { ptr, i32 }
          cleanup
  br label %405

96:                                               ; preds = %66
  %97 = landingpad { ptr, i32 }
          cleanup
  br label %404

98:                                               ; preds = %68
  %99 = landingpad { ptr, i32 }
          cleanup
  br label %403

.loopexit203.loopexit.split:                      ; preds = %127, %.outer.split
  %lpad.loopexit208 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.loopexit203.loopexit.split-lp:                   ; preds = %120, %117
  %lpad.loopexit.split-lp209 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.loopexit.split-lp204.loopexit:                   ; preds = %327, %293, %77, %72
  %lpad.loopexit213 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.loopexit.split-lp204.loopexit.split-lp:          ; preds = %318, %309, %308, %307, %288, %112, %80
  %lpad.loopexit.split-lp214 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

100:                                              ; preds = %79, %74
  %101 = call noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  br i1 %101, label %.outer, label %102

102:                                              ; preds = %100
  call void @__assert_fail(ptr noundef nonnull @.str.52, ptr noundef nonnull @.str.53, i32 noundef 374, ptr noundef nonnull @__PRETTY_FUNCTION__._ZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEE) #9
  unreachable

.outer.split:                                     ; preds = %.outer, %.thread185
  %103 = invoke noundef i32 @_ZN11HighsSearch12evaluateNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %104 unwind label %.loopexit203.loopexit.split

104:                                              ; preds = %.outer.split
  %105 = call noundef zeroext i1 @_ZNK11HighsSearch17currentNodePrunedEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  br i1 %105, label %.split, label %127

.split:                                           ; preds = %104, %123
  %106 = add i32 %.1123.ph, 1
  %107 = load ptr, ptr %0, align 8, !tbaa !5
  %108 = getelementptr inbounds i8, ptr %107, i64 224
  %109 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %108) #8
  %110 = getelementptr inbounds i8, ptr %109, i64 912
  %111 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %110)
  br i1 %111, label %112, label %117

112:                                              ; preds = %.split
  %113 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %114 unwind label %.loopexit.split-lp204.loopexit.split-lp

114:                                              ; preds = %112
  %115 = load i64, ptr %71, align 8, !tbaa !379
  %116 = add i64 %115, %113
  store i64 %116, ptr %71, align 8, !tbaa !379
  br label %.thread191

117:                                              ; preds = %.split
  %118 = invoke noundef zeroext i1 @_ZN11HighsSearch9backtrackEb(ptr noundef nonnull align 8 dereferenceable(1064) %4, i1 noundef zeroext true)
          to label %119 unwind label %.loopexit203.loopexit.split-lp

119:                                              ; preds = %117
  br i1 %118, label %120, label %.thread187

120:                                              ; preds = %119
  invoke void @_ZN22HeuristicNeighbourhood11backtrackedEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %.outer unwind label %.loopexit203.loopexit.split-lp, !llvm.loop !380

.outer:                                           ; preds = %100, %120
  %.1123.ph = phi i32 [ %106, %120 ], [ %73, %100 ]
  %121 = icmp sgt i32 %.1123.ph, 9
  br i1 %121, label %.outer.split.us, label %.outer.split

.outer.split.us:                                  ; preds = %.outer
  %122 = invoke noundef i32 @_ZN11HighsSearch12evaluateNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %123 unwind label %.loopexit203.loopexit.split.us.loopexit

123:                                              ; preds = %.outer.split.us
  %124 = call noundef zeroext i1 @_ZNK11HighsSearch17currentNodePrunedEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  br i1 %124, label %.split, label %125

125:                                              ; preds = %123
  %126 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %.thread187 unwind label %.loopexit203.loopexit.split.us.loopexit.split-lp

.loopexit203.loopexit.split.us.loopexit:          ; preds = %.outer.split.us
  %lpad.loopexit271 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.loopexit203.loopexit.split.us.loopexit.split-lp: ; preds = %125
  %lpad.loopexit.split-lp272 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

127:                                              ; preds = %104
  %128 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %129 unwind label %.loopexit203.loopexit.split

129:                                              ; preds = %127
  %130 = load double, ptr %10, align 8, !tbaa !378
  %131 = fcmp ult double %128, %130
  br i1 %131, label %132, label %.thread187

132:                                              ; preds = %129
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %12) #8
  %133 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %134 unwind label %146

134:                                              ; preds = %132
  %135 = fsub double 1.000000e+00, %133
  %136 = fneg double %135
  %137 = call double @llvm.fmuladd.f64(double %136, double 9.000000e-01, double 1.000000e+00)
  store double %137, ptr %12, align 8, !tbaa !378
  %138 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3minIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %12, ptr noundef nonnull align 8 dereferenceable(8) %10)
  %139 = load double, ptr %138, align 8, !tbaa !378
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #8
  %140 = invoke noundef nonnull align 8 dereferenceable(104) ptr @_ZNK17HighsLpRelaxation11getSolutionEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
          to label %141 unwind label %148

141:                                              ; preds = %134
  %142 = getelementptr inbounds i8, ptr %140, i64 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #8
  %143 = call ptr @_ZNSt6vectorIiSaIiEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  store ptr %143, ptr %13, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %14) #8
  %144 = call ptr @_ZNSt6vectorIiSaIiEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %35) #8
  store ptr %144, ptr %14, align 8
  %145 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %14) #8
  br i1 %145, label %.lr.ph, label %.loopexit197.thread

.loopexit197.thread:                              ; preds = %141
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #8
  br label %225

146:                                              ; preds = %132
  %147 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #8
  br label %.loopexit203

148:                                              ; preds = %.thread185, %134
  %149 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.lr.ph:                                           ; preds = %141, %.thread
  %.0131247 = phi i32 [ %.4135175, %.thread ], [ 0, %141 ]
  %150 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %151 = load i32, ptr %150, align 4, !tbaa !382
  %152 = sext i32 %151 to i64
  %153 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %152) #8
  %154 = load double, ptr %153, align 8, !tbaa !378
  %155 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %62, i64 noundef %152) #8
  %156 = load double, ptr %155, align 8, !tbaa !378
  %157 = fcmp oeq double %154, %156
  br i1 %157, label %.thread, label %158

158:                                              ; preds = %.lr.ph
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %15) #8
  %159 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %142, i64 noundef %152) #8
  %160 = load double, ptr %159, align 8, !tbaa !378
  %161 = load ptr, ptr %0, align 8, !tbaa !5
  %162 = getelementptr inbounds i8, ptr %161, i64 224
  %163 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %162) #8
  %164 = getelementptr inbounds i8, ptr %163, i64 26144
  %165 = load double, ptr %164, align 8, !tbaa !383
  %166 = fadd double %160, %165
  %167 = call double @llvm.floor.f64(double %166)
  store double %167, ptr %15, align 8, !tbaa !378
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #8
  %168 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNKSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %142, i64 noundef %152) #8
  %169 = load double, ptr %168, align 8, !tbaa !378
  %170 = load ptr, ptr %0, align 8, !tbaa !5
  %171 = getelementptr inbounds i8, ptr %170, i64 224
  %172 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %171) #8
  %173 = getelementptr inbounds i8, ptr %172, i64 26144
  %174 = load double, ptr %173, align 8, !tbaa !383
  %175 = fsub double %169, %174
  %176 = call double @llvm.ceil.f64(double %175)
  store double %176, ptr %16, align 8, !tbaa !378
  %177 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %62, i64 noundef %152) #8
  %178 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3minIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %15, ptr noundef nonnull align 8 dereferenceable(8) %177)
  %179 = load double, ptr %178, align 8, !tbaa !378
  store double %179, ptr %15, align 8, !tbaa !378
  %180 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %152) #8
  %181 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZSt3maxIdERKT_S2_S2_(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull align 8 dereferenceable(8) %180)
  %182 = load double, ptr %181, align 8, !tbaa !378
  store double %182, ptr %16, align 8, !tbaa !378
  %183 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %152) #8
  %184 = load double, ptr %183, align 8, !tbaa !378
  %185 = load double, ptr %15, align 8, !tbaa !378
  %186 = fcmp olt double %184, %185
  br i1 %186, label %187, label %200

187:                                              ; preds = %158
  %188 = add nsw i32 %.0131247, 1
  %189 = fadd double %185, -5.000000e-01
  invoke void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef %151, double noundef %185, double noundef %189)
          to label %190 unwind label %.loopexit198

190:                                              ; preds = %187
  %191 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
          to label %192 unwind label %.loopexit198

192:                                              ; preds = %190
  %193 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
  br i1 %193, label %194, label %200

194:                                              ; preds = %192
  %195 = load ptr, ptr %0, align 8, !tbaa !5
  %196 = getelementptr inbounds i8, ptr %195, i64 224
  %197 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %196) #8
  %198 = getelementptr inbounds i8, ptr %197, i64 688
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %34, ptr noundef nonnull align 8 dereferenceable(224) %198)
          to label %.thread176 unwind label %.loopexit.split-lp199

.loopexit198:                                     ; preds = %187, %190, %205, %208, %217
  %lpad.loopexit200 = landingpad { ptr, i32 }
          cleanup
  br label %199

.loopexit.split-lp199:                            ; preds = %194, %212
  %lpad.loopexit.split-lp201 = landingpad { ptr, i32 }
          cleanup
  br label %199

199:                                              ; preds = %.loopexit.split-lp199, %.loopexit198
  %lpad.phi202 = phi { ptr, i32 } [ %lpad.loopexit200, %.loopexit198 ], [ %lpad.loopexit.split-lp201, %.loopexit.split-lp199 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #8
  br label %.loopexit203

200:                                              ; preds = %192, %158
  %.1132 = phi i32 [ %188, %192 ], [ %.0131247, %158 ]
  %201 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %62, i64 noundef %152) #8
  %202 = load double, ptr %201, align 8, !tbaa !378
  %203 = load double, ptr %16, align 8, !tbaa !378
  %204 = fcmp ogt double %202, %203
  br i1 %204, label %205, label %217

205:                                              ; preds = %200
  %206 = add nsw i32 %.1132, 1
  %207 = fadd double %203, 5.000000e-01
  invoke void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef %151, double noundef %203, double noundef %207)
          to label %208 unwind label %.loopexit198

208:                                              ; preds = %205
  %209 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
          to label %210 unwind label %.loopexit198

210:                                              ; preds = %208
  %211 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
  br i1 %211, label %212, label %217

212:                                              ; preds = %210
  %213 = load ptr, ptr %0, align 8, !tbaa !5
  %214 = getelementptr inbounds i8, ptr %213, i64 224
  %215 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %214) #8
  %216 = getelementptr inbounds i8, ptr %215, i64 688
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %34, ptr noundef nonnull align 8 dereferenceable(224) %216)
          to label %.thread176 unwind label %.loopexit.split-lp199

217:                                              ; preds = %210, %200
  %.2133 = phi i32 [ %206, %210 ], [ %.1132, %200 ]
  %218 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %219 unwind label %.loopexit198

219:                                              ; preds = %217
  %220 = fcmp ult double %218, %139
  br i1 %220, label %221, label %.thread176

.thread176:                                       ; preds = %219, %194, %212
  %.3134.ph = phi i32 [ %206, %212 ], [ %188, %194 ], [ %.2133, %219 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #8
  br label %.loopexit197

221:                                              ; preds = %219
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #8
  br label %.thread

.thread:                                          ; preds = %.lr.ph, %221
  %.4135175 = phi i32 [ %.2133, %221 ], [ %.0131247, %.lr.ph ]
  %222 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %223 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPiSt6vectorIiSaIiEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %14) #8
  br i1 %223, label %.lr.ph, label %.loopexit197

.loopexit197:                                     ; preds = %.thread, %.thread176
  %.5136 = phi i32 [ %.3134.ph, %.thread176 ], [ %.4135175, %.thread ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #8
  %224 = icmp eq i32 %.5136, 0
  br i1 %224, label %225, label %.thread185

225:                                              ; preds = %.loopexit197.thread, %.loopexit197
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %17) #8
  store ptr %0, ptr %17, align 8, !tbaa !384
  store ptr %34, ptr %70, align 8, !tbaa !386
  %226 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
  %227 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %226) #8
  %228 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
  %229 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %228) #8
  invoke void @"_Z7pdqsortIN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS3_SaIS3_EEEEZN21HighsPrimalHeuristics4RENSERKS5_IdSaIdEEE3$_2EvT_SF_T0_"(ptr %227, ptr %229, ptr nonnull %17, ptr nonnull %9)
          to label %230 unwind label %235

230:                                              ; preds = %225
  %231 = call noundef nonnull align 8 dereferenceable(24) ptr @_ZN17HighsLpRelaxation21getFractionalIntegersEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %18) #8
  %232 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %231) #8
  store ptr %232, ptr %18, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %19) #8
  %233 = call ptr @_ZNSt6vectorISt4pairIidESaIS1_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %231) #8
  store ptr %233, ptr %19, align 8
  %234 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPSt4pairIidESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_(ptr noundef nonnull align 8 dereferenceable(8) %18, ptr noundef nonnull align 8 dereferenceable(8) %19) #8
  br i1 %234, label %.lr.ph251, label %.thread180.thread

.thread180.thread:                                ; preds = %230
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %17) #8
  br label %.thread187

235:                                              ; preds = %225
  %236 = landingpad { ptr, i32 }
          cleanup
  br label %285

.lr.ph251:                                        ; preds = %230, %282
  %.0115250 = phi double [ %.2117, %282 ], [ %128, %230 ]
  %.6137249 = phi i32 [ %.8139, %282 ], [ 0, %230 ]
  %.0143248 = phi double [ %280, %282 ], [ 0.000000e+00, %230 ]
  %237 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS2_SaIS2_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %18) #8
  %.sroa.0.0.copyload = load i32, ptr %237, align 8
  %.sroa.917.0..sroa_idx = getelementptr inbounds i8, ptr %237, i64 8
  %.sroa.917.0.copyload = load double, ptr %.sroa.917.0..sroa_idx, align 8
  %238 = call noundef double @"_ZZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEENK3$_1clEid"(ptr noundef nonnull align 8 dereferenceable(16) %17, i32 noundef %.sroa.0.0.copyload, double noundef %.sroa.917.0.copyload)
  %239 = sext i32 %.sroa.0.0.copyload to i64
  %240 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %239) #8
  %241 = load double, ptr %240, align 8, !tbaa !378
  %242 = fcmp olt double %241, %238
  br i1 %242, label %243, label %257

243:                                              ; preds = %.lr.ph251
  %244 = add nsw i32 %.6137249, 1
  invoke void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef %.sroa.0.0.copyload, double noundef %238, double noundef %.sroa.917.0.copyload)
          to label %245 unwind label %.loopexit

245:                                              ; preds = %243
  %246 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
          to label %247 unwind label %.loopexit

247:                                              ; preds = %245
  %248 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
  br i1 %248, label %249, label %255

249:                                              ; preds = %247
  %250 = load ptr, ptr %0, align 8, !tbaa !5
  %251 = getelementptr inbounds i8, ptr %250, i64 224
  %252 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %251) #8
  %253 = getelementptr inbounds i8, ptr %252, i64 688
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %34, ptr noundef nonnull align 8 dereferenceable(224) %253)
          to label %.thread180 unwind label %.loopexit.split-lp

.loopexit:                                        ; preds = %243, %245, %255, %261, %263, %272
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
  br label %254

.loopexit.split-lp:                               ; preds = %249, %267
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
  br label %254

254:                                              ; preds = %.loopexit.split-lp, %.loopexit
  %lpad.phi = phi { ptr, i32 } [ %lpad.loopexit, %.loopexit ], [ %lpad.loopexit.split-lp, %.loopexit.split-lp ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #8
  br label %285

255:                                              ; preds = %247
  %256 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %257 unwind label %.loopexit

257:                                              ; preds = %255, %.lr.ph251
  %.7138 = phi i32 [ %.6137249, %.lr.ph251 ], [ %244, %255 ]
  %.1116 = phi double [ %.0115250, %.lr.ph251 ], [ %256, %255 ]
  %258 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %62, i64 noundef %239) #8
  %259 = load double, ptr %258, align 8, !tbaa !378
  %260 = fcmp ogt double %259, %238
  br i1 %260, label %261, label %274

261:                                              ; preds = %257
  %262 = add nsw i32 %.7138, 1
  invoke void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef %.sroa.0.0.copyload, double noundef %238, double noundef %.sroa.917.0.copyload)
          to label %263 unwind label %.loopexit

263:                                              ; preds = %261
  %264 = invoke noundef zeroext i1 @_ZN11HighsDomain9propagateEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
          to label %265 unwind label %.loopexit

265:                                              ; preds = %263
  %266 = call noundef zeroext i1 @_ZNK11HighsDomain10infeasibleEv(ptr noundef nonnull align 8 dereferenceable(824) %34)
  br i1 %266, label %267, label %272

267:                                              ; preds = %265
  %268 = load ptr, ptr %0, align 8, !tbaa !5
  %269 = getelementptr inbounds i8, ptr %268, i64 224
  %270 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %269) #8
  %271 = getelementptr inbounds i8, ptr %270, i64 688
  invoke void @_ZN11HighsDomain16conflictAnalysisER17HighsConflictPool(ptr noundef nonnull align 8 dereferenceable(824) %34, ptr noundef nonnull align 8 dereferenceable(224) %271)
          to label %.thread180 unwind label %.loopexit.split-lp

272:                                              ; preds = %265
  %273 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %274 unwind label %.loopexit

274:                                              ; preds = %272, %257
  %.8139 = phi i32 [ %.7138, %257 ], [ %262, %272 ]
  %.2117 = phi double [ %.1116, %257 ], [ %273, %272 ]
  %275 = load double, ptr %10, align 8, !tbaa !378
  %276 = fcmp ult double %.2117, %275
  br i1 %276, label %277, label %.thread180

277:                                              ; preds = %274
  %278 = fsub double %238, %.sroa.917.0.copyload
  %279 = call noundef double @_ZSt3absd(double noundef %278)
  %280 = fadd double %.0143248, %279
  %281 = fcmp ult double %280, 5.000000e-01
  br i1 %281, label %282, label %.thread180

282:                                              ; preds = %277
  %283 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS2_SaIS2_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %18) #8
  %284 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPSt4pairIidESt6vectorIS2_SaIS2_EEEEbRKNS_17__normal_iteratorIT_T0_EESC_(ptr noundef nonnull align 8 dereferenceable(8) %18, ptr noundef nonnull align 8 dereferenceable(8) %19) #8
  br i1 %284, label %.lr.ph251, label %.thread180

285:                                              ; preds = %254, %235
  %.pn155 = phi { ptr, i32 } [ %lpad.phi, %254 ], [ %236, %235 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %17) #8
  br label %.loopexit203

.thread180:                                       ; preds = %282, %277, %274, %267, %249
  %.10141 = phi i32 [ %262, %267 ], [ %244, %249 ], [ %.8139, %274 ], [ %.8139, %277 ], [ %.8139, %282 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #8
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %17) #8
  %286 = icmp eq i32 %.10141, 0
  br i1 %286, label %.thread187, label %.thread185

.thread185:                                       ; preds = %.loopexit197, %.thread180
  invoke void @_ZN17HighsLpRelaxation11flushDomainER11HighsDomainb(ptr noundef nonnull align 8 dereferenceable(21425) %9, ptr noundef nonnull align 8 dereferenceable(824) %34, i1 noundef zeroext false)
          to label %.outer.split unwind label %148

.thread187:                                       ; preds = %119, %129, %.thread180, %.thread180.thread, %125
  %.2124 = phi i32 [ %.1123.ph, %125 ], [ %.1123.ph, %.thread180.thread ], [ %.1123.ph, %.thread180 ], [ %.1123.ph, %129 ], [ %106, %119 ]
  %287 = call noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  br i1 %287, label %293, label %288

288:                                              ; preds = %.thread187
  %289 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %290 unwind label %.loopexit.split-lp204.loopexit.split-lp

290:                                              ; preds = %288
  %291 = load i64, ptr %71, align 8, !tbaa !379
  %292 = add i64 %291, %289
  store i64 %292, ptr %71, align 8, !tbaa !379
  br label %.thread191

293:                                              ; preds = %.thread187
  %294 = invoke noundef double @_ZN22HeuristicNeighbourhood13getFixingRateEv(ptr noundef nonnull align 8 dereferenceable(76) %11)
          to label %295 unwind label %.loopexit.split-lp204.loopexit

295:                                              ; preds = %293
  %296 = fcmp olt double %294, 1.000000e-01
  br i1 %296, label %307, label %297

297:                                              ; preds = %295
  %298 = load ptr, ptr %0, align 8, !tbaa !5
  %299 = getelementptr inbounds i8, ptr %298, i64 176
  %300 = load i8, ptr %299, align 8, !tbaa !387, !range !397, !noundef !398
  %301 = trunc nuw i8 %300 to i1
  br i1 %301, label %302, label %327

302:                                              ; preds = %297
  %303 = getelementptr inbounds i8, ptr %298, i64 224
  %304 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %303) #8
  %305 = getelementptr inbounds i8, ptr %304, i64 26544
  %306 = load i32, ptr %305, align 8, !tbaa !399
  %.not = icmp eq i32 %306, 0
  br i1 %.not, label %327, label %307

307:                                              ; preds = %302, %295
  invoke void @_ZN11HighsSearch14setMinReliableEi(ptr noundef nonnull align 8 dereferenceable(1064) %4, i32 noundef 0)
          to label %308 unwind label %.loopexit.split-lp204.loopexit.split-lp

308:                                              ; preds = %307
  invoke void @_ZN11HighsSearch15solveDepthFirstEl(ptr noundef nonnull align 8 dereferenceable(1064) %4, i64 noundef 10)
          to label %309 unwind label %.loopexit.split-lp204.loopexit.split-lp

309:                                              ; preds = %308
  %310 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %311 unwind label %.loopexit.split-lp204.loopexit.split-lp

311:                                              ; preds = %309
  %312 = load i64, ptr %71, align 8, !tbaa !379
  %313 = add i64 %312, %310
  store i64 %313, ptr %71, align 8, !tbaa !379
  %314 = load ptr, ptr %0, align 8, !tbaa !5
  %315 = getelementptr inbounds i8, ptr %314, i64 176
  %316 = load i8, ptr %315, align 8, !tbaa !387, !range !397, !noundef !398
  %317 = trunc nuw i8 %316 to i1
  br i1 %317, label %318, label %.thread191

318:                                              ; preds = %311
  %319 = invoke noundef i64 @_ZNK11HighsSearch13getLocalNodesEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %320 unwind label %.loopexit.split-lp204.loopexit.split-lp

320:                                              ; preds = %318
  %321 = load ptr, ptr %0, align 8, !tbaa !5
  %322 = getelementptr inbounds i8, ptr %321, i64 224
  %323 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %322) #8
  %324 = getelementptr inbounds i8, ptr %323, i64 26416
  %325 = load i64, ptr %324, align 8, !tbaa !400
  %326 = add nsw i64 %325, %319
  store i64 %326, ptr %324, align 8, !tbaa !400
  br label %.thread191

327:                                              ; preds = %302, %297
  invoke void @_ZN17HighsLpRelaxation18removeObsoleteRowsEb(ptr noundef nonnull align 8 dereferenceable(21425) %9, i1 noundef zeroext false)
          to label %328 unwind label %.loopexit.split-lp204.loopexit

328:                                              ; preds = %327
  %329 = invoke noundef nonnull align 8 dereferenceable(920) ptr @_ZNK17HighsLpRelaxation5getLpEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
          to label %330 unwind label %.loopexit216

330:                                              ; preds = %328
  %331 = call noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425) %9)
  %332 = call noundef nonnull align 8 dereferenceable(96) ptr @_ZNK5Highs8getBasisEv(ptr noundef nonnull align 8 dereferenceable(20928) %331)
  invoke void @_ZNSt6vectorIdSaIdEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %20, ptr noundef nonnull align 8 dereferenceable(24) %60)
          to label %333 unwind label %.loopexit216

333:                                              ; preds = %330
  invoke void @_ZNSt6vectorIdSaIdEEC2ERKS1_(ptr noundef nonnull align 8 dereferenceable(24) %21, ptr noundef nonnull align 8 dereferenceable(24) %62)
          to label %334 unwind label %377

334:                                              ; preds = %333
  %335 = load ptr, ptr %0, align 8, !tbaa !5
  %336 = getelementptr inbounds i8, ptr %335, i64 224
  %337 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %336) #8
  %338 = getelementptr inbounds i8, ptr %337, i64 26416
  %339 = load i64, ptr %338, align 8, !tbaa !400
  %340 = sdiv i64 %339, 20
  %341 = trunc i64 %340 to i32
  %342 = add i32 %341, 200
  %343 = invoke noundef zeroext i1 @_ZN21HighsPrimalHeuristics11solveSubMipERK7HighsLpRK10HighsBasisdSt6vectorIdSaIdEES8_iii(ptr noundef nonnull align 8 dereferenceable(104) %0, ptr noundef nonnull align 8 dereferenceable(920) %329, ptr noundef nonnull align 8 dereferenceable(96) %332, double noundef %294, ptr noundef nonnull %20, ptr noundef nonnull %21, i32 noundef 500, i32 noundef %342, i32 noundef 12)
          to label %344 unwind label %379

344:                                              ; preds = %334
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #8
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #8
  br i1 %343, label %395, label %345

345:                                              ; preds = %344
  %346 = load i64, ptr %71, align 8, !tbaa !379
  %347 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %348 unwind label %382

348:                                              ; preds = %345
  %349 = add i64 %347, %346
  %350 = load ptr, ptr %0, align 8, !tbaa !5
  %351 = getelementptr inbounds i8, ptr %350, i64 224
  %352 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %351) #8
  %353 = getelementptr inbounds i8, ptr %352, i64 26480
  %354 = load i64, ptr %353, align 8, !tbaa !401
  %355 = add nsw i64 %354, %349
  %356 = load ptr, ptr %0, align 8, !tbaa !5
  %357 = getelementptr inbounds i8, ptr %356, i64 224
  %358 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %357) #8
  %359 = getelementptr inbounds i8, ptr %358, i64 26472
  %360 = load i64, ptr %359, align 8, !tbaa !402
  %361 = load ptr, ptr %0, align 8, !tbaa !5
  %362 = getelementptr inbounds i8, ptr %361, i64 224
  %363 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %362) #8
  %364 = getelementptr inbounds i8, ptr %363, i64 26480
  %365 = load i64, ptr %364, align 8, !tbaa !401
  %366 = load ptr, ptr %0, align 8, !tbaa !5
  %367 = getelementptr inbounds i8, ptr %366, i64 224
  %368 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %367) #8
  %369 = getelementptr inbounds i8, ptr %368, i64 26496
  %370 = load i64, ptr %369, align 8, !tbaa !403
  %371 = add i64 %365, %370
  %372 = sub i64 %360, %371
  %373 = ashr i64 %372, 1
  %374 = add nsw i64 %373, 100000
  %375 = icmp sgt i64 %355, %374
  br i1 %375, label %376, label %384

376:                                              ; preds = %348
  store i64 %349, ptr %71, align 8, !tbaa !379
  br label %.thread191

.loopexit216:                                     ; preds = %328, %330
  %lpad.loopexit218 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

.loopexit.split-lp217:                            ; preds = %395
  %lpad.loopexit.split-lp219 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

377:                                              ; preds = %333
  %378 = landingpad { ptr, i32 }
          cleanup
  br label %381

379:                                              ; preds = %334
  %380 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %21) #8
  br label %381

381:                                              ; preds = %379, %377
  %.pn160 = phi { ptr, i32 } [ %380, %379 ], [ %378, %377 ]
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %20) #8
  br label %.loopexit203

382:                                              ; preds = %388, %345
  %383 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit203

384:                                              ; preds = %348
  %385 = call noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
  %386 = sdiv i32 %385, 2
  %387 = icmp slt i32 %385, 4
  br i1 %387, label %394, label %388

388:                                              ; preds = %384
  %389 = load ptr, ptr %0, align 8, !tbaa !5
  %390 = getelementptr inbounds i8, ptr %389, i64 224
  %391 = call noundef ptr @_ZNKSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %390) #8
  %392 = invoke noundef zeroext i1 @_ZNK18HighsMipSolverData11checkLimitsEl(ptr noundef nonnull align 8 dereferenceable(26801) %391, i64 noundef 0)
          to label %393 unwind label %382

393:                                              ; preds = %388
  br i1 %392, label %394, label %400

394:                                              ; preds = %393, %384
  store i64 %349, ptr %71, align 8, !tbaa !379
  br label %.thread191

395:                                              ; preds = %344
  %396 = invoke noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064) %4)
          to label %397 unwind label %.loopexit.split-lp217

397:                                              ; preds = %395
  %398 = load i64, ptr %71, align 8, !tbaa !379
  %399 = add i64 %398, %396
  store i64 %399, ptr %71, align 8, !tbaa !379
  br label %.thread191

400:                                              ; preds = %393
  %401 = fmul double %294, 5.000000e-01
  store double %401, ptr %10, align 8, !tbaa !378
  br label %72

.thread191:                                       ; preds = %394, %376, %397, %311, %320, %290, %114, %82
  call void @_ZN22HeuristicNeighbourhoodD2Ev(ptr noundef nonnull align 8 dereferenceable(76) %11) #8
  call void @llvm.lifetime.end.p0(i64 80, ptr nonnull %11) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #8
  call void @_ZN17HighsLpRelaxationD2Ev(ptr noundef nonnull align 8 dereferenceable(21425) %9) #8
  call void @llvm.lifetime.end.p0(i64 21432, ptr nonnull %9) #8
  call void @_ZN11HighsSearchD2Ev(ptr noundef nonnull align 8 dereferenceable(1064) %4) #8
  call void @llvm.lifetime.end.p0(i64 1064, ptr nonnull %4) #8
  call void @_ZN15HighsPseudocostD2Ev(ptr noundef nonnull align 8 dereferenceable(360) %3) #8
  call void @llvm.lifetime.end.p0(i64 360, ptr nonnull %3) #8
  br label %402

402:                                              ; preds = %2, %.thread191
  ret void

.loopexit203:                                     ; preds = %.loopexit216, %.loopexit.split-lp217, %.loopexit203.loopexit.split.us.loopexit, %.loopexit203.loopexit.split.us.loopexit.split-lp, %.loopexit203.loopexit.split, %.loopexit203.loopexit.split-lp, %.loopexit.split-lp204.loopexit.split-lp, %.loopexit.split-lp204.loopexit, %381, %382, %146, %285, %199, %148
  %.pn164 = phi { ptr, i32 } [ %147, %146 ], [ %149, %148 ], [ %.pn155, %285 ], [ %lpad.phi202, %199 ], [ %383, %382 ], [ %.pn160, %381 ], [ %lpad.loopexit.split-lp209, %.loopexit203.loopexit.split-lp ], [ %lpad.loopexit208, %.loopexit203.loopexit.split ], [ %lpad.loopexit213, %.loopexit.split-lp204.loopexit ], [ %lpad.loopexit.split-lp214, %.loopexit.split-lp204.loopexit.split-lp ], [ %lpad.loopexit271, %.loopexit203.loopexit.split.us.loopexit ], [ %lpad.loopexit.split-lp272, %.loopexit203.loopexit.split.us.loopexit.split-lp ], [ %lpad.loopexit218, %.loopexit216 ], [ %lpad.loopexit.split-lp219, %.loopexit.split-lp217 ]
  call void @_ZN22HeuristicNeighbourhoodD2Ev(ptr noundef nonnull align 8 dereferenceable(76) %11) #8
  br label %403

403:                                              ; preds = %.loopexit203, %98
  %.pn164.pn = phi { ptr, i32 } [ %.pn164, %.loopexit203 ], [ %99, %98 ]
  call void @llvm.lifetime.end.p0(i64 80, ptr nonnull %11) #8
  br label %404

404:                                              ; preds = %403, %96
  %.pn164.pn.pn = phi { ptr, i32 } [ %.pn164.pn, %403 ], [ %97, %96 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #8
  br label %405

405:                                              ; preds = %404, %94
  %.pn164.pn.pn.pn = phi { ptr, i32 } [ %.pn164.pn.pn, %404 ], [ %95, %94 ]
  call void @_ZN17HighsLpRelaxationD2Ev(ptr noundef nonnull align 8 dereferenceable(21425) %9) #8
  br label %406

406:                                              ; preds = %405, %92
  %.pn164.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn164.pn.pn.pn, %405 ], [ %93, %92 ]
  call void @llvm.lifetime.end.p0(i64 21432, ptr nonnull %9) #8
  br label %407

407:                                              ; preds = %406, %91
  %.pn164.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn164.pn.pn.pn.pn, %406 ], [ %.pn, %91 ]
  call void @_ZN11HighsSearchD2Ev(ptr noundef nonnull align 8 dereferenceable(1064) %4) #8
  br label %408

408:                                              ; preds = %407, %85
  %.pn164.pn.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn164.pn.pn.pn.pn.pn, %407 ], [ %86, %85 ]
  call void @llvm.lifetime.end.p0(i64 1064, ptr nonnull %4) #8
  call void @_ZN15HighsPseudocostD2Ev(ptr noundef nonnull align 8 dereferenceable(360) %3) #8
  call void @llvm.lifetime.end.p0(i64 360, ptr nonnull %3) #8
  resume { ptr, i32 } %.pn164.pn.pn.pn.pn.pn.pn
}

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

declare void @_ZN11HighsSearchC1ER14HighsMipSolverR15HighsPseudocost(ptr noundef nonnull align 8 dereferenceable(1064), ptr noundef nonnull align 8 dereferenceable(496), ptr noundef nonnull align 8 dereferenceable(360)) unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(824) ptr @_ZN11HighsSearch14getLocalDomainEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #1 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN11HighsSearch12setHeuristicEb(ptr noundef nonnull align 8 dereferenceable(1064), i1 noundef zeroext) local_unnamed_addr #1 align 2

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

; Function Attrs: inlinehint mustprogress uwtable
declare hidden ptr @"_ZSt9remove_ifIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEEZN21HighsPrimalHeuristics4RENSERKS3_IdSaIdEEE3$_0ET_SD_SD_T0_"(ptr, ptr, ptr) local_unnamed_addr #5

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

declare void @_ZN17HighsLpRelaxationC1ERKS_(ptr noundef nonnull align 8 dereferenceable(21425), ptr noundef nonnull align 8 dereferenceable(21425)) unnamed_addr #4

declare void @_ZN17HighsLpRelaxation17setObjectiveLimitEd(ptr noundef nonnull align 8 dereferenceable(21425), double noundef) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN17HighsLpRelaxation30setAdjustSymmetricBranchingColEb(ptr noundef nonnull align 8 dereferenceable(21425), i1 noundef zeroext) local_unnamed_addr #1 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(20928) ptr @_ZN17HighsLpRelaxation11getLpSolverEv(ptr noundef nonnull align 8 dereferenceable(21425)) local_unnamed_addr #1 align 2

declare noundef i32 @_ZN5Highs16changeColsBoundsEiiPKdS1_(ptr noundef nonnull align 8 dereferenceable(20928), i32 noundef, i32 noundef, ptr noundef, ptr noundef) local_unnamed_addr #4

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN11HighsDomain16clearChangedColsEv(ptr noundef nonnull align 8 dereferenceable(824)) local_unnamed_addr #1 align 2

declare void @_ZN11HighsSearch13createNewNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNK11HighsSearch15getCurrentDepthEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #1 align 2

declare noundef zeroext i1 @_ZN11HighsSearch19backtrackUntilDepthEi(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef) local_unnamed_addr #4

declare noundef i64 @_ZNK11HighsSearch20getLocalLpIterationsEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsSearch7hasNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #1 align 2

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

declare noundef i32 @_ZN11HighsSearch12evaluateNodeEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZNK11HighsSearch17currentNodePrunedEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #1 align 2

declare noundef zeroext i1 @_ZN11HighsSearch9backtrackEb(ptr noundef nonnull align 8 dereferenceable(1064), i1 noundef zeroext) local_unnamed_addr #4

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #7

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(104) ptr @_ZNK17HighsLpRelaxation11getSolutionEv(ptr noundef nonnull align 8 dereferenceable(21425)) local_unnamed_addr #2 align 2

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

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

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

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

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

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

declare void @_ZN11HighsSearch13branchUpwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef, double noundef, double noundef) local_unnamed_addr #4

declare void @_ZN11HighsSearch15branchDownwardsEidd(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef, double noundef, double noundef) local_unnamed_addr #4

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

; Function Attrs: inlinehint mustprogress uwtable
declare hidden void @"_Z7pdqsortIN9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS3_SaIS3_EEEEZN21HighsPrimalHeuristics4RENSERKS5_IdSaIdEEE3$_2EvT_SF_T0_"(ptr, ptr, ptr, ptr) local_unnamed_addr #5

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

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

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

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(16) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPSt4pairIidESt6vectorIS2_SaIS2_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare hidden noundef double @"_ZZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEENK3$_1clEid"(ptr noundef nonnull align 8 dereferenceable(16), i32 noundef, double noundef) local_unnamed_addr #3 align 2

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

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

declare void @_ZN17HighsLpRelaxation11flushDomainER11HighsDomainb(ptr noundef nonnull align 8 dereferenceable(21425), ptr noundef nonnull align 8 dereferenceable(824), i1 noundef zeroext) local_unnamed_addr #4

declare void @_ZN11HighsSearch14setMinReliableEi(ptr noundef nonnull align 8 dereferenceable(1064), i32 noundef) local_unnamed_addr #4

declare void @_ZN11HighsSearch15solveDepthFirstEl(ptr noundef nonnull align 8 dereferenceable(1064), i64 noundef) local_unnamed_addr #4

declare noundef i64 @_ZNK11HighsSearch13getLocalNodesEv(ptr noundef nonnull align 8 dereferenceable(1064)) local_unnamed_addr #4

declare void @_ZN17HighsLpRelaxation18removeObsoleteRowsEb(ptr noundef nonnull align 8 dereferenceable(21425), i1 noundef zeroext) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(920) ptr @_ZNK17HighsLpRelaxation5getLpEv(ptr noundef nonnull align 8 dereferenceable(21425)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(96) ptr @_ZNK5Highs8getBasisEv(ptr noundef nonnull align 8 dereferenceable(20928)) local_unnamed_addr #1 align 2

declare noundef zeroext i1 @_ZNK18HighsMipSolverData11checkLimitsEl(ptr noundef nonnull align 8 dereferenceable(26801), i64 noundef) local_unnamed_addr #4

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

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

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

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { 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 #2 = { 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 #3 = { 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 #4 = { "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 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { 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 #7 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #8 = { nounwind }
attributes #9 = { 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, !7, i64 0}
!6 = !{!"_ZTS21HighsPrimalHeuristics", !7, i64 0, !10, i64 8, !10, i64 16, !10, i64 24, !10, i64 32, !11, i64 40, !12, i64 48, !11, i64 56, !12, i64 64, !13, i64 72, !14, i64 80}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C++ TBAA"}
!10 = !{!"long", !8, i64 0}
!11 = !{!"double", !8, i64 0}
!12 = !{!"int", !8, i64 0}
!13 = !{!"_ZTS11HighsRandom", !10, i64 0}
!14 = !{!"_ZTSSt6vectorIiSaIiEE", !15, i64 0}
!15 = !{!"_ZTSSt12_Vector_baseIiSaIiEE", !16, i64 0}
!16 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE12_Vector_implE", !17, i64 0}
!17 = !{!"_ZTSNSt12_Vector_baseIiSaIiEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!18 = !{!19, !11, i64 26568}
!19 = !{!"_ZTS18HighsMipSolverData", !7, i64 0, !20, i64 8, !59, i64 688, !72, i64 912, !120, i64 1736, !286, i64 23168, !287, i64 23528, !319, i64 24016, !6, i64 24192, !333, i64 24296, !338, i64 24344, !266, i64 24464, !195, i64 24688, !136, i64 24696, !87, i64 25616, !87, i64 25617, !87, i64 25618, !196, i64 25620, !87, i64 25624, !12, i64 25628, !12, i64 25632, !12, i64 25636, !12, i64 25640, !14, i64 25648, !14, i64 25672, !26, i64 25696, !26, i64 25720, !30, i64 25744, !14, i64 25768, !14, i64 25792, !14, i64 25816, !14, i64 25840, !14, i64 25864, !14, i64 25888, !339, i64 25912, !351, i64 26128, !11, i64 26144, !11, i64 26152, !11, i64 26160, !10, i64 26168, !26, i64 26176, !26, i64 26200, !26, i64 26224, !11, i64 26248, !123, i64 26256, !11, i64 26352, !12, i64 26360, !12, i64 26364, !86, i64 26368, !11, i64 26384, !11, i64 26392, !11, i64 26400, !10, i64 26408, !10, i64 26416, !10, i64 26424, !10, i64 26432, !10, i64 26440, !10, i64 26448, !10, i64 26456, !10, i64 26464, !10, i64 26472, !10, i64 26480, !10, i64 26488, !10, i64 26496, !10, i64 26504, !10, i64 26512, !10, i64 26520, !10, i64 26528, !10, i64 26536, !12, i64 26544, !11, i64 26552, !11, i64 26560, !11, i64 26568, !11, i64 26576, !26, i64 26584, !353, i64 26608, !376, i64 26760, !377, i64 26800}
!20 = !{!"_ZTS12HighsCutPool", !21, i64 0, !26, i64 336, !42, i64 360, !26, i64 384, !26, i64 408, !30, i64 432, !46, i64 456, !51, i64 512, !34, i64 536, !11, i64 584, !11, i64 592, !11, i64 600, !12, i64 608, !12, i64 612, !12, i64 616, !12, i64 620, !12, i64 624, !14, i64 632, !55, i64 656}
!21 = !{!"_ZTS21HighsDynamicRowMatrix", !22, i64 0, !14, i64 24, !26, i64 48, !14, i64 72, !14, i64 96, !14, i64 120, !14, i64 144, !14, i64 168, !14, i64 192, !14, i64 216, !30, i64 240, !34, i64 264, !14, i64 312}
!22 = !{!"_ZTSSt6vectorISt4pairIiiESaIS1_EE", !23, i64 0}
!23 = !{!"_ZTSSt12_Vector_baseISt4pairIiiESaIS1_EE", !24, i64 0}
!24 = !{!"_ZTSNSt12_Vector_baseISt4pairIiiESaIS1_EE12_Vector_implE", !25, i64 0}
!25 = !{!"_ZTSNSt12_Vector_baseISt4pairIiiESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!26 = !{!"_ZTSSt6vectorIdSaIdEE", !27, i64 0}
!27 = !{!"_ZTSSt12_Vector_baseIdSaIdEE", !28, i64 0}
!28 = !{!"_ZTSNSt12_Vector_baseIdSaIdEE12_Vector_implE", !29, i64 0}
!29 = !{!"_ZTSNSt12_Vector_baseIdSaIdEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!30 = !{!"_ZTSSt6vectorIhSaIhEE", !31, i64 0}
!31 = !{!"_ZTSSt12_Vector_baseIhSaIhEE", !32, i64 0}
!32 = !{!"_ZTSNSt12_Vector_baseIhSaIhEE12_Vector_implE", !33, i64 0}
!33 = !{!"_ZTSNSt12_Vector_baseIhSaIhEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!34 = !{!"_ZTSSt3setISt4pairIiiESt4lessIS1_ESaIS1_EE", !35, i64 0}
!35 = !{!"_ZTSSt8_Rb_treeISt4pairIiiES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE", !36, i64 0}
!36 = !{!"_ZTSNSt8_Rb_treeISt4pairIiiES1_St9_IdentityIS1_ESt4lessIS1_ESaIS1_EE13_Rb_tree_implIS5_Lb1EEE", !37, i64 0, !39, i64 8}
!37 = !{!"_ZTSSt20_Rb_tree_key_compareISt4lessISt4pairIiiEEE", !38, i64 0}
!38 = !{!"_ZTSSt4lessISt4pairIiiEE"}
!39 = !{!"_ZTSSt15_Rb_tree_header", !40, i64 0, !10, i64 32}
!40 = !{!"_ZTSSt18_Rb_tree_node_base", !41, i64 0, !7, i64 8, !7, i64 16, !7, i64 24}
!41 = !{!"_ZTSSt14_Rb_tree_color", !8, i64 0}
!42 = !{!"_ZTSSt6vectorIsSaIsEE", !43, i64 0}
!43 = !{!"_ZTSSt12_Vector_baseIsSaIsEE", !44, i64 0}
!44 = !{!"_ZTSNSt12_Vector_baseIsSaIsEE12_Vector_implE", !45, i64 0}
!45 = !{!"_ZTSNSt12_Vector_baseIsSaIsEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!46 = !{!"_ZTSSt18unordered_multimapImiSt4hashImESt8equal_toImESaISt4pairIKmiEEE", !47, i64 0}
!47 = !{!"_ZTSSt10_HashtableImSt4pairIKmiESaIS2_ENSt8__detail10_Select1stESt8equal_toImESt4hashImENS4_18_Mod_range_hashingENS4_20_Default_ranged_hashENS4_20_Prime_rehash_policyENS4_17_Hashtable_traitsILb0ELb0ELb0EEEE", !7, i64 0, !10, i64 8, !48, i64 16, !10, i64 24, !49, i64 32, !7, i64 48}
!48 = !{!"_ZTSNSt8__detail15_Hash_node_baseE", !7, i64 0}
!49 = !{!"_ZTSNSt8__detail20_Prime_rehash_policyE", !50, i64 0, !10, i64 8}
!50 = !{!"float", !8, i64 0}
!51 = !{!"_ZTSSt6vectorIPN11HighsDomain18CutpoolPropagationESaIS2_EE", !52, i64 0}
!52 = !{!"_ZTSSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE", !53, i64 0}
!53 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE12_Vector_implE", !54, i64 0}
!54 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain18CutpoolPropagationESaIS2_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!55 = !{!"_ZTSSt6vectorISt4pairIidESaIS1_EE", !56, i64 0}
!56 = !{!"_ZTSSt12_Vector_baseISt4pairIidESaIS1_EE", !57, i64 0}
!57 = !{!"_ZTSNSt12_Vector_baseISt4pairIidESaIS1_EE12_Vector_implE", !58, i64 0}
!58 = !{!"_ZTSNSt12_Vector_baseISt4pairIidESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!59 = !{!"_ZTS17HighsConflictPool", !12, i64 0, !12, i64 4, !14, i64 8, !42, i64 32, !60, i64 56, !64, i64 80, !22, i64 104, !34, i64 128, !14, i64 176, !68, i64 200}
!60 = !{!"_ZTSSt6vectorIjSaIjEE", !61, i64 0}
!61 = !{!"_ZTSSt12_Vector_baseIjSaIjEE", !62, i64 0}
!62 = !{!"_ZTSNSt12_Vector_baseIjSaIjEE12_Vector_implE", !63, i64 0}
!63 = !{!"_ZTSNSt12_Vector_baseIjSaIjEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!64 = !{!"_ZTSSt6vectorI17HighsDomainChangeSaIS0_EE", !65, i64 0}
!65 = !{!"_ZTSSt12_Vector_baseI17HighsDomainChangeSaIS0_EE", !66, i64 0}
!66 = !{!"_ZTSNSt12_Vector_baseI17HighsDomainChangeSaIS0_EE12_Vector_implE", !67, i64 0}
!67 = !{!"_ZTSNSt12_Vector_baseI17HighsDomainChangeSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!68 = !{!"_ZTSSt6vectorIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE", !69, i64 0}
!69 = !{!"_ZTSSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE", !70, i64 0}
!70 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE12_Vector_implE", !71, i64 0}
!71 = !{!"_ZTSNSt12_Vector_baseIPN11HighsDomain23ConflictPoolPropagationESaIS2_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!72 = !{!"_ZTS11HighsDomain", !30, i64 0, !14, i64 24, !22, i64 48, !64, i64 72, !73, i64 96, !77, i64 120, !81, i64 144, !81, i64 168, !14, i64 192, !14, i64 216, !26, i64 240, !30, i64 264, !14, i64 288, !85, i64 312, !7, i64 472, !96, i64 480, !101, i64 560, !87, i64 640, !106, i64 644, !12, i64 652, !14, i64 656, !14, i64 680, !14, i64 704, !107, i64 728, !87, i64 768, !26, i64 776, !26, i64 800}
!73 = !{!"_ZTSSt6vectorIN11HighsDomain6ReasonESaIS1_EE", !74, i64 0}
!74 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE", !75, i64 0}
!75 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE12_Vector_implE", !76, i64 0}
!76 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain6ReasonESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!77 = !{!"_ZTSSt6vectorISt4pairIdiESaIS1_EE", !78, i64 0}
!78 = !{!"_ZTSSt12_Vector_baseISt4pairIdiESaIS1_EE", !79, i64 0}
!79 = !{!"_ZTSNSt12_Vector_baseISt4pairIdiESaIS1_EE12_Vector_implE", !80, i64 0}
!80 = !{!"_ZTSNSt12_Vector_baseISt4pairIdiESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!81 = !{!"_ZTSSt6vectorI12HighsCDoubleSaIS0_EE", !82, i64 0}
!82 = !{!"_ZTSSt12_Vector_baseI12HighsCDoubleSaIS0_EE", !83, i64 0}
!83 = !{!"_ZTSNSt12_Vector_baseI12HighsCDoubleSaIS0_EE12_Vector_implE", !84, i64 0}
!84 = !{!"_ZTSNSt12_Vector_baseI12HighsCDoubleSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!85 = !{!"_ZTSN11HighsDomain20ObjectivePropagationE", !7, i64 0, !7, i64 8, !7, i64 16, !86, i64 24, !12, i64 40, !11, i64 48, !87, i64 56, !88, i64 64, !22, i64 88, !26, i64 112, !92, i64 136}
!86 = !{!"_ZTS12HighsCDouble", !11, i64 0, !11, i64 8}
!87 = !{!"bool", !8, i64 0}
!88 = !{!"_ZTSSt6vectorIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE", !89, i64 0}
!89 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE", !90, i64 0}
!90 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE12_Vector_implE", !91, i64 0}
!91 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation21ObjectiveContributionESaIS2_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!92 = !{!"_ZTSSt6vectorIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE", !93, i64 0}
!93 = !{!"_ZTSSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE", !94, i64 0}
!94 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE12_Vector_implE", !95, i64 0}
!95 = !{!"_ZTSNSt12_Vector_baseIN11HighsDomain20ObjectivePropagation19PartitionCliqueDataESaIS2_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!96 = !{!"_ZTSSt5dequeIN11HighsDomain18CutpoolPropagationESaIS1_EE", !97, i64 0}
!97 = !{!"_ZTSSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE", !98, i64 0}
!98 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE11_Deque_implE", !99, i64 0}
!99 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain18CutpoolPropagationESaIS1_EE16_Deque_impl_dataE", !7, i64 0, !10, i64 8, !100, i64 16, !100, i64 48}
!100 = !{!"_ZTSSt15_Deque_iteratorIN11HighsDomain18CutpoolPropagationERS1_PS1_E", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24}
!101 = !{!"_ZTSSt5dequeIN11HighsDomain23ConflictPoolPropagationESaIS1_EE", !102, i64 0}
!102 = !{!"_ZTSSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE", !103, i64 0}
!103 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE11_Deque_implE", !104, i64 0}
!104 = !{!"_ZTSNSt11_Deque_baseIN11HighsDomain23ConflictPoolPropagationESaIS1_EE16_Deque_impl_dataE", !7, i64 0, !10, i64 8, !105, i64 16, !105, i64 48}
!105 = !{!"_ZTSSt15_Deque_iteratorIN11HighsDomain23ConflictPoolPropagationERS1_PS1_E", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24}
!106 = !{!"_ZTSN11HighsDomain6ReasonE", !12, i64 0, !12, i64 4}
!107 = !{!"_ZTS14HighsHashTableIivE", !108, i64 0, !114, i64 8, !10, i64 16, !10, i64 24, !10, i64 32}
!108 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEE", !109, i64 0}
!109 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterELb1ELb1EE", !110, i64 0}
!110 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEE", !111, i64 0}
!111 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEEE", !112, i64 0}
!112 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryIivEN14HighsHashTableIivE12OpNewDeleterEEE", !113, i64 0}
!113 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryIivELb0EE", !7, i64 0}
!114 = !{!"_ZTSSt10unique_ptrIA_hSt14default_deleteIS0_EE", !115, i64 0}
!115 = !{!"_ZTSSt15__uniq_ptr_dataIhSt14default_deleteIA_hELb1ELb1EE", !116, i64 0}
!116 = !{!"_ZTSSt15__uniq_ptr_implIhSt14default_deleteIA_hEE", !117, i64 0}
!117 = !{!"_ZTSSt5tupleIJPhSt14default_deleteIA_hEEE", !118, i64 0}
!118 = !{!"_ZTSSt11_Tuple_implILm0EJPhSt14default_deleteIA_hEEE", !119, i64 0}
!119 = !{!"_ZTSSt10_Head_baseILm0EPhLb0EE", !7, i64 0}
!120 = !{!"_ZTS17HighsLpRelaxation", !7, i64 0, !121, i64 8, !277, i64 20936, !55, i64 20960, !26, i64 20984, !14, i64 21008, !26, i64 21032, !26, i64 21056, !26, i64 21080, !242, i64 21104, !281, i64 21280, !11, i64 21328, !87, i64 21336, !11, i64 21344, !282, i64 21352, !87, i64 21368, !10, i64 21376, !10, i64 21384, !11, i64 21392, !10, i64 21400, !10, i64 21408, !12, i64 21416, !285, i64 21420, !87, i64 21424}
!121 = !{!"_ZTS5Highs", !122, i64 8, !123, i64 112, !130, i64 208, !135, i64 312, !155, i64 1312, !135, i64 1336, !159, i64 2336, !160, i64 2472, !171, i64 2728, !178, i64 3752, !184, i64 3936, !186, i64 4520, !191, i64 4648, !195, i64 4672, !196, i64 4676, !87, i64 4680, !11, i64 4688, !26, i64 4696, !26, i64 4720, !137, i64 4744, !197, i64 4856, !254, i64 19424, !12, i64 19448, !87, i64 19452, !12, i64 19456, !87, i64 19460, !259, i64 19464}
!122 = !{!"_ZTS13HighsSolution", !87, i64 0, !87, i64 1, !26, i64 8, !26, i64 32, !26, i64 56, !26, i64 80}
!123 = !{!"_ZTS10HighsBasis", !87, i64 0, !87, i64 1, !87, i64 2, !87, i64 3, !12, i64 4, !12, i64 8, !124, i64 16, !126, i64 48, !126, i64 72}
!124 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !125, i64 0, !10, i64 8, !8, i64 16}
!125 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !7, i64 0}
!126 = !{!"_ZTSSt6vectorI16HighsBasisStatusSaIS0_EE", !127, i64 0}
!127 = !{!"_ZTSSt12_Vector_baseI16HighsBasisStatusSaIS0_EE", !128, i64 0}
!128 = !{!"_ZTSNSt12_Vector_baseI16HighsBasisStatusSaIS0_EE12_Vector_implE", !129, i64 0}
!129 = !{!"_ZTSNSt12_Vector_baseI16HighsBasisStatusSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!130 = !{!"_ZTS10ICrashInfo", !12, i64 0, !11, i64 8, !11, i64 16, !11, i64 24, !11, i64 32, !11, i64 40, !131, i64 48, !26, i64 72, !11, i64 96}
!131 = !{!"_ZTSSt6vectorI22ICrashIterationDetailsSaIS0_EE", !132, i64 0}
!132 = !{!"_ZTSSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE", !133, i64 0}
!133 = !{!"_ZTSNSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE12_Vector_implE", !134, i64 0}
!134 = !{!"_ZTSNSt12_Vector_baseI22ICrashIterationDetailsSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!135 = !{!"_ZTS10HighsModel", !136, i64 0, !153, i64 920}
!136 = !{!"_ZTS7HighsLp", !12, i64 0, !12, i64 4, !26, i64 8, !26, i64 32, !26, i64 56, !26, i64 80, !26, i64 104, !137, i64 128, !139, i64 240, !11, i64 248, !124, i64 256, !124, i64 288, !12, i64 320, !12, i64 324, !140, i64 328, !140, i64 352, !144, i64 376, !148, i64 400, !148, i64 456, !12, i64 512, !12, i64 516, !151, i64 520, !87, i64 592, !87, i64 593, !12, i64 596, !87, i64 600, !152, i64 608}
!137 = !{!"_ZTS17HighsSparseMatrix", !138, i64 0, !12, i64 4, !12, i64 8, !14, i64 16, !14, i64 40, !14, i64 64, !26, i64 88}
!138 = !{!"_ZTS12MatrixFormat", !8, i64 0}
!139 = !{!"_ZTS8ObjSense", !8, i64 0}
!140 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !141, i64 0}
!141 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !142, i64 0}
!142 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !143, i64 0}
!143 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!144 = !{!"_ZTSSt6vectorI12HighsVarTypeSaIS0_EE", !145, i64 0}
!145 = !{!"_ZTSSt12_Vector_baseI12HighsVarTypeSaIS0_EE", !146, i64 0}
!146 = !{!"_ZTSNSt12_Vector_baseI12HighsVarTypeSaIS0_EE12_Vector_implE", !147, i64 0}
!147 = !{!"_ZTSNSt12_Vector_baseI12HighsVarTypeSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!148 = !{!"_ZTS13HighsNameHash", !149, i64 0}
!149 = !{!"_ZTSSt13unordered_mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEiSt4hashIS5_ESt8equal_toIS5_ESaISt4pairIKS5_iEEE", !150, i64 0}
!150 = !{!"_ZTSSt10_HashtableINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_iESaIS8_ENSt8__detail10_Select1stESt8equal_toIS5_ESt4hashIS5_ENSA_18_Mod_range_hashingENSA_20_Default_ranged_hashENSA_20_Prime_rehash_policyENSA_17_Hashtable_traitsILb1ELb0ELb1EEEE", !7, i64 0, !10, i64 8, !48, i64 16, !10, i64 24, !49, i64 32, !7, i64 48}
!151 = !{!"_ZTS10HighsScale", !12, i64 0, !87, i64 4, !12, i64 8, !12, i64 12, !11, i64 16, !26, i64 24, !26, i64 48}
!152 = !{!"_ZTS11HighsLpMods", !14, i64 0, !14, i64 24, !26, i64 48, !26, i64 72, !144, i64 96, !14, i64 120, !26, i64 144, !14, i64 168, !26, i64 192, !14, i64 216, !26, i64 240, !26, i64 264, !26, i64 288}
!153 = !{!"_ZTS12HighsHessian", !12, i64 0, !154, i64 4, !14, i64 8, !14, i64 32, !26, i64 56}
!154 = !{!"_ZTS13HessianFormat", !8, i64 0}
!155 = !{!"_ZTSSt6vectorI20HighsLinearObjectiveSaIS0_EE", !156, i64 0}
!156 = !{!"_ZTSSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE", !157, i64 0}
!157 = !{!"_ZTSNSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE12_Vector_implE", !158, i64 0}
!158 = !{!"_ZTSNSt12_Vector_baseI20HighsLinearObjectiveSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!159 = !{!"_ZTS10HighsTimer", !11, i64 8, !12, i64 16, !14, i64 24, !26, i64 48, !26, i64 72, !140, i64 96, !12, i64 120, !12, i64 124, !12, i64 128}
!160 = !{!"_ZTS13HighsCallback", !161, i64 0, !7, i64 32, !7, i64 40, !163, i64 48, !169, i64 88, !170, i64 240}
!161 = !{!"_ZTSSt8functionIFviRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPK20HighsCallbackDataOutP19HighsCallbackDataInPvEE", !162, i64 0, !7, i64 24}
!162 = !{!"_ZTSSt14_Function_base", !8, i64 0, !7, i64 16}
!163 = !{!"_ZTSSt6vectorIbSaIbEE", !164, i64 0}
!164 = !{!"_ZTSSt13_Bvector_baseISaIbEE", !165, i64 0}
!165 = !{!"_ZTSNSt13_Bvector_baseISaIbEE13_Bvector_implE", !166, i64 0}
!166 = !{!"_ZTSNSt13_Bvector_baseISaIbEE18_Bvector_impl_dataE", !167, i64 0, !167, i64 16, !7, i64 32}
!167 = !{!"_ZTSSt13_Bit_iterator", !168, i64 0}
!168 = !{!"_ZTSSt18_Bit_iterator_base", !7, i64 0, !12, i64 8}
!169 = !{!"_ZTS20HighsCallbackDataOut", !12, i64 0, !11, i64 8, !12, i64 16, !12, i64 20, !12, i64 24, !11, i64 32, !10, i64 40, !10, i64 48, !11, i64 56, !11, i64 64, !11, i64 72, !7, i64 80, !12, i64 88, !12, i64 92, !12, i64 96, !7, i64 104, !7, i64 112, !7, i64 120, !7, i64 128, !7, i64 136, !12, i64 144}
!170 = !{!"_ZTS19HighsCallbackDataIn", !12, i64 0, !7, i64 8}
!171 = !{!"_ZTS12HighsOptions", !172, i64 0, !174, i64 992, !12, i64 1016}
!172 = !{!"_ZTS18HighsOptionsStruct", !124, i64 8, !124, i64 40, !124, i64 72, !124, i64 104, !11, i64 136, !124, i64 144, !124, i64 176, !12, i64 208, !124, i64 216, !11, i64 248, !11, i64 256, !11, i64 264, !11, i64 272, !11, i64 280, !11, i64 288, !11, i64 296, !11, i64 304, !11, i64 312, !11, i64 320, !11, i64 328, !12, i64 336, !12, i64 340, !12, i64 344, !12, i64 348, !12, i64 352, !12, i64 356, !12, i64 360, !12, i64 364, !12, i64 368, !12, i64 372, !12, i64 376, !12, i64 380, !12, i64 384, !12, i64 388, !124, i64 392, !87, i64 424, !87, i64 425, !87, i64 426, !12, i64 428, !12, i64 432, !124, i64 440, !87, i64 472, !87, i64 473, !87, i64 474, !12, i64 476, !87, i64 480, !87, i64 481, !12, i64 484, !12, i64 488, !11, i64 496, !12, i64 504, !12, i64 508, !12, i64 512, !87, i64 516, !12, i64 520, !87, i64 524, !87, i64 525, !87, i64 526, !87, i64 527, !87, i64 528, !87, i64 529, !87, i64 530, !12, i64 532, !12, i64 536, !12, i64 540, !12, i64 544, !12, i64 548, !12, i64 552, !12, i64 556, !12, i64 560, !12, i64 564, !12, i64 568, !12, i64 572, !12, i64 576, !12, i64 580, !12, i64 584, !12, i64 588, !87, i64 592, !87, i64 593, !87, i64 594, !87, i64 595, !11, i64 600, !11, i64 608, !11, i64 616, !11, i64 624, !11, i64 632, !11, i64 640, !11, i64 648, !11, i64 656, !11, i64 664, !11, i64 672, !11, i64 680, !87, i64 688, !87, i64 689, !87, i64 690, !87, i64 691, !12, i64 692, !11, i64 696, !87, i64 704, !87, i64 705, !124, i64 712, !11, i64 744, !12, i64 752, !12, i64 756, !87, i64 760, !87, i64 761, !87, i64 762, !87, i64 763, !12, i64 764, !12, i64 768, !12, i64 772, !12, i64 776, !12, i64 780, !12, i64 784, !12, i64 788, !12, i64 792, !12, i64 796, !12, i64 800, !12, i64 804, !11, i64 808, !11, i64 816, !11, i64 824, !11, i64 832, !11, i64 840, !87, i64 848, !87, i64 849, !124, i64 856, !87, i64 888, !12, i64 892, !173, i64 896}
!173 = !{!"_ZTS15HighsLogOptions", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !161, i64 48, !7, i64 80, !87, i64 88}
!174 = !{!"_ZTSSt6vectorIP12OptionRecordSaIS1_EE", !175, i64 0}
!175 = !{!"_ZTSSt12_Vector_baseIP12OptionRecordSaIS1_EE", !176, i64 0}
!176 = !{!"_ZTSNSt12_Vector_baseIP12OptionRecordSaIS1_EE12_Vector_implE", !177, i64 0}
!177 = !{!"_ZTSNSt12_Vector_baseIP12OptionRecordSaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!178 = !{!"_ZTS9HighsInfo", !179, i64 8, !180, i64 160}
!179 = !{!"_ZTS15HighsInfoStruct", !87, i64 0, !10, i64 8, !12, i64 16, !12, i64 20, !12, i64 24, !12, i64 28, !12, i64 32, !12, i64 36, !12, i64 40, !12, i64 44, !11, i64 48, !11, i64 56, !11, i64 64, !11, i64 72, !12, i64 80, !11, i64 88, !11, i64 96, !12, i64 104, !11, i64 112, !11, i64 120, !11, i64 128, !11, i64 136, !11, i64 144}
!180 = !{!"_ZTSSt6vectorIP10InfoRecordSaIS1_EE", !181, i64 0}
!181 = !{!"_ZTSSt12_Vector_baseIP10InfoRecordSaIS1_EE", !182, i64 0}
!182 = !{!"_ZTSNSt12_Vector_baseIP10InfoRecordSaIS1_EE12_Vector_implE", !183, i64 0}
!183 = !{!"_ZTSNSt12_Vector_baseIP10InfoRecordSaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!184 = !{!"_ZTS12HighsRanging", !87, i64 0, !185, i64 8, !185, i64 104, !185, i64 200, !185, i64 296, !185, i64 392, !185, i64 488}
!185 = !{!"_ZTS18HighsRangingRecord", !26, i64 0, !26, i64 24, !14, i64 48, !14, i64 72}
!186 = !{!"_ZTS8HighsIis", !87, i64 0, !12, i64 4, !14, i64 8, !14, i64 32, !14, i64 56, !14, i64 80, !187, i64 104}
!187 = !{!"_ZTSSt6vectorI12HighsIisInfoSaIS0_EE", !188, i64 0}
!188 = !{!"_ZTSSt12_Vector_baseI12HighsIisInfoSaIS0_EE", !189, i64 0}
!189 = !{!"_ZTSNSt12_Vector_baseI12HighsIisInfoSaIS0_EE12_Vector_implE", !190, i64 0}
!190 = !{!"_ZTSNSt12_Vector_baseI12HighsIisInfoSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!191 = !{!"_ZTSSt6vectorI22HighsObjectiveSolutionSaIS0_EE", !192, i64 0}
!192 = !{!"_ZTSSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE", !193, i64 0}
!193 = !{!"_ZTSNSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE12_Vector_implE", !194, i64 0}
!194 = !{!"_ZTSNSt12_Vector_baseI22HighsObjectiveSolutionSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!195 = !{!"_ZTS19HighsPresolveStatus", !8, i64 0}
!196 = !{!"_ZTS16HighsModelStatus", !8, i64 0}
!197 = !{!"_ZTS4HEkk", !7, i64 0, !7, i64 8, !7, i64 16, !198, i64 24, !136, i64 8600, !124, i64 9520, !215, i64 9552, !216, i64 9568, !196, i64 10608, !217, i64 10616, !222, i64 10736, !13, i64 10776, !26, i64 10784, !26, i64 10808, !87, i64 10832, !137, i64 10840, !137, i64 10952, !229, i64 11064, !246, i64 13928, !11, i64 14048, !11, i64 14056, !11, i64 14064, !12, i64 14072, !12, i64 14076, !12, i64 14080, !12, i64 14084, !87, i64 14088, !87, i64 14089, !247, i64 14092, !12, i64 14096, !12, i64 14100, !14, i64 14104, !26, i64 14128, !248, i64 14152, !248, i64 14184, !12, i64 14216, !12, i64 14220, !12, i64 14224, !11, i64 14232, !26, i64 14240, !26, i64 14264, !26, i64 14288, !26, i64 14312, !26, i64 14336, !14, i64 14360, !14, i64 14384, !11, i64 14408, !11, i64 14416, !11, i64 14424, !12, i64 14432, !12, i64 14436, !87, i64 14440, !12, i64 14444, !87, i64 14448, !87, i64 14449, !87, i64 14450, !87, i64 14451, !11, i64 14456, !249, i64 14464, !26, i64 14488, !253, i64 14512}
!198 = !{!"_ZTS20HighsSimplexAnalysis", !7, i64 0, !199, i64 8, !199, i64 32, !7, i64 56, !12, i64 64, !12, i64 68, !12, i64 72, !124, i64 80, !124, i64 112, !173, i64 144, !87, i64 240, !87, i64 241, !87, i64 242, !87, i64 243, !87, i64 244, !87, i64 245, !87, i64 246, !12, i64 248, !203, i64 252, !12, i64 256, !12, i64 260, !12, i64 264, !12, i64 268, !12, i64 272, !12, i64 276, !12, i64 280, !124, i64 288, !11, i64 320, !11, i64 328, !11, i64 336, !11, i64 344, !11, i64 352, !11, i64 360, !11, i64 368, !11, i64 376, !11, i64 384, !11, i64 392, !11, i64 400, !11, i64 408, !12, i64 416, !12, i64 420, !11, i64 424, !11, i64 432, !12, i64 440, !11, i64 448, !11, i64 456, !12, i64 464, !11, i64 472, !11, i64 480, !11, i64 488, !11, i64 496, !11, i64 504, !11, i64 512, !11, i64 520, !11, i64 528, !11, i64 536, !11, i64 544, !12, i64 552, !11, i64 560, !12, i64 568, !12, i64 572, !12, i64 576, !12, i64 580, !12, i64 584, !12, i64 588, !12, i64 592, !12, i64 596, !12, i64 600, !204, i64 608, !204, i64 760, !204, i64 912, !204, i64 1064, !204, i64 1216, !204, i64 1368, !204, i64 1520, !204, i64 1672, !204, i64 1824, !204, i64 1976, !12, i64 2128, !12, i64 2132, !12, i64 2136, !12, i64 2140, !11, i64 2144, !11, i64 2152, !12, i64 2160, !12, i64 2164, !12, i64 2168, !12, i64 2172, !12, i64 2176, !11, i64 2184, !11, i64 2192, !12, i64 2200, !11, i64 2208, !11, i64 2216, !12, i64 2224, !12, i64 2228, !11, i64 2232, !11, i64 2240, !26, i64 2248, !26, i64 2272, !26, i64 2296, !26, i64 2320, !205, i64 2344, !209, i64 2368, !12, i64 2376, !12, i64 2380, !12, i64 2384, !12, i64 2388, !11, i64 2392, !11, i64 2400, !11, i64 2408, !11, i64 2416, !11, i64 2424, !11, i64 2432, !11, i64 2440, !11, i64 2448, !11, i64 2456, !11, i64 2464, !12, i64 2472, !12, i64 2476, !11, i64 2480, !11, i64 2488, !11, i64 2496, !87, i64 2504, !11, i64 2512, !11, i64 2520, !12, i64 2528, !12, i64 2532, !12, i64 2536, !12, i64 2540, !12, i64 2544, !11, i64 2552, !11, i64 2560, !11, i64 2568, !11, i64 2576, !11, i64 2584, !11, i64 2592, !11, i64 2600, !11, i64 2608, !11, i64 2616, !12, i64 2624, !12, i64 2628, !8, i64 2632, !12, i64 4952, !12, i64 4956, !8, i64 4960, !8, i64 7600, !8, i64 7648, !204, i64 7664, !204, i64 7816, !204, i64 7968, !204, i64 8120, !204, i64 8272, !204, i64 8424}
!199 = !{!"_ZTSSt6vectorI15HighsTimerClockSaIS0_EE", !200, i64 0}
!200 = !{!"_ZTSSt12_Vector_baseI15HighsTimerClockSaIS0_EE", !201, i64 0}
!201 = !{!"_ZTSNSt12_Vector_baseI15HighsTimerClockSaIS0_EE12_Vector_implE", !202, i64 0}
!202 = !{!"_ZTSNSt12_Vector_baseI15HighsTimerClockSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!203 = !{!"_ZTS14EdgeWeightMode", !8, i64 0}
!204 = !{!"_ZTS22HighsValueDistribution", !124, i64 0, !124, i64 32, !12, i64 64, !12, i64 68, !12, i64 72, !11, i64 80, !11, i64 88, !26, i64 96, !14, i64 120, !12, i64 144}
!205 = !{!"_ZTSSt6vectorI17TranStageAnalysisSaIS0_EE", !206, i64 0}
!206 = !{!"_ZTSSt12_Vector_baseI17TranStageAnalysisSaIS0_EE", !207, i64 0}
!207 = !{!"_ZTSNSt12_Vector_baseI17TranStageAnalysisSaIS0_EE12_Vector_implE", !208, i64 0}
!208 = !{!"_ZTSNSt12_Vector_baseI17TranStageAnalysisSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!209 = !{!"_ZTSSt10unique_ptrINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EE", !210, i64 0}
!210 = !{!"_ZTSSt15__uniq_ptr_dataINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_ELb1ELb1EE", !211, i64 0}
!211 = !{!"_ZTSSt15__uniq_ptr_implINSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EE", !212, i64 0}
!212 = !{!"_ZTSSt5tupleIJPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EEE", !213, i64 0}
!213 = !{!"_ZTSSt11_Tuple_implILm0EJPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEESt14default_deleteIS5_EEE", !214, i64 0}
!214 = !{!"_ZTSSt10_Head_baseILm0EPNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEELb0EE", !7, i64 0}
!215 = !{!"_ZTS18HighsSimplexStatus", !87, i64 0, !87, i64 1, !87, i64 2, !87, i64 3, !87, i64 4, !87, i64 5, !87, i64 6, !87, i64 7, !87, i64 8, !87, i64 9, !87, i64 10, !87, i64 11, !87, i64 12}
!216 = !{!"_ZTS16HighsSimplexInfo", !26, i64 0, !26, i64 24, !26, i64 48, !26, i64 72, !26, i64 96, !26, i64 120, !26, i64 144, !26, i64 168, !26, i64 192, !26, i64 216, !26, i64 240, !26, i64 264, !26, i64 288, !14, i64 312, !14, i64 336, !14, i64 360, !14, i64 384, !26, i64 408, !12, i64 432, !12, i64 436, !87, i64 440, !87, i64 441, !217, i64 448, !12, i64 568, !12, i64 572, !12, i64 576, !26, i64 584, !26, i64 608, !26, i64 632, !26, i64 656, !12, i64 680, !12, i64 684, !12, i64 688, !12, i64 692, !11, i64 696, !11, i64 704, !11, i64 712, !11, i64 720, !12, i64 728, !12, i64 732, !11, i64 736, !11, i64 744, !11, i64 752, !11, i64 760, !11, i64 768, !11, i64 776, !11, i64 784, !11, i64 792, !11, i64 800, !11, i64 808, !87, i64 816, !11, i64 824, !11, i64 832, !12, i64 840, !11, i64 848, !11, i64 856, !11, i64 864, !87, i64 872, !87, i64 873, !87, i64 874, !87, i64 875, !87, i64 876, !87, i64 877, !87, i64 878, !87, i64 879, !87, i64 880, !87, i64 881, !87, i64 882, !87, i64 883, !87, i64 884, !87, i64 885, !87, i64 886, !12, i64 888, !11, i64 896, !11, i64 904, !12, i64 912, !11, i64 920, !11, i64 928, !12, i64 936, !12, i64 940, !12, i64 944, !12, i64 948, !12, i64 952, !12, i64 956, !12, i64 960, !12, i64 964, !12, i64 968, !12, i64 972, !12, i64 976, !12, i64 980, !12, i64 984, !12, i64 988, !12, i64 992, !12, i64 996, !11, i64 1000, !11, i64 1008, !11, i64 1016, !11, i64 1024, !12, i64 1032}
!217 = !{!"_ZTS12SimplexBasis", !14, i64 0, !218, i64 24, !218, i64 48, !10, i64 72, !12, i64 80, !12, i64 84, !124, i64 88}
!218 = !{!"_ZTSSt6vectorIaSaIaEE", !219, i64 0}
!219 = !{!"_ZTSSt12_Vector_baseIaSaIaEE", !220, i64 0}
!220 = !{!"_ZTSNSt12_Vector_baseIaSaIaEE12_Vector_implE", !221, i64 0}
!221 = !{!"_ZTSNSt12_Vector_baseIaSaIaEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!222 = !{!"_ZTS14HighsHashTableImvE", !223, i64 0, !114, i64 8, !10, i64 16, !10, i64 24, !10, i64 32}
!223 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEE", !224, i64 0}
!224 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterELb1ELb1EE", !225, i64 0}
!225 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEE", !226, i64 0}
!226 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEEE", !227, i64 0}
!227 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryImvEN14HighsHashTableImvE12OpNewDeleterEEE", !228, i64 0}
!228 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryImvELb0EE", !7, i64 0}
!229 = !{!"_ZTS11HSimplexNla", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !230, i64 48, !87, i64 1960, !11, i64 1968, !243, i64 1976, !244, i64 2112}
!230 = !{!"_ZTS7HFactor", !11, i64 0, !11, i64 8, !12, i64 16, !14, i64 24, !14, i64 48, !14, i64 72, !231, i64 96, !12, i64 184, !12, i64 188, !12, i64 192, !12, i64 196, !12, i64 200, !12, i64 204, !12, i64 208, !11, i64 216, !87, i64 224, !7, i64 232, !7, i64 240, !7, i64 248, !7, i64 256, !11, i64 264, !11, i64 272, !12, i64 280, !11, i64 288, !232, i64 296, !173, i64 304, !87, i64 400, !87, i64 401, !12, i64 404, !12, i64 408, !7, i64 416, !12, i64 424, !14, i64 432, !26, i64 456, !14, i64 480, !14, i64 504, !14, i64 528, !26, i64 552, !14, i64 576, !14, i64 600, !14, i64 624, !14, i64 648, !14, i64 672, !14, i64 696, !14, i64 720, !26, i64 744, !26, i64 768, !14, i64 792, !14, i64 816, !14, i64 840, !14, i64 864, !14, i64 888, !14, i64 912, !238, i64 936, !26, i64 960, !14, i64 984, !14, i64 1008, !14, i64 1032, !14, i64 1056, !14, i64 1080, !14, i64 1104, !14, i64 1128, !14, i64 1152, !14, i64 1176, !14, i64 1200, !26, i64 1224, !14, i64 1248, !14, i64 1272, !26, i64 1296, !14, i64 1320, !14, i64 1344, !26, i64 1368, !12, i64 1392, !12, i64 1396, !14, i64 1400, !14, i64 1424, !14, i64 1448, !26, i64 1472, !14, i64 1496, !14, i64 1520, !14, i64 1544, !14, i64 1568, !26, i64 1592, !26, i64 1616, !14, i64 1640, !14, i64 1664, !14, i64 1688, !26, i64 1712, !242, i64 1736}
!231 = !{!"_ZTS12RefactorInfo", !87, i64 0, !14, i64 8, !14, i64 32, !218, i64 56, !11, i64 80}
!232 = !{!"_ZTSSt10unique_ptrIN7HFactor7LogDataESt14default_deleteIS1_EE", !233, i64 0}
!233 = !{!"_ZTSSt15__uniq_ptr_dataIN7HFactor7LogDataESt14default_deleteIS1_ELb1ELb1EE", !234, i64 0}
!234 = !{!"_ZTSSt15__uniq_ptr_implIN7HFactor7LogDataESt14default_deleteIS1_EE", !235, i64 0}
!235 = !{!"_ZTSSt5tupleIJPN7HFactor7LogDataESt14default_deleteIS1_EEE", !236, i64 0}
!236 = !{!"_ZTSSt11_Tuple_implILm0EJPN7HFactor7LogDataESt14default_deleteIS1_EEE", !237, i64 0}
!237 = !{!"_ZTSSt10_Head_baseILm0EPN7HFactor7LogDataELb0EE", !7, i64 0}
!238 = !{!"_ZTSSt6vectorIcSaIcEE", !239, i64 0}
!239 = !{!"_ZTSSt12_Vector_baseIcSaIcEE", !240, i64 0}
!240 = !{!"_ZTSNSt12_Vector_baseIcSaIcEE12_Vector_implE", !241, i64 0}
!241 = !{!"_ZTSNSt12_Vector_baseIcSaIcEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!242 = !{!"_ZTS11HVectorBaseIdE", !12, i64 0, !12, i64 4, !14, i64 8, !26, i64 32, !11, i64 56, !238, i64 64, !14, i64 88, !7, i64 112, !87, i64 120, !12, i64 124, !14, i64 128, !26, i64 152}
!243 = !{!"_ZTS17ProductFormUpdate", !87, i64 0, !12, i64 4, !12, i64 8, !14, i64 16, !26, i64 40, !14, i64 64, !14, i64 88, !26, i64 112}
!244 = !{!"_ZTS14SimplexIterate", !87, i64 0, !217, i64 8, !245, i64 128, !26, i64 728}
!245 = !{!"_ZTS24InvertibleRepresentation", !14, i64 0, !14, i64 24, !14, i64 48, !14, i64 72, !26, i64 96, !14, i64 120, !14, i64 144, !26, i64 168, !14, i64 192, !14, i64 216, !26, i64 240, !14, i64 264, !14, i64 288, !14, i64 312, !26, i64 336, !14, i64 360, !14, i64 384, !14, i64 408, !14, i64 432, !26, i64 456, !14, i64 480, !14, i64 504, !26, i64 528, !14, i64 552, !26, i64 576}
!246 = !{!"_ZTS8HotStart", !87, i64 0, !231, i64 8, !218, i64 96}
!247 = !{!"_ZTS16SimplexAlgorithm", !8, i64 0}
!248 = !{!"_ZTS14HighsRayRecord", !12, i64 0, !12, i64 4, !26, i64 8}
!249 = !{!"_ZTSSt6vectorI32HighsSimplexBadBasisChangeRecordSaIS0_EE", !250, i64 0}
!250 = !{!"_ZTSSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE", !251, i64 0}
!251 = !{!"_ZTSNSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE12_Vector_implE", !252, i64 0}
!252 = !{!"_ZTSNSt12_Vector_baseI32HighsSimplexBadBasisChangeRecordSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!253 = !{!"_ZTS17HighsSimplexStats", !87, i64 0, !12, i64 4, !12, i64 8, !12, i64 12, !12, i64 16, !11, i64 24, !11, i64 32, !11, i64 40, !11, i64 48}
!254 = !{!"_ZTS16HighsPresolveLog", !255, i64 0}
!255 = !{!"_ZTSSt6vectorI20HighsPresolveRuleLogSaIS0_EE", !256, i64 0}
!256 = !{!"_ZTSSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE", !257, i64 0}
!257 = !{!"_ZTSNSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE12_Vector_implE", !258, i64 0}
!258 = !{!"_ZTSNSt12_Vector_baseI20HighsPresolveRuleLogSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!259 = !{!"_ZTS17PresolveComponent", !260, i64 0, !264, i64 16, !265, i64 56, !7, i64 1440, !7, i64 1448, !195, i64 1456, !276, i64 1460}
!260 = !{!"_ZTS14HighsComponent", !261, i64 8, !262, i64 9, !263, i64 10}
!261 = !{!"_ZTS18HighsComponentInfo", !87, i64 0}
!262 = !{!"_ZTS18HighsComponentData", !87, i64 0}
!263 = !{!"_ZTS21HighsComponentOptions", !87, i64 0}
!264 = !{!"_ZTS21PresolveComponentInfo", !261, i64 8, !12, i64 12, !12, i64 16, !12, i64 20, !11, i64 24, !11, i64 32}
!265 = !{!"_ZTS21PresolveComponentData", !262, i64 8, !136, i64 16, !266, i64 936, !122, i64 1160, !123, i64 1264, !254, i64 1360}
!266 = !{!"_ZTSN8presolve19HighsPostsolveStackE", !10, i64 0, !11, i64 8, !11, i64 16, !11, i64 24, !11, i64 32, !267, i64 40, !268, i64 72, !14, i64 96, !14, i64 120, !30, i64 144, !272, i64 168, !272, i64 192, !12, i64 216, !12, i64 220}
!267 = !{!"_ZTS14HighsDataStack", !238, i64 0, !10, i64 24}
!268 = !{!"_ZTSSt6vectorISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE", !269, i64 0}
!269 = !{!"_ZTSSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE", !270, i64 0}
!270 = !{!"_ZTSNSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE12_Vector_implE", !271, i64 0}
!271 = !{!"_ZTSNSt12_Vector_baseISt4pairIN8presolve19HighsPostsolveStack13ReductionTypeEmESaIS4_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!272 = !{!"_ZTSSt6vectorIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE", !273, i64 0}
!273 = !{!"_ZTSSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE", !274, i64 0}
!274 = !{!"_ZTSNSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE12_Vector_implE", !275, i64 0}
!275 = !{!"_ZTSNSt12_Vector_baseIN8presolve19HighsPostsolveStack7NonzeroESaIS2_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!276 = !{!"_ZTS20HighsPostsolveStatus", !8, i64 0}
!277 = !{!"_ZTSSt6vectorIN17HighsLpRelaxation5LpRowESaIS1_EE", !278, i64 0}
!278 = !{!"_ZTSSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE", !279, i64 0}
!279 = !{!"_ZTSNSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE12_Vector_implE", !280, i64 0}
!280 = !{!"_ZTSNSt12_Vector_baseIN17HighsLpRelaxation5LpRowESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!281 = !{!"_ZTS20HighsSparseVectorSum", !81, i64 0, !14, i64 24}
!282 = !{!"_ZTSSt10shared_ptrIK10HighsBasisE", !283, i64 0}
!283 = !{!"_ZTSSt12__shared_ptrIK10HighsBasisLN9__gnu_cxx12_Lock_policyE2EE", !7, i64 0, !284, i64 8}
!284 = !{!"_ZTSSt14__shared_countILN9__gnu_cxx12_Lock_policyE2EE", !7, i64 0}
!285 = !{!"_ZTSN17HighsLpRelaxation6StatusE", !8, i64 0}
!286 = !{!"_ZTS15HighsPseudocost", !26, i64 0, !26, i64 24, !14, i64 48, !14, i64 72, !26, i64 96, !26, i64 120, !14, i64 144, !14, i64 168, !14, i64 192, !14, i64 216, !26, i64 240, !26, i64 264, !11, i64 288, !11, i64 296, !11, i64 304, !11, i64 312, !10, i64 320, !10, i64 328, !10, i64 336, !12, i64 344, !11, i64 352}
!287 = !{!"_ZTS16HighsCliqueTable", !288, i64 0, !292, i64 24, !296, i64 48, !300, i64 72, !34, i64 112, !14, i64 160, !307, i64 184, !14, i64 208, !288, i64 232, !14, i64 256, !311, i64 280, !14, i64 304, !315, i64 328, !30, i64 352, !30, i64 376, !60, i64 400, !14, i64 424, !13, i64 448, !12, i64 456, !12, i64 460, !12, i64 464, !12, i64 468, !87, i64 472, !10, i64 480}
!288 = !{!"_ZTSSt6vectorIN16HighsCliqueTable9CliqueVarESaIS1_EE", !289, i64 0}
!289 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE", !290, i64 0}
!290 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE12_Vector_implE", !291, i64 0}
!291 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable9CliqueVarESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!292 = !{!"_ZTSSt6vectorI13HighsHashTreeIiiESaIS1_EE", !293, i64 0}
!293 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE", !294, i64 0}
!294 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE12_Vector_implE", !295, i64 0}
!295 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiiESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!296 = !{!"_ZTSSt6vectorI13HighsHashTreeIivESaIS1_EE", !297, i64 0}
!297 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE", !298, i64 0}
!298 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE12_Vector_implE", !299, i64 0}
!299 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIivESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!300 = !{!"_ZTS14HighsHashTableISt4pairIN16HighsCliqueTable9CliqueVarES2_EiE", !301, i64 0, !114, i64 8, !10, i64 16, !10, i64 24, !10, i64 32}
!301 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEE", !302, i64 0}
!302 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterELb1ELb1EE", !303, i64 0}
!303 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEE", !304, i64 0}
!304 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEEE", !305, i64 0}
!305 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiEN14HighsHashTableIS4_iE12OpNewDeleterEEE", !306, i64 0}
!306 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryISt4pairIN16HighsCliqueTable9CliqueVarES3_EiELb0EE", !7, i64 0}
!307 = !{!"_ZTSSt6vectorIN16HighsCliqueTable6CliqueESaIS1_EE", !308, i64 0}
!308 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE", !309, i64 0}
!309 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE12_Vector_implE", !310, i64 0}
!310 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable6CliqueESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!311 = !{!"_ZTSSt6vectorIN16HighsCliqueTable12SubstitutionESaIS1_EE", !312, i64 0}
!312 = !{!"_ZTSSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE", !313, i64 0}
!313 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE12_Vector_implE", !314, i64 0}
!314 = !{!"_ZTSNSt12_Vector_baseIN16HighsCliqueTable12SubstitutionESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!315 = !{!"_ZTSSt6vectorISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE", !316, i64 0}
!316 = !{!"_ZTSSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE", !317, i64 0}
!317 = !{!"_ZTSNSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE12_Vector_implE", !318, i64 0}
!318 = !{!"_ZTSNSt12_Vector_baseISt4pairIiN16HighsCliqueTable9CliqueVarEESaIS3_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!319 = !{!"_ZTS17HighsImplications", !12, i64 0, !320, i64 8, !10, i64 32, !324, i64 40, !324, i64 64, !7, i64 88, !328, i64 96, !30, i64 120, !332, i64 144}
!320 = !{!"_ZTSSt6vectorIN17HighsImplications7ImplicsESaIS1_EE", !321, i64 0}
!321 = !{!"_ZTSSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE", !322, i64 0}
!322 = !{!"_ZTSNSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE12_Vector_implE", !323, i64 0}
!323 = !{!"_ZTSNSt12_Vector_baseIN17HighsImplications7ImplicsESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!324 = !{!"_ZTSSt6vectorI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE", !325, i64 0}
!325 = !{!"_ZTSSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE", !326, i64 0}
!326 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE12_Vector_implE", !327, i64 0}
!327 = !{!"_ZTSNSt12_Vector_baseI13HighsHashTreeIiN17HighsImplications8VarBoundEESaIS3_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!328 = !{!"_ZTSSt6vectorI17HighsSubstitutionSaIS0_EE", !329, i64 0}
!329 = !{!"_ZTSSt12_Vector_baseI17HighsSubstitutionSaIS0_EE", !330, i64 0}
!330 = !{!"_ZTSNSt12_Vector_baseI17HighsSubstitutionSaIS0_EE12_Vector_implE", !331, i64 0}
!331 = !{!"_ZTSNSt12_Vector_baseI17HighsSubstitutionSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!332 = !{!"_ZTSSt8functionIFviiidEE", !162, i64 0, !7, i64 24}
!333 = !{!"_ZTS18HighsRedcostFixing", !334, i64 0, !334, i64 24}
!334 = !{!"_ZTSSt6vectorISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE", !335, i64 0}
!335 = !{!"_ZTSSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE", !336, i64 0}
!336 = !{!"_ZTSNSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE12_Vector_implE", !337, i64 0}
!337 = !{!"_ZTSNSt12_Vector_baseISt8multimapIdiSt4lessIdESaISt4pairIKdiEEESaIS7_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!338 = !{!"_ZTS22HighsObjectiveFunction", !7, i64 0, !11, i64 8, !12, i64 16, !12, i64 20, !14, i64 24, !26, i64 48, !14, i64 72, !14, i64 96}
!339 = !{!"_ZTS15HighsSymmetries", !14, i64 0, !14, i64 24, !14, i64 48, !14, i64 72, !14, i64 96, !14, i64 120, !340, i64 144, !344, i64 168, !12, i64 208, !12, i64 212}
!340 = !{!"_ZTSSt6vectorI19HighsOrbitopeMatrixSaIS0_EE", !341, i64 0}
!341 = !{!"_ZTSSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE", !342, i64 0}
!342 = !{!"_ZTSNSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE12_Vector_implE", !343, i64 0}
!343 = !{!"_ZTSNSt12_Vector_baseI19HighsOrbitopeMatrixSaIS0_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!344 = !{!"_ZTS14HighsHashTableIiiE", !345, i64 0, !114, i64 8, !10, i64 16, !10, i64 24, !10, i64 32}
!345 = !{!"_ZTSSt10unique_ptrI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEE", !346, i64 0}
!346 = !{!"_ZTSSt15__uniq_ptr_dataI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterELb1ELb1EE", !347, i64 0}
!347 = !{!"_ZTSSt15__uniq_ptr_implI19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEE", !348, i64 0}
!348 = !{!"_ZTSSt5tupleIJP19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEEE", !349, i64 0}
!349 = !{!"_ZTSSt11_Tuple_implILm0EJP19HighsHashTableEntryIiiEN14HighsHashTableIiiE12OpNewDeleterEEE", !350, i64 0}
!350 = !{!"_ZTSSt10_Head_baseILm0EP19HighsHashTableEntryIiiELb0EE", !7, i64 0}
!351 = !{!"_ZTSSt10shared_ptrIK16StabilizerOrbitsE", !352, i64 0}
!352 = !{!"_ZTSSt12__shared_ptrIK16StabilizerOrbitsLN9__gnu_cxx12_Lock_policyE2EE", !7, i64 0, !284, i64 8}
!353 = !{!"_ZTS14HighsNodeQueue", !354, i64 0, !360, i64 8, !364, i64 32, !370, i64 64, !370, i64 72, !10, i64 80, !10, i64 88, !10, i64 96, !10, i64 104, !10, i64 112, !10, i64 120, !10, i64 128, !11, i64 136, !12, i64 144}
!354 = !{!"_ZTSSt10unique_ptrIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EE", !355, i64 0}
!355 = !{!"_ZTSSt15__uniq_ptr_dataIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_ELb1ELb1EE", !356, i64 0}
!356 = !{!"_ZTSSt15__uniq_ptr_implIN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EE", !357, i64 0}
!357 = !{!"_ZTSSt5tupleIJPN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EEE", !358, i64 0}
!358 = !{!"_ZTSSt11_Tuple_implILm0EJPN14HighsNodeQueue14AllocatorStateESt14default_deleteIS1_EEE", !359, i64 0}
!359 = !{!"_ZTSSt10_Head_baseILm0EPN14HighsNodeQueue14AllocatorStateELb0EE", !7, i64 0}
!360 = !{!"_ZTSSt6vectorIN14HighsNodeQueue8OpenNodeESaIS1_EE", !361, i64 0}
!361 = !{!"_ZTSSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE", !362, i64 0}
!362 = !{!"_ZTSNSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE12_Vector_implE", !363, i64 0}
!363 = !{!"_ZTSNSt12_Vector_baseIN14HighsNodeQueue8OpenNodeESaIS1_EE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!364 = !{!"_ZTSSt14priority_queueIlSt6vectorIlSaIlEESt7greaterIlEE", !365, i64 0, !369, i64 24}
!365 = !{!"_ZTSSt6vectorIlSaIlEE", !366, i64 0}
!366 = !{!"_ZTSSt12_Vector_baseIlSaIlEE", !367, i64 0}
!367 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE12_Vector_implE", !368, i64 0}
!368 = !{!"_ZTSNSt12_Vector_baseIlSaIlEE17_Vector_impl_dataE", !7, i64 0, !7, i64 8, !7, i64 16}
!369 = !{!"_ZTSSt7greaterIlE"}
!370 = !{!"_ZTSSt10unique_ptrISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEE", !371, i64 0}
!371 = !{!"_ZTSSt15__uniq_ptr_dataISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteELb1ELb1EE", !372, i64 0}
!372 = !{!"_ZTSSt15__uniq_ptr_implISt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEE", !373, i64 0}
!373 = !{!"_ZTSSt5tupleIJPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEEE", !374, i64 0}
!374 = !{!"_ZTSSt11_Tuple_implILm0EJPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEENS5_20GlobalOperatorDeleteEEE", !375, i64 0}
!375 = !{!"_ZTSSt10_Head_baseILm0EPSt3setISt4pairIdlESt4lessIS2_EN14HighsNodeQueue16NodesetAllocatorIS2_EEELb0EE", !7, i64 0}
!376 = !{!"_ZTS22HighsPrimaDualIntegral", !11, i64 0, !11, i64 8, !11, i64 16, !11, i64 24, !11, i64 32}
!377 = !{!"_ZTS13HighsDebugSol"}
!378 = !{!11, !11, i64 0}
!379 = !{!6, !10, i64 32}
!380 = distinct !{!380, !381}
!381 = !{!"llvm.loop.mustprogress"}
!382 = !{!12, !12, i64 0}
!383 = !{!19, !11, i64 26144}
!384 = !{!385, !7, i64 0}
!385 = !{!"_ZTSZN21HighsPrimalHeuristics4RENSERKSt6vectorIdSaIdEEE3$_1", !7, i64 0, !7, i64 8}
!386 = !{!7, !7, i64 0}
!387 = !{!388, !87, i64 176}
!388 = !{!"_ZTS14HighsMipSolver", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !196, i64 32, !26, i64 40, !11, i64 64, !11, i64 72, !11, i64 80, !11, i64 88, !11, i64 96, !11, i64 104, !11, i64 112, !10, i64 120, !10, i64 128, !11, i64 136, !7, i64 144, !191, i64 152, !87, i64 176, !12, i64 180, !12, i64 184, !7, i64 192, !7, i64 200, !7, i64 208, !7, i64 216, !389, i64 224, !395, i64 232, !159, i64 360}
!389 = !{!"_ZTSSt10unique_ptrI18HighsMipSolverDataSt14default_deleteIS0_EE", !390, i64 0}
!390 = !{!"_ZTSSt15__uniq_ptr_dataI18HighsMipSolverDataSt14default_deleteIS0_ELb1ELb1EE", !391, i64 0}
!391 = !{!"_ZTSSt15__uniq_ptr_implI18HighsMipSolverDataSt14default_deleteIS0_EE", !392, i64 0}
!392 = !{!"_ZTSSt5tupleIJP18HighsMipSolverDataSt14default_deleteIS0_EEE", !393, i64 0}
!393 = !{!"_ZTSSt11_Tuple_implILm0EJP18HighsMipSolverDataSt14default_deleteIS0_EEE", !394, i64 0}
!394 = !{!"_ZTSSt10_Head_baseILm0EP18HighsMipSolverDataLb0EE", !7, i64 0}
!395 = !{!"_ZTS16HighsMipAnalysis", !7, i64 0, !124, i64 8, !396, i64 40, !87, i64 72, !26, i64 80, !26, i64 104}
!396 = !{!"_ZTS15HighsTimerClock", !7, i64 0, !14, i64 8}
!397 = !{i8 0, i8 2}
!398 = !{}
!399 = !{!19, !12, i64 26544}
!400 = !{!19, !10, i64 26416}
!401 = !{!19, !10, i64 26480}
!402 = !{!19, !10, i64 26472}
!403 = !{!19, !10, i64 26496}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopRotatePass,LoopSimplifyCFGPass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass