; LLVM IR from artvns/SimpleFvm :: simplefvm/src/ResultsSaver/VtkSaver/MeshStructGenerator (CellsGenerator)

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

%"class.std::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.11" }
%"struct.std::_Head_base.11" = type { ptr }
%"class.std::unique_ptr.12" = type { %"struct.std::__uniq_ptr_data.13" }
%"struct.std::__uniq_ptr_data.13" = type { %"class.std::__uniq_ptr_impl.14" }
%"class.std::__uniq_ptr_impl.14" = type { %"class.std::tuple.15" }
%"class.std::tuple.15" = type { %"struct.std::_Tuple_impl.16" }
%"struct.std::_Tuple_impl.16" = type { %"struct.std::_Head_base.19" }
%"struct.std::_Head_base.19" = type { ptr }

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN12resultssaver14CellsGenerator20createCellsAndPointsERKNS_15MeshInformationERKNS_9CellsInfoERSt6vectorISt10unique_ptrINS_10SaverPointESt14default_deleteIS9_EESaISC_EERS7_IS8_INS_9SaverCellESA_ISG_EESaISI_EE(ptr noundef nonnull align 1 dereferenceable(1) %0, ptr noundef nonnull align 8 dereferenceable(16) %1, ptr noundef nonnull align 8 dereferenceable(56) %2, ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4) #0 align 2 personality ptr @__gxx_personality_v0 {
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  %11 = alloca i64, align 8
  %12 = alloca i64, align 8
  %13 = alloca double, align 8
  %14 = alloca double, align 8
  %15 = alloca double, align 8
  %16 = alloca double, align 8
  %17 = alloca i64, align 8
  %18 = alloca i32, align 4
  %19 = alloca i64, align 8
  %20 = alloca i64, align 8
  %21 = alloca i64, align 8
  %22 = alloca i64, align 8
  %23 = alloca i64, align 8
  %24 = alloca i64, align 8
  %25 = alloca i8, align 1
  %26 = alloca i8, align 1
  %27 = alloca i8, align 1
  %28 = alloca i8, align 1
  %29 = alloca double, align 8
  %30 = alloca double, align 8
  %31 = alloca double, align 8
  %32 = alloca double, align 8
  %33 = alloca double, align 8
  %34 = alloca double, align 8
  %35 = alloca double, align 8
  %36 = alloca double, align 8
  %37 = alloca %"class.std::unique_ptr", align 8
  %38 = alloca ptr, align 8
  %39 = alloca i32, align 4
  %40 = alloca %"class.std::unique_ptr", align 8
  %41 = alloca %"class.std::unique_ptr", align 8
  %42 = alloca %"class.std::unique_ptr", align 8
  %43 = alloca %"class.std::unique_ptr", align 8
  %44 = alloca %"class.std::unique_ptr", align 8
  %45 = alloca %"class.std::unique_ptr", align 8
  %46 = alloca %"class.std::unique_ptr", align 8
  %47 = alloca %"class.std::unique_ptr", align 8
  %48 = alloca %"class.std::unique_ptr", align 8
  %49 = alloca %"class.std::unique_ptr", align 8
  %50 = alloca %"class.std::unique_ptr", align 8
  %51 = alloca %"class.std::unique_ptr", align 8
  %52 = alloca %"class.std::unique_ptr", align 8
  %53 = alloca %"class.std::unique_ptr", align 8
  %54 = alloca %"class.std::unique_ptr", align 8
  %55 = alloca %"class.std::unique_ptr", align 8
  %56 = alloca %"class.std::unique_ptr", align 8
  %57 = alloca %"class.std::unique_ptr", align 8
  %58 = alloca %"class.std::unique_ptr", align 8
  %59 = alloca %"class.std::unique_ptr", align 8
  %60 = alloca %"class.std::unique_ptr", align 8
  %61 = alloca %"class.std::unique_ptr", align 8
  %62 = alloca %"class.std::unique_ptr", align 8
  %63 = alloca %"class.std::unique_ptr", align 8
  %64 = alloca %"class.std::unique_ptr", align 8
  %65 = alloca %"class.std::unique_ptr.12", align 8
  store ptr %0, ptr %6, align 8, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !5
  store ptr %2, ptr %8, align 8, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !5
  store ptr %4, ptr %10, align 8, !tbaa !5
  %66 = load ptr, ptr %6, align 8
  %67 = load ptr, ptr %10, align 8, !tbaa !5
  %68 = load ptr, ptr %7, align 8, !tbaa !5
  %69 = call noundef i64 @_ZNK12resultssaver15MeshInformation14getCellsAmountEv(ptr noundef nonnull align 8 dereferenceable(16) %68)
  call void @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %67, i64 noundef %69)
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #6
  store i64 0, ptr %11, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %12) #6
  store i64 0, ptr %12, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %13) #6
  store double 0.000000e+00, ptr %13, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #6
  store double 0.000000e+00, ptr %14, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %15) #6
  %70 = load ptr, ptr %7, align 8, !tbaa !5
  %71 = call noundef double @_ZNK12resultssaver15MeshInformation6get_dXEv(ptr noundef nonnull align 8 dereferenceable(16) %70)
  store double %71, ptr %15, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #6
  %72 = load ptr, ptr %7, align 8, !tbaa !5
  %73 = call noundef double @_ZNK12resultssaver15MeshInformation6get_dYEv(ptr noundef nonnull align 8 dereferenceable(16) %72)
  store double %73, ptr %16, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %17) #6
  store i64 0, ptr %17, align 8, !tbaa !9
  br label %74

74:                                               ; preds = %1071, %5
  %75 = load i64, ptr %17, align 8, !tbaa !9
  %76 = load ptr, ptr %7, align 8, !tbaa !5
  %77 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16) %76)
  %78 = icmp ult i64 %75, %77
  br i1 %78, label %80, label %79

79:                                               ; preds = %74
  store i32 2, ptr %18, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #6
  br label %1074

80:                                               ; preds = %74
  store double 0.000000e+00, ptr %13, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #6
  store i64 0, ptr %19, align 8, !tbaa !9
  br label %81

81:                                               ; preds = %1064, %80
  %82 = load i64, ptr %19, align 8, !tbaa !9
  %83 = load ptr, ptr %7, align 8, !tbaa !5
  %84 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionXEv(ptr noundef nonnull align 8 dereferenceable(16) %83)
  %85 = icmp ult i64 %82, %84
  br i1 %85, label %87, label %86

86:                                               ; preds = %81
  store i32 5, ptr %18, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  br label %1067

87:                                               ; preds = %81
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #6
  %88 = load ptr, ptr %7, align 8, !tbaa !5
  %89 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16) %88)
  %90 = sub i64 %89, 1
  %91 = load i64, ptr %17, align 8, !tbaa !9
  %92 = sub i64 %90, %91
  store i64 %92, ptr %20, align 8, !tbaa !9
  %93 = load ptr, ptr %8, align 8, !tbaa !5
  %94 = load i64, ptr %20, align 8, !tbaa !9
  %95 = add i64 %94, 1
  %96 = load i64, ptr %19, align 8, !tbaa !9
  %97 = add i64 %96, 1
  %98 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %93, i64 noundef %95, i64 noundef %97)
  %99 = icmp ne i64 0, %98
  br i1 %99, label %100, label %1060

100:                                              ; preds = %87
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #6
  store i64 0, ptr %21, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #6
  store i64 0, ptr %22, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #6
  store i64 0, ptr %23, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %24) #6
  store i64 0, ptr %24, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %25) #6
  store i8 0, ptr %25, align 1, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 1, ptr %26) #6
  store i8 0, ptr %26, align 1, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 1, ptr %27) #6
  store i8 0, ptr %27, align 1, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 1, ptr %28) #6
  store i8 0, ptr %28, align 1, !tbaa !13
  %101 = load ptr, ptr %8, align 8, !tbaa !5
  %102 = load i64, ptr %20, align 8, !tbaa !9
  %103 = add i64 %102, 1
  %104 = load i64, ptr %19, align 8, !tbaa !9
  %105 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %101, i64 noundef %103, i64 noundef %104)
  %106 = icmp eq i64 0, %105
  br i1 %106, label %108, label %107

107:                                              ; preds = %100
  store i8 1, ptr %25, align 1, !tbaa !13
  br label %108

108:                                              ; preds = %107, %100
  %109 = load ptr, ptr %8, align 8, !tbaa !5
  %110 = load i64, ptr %20, align 8, !tbaa !9
  %111 = add i64 %110, 2
  %112 = load i64, ptr %19, align 8, !tbaa !9
  %113 = add i64 %112, 1
  %114 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %109, i64 noundef %111, i64 noundef %113)
  %115 = icmp eq i64 0, %114
  br i1 %115, label %117, label %116

116:                                              ; preds = %108
  store i8 1, ptr %26, align 1, !tbaa !13
  br label %117

117:                                              ; preds = %116, %108
  %118 = load ptr, ptr %8, align 8, !tbaa !5
  %119 = load i64, ptr %20, align 8, !tbaa !9
  %120 = add i64 %119, 2
  %121 = load i64, ptr %19, align 8, !tbaa !9
  %122 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %118, i64 noundef %120, i64 noundef %121)
  %123 = icmp eq i64 0, %122
  br i1 %123, label %125, label %124

124:                                              ; preds = %117
  store i8 1, ptr %27, align 1, !tbaa !13
  br label %125

125:                                              ; preds = %124, %117
  %126 = load ptr, ptr %8, align 8, !tbaa !5
  %127 = load i64, ptr %20, align 8, !tbaa !9
  %128 = add i64 %127, 2
  %129 = load i64, ptr %19, align 8, !tbaa !9
  %130 = add i64 %129, 2
  %131 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %126, i64 noundef %128, i64 noundef %130)
  %132 = icmp eq i64 0, %131
  br i1 %132, label %134, label %133

133:                                              ; preds = %125
  store i8 1, ptr %28, align 1, !tbaa !13
  br label %134

134:                                              ; preds = %133, %125
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #6
  %135 = load double, ptr %13, align 8, !tbaa !11
  store double %135, ptr %29, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %30) #6
  %136 = load double, ptr %14, align 8, !tbaa !11
  store double %136, ptr %30, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #6
  %137 = load double, ptr %13, align 8, !tbaa !11
  %138 = load double, ptr %15, align 8, !tbaa !11
  %139 = fadd double %137, %138
  store double %139, ptr %31, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #6
  %140 = load double, ptr %14, align 8, !tbaa !11
  store double %140, ptr %32, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %33) #6
  %141 = load double, ptr %13, align 8, !tbaa !11
  %142 = load double, ptr %15, align 8, !tbaa !11
  %143 = fadd double %141, %142
  store double %143, ptr %33, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #6
  %144 = load double, ptr %14, align 8, !tbaa !11
  %145 = load double, ptr %16, align 8, !tbaa !11
  %146 = fadd double %144, %145
  store double %146, ptr %34, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %35) #6
  %147 = load double, ptr %13, align 8, !tbaa !11
  store double %147, ptr %35, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %36) #6
  %148 = load double, ptr %14, align 8, !tbaa !11
  %149 = load double, ptr %16, align 8, !tbaa !11
  %150 = fadd double %148, %149
  store double %150, ptr %36, align 8, !tbaa !11
  %151 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %152 = trunc i8 %151 to i1
  %153 = xor i1 %152, true
  %154 = zext i1 %153 to i32
  %155 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %156 = trunc i8 %155 to i1
  %157 = xor i1 %156, true
  %158 = zext i1 %157 to i32
  %159 = and i32 %154, %158
  %160 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %161 = trunc i8 %160 to i1
  %162 = xor i1 %161, true
  %163 = zext i1 %162 to i32
  %164 = and i32 %159, %163
  %165 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %166 = trunc i8 %165 to i1
  %167 = xor i1 %166, true
  %168 = zext i1 %167 to i32
  %169 = and i32 %164, %168
  %170 = icmp ne i32 %169, 0
  br i1 %170, label %171, label %244

171:                                              ; preds = %134
  %172 = load i64, ptr %11, align 8, !tbaa !9
  %173 = add i64 %172, 1
  store i64 %173, ptr %11, align 8, !tbaa !9
  store i64 %172, ptr %21, align 8, !tbaa !9
  %174 = load i64, ptr %11, align 8, !tbaa !9
  %175 = add i64 %174, 1
  store i64 %175, ptr %11, align 8, !tbaa !9
  store i64 %174, ptr %22, align 8, !tbaa !9
  %176 = load i64, ptr %11, align 8, !tbaa !9
  %177 = add i64 %176, 1
  store i64 %177, ptr %11, align 8, !tbaa !9
  store i64 %176, ptr %23, align 8, !tbaa !9
  %178 = load i64, ptr %11, align 8, !tbaa !9
  %179 = add i64 %178, 1
  store i64 %179, ptr %11, align 8, !tbaa !9
  store i64 %178, ptr %24, align 8, !tbaa !9
  %180 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %37) #6
  %181 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %182 = load i64, ptr %21, align 8, !tbaa !9
  %183 = load double, ptr %29, align 8, !tbaa !11
  %184 = load double, ptr %30, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %181, i64 noundef %182, double noundef %183, double noundef %184)
          to label %185 unwind label %208

185:                                              ; preds = %171
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef %181) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %180, ptr noundef nonnull align 8 dereferenceable(8) %37)
          to label %186 unwind label %212

186:                                              ; preds = %185
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %37) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #6
  %187 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #6
  %188 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %189 = load i64, ptr %22, align 8, !tbaa !9
  %190 = load double, ptr %31, align 8, !tbaa !11
  %191 = load double, ptr %32, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %188, i64 noundef %189, double noundef %190, double noundef %191)
          to label %192 unwind label %217

192:                                              ; preds = %186
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %40, ptr noundef %188) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %187, ptr noundef nonnull align 8 dereferenceable(8) %40)
          to label %193 unwind label %221

193:                                              ; preds = %192
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %40) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #6
  %194 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #6
  %195 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %196 = load i64, ptr %23, align 8, !tbaa !9
  %197 = load double, ptr %33, align 8, !tbaa !11
  %198 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %195, i64 noundef %196, double noundef %197, double noundef %198)
          to label %199 unwind label %226

199:                                              ; preds = %193
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef %195) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %194, ptr noundef nonnull align 8 dereferenceable(8) %41)
          to label %200 unwind label %230

200:                                              ; preds = %199
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %41) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  %201 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #6
  %202 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %203 = load i64, ptr %24, align 8, !tbaa !9
  %204 = load double, ptr %35, align 8, !tbaa !11
  %205 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %202, i64 noundef %203, double noundef %204, double noundef %205)
          to label %206 unwind label %235

206:                                              ; preds = %200
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %42, ptr noundef %202) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %201, ptr noundef nonnull align 8 dereferenceable(8) %42)
          to label %207 unwind label %239

207:                                              ; preds = %206
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #6
  br label %1039

208:                                              ; preds = %171
  %209 = landingpad { ptr, i32 }
          cleanup
  %210 = extractvalue { ptr, i32 } %209, 0
  store ptr %210, ptr %38, align 8
  %211 = extractvalue { ptr, i32 } %209, 1
  store i32 %211, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %181, i64 noundef 24) #8
  br label %216

212:                                              ; preds = %185
  %213 = landingpad { ptr, i32 }
          cleanup
  %214 = extractvalue { ptr, i32 } %213, 0
  store ptr %214, ptr %38, align 8
  %215 = extractvalue { ptr, i32 } %213, 1
  store i32 %215, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %37) #6
  br label %216

216:                                              ; preds = %212, %208
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #6
  br label %1059

217:                                              ; preds = %186
  %218 = landingpad { ptr, i32 }
          cleanup
  %219 = extractvalue { ptr, i32 } %218, 0
  store ptr %219, ptr %38, align 8
  %220 = extractvalue { ptr, i32 } %218, 1
  store i32 %220, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %188, i64 noundef 24) #8
  br label %225

221:                                              ; preds = %192
  %222 = landingpad { ptr, i32 }
          cleanup
  %223 = extractvalue { ptr, i32 } %222, 0
  store ptr %223, ptr %38, align 8
  %224 = extractvalue { ptr, i32 } %222, 1
  store i32 %224, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %40) #6
  br label %225

225:                                              ; preds = %221, %217
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #6
  br label %1059

226:                                              ; preds = %193
  %227 = landingpad { ptr, i32 }
          cleanup
  %228 = extractvalue { ptr, i32 } %227, 0
  store ptr %228, ptr %38, align 8
  %229 = extractvalue { ptr, i32 } %227, 1
  store i32 %229, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %195, i64 noundef 24) #8
  br label %234

230:                                              ; preds = %199
  %231 = landingpad { ptr, i32 }
          cleanup
  %232 = extractvalue { ptr, i32 } %231, 0
  store ptr %232, ptr %38, align 8
  %233 = extractvalue { ptr, i32 } %231, 1
  store i32 %233, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %41) #6
  br label %234

234:                                              ; preds = %230, %226
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  br label %1059

235:                                              ; preds = %200
  %236 = landingpad { ptr, i32 }
          cleanup
  %237 = extractvalue { ptr, i32 } %236, 0
  store ptr %237, ptr %38, align 8
  %238 = extractvalue { ptr, i32 } %236, 1
  store i32 %238, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %202, i64 noundef 24) #8
  br label %243

239:                                              ; preds = %206
  %240 = landingpad { ptr, i32 }
          cleanup
  %241 = extractvalue { ptr, i32 } %240, 0
  store ptr %241, ptr %38, align 8
  %242 = extractvalue { ptr, i32 } %240, 1
  store i32 %242, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %42) #6
  br label %243

243:                                              ; preds = %239, %235
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #6
  br label %1059

244:                                              ; preds = %134
  %245 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %246 = trunc i8 %245 to i1
  %247 = zext i1 %246 to i32
  %248 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %249 = trunc i8 %248 to i1
  %250 = xor i1 %249, true
  %251 = zext i1 %250 to i32
  %252 = and i32 %247, %251
  %253 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %254 = trunc i8 %253 to i1
  %255 = xor i1 %254, true
  %256 = zext i1 %255 to i32
  %257 = and i32 %252, %256
  %258 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %259 = trunc i8 %258 to i1
  %260 = xor i1 %259, true
  %261 = zext i1 %260 to i32
  %262 = and i32 %257, %261
  %263 = icmp ne i32 %262, 0
  br i1 %263, label %264, label %319

264:                                              ; preds = %244
  %265 = load ptr, ptr %10, align 8, !tbaa !5
  %266 = load ptr, ptr %8, align 8, !tbaa !5
  %267 = load i64, ptr %20, align 8, !tbaa !9
  %268 = load i64, ptr %19, align 8, !tbaa !9
  %269 = sub i64 %268, 1
  %270 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %266, i64 noundef %267, i64 noundef %269)
  %271 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %265, i64 noundef %270)
  %272 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %271) #6
  %273 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %272)
  store i64 %273, ptr %21, align 8, !tbaa !9
  %274 = load i64, ptr %11, align 8, !tbaa !9
  %275 = add i64 %274, 1
  store i64 %275, ptr %11, align 8, !tbaa !9
  store i64 %274, ptr %22, align 8, !tbaa !9
  %276 = load i64, ptr %11, align 8, !tbaa !9
  %277 = add i64 %276, 1
  store i64 %277, ptr %11, align 8, !tbaa !9
  store i64 %276, ptr %23, align 8, !tbaa !9
  %278 = load ptr, ptr %10, align 8, !tbaa !5
  %279 = load ptr, ptr %8, align 8, !tbaa !5
  %280 = load i64, ptr %20, align 8, !tbaa !9
  %281 = load i64, ptr %19, align 8, !tbaa !9
  %282 = sub i64 %281, 1
  %283 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %279, i64 noundef %280, i64 noundef %282)
  %284 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %278, i64 noundef %283)
  %285 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %284) #6
  %286 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %285)
  store i64 %286, ptr %24, align 8, !tbaa !9
  %287 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #6
  %288 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %289 = load i64, ptr %22, align 8, !tbaa !9
  %290 = load double, ptr %31, align 8, !tbaa !11
  %291 = load double, ptr %32, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %288, i64 noundef %289, double noundef %290, double noundef %291)
          to label %292 unwind label %301

292:                                              ; preds = %264
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %43, ptr noundef %288) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %287, ptr noundef nonnull align 8 dereferenceable(8) %43)
          to label %293 unwind label %305

293:                                              ; preds = %292
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %43) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #6
  %294 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #6
  %295 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %296 = load i64, ptr %23, align 8, !tbaa !9
  %297 = load double, ptr %33, align 8, !tbaa !11
  %298 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %295, i64 noundef %296, double noundef %297, double noundef %298)
          to label %299 unwind label %310

299:                                              ; preds = %293
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %44, ptr noundef %295) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %294, ptr noundef nonnull align 8 dereferenceable(8) %44)
          to label %300 unwind label %314

300:                                              ; preds = %299
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %44) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #6
  br label %1038

301:                                              ; preds = %264
  %302 = landingpad { ptr, i32 }
          cleanup
  %303 = extractvalue { ptr, i32 } %302, 0
  store ptr %303, ptr %38, align 8
  %304 = extractvalue { ptr, i32 } %302, 1
  store i32 %304, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %288, i64 noundef 24) #8
  br label %309

305:                                              ; preds = %292
  %306 = landingpad { ptr, i32 }
          cleanup
  %307 = extractvalue { ptr, i32 } %306, 0
  store ptr %307, ptr %38, align 8
  %308 = extractvalue { ptr, i32 } %306, 1
  store i32 %308, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %43) #6
  br label %309

309:                                              ; preds = %305, %301
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #6
  br label %1059

310:                                              ; preds = %293
  %311 = landingpad { ptr, i32 }
          cleanup
  %312 = extractvalue { ptr, i32 } %311, 0
  store ptr %312, ptr %38, align 8
  %313 = extractvalue { ptr, i32 } %311, 1
  store i32 %313, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %295, i64 noundef 24) #8
  br label %318

314:                                              ; preds = %299
  %315 = landingpad { ptr, i32 }
          cleanup
  %316 = extractvalue { ptr, i32 } %315, 0
  store ptr %316, ptr %38, align 8
  %317 = extractvalue { ptr, i32 } %315, 1
  store i32 %317, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %44) #6
  br label %318

318:                                              ; preds = %314, %310
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #6
  br label %1059

319:                                              ; preds = %244
  %320 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %321 = trunc i8 %320 to i1
  %322 = xor i1 %321, true
  %323 = zext i1 %322 to i32
  %324 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %325 = trunc i8 %324 to i1
  %326 = zext i1 %325 to i32
  %327 = and i32 %323, %326
  %328 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %329 = trunc i8 %328 to i1
  %330 = xor i1 %329, true
  %331 = zext i1 %330 to i32
  %332 = and i32 %327, %331
  %333 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %334 = trunc i8 %333 to i1
  %335 = xor i1 %334, true
  %336 = zext i1 %335 to i32
  %337 = and i32 %332, %336
  %338 = icmp ne i32 %337, 0
  br i1 %338, label %339, label %394

339:                                              ; preds = %319
  %340 = load ptr, ptr %10, align 8, !tbaa !5
  %341 = load ptr, ptr %8, align 8, !tbaa !5
  %342 = load i64, ptr %20, align 8, !tbaa !9
  %343 = add i64 %342, 1
  %344 = load i64, ptr %19, align 8, !tbaa !9
  %345 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %341, i64 noundef %343, i64 noundef %344)
  %346 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %340, i64 noundef %345)
  %347 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %346) #6
  %348 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %347)
  store i64 %348, ptr %21, align 8, !tbaa !9
  %349 = load ptr, ptr %10, align 8, !tbaa !5
  %350 = load ptr, ptr %8, align 8, !tbaa !5
  %351 = load i64, ptr %20, align 8, !tbaa !9
  %352 = add i64 %351, 1
  %353 = load i64, ptr %19, align 8, !tbaa !9
  %354 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %350, i64 noundef %352, i64 noundef %353)
  %355 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %349, i64 noundef %354)
  %356 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %355) #6
  %357 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %356)
  store i64 %357, ptr %22, align 8, !tbaa !9
  %358 = load i64, ptr %11, align 8, !tbaa !9
  %359 = add i64 %358, 1
  store i64 %359, ptr %11, align 8, !tbaa !9
  store i64 %358, ptr %23, align 8, !tbaa !9
  %360 = load i64, ptr %11, align 8, !tbaa !9
  %361 = add i64 %360, 1
  store i64 %361, ptr %11, align 8, !tbaa !9
  store i64 %360, ptr %24, align 8, !tbaa !9
  %362 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #6
  %363 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %364 = load i64, ptr %23, align 8, !tbaa !9
  %365 = load double, ptr %33, align 8, !tbaa !11
  %366 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %363, i64 noundef %364, double noundef %365, double noundef %366)
          to label %367 unwind label %376

367:                                              ; preds = %339
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %45, ptr noundef %363) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %362, ptr noundef nonnull align 8 dereferenceable(8) %45)
          to label %368 unwind label %380

368:                                              ; preds = %367
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %45) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #6
  %369 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %46) #6
  %370 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %371 = load i64, ptr %24, align 8, !tbaa !9
  %372 = load double, ptr %35, align 8, !tbaa !11
  %373 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %370, i64 noundef %371, double noundef %372, double noundef %373)
          to label %374 unwind label %385

374:                                              ; preds = %368
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %46, ptr noundef %370) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %369, ptr noundef nonnull align 8 dereferenceable(8) %46)
          to label %375 unwind label %389

375:                                              ; preds = %374
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %46) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %46) #6
  br label %1037

376:                                              ; preds = %339
  %377 = landingpad { ptr, i32 }
          cleanup
  %378 = extractvalue { ptr, i32 } %377, 0
  store ptr %378, ptr %38, align 8
  %379 = extractvalue { ptr, i32 } %377, 1
  store i32 %379, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %363, i64 noundef 24) #8
  br label %384

380:                                              ; preds = %367
  %381 = landingpad { ptr, i32 }
          cleanup
  %382 = extractvalue { ptr, i32 } %381, 0
  store ptr %382, ptr %38, align 8
  %383 = extractvalue { ptr, i32 } %381, 1
  store i32 %383, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %45) #6
  br label %384

384:                                              ; preds = %380, %376
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #6
  br label %1059

385:                                              ; preds = %368
  %386 = landingpad { ptr, i32 }
          cleanup
  %387 = extractvalue { ptr, i32 } %386, 0
  store ptr %387, ptr %38, align 8
  %388 = extractvalue { ptr, i32 } %386, 1
  store i32 %388, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %370, i64 noundef 24) #8
  br label %393

389:                                              ; preds = %374
  %390 = landingpad { ptr, i32 }
          cleanup
  %391 = extractvalue { ptr, i32 } %390, 0
  store ptr %391, ptr %38, align 8
  %392 = extractvalue { ptr, i32 } %390, 1
  store i32 %392, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %46) #6
  br label %393

393:                                              ; preds = %389, %385
  call void @llvm.lifetime.end.p0(i64 8, ptr %46) #6
  br label %1059

394:                                              ; preds = %319
  %395 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %396 = trunc i8 %395 to i1
  %397 = xor i1 %396, true
  %398 = zext i1 %397 to i32
  %399 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %400 = trunc i8 %399 to i1
  %401 = xor i1 %400, true
  %402 = zext i1 %401 to i32
  %403 = and i32 %398, %402
  %404 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %405 = trunc i8 %404 to i1
  %406 = zext i1 %405 to i32
  %407 = and i32 %403, %406
  %408 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %409 = trunc i8 %408 to i1
  %410 = xor i1 %409, true
  %411 = zext i1 %410 to i32
  %412 = and i32 %407, %411
  %413 = icmp ne i32 %412, 0
  br i1 %413, label %414, label %479

414:                                              ; preds = %394
  %415 = load ptr, ptr %10, align 8, !tbaa !5
  %416 = load ptr, ptr %8, align 8, !tbaa !5
  %417 = load i64, ptr %20, align 8, !tbaa !9
  %418 = add i64 %417, 1
  %419 = load i64, ptr %19, align 8, !tbaa !9
  %420 = sub i64 %419, 1
  %421 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %416, i64 noundef %418, i64 noundef %420)
  %422 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %415, i64 noundef %421)
  %423 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %422) #6
  %424 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %423)
  store i64 %424, ptr %21, align 8, !tbaa !9
  %425 = load i64, ptr %11, align 8, !tbaa !9
  %426 = add i64 %425, 1
  store i64 %426, ptr %11, align 8, !tbaa !9
  store i64 %425, ptr %22, align 8, !tbaa !9
  %427 = load i64, ptr %11, align 8, !tbaa !9
  %428 = add i64 %427, 1
  store i64 %428, ptr %11, align 8, !tbaa !9
  store i64 %427, ptr %23, align 8, !tbaa !9
  %429 = load i64, ptr %11, align 8, !tbaa !9
  %430 = add i64 %429, 1
  store i64 %430, ptr %11, align 8, !tbaa !9
  store i64 %429, ptr %24, align 8, !tbaa !9
  %431 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %47) #6
  %432 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %433 = load i64, ptr %22, align 8, !tbaa !9
  %434 = load double, ptr %31, align 8, !tbaa !11
  %435 = load double, ptr %32, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %432, i64 noundef %433, double noundef %434, double noundef %435)
          to label %436 unwind label %452

436:                                              ; preds = %414
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %47, ptr noundef %432) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %431, ptr noundef nonnull align 8 dereferenceable(8) %47)
          to label %437 unwind label %456

437:                                              ; preds = %436
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %47) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #6
  %438 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %48) #6
  %439 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %440 = load i64, ptr %23, align 8, !tbaa !9
  %441 = load double, ptr %33, align 8, !tbaa !11
  %442 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %439, i64 noundef %440, double noundef %441, double noundef %442)
          to label %443 unwind label %461

443:                                              ; preds = %437
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %48, ptr noundef %439) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %438, ptr noundef nonnull align 8 dereferenceable(8) %48)
          to label %444 unwind label %465

444:                                              ; preds = %443
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %48) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #6
  %445 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %49) #6
  %446 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %447 = load i64, ptr %24, align 8, !tbaa !9
  %448 = load double, ptr %35, align 8, !tbaa !11
  %449 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %446, i64 noundef %447, double noundef %448, double noundef %449)
          to label %450 unwind label %470

450:                                              ; preds = %444
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %49, ptr noundef %446) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %445, ptr noundef nonnull align 8 dereferenceable(8) %49)
          to label %451 unwind label %474

451:                                              ; preds = %450
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %49) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #6
  br label %1036

452:                                              ; preds = %414
  %453 = landingpad { ptr, i32 }
          cleanup
  %454 = extractvalue { ptr, i32 } %453, 0
  store ptr %454, ptr %38, align 8
  %455 = extractvalue { ptr, i32 } %453, 1
  store i32 %455, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %432, i64 noundef 24) #8
  br label %460

456:                                              ; preds = %436
  %457 = landingpad { ptr, i32 }
          cleanup
  %458 = extractvalue { ptr, i32 } %457, 0
  store ptr %458, ptr %38, align 8
  %459 = extractvalue { ptr, i32 } %457, 1
  store i32 %459, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %47) #6
  br label %460

460:                                              ; preds = %456, %452
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #6
  br label %1059

461:                                              ; preds = %437
  %462 = landingpad { ptr, i32 }
          cleanup
  %463 = extractvalue { ptr, i32 } %462, 0
  store ptr %463, ptr %38, align 8
  %464 = extractvalue { ptr, i32 } %462, 1
  store i32 %464, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %439, i64 noundef 24) #8
  br label %469

465:                                              ; preds = %443
  %466 = landingpad { ptr, i32 }
          cleanup
  %467 = extractvalue { ptr, i32 } %466, 0
  store ptr %467, ptr %38, align 8
  %468 = extractvalue { ptr, i32 } %466, 1
  store i32 %468, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %48) #6
  br label %469

469:                                              ; preds = %465, %461
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #6
  br label %1059

470:                                              ; preds = %444
  %471 = landingpad { ptr, i32 }
          cleanup
  %472 = extractvalue { ptr, i32 } %471, 0
  store ptr %472, ptr %38, align 8
  %473 = extractvalue { ptr, i32 } %471, 1
  store i32 %473, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %446, i64 noundef 24) #8
  br label %478

474:                                              ; preds = %450
  %475 = landingpad { ptr, i32 }
          cleanup
  %476 = extractvalue { ptr, i32 } %475, 0
  store ptr %476, ptr %38, align 8
  %477 = extractvalue { ptr, i32 } %475, 1
  store i32 %477, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %49) #6
  br label %478

478:                                              ; preds = %474, %470
  call void @llvm.lifetime.end.p0(i64 8, ptr %49) #6
  br label %1059

479:                                              ; preds = %394
  %480 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %481 = trunc i8 %480 to i1
  %482 = xor i1 %481, true
  %483 = zext i1 %482 to i32
  %484 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %485 = trunc i8 %484 to i1
  %486 = xor i1 %485, true
  %487 = zext i1 %486 to i32
  %488 = and i32 %483, %487
  %489 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %490 = trunc i8 %489 to i1
  %491 = xor i1 %490, true
  %492 = zext i1 %491 to i32
  %493 = and i32 %488, %492
  %494 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %495 = trunc i8 %494 to i1
  %496 = zext i1 %495 to i32
  %497 = and i32 %493, %496
  %498 = icmp ne i32 %497, 0
  br i1 %498, label %499, label %564

499:                                              ; preds = %479
  %500 = load i64, ptr %11, align 8, !tbaa !9
  %501 = add i64 %500, 1
  store i64 %501, ptr %11, align 8, !tbaa !9
  store i64 %500, ptr %21, align 8, !tbaa !9
  %502 = load ptr, ptr %10, align 8, !tbaa !5
  %503 = load ptr, ptr %8, align 8, !tbaa !5
  %504 = load i64, ptr %20, align 8, !tbaa !9
  %505 = add i64 %504, 1
  %506 = load i64, ptr %19, align 8, !tbaa !9
  %507 = add i64 %506, 1
  %508 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %503, i64 noundef %505, i64 noundef %507)
  %509 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %502, i64 noundef %508)
  %510 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %509) #6
  %511 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %510)
  store i64 %511, ptr %22, align 8, !tbaa !9
  %512 = load i64, ptr %11, align 8, !tbaa !9
  %513 = add i64 %512, 1
  store i64 %513, ptr %11, align 8, !tbaa !9
  store i64 %512, ptr %23, align 8, !tbaa !9
  %514 = load i64, ptr %11, align 8, !tbaa !9
  %515 = add i64 %514, 1
  store i64 %515, ptr %11, align 8, !tbaa !9
  store i64 %514, ptr %24, align 8, !tbaa !9
  %516 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %50) #6
  %517 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %518 = load i64, ptr %21, align 8, !tbaa !9
  %519 = load double, ptr %29, align 8, !tbaa !11
  %520 = load double, ptr %30, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %517, i64 noundef %518, double noundef %519, double noundef %520)
          to label %521 unwind label %537

521:                                              ; preds = %499
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %50, ptr noundef %517) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %516, ptr noundef nonnull align 8 dereferenceable(8) %50)
          to label %522 unwind label %541

522:                                              ; preds = %521
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %50) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #6
  %523 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %51) #6
  %524 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %525 = load i64, ptr %23, align 8, !tbaa !9
  %526 = load double, ptr %33, align 8, !tbaa !11
  %527 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %524, i64 noundef %525, double noundef %526, double noundef %527)
          to label %528 unwind label %546

528:                                              ; preds = %522
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %51, ptr noundef %524) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %523, ptr noundef nonnull align 8 dereferenceable(8) %51)
          to label %529 unwind label %550

529:                                              ; preds = %528
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %51) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #6
  %530 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %52) #6
  %531 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %532 = load i64, ptr %24, align 8, !tbaa !9
  %533 = load double, ptr %35, align 8, !tbaa !11
  %534 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %531, i64 noundef %532, double noundef %533, double noundef %534)
          to label %535 unwind label %555

535:                                              ; preds = %529
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %52, ptr noundef %531) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %530, ptr noundef nonnull align 8 dereferenceable(8) %52)
          to label %536 unwind label %559

536:                                              ; preds = %535
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %52) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %52) #6
  br label %1035

537:                                              ; preds = %499
  %538 = landingpad { ptr, i32 }
          cleanup
  %539 = extractvalue { ptr, i32 } %538, 0
  store ptr %539, ptr %38, align 8
  %540 = extractvalue { ptr, i32 } %538, 1
  store i32 %540, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %517, i64 noundef 24) #8
  br label %545

541:                                              ; preds = %521
  %542 = landingpad { ptr, i32 }
          cleanup
  %543 = extractvalue { ptr, i32 } %542, 0
  store ptr %543, ptr %38, align 8
  %544 = extractvalue { ptr, i32 } %542, 1
  store i32 %544, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %50) #6
  br label %545

545:                                              ; preds = %541, %537
  call void @llvm.lifetime.end.p0(i64 8, ptr %50) #6
  br label %1059

546:                                              ; preds = %522
  %547 = landingpad { ptr, i32 }
          cleanup
  %548 = extractvalue { ptr, i32 } %547, 0
  store ptr %548, ptr %38, align 8
  %549 = extractvalue { ptr, i32 } %547, 1
  store i32 %549, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %524, i64 noundef 24) #8
  br label %554

550:                                              ; preds = %528
  %551 = landingpad { ptr, i32 }
          cleanup
  %552 = extractvalue { ptr, i32 } %551, 0
  store ptr %552, ptr %38, align 8
  %553 = extractvalue { ptr, i32 } %551, 1
  store i32 %553, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %51) #6
  br label %554

554:                                              ; preds = %550, %546
  call void @llvm.lifetime.end.p0(i64 8, ptr %51) #6
  br label %1059

555:                                              ; preds = %529
  %556 = landingpad { ptr, i32 }
          cleanup
  %557 = extractvalue { ptr, i32 } %556, 0
  store ptr %557, ptr %38, align 8
  %558 = extractvalue { ptr, i32 } %556, 1
  store i32 %558, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %531, i64 noundef 24) #8
  br label %563

559:                                              ; preds = %535
  %560 = landingpad { ptr, i32 }
          cleanup
  %561 = extractvalue { ptr, i32 } %560, 0
  store ptr %561, ptr %38, align 8
  %562 = extractvalue { ptr, i32 } %560, 1
  store i32 %562, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %52) #6
  br label %563

563:                                              ; preds = %559, %555
  call void @llvm.lifetime.end.p0(i64 8, ptr %52) #6
  br label %1059

564:                                              ; preds = %479
  %565 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %566 = trunc i8 %565 to i1
  %567 = zext i1 %566 to i32
  %568 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %569 = trunc i8 %568 to i1
  %570 = zext i1 %569 to i32
  %571 = and i32 %567, %570
  %572 = icmp ne i32 %571, 0
  br i1 %572, label %573, label %619

573:                                              ; preds = %564
  %574 = load ptr, ptr %10, align 8, !tbaa !5
  %575 = load ptr, ptr %8, align 8, !tbaa !5
  %576 = load i64, ptr %20, align 8, !tbaa !9
  %577 = load i64, ptr %19, align 8, !tbaa !9
  %578 = sub i64 %577, 1
  %579 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %575, i64 noundef %576, i64 noundef %578)
  %580 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %574, i64 noundef %579)
  %581 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %580) #6
  %582 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %581)
  store i64 %582, ptr %21, align 8, !tbaa !9
  %583 = load ptr, ptr %10, align 8, !tbaa !5
  %584 = load ptr, ptr %8, align 8, !tbaa !5
  %585 = load i64, ptr %20, align 8, !tbaa !9
  %586 = add i64 %585, 1
  %587 = load i64, ptr %19, align 8, !tbaa !9
  %588 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %584, i64 noundef %586, i64 noundef %587)
  %589 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %583, i64 noundef %588)
  %590 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %589) #6
  %591 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %590)
  store i64 %591, ptr %22, align 8, !tbaa !9
  %592 = load i64, ptr %11, align 8, !tbaa !9
  %593 = add i64 %592, 1
  store i64 %593, ptr %11, align 8, !tbaa !9
  store i64 %592, ptr %23, align 8, !tbaa !9
  %594 = load ptr, ptr %10, align 8, !tbaa !5
  %595 = load ptr, ptr %8, align 8, !tbaa !5
  %596 = load i64, ptr %20, align 8, !tbaa !9
  %597 = load i64, ptr %19, align 8, !tbaa !9
  %598 = sub i64 %597, 1
  %599 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %595, i64 noundef %596, i64 noundef %598)
  %600 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %594, i64 noundef %599)
  %601 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %600) #6
  %602 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %601)
  store i64 %602, ptr %24, align 8, !tbaa !9
  %603 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %53) #6
  %604 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %605 = load i64, ptr %23, align 8, !tbaa !9
  %606 = load double, ptr %33, align 8, !tbaa !11
  %607 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %604, i64 noundef %605, double noundef %606, double noundef %607)
          to label %608 unwind label %610

608:                                              ; preds = %573
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %53, ptr noundef %604) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %603, ptr noundef nonnull align 8 dereferenceable(8) %53)
          to label %609 unwind label %614

609:                                              ; preds = %608
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %53) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #6
  br label %1034

610:                                              ; preds = %573
  %611 = landingpad { ptr, i32 }
          cleanup
  %612 = extractvalue { ptr, i32 } %611, 0
  store ptr %612, ptr %38, align 8
  %613 = extractvalue { ptr, i32 } %611, 1
  store i32 %613, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %604, i64 noundef 24) #8
  br label %618

614:                                              ; preds = %608
  %615 = landingpad { ptr, i32 }
          cleanup
  %616 = extractvalue { ptr, i32 } %615, 0
  store ptr %616, ptr %38, align 8
  %617 = extractvalue { ptr, i32 } %615, 1
  store i32 %617, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %53) #6
  br label %618

618:                                              ; preds = %614, %610
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #6
  br label %1059

619:                                              ; preds = %564
  %620 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %621 = trunc i8 %620 to i1
  %622 = zext i1 %621 to i32
  %623 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %624 = trunc i8 %623 to i1
  %625 = zext i1 %624 to i32
  %626 = and i32 %622, %625
  %627 = icmp ne i32 %626, 0
  br i1 %627, label %628, label %675

628:                                              ; preds = %619
  %629 = load ptr, ptr %10, align 8, !tbaa !5
  %630 = load ptr, ptr %8, align 8, !tbaa !5
  %631 = load i64, ptr %20, align 8, !tbaa !9
  %632 = load i64, ptr %19, align 8, !tbaa !9
  %633 = sub i64 %632, 1
  %634 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %630, i64 noundef %631, i64 noundef %633)
  %635 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %629, i64 noundef %634)
  %636 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %635) #6
  %637 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %636)
  store i64 %637, ptr %21, align 8, !tbaa !9
  %638 = load ptr, ptr %10, align 8, !tbaa !5
  %639 = load ptr, ptr %8, align 8, !tbaa !5
  %640 = load i64, ptr %20, align 8, !tbaa !9
  %641 = add i64 %640, 1
  %642 = load i64, ptr %19, align 8, !tbaa !9
  %643 = add i64 %642, 1
  %644 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %639, i64 noundef %641, i64 noundef %643)
  %645 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %638, i64 noundef %644)
  %646 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %645) #6
  %647 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %646)
  store i64 %647, ptr %22, align 8, !tbaa !9
  %648 = load i64, ptr %11, align 8, !tbaa !9
  %649 = add i64 %648, 1
  store i64 %649, ptr %11, align 8, !tbaa !9
  store i64 %648, ptr %23, align 8, !tbaa !9
  %650 = load ptr, ptr %10, align 8, !tbaa !5
  %651 = load ptr, ptr %8, align 8, !tbaa !5
  %652 = load i64, ptr %20, align 8, !tbaa !9
  %653 = load i64, ptr %19, align 8, !tbaa !9
  %654 = sub i64 %653, 1
  %655 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %651, i64 noundef %652, i64 noundef %654)
  %656 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %650, i64 noundef %655)
  %657 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %656) #6
  %658 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %657)
  store i64 %658, ptr %24, align 8, !tbaa !9
  %659 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %54) #6
  %660 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %661 = load i64, ptr %23, align 8, !tbaa !9
  %662 = load double, ptr %33, align 8, !tbaa !11
  %663 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %660, i64 noundef %661, double noundef %662, double noundef %663)
          to label %664 unwind label %666

664:                                              ; preds = %628
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %54, ptr noundef %660) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %659, ptr noundef nonnull align 8 dereferenceable(8) %54)
          to label %665 unwind label %670

665:                                              ; preds = %664
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %54) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #6
  br label %1033

666:                                              ; preds = %628
  %667 = landingpad { ptr, i32 }
          cleanup
  %668 = extractvalue { ptr, i32 } %667, 0
  store ptr %668, ptr %38, align 8
  %669 = extractvalue { ptr, i32 } %667, 1
  store i32 %669, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %660, i64 noundef 24) #8
  br label %674

670:                                              ; preds = %664
  %671 = landingpad { ptr, i32 }
          cleanup
  %672 = extractvalue { ptr, i32 } %671, 0
  store ptr %672, ptr %38, align 8
  %673 = extractvalue { ptr, i32 } %671, 1
  store i32 %673, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %54) #6
  br label %674

674:                                              ; preds = %670, %666
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #6
  br label %1059

675:                                              ; preds = %619
  %676 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %677 = trunc i8 %676 to i1
  %678 = xor i1 %677, true
  %679 = zext i1 %678 to i32
  %680 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %681 = trunc i8 %680 to i1
  %682 = xor i1 %681, true
  %683 = zext i1 %682 to i32
  %684 = and i32 %679, %683
  %685 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %686 = trunc i8 %685 to i1
  %687 = zext i1 %686 to i32
  %688 = and i32 %684, %687
  %689 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %690 = trunc i8 %689 to i1
  %691 = zext i1 %690 to i32
  %692 = and i32 %688, %691
  %693 = icmp ne i32 %692, 0
  br i1 %693, label %694, label %751

694:                                              ; preds = %675
  %695 = load ptr, ptr %10, align 8, !tbaa !5
  %696 = load ptr, ptr %8, align 8, !tbaa !5
  %697 = load i64, ptr %20, align 8, !tbaa !9
  %698 = add i64 %697, 1
  %699 = load i64, ptr %19, align 8, !tbaa !9
  %700 = sub i64 %699, 1
  %701 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %696, i64 noundef %698, i64 noundef %700)
  %702 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %695, i64 noundef %701)
  %703 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %702) #6
  %704 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %703)
  store i64 %704, ptr %21, align 8, !tbaa !9
  %705 = load ptr, ptr %10, align 8, !tbaa !5
  %706 = load ptr, ptr %8, align 8, !tbaa !5
  %707 = load i64, ptr %20, align 8, !tbaa !9
  %708 = add i64 %707, 1
  %709 = load i64, ptr %19, align 8, !tbaa !9
  %710 = add i64 %709, 1
  %711 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %706, i64 noundef %708, i64 noundef %710)
  %712 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %705, i64 noundef %711)
  %713 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %712) #6
  %714 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %713)
  store i64 %714, ptr %22, align 8, !tbaa !9
  %715 = load i64, ptr %11, align 8, !tbaa !9
  %716 = add i64 %715, 1
  store i64 %716, ptr %11, align 8, !tbaa !9
  store i64 %715, ptr %23, align 8, !tbaa !9
  %717 = load i64, ptr %11, align 8, !tbaa !9
  %718 = add i64 %717, 1
  store i64 %718, ptr %11, align 8, !tbaa !9
  store i64 %717, ptr %24, align 8, !tbaa !9
  %719 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %55) #6
  %720 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %721 = load i64, ptr %23, align 8, !tbaa !9
  %722 = load double, ptr %33, align 8, !tbaa !11
  %723 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %720, i64 noundef %721, double noundef %722, double noundef %723)
          to label %724 unwind label %733

724:                                              ; preds = %694
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %55, ptr noundef %720) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %719, ptr noundef nonnull align 8 dereferenceable(8) %55)
          to label %725 unwind label %737

725:                                              ; preds = %724
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %55) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #6
  %726 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %56) #6
  %727 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %728 = load i64, ptr %24, align 8, !tbaa !9
  %729 = load double, ptr %35, align 8, !tbaa !11
  %730 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %727, i64 noundef %728, double noundef %729, double noundef %730)
          to label %731 unwind label %742

731:                                              ; preds = %725
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %56, ptr noundef %727) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %726, ptr noundef nonnull align 8 dereferenceable(8) %56)
          to label %732 unwind label %746

732:                                              ; preds = %731
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %56) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #6
  br label %1032

733:                                              ; preds = %694
  %734 = landingpad { ptr, i32 }
          cleanup
  %735 = extractvalue { ptr, i32 } %734, 0
  store ptr %735, ptr %38, align 8
  %736 = extractvalue { ptr, i32 } %734, 1
  store i32 %736, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %720, i64 noundef 24) #8
  br label %741

737:                                              ; preds = %724
  %738 = landingpad { ptr, i32 }
          cleanup
  %739 = extractvalue { ptr, i32 } %738, 0
  store ptr %739, ptr %38, align 8
  %740 = extractvalue { ptr, i32 } %738, 1
  store i32 %740, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %55) #6
  br label %741

741:                                              ; preds = %737, %733
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #6
  br label %1059

742:                                              ; preds = %725
  %743 = landingpad { ptr, i32 }
          cleanup
  %744 = extractvalue { ptr, i32 } %743, 0
  store ptr %744, ptr %38, align 8
  %745 = extractvalue { ptr, i32 } %743, 1
  store i32 %745, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %727, i64 noundef 24) #8
  br label %750

746:                                              ; preds = %731
  %747 = landingpad { ptr, i32 }
          cleanup
  %748 = extractvalue { ptr, i32 } %747, 0
  store ptr %748, ptr %38, align 8
  %749 = extractvalue { ptr, i32 } %747, 1
  store i32 %749, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %56) #6
  br label %750

750:                                              ; preds = %746, %742
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #6
  br label %1059

751:                                              ; preds = %675
  %752 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %753 = trunc i8 %752 to i1
  %754 = zext i1 %753 to i32
  %755 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %756 = trunc i8 %755 to i1
  %757 = xor i1 %756, true
  %758 = zext i1 %757 to i32
  %759 = and i32 %754, %758
  %760 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %761 = trunc i8 %760 to i1
  %762 = zext i1 %761 to i32
  %763 = and i32 %759, %762
  %764 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %765 = trunc i8 %764 to i1
  %766 = xor i1 %765, true
  %767 = zext i1 %766 to i32
  %768 = and i32 %763, %767
  %769 = icmp ne i32 %768, 0
  br i1 %769, label %770, label %825

770:                                              ; preds = %751
  %771 = load ptr, ptr %10, align 8, !tbaa !5
  %772 = load ptr, ptr %8, align 8, !tbaa !5
  %773 = load i64, ptr %20, align 8, !tbaa !9
  %774 = load i64, ptr %19, align 8, !tbaa !9
  %775 = sub i64 %774, 1
  %776 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %772, i64 noundef %773, i64 noundef %775)
  %777 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %771, i64 noundef %776)
  %778 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %777) #6
  %779 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %778)
  store i64 %779, ptr %21, align 8, !tbaa !9
  %780 = load i64, ptr %11, align 8, !tbaa !9
  %781 = add i64 %780, 1
  store i64 %781, ptr %11, align 8, !tbaa !9
  store i64 %780, ptr %22, align 8, !tbaa !9
  %782 = load i64, ptr %11, align 8, !tbaa !9
  %783 = add i64 %782, 1
  store i64 %783, ptr %11, align 8, !tbaa !9
  store i64 %782, ptr %23, align 8, !tbaa !9
  %784 = load ptr, ptr %10, align 8, !tbaa !5
  %785 = load ptr, ptr %8, align 8, !tbaa !5
  %786 = load i64, ptr %20, align 8, !tbaa !9
  %787 = load i64, ptr %19, align 8, !tbaa !9
  %788 = sub i64 %787, 1
  %789 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %785, i64 noundef %786, i64 noundef %788)
  %790 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %784, i64 noundef %789)
  %791 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %790) #6
  %792 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %791)
  store i64 %792, ptr %24, align 8, !tbaa !9
  %793 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %57) #6
  %794 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %795 = load i64, ptr %22, align 8, !tbaa !9
  %796 = load double, ptr %31, align 8, !tbaa !11
  %797 = load double, ptr %32, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %794, i64 noundef %795, double noundef %796, double noundef %797)
          to label %798 unwind label %807

798:                                              ; preds = %770
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %57, ptr noundef %794) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %793, ptr noundef nonnull align 8 dereferenceable(8) %57)
          to label %799 unwind label %811

799:                                              ; preds = %798
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %57) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #6
  %800 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %58) #6
  %801 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %802 = load i64, ptr %23, align 8, !tbaa !9
  %803 = load double, ptr %33, align 8, !tbaa !11
  %804 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %801, i64 noundef %802, double noundef %803, double noundef %804)
          to label %805 unwind label %816

805:                                              ; preds = %799
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %58, ptr noundef %801) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %800, ptr noundef nonnull align 8 dereferenceable(8) %58)
          to label %806 unwind label %820

806:                                              ; preds = %805
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %58) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #6
  br label %1031

807:                                              ; preds = %770
  %808 = landingpad { ptr, i32 }
          cleanup
  %809 = extractvalue { ptr, i32 } %808, 0
  store ptr %809, ptr %38, align 8
  %810 = extractvalue { ptr, i32 } %808, 1
  store i32 %810, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %794, i64 noundef 24) #8
  br label %815

811:                                              ; preds = %798
  %812 = landingpad { ptr, i32 }
          cleanup
  %813 = extractvalue { ptr, i32 } %812, 0
  store ptr %813, ptr %38, align 8
  %814 = extractvalue { ptr, i32 } %812, 1
  store i32 %814, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %57) #6
  br label %815

815:                                              ; preds = %811, %807
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #6
  br label %1059

816:                                              ; preds = %799
  %817 = landingpad { ptr, i32 }
          cleanup
  %818 = extractvalue { ptr, i32 } %817, 0
  store ptr %818, ptr %38, align 8
  %819 = extractvalue { ptr, i32 } %817, 1
  store i32 %819, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %801, i64 noundef 24) #8
  br label %824

820:                                              ; preds = %805
  %821 = landingpad { ptr, i32 }
          cleanup
  %822 = extractvalue { ptr, i32 } %821, 0
  store ptr %822, ptr %38, align 8
  %823 = extractvalue { ptr, i32 } %821, 1
  store i32 %823, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %58) #6
  br label %824

824:                                              ; preds = %820, %816
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #6
  br label %1059

825:                                              ; preds = %751
  %826 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %827 = trunc i8 %826 to i1
  %828 = xor i1 %827, true
  %829 = zext i1 %828 to i32
  %830 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %831 = trunc i8 %830 to i1
  %832 = zext i1 %831 to i32
  %833 = and i32 %829, %832
  %834 = load i8, ptr %27, align 1, !tbaa !13, !range !15, !noundef !16
  %835 = trunc i8 %834 to i1
  %836 = zext i1 %835 to i32
  %837 = and i32 %833, %836
  %838 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %839 = trunc i8 %838 to i1
  %840 = xor i1 %839, true
  %841 = zext i1 %840 to i32
  %842 = and i32 %837, %841
  %843 = icmp ne i32 %842, 0
  br i1 %843, label %844, label %899

844:                                              ; preds = %825
  %845 = load ptr, ptr %10, align 8, !tbaa !5
  %846 = load ptr, ptr %8, align 8, !tbaa !5
  %847 = load i64, ptr %20, align 8, !tbaa !9
  %848 = add i64 %847, 1
  %849 = load i64, ptr %19, align 8, !tbaa !9
  %850 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %846, i64 noundef %848, i64 noundef %849)
  %851 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %845, i64 noundef %850)
  %852 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %851) #6
  %853 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %852)
  store i64 %853, ptr %21, align 8, !tbaa !9
  %854 = load ptr, ptr %10, align 8, !tbaa !5
  %855 = load ptr, ptr %8, align 8, !tbaa !5
  %856 = load i64, ptr %20, align 8, !tbaa !9
  %857 = add i64 %856, 1
  %858 = load i64, ptr %19, align 8, !tbaa !9
  %859 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %855, i64 noundef %857, i64 noundef %858)
  %860 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %854, i64 noundef %859)
  %861 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %860) #6
  %862 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %861)
  store i64 %862, ptr %22, align 8, !tbaa !9
  %863 = load i64, ptr %11, align 8, !tbaa !9
  %864 = add i64 %863, 1
  store i64 %864, ptr %11, align 8, !tbaa !9
  store i64 %863, ptr %23, align 8, !tbaa !9
  %865 = load i64, ptr %11, align 8, !tbaa !9
  %866 = add i64 %865, 1
  store i64 %866, ptr %11, align 8, !tbaa !9
  store i64 %865, ptr %24, align 8, !tbaa !9
  %867 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #6
  %868 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %869 = load i64, ptr %23, align 8, !tbaa !9
  %870 = load double, ptr %33, align 8, !tbaa !11
  %871 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %868, i64 noundef %869, double noundef %870, double noundef %871)
          to label %872 unwind label %881

872:                                              ; preds = %844
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %59, ptr noundef %868) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %867, ptr noundef nonnull align 8 dereferenceable(8) %59)
          to label %873 unwind label %885

873:                                              ; preds = %872
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %59) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  %874 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %60) #6
  %875 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %876 = load i64, ptr %24, align 8, !tbaa !9
  %877 = load double, ptr %35, align 8, !tbaa !11
  %878 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %875, i64 noundef %876, double noundef %877, double noundef %878)
          to label %879 unwind label %890

879:                                              ; preds = %873
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %60, ptr noundef %875) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %874, ptr noundef nonnull align 8 dereferenceable(8) %60)
          to label %880 unwind label %894

880:                                              ; preds = %879
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #6
  br label %1030

881:                                              ; preds = %844
  %882 = landingpad { ptr, i32 }
          cleanup
  %883 = extractvalue { ptr, i32 } %882, 0
  store ptr %883, ptr %38, align 8
  %884 = extractvalue { ptr, i32 } %882, 1
  store i32 %884, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %868, i64 noundef 24) #8
  br label %889

885:                                              ; preds = %872
  %886 = landingpad { ptr, i32 }
          cleanup
  %887 = extractvalue { ptr, i32 } %886, 0
  store ptr %887, ptr %38, align 8
  %888 = extractvalue { ptr, i32 } %886, 1
  store i32 %888, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %59) #6
  br label %889

889:                                              ; preds = %885, %881
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  br label %1059

890:                                              ; preds = %873
  %891 = landingpad { ptr, i32 }
          cleanup
  %892 = extractvalue { ptr, i32 } %891, 0
  store ptr %892, ptr %38, align 8
  %893 = extractvalue { ptr, i32 } %891, 1
  store i32 %893, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %875, i64 noundef 24) #8
  br label %898

894:                                              ; preds = %879
  %895 = landingpad { ptr, i32 }
          cleanup
  %896 = extractvalue { ptr, i32 } %895, 0
  store ptr %896, ptr %38, align 8
  %897 = extractvalue { ptr, i32 } %895, 1
  store i32 %897, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %60) #6
  br label %898

898:                                              ; preds = %894, %890
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #6
  br label %1059

899:                                              ; preds = %825
  %900 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %901 = trunc i8 %900 to i1
  %902 = zext i1 %901 to i32
  %903 = load i8, ptr %28, align 1, !tbaa !13, !range !15, !noundef !16
  %904 = trunc i8 %903 to i1
  %905 = zext i1 %904 to i32
  %906 = and i32 %902, %905
  %907 = icmp ne i32 %906, 0
  br i1 %907, label %908, label %963

908:                                              ; preds = %899
  %909 = load ptr, ptr %10, align 8, !tbaa !5
  %910 = load ptr, ptr %8, align 8, !tbaa !5
  %911 = load i64, ptr %20, align 8, !tbaa !9
  %912 = add i64 %911, 1
  %913 = load i64, ptr %19, align 8, !tbaa !9
  %914 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %910, i64 noundef %912, i64 noundef %913)
  %915 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %909, i64 noundef %914)
  %916 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %915) #6
  %917 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %916)
  store i64 %917, ptr %21, align 8, !tbaa !9
  %918 = load ptr, ptr %10, align 8, !tbaa !5
  %919 = load ptr, ptr %8, align 8, !tbaa !5
  %920 = load i64, ptr %20, align 8, !tbaa !9
  %921 = add i64 %920, 1
  %922 = load i64, ptr %19, align 8, !tbaa !9
  %923 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %919, i64 noundef %921, i64 noundef %922)
  %924 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %918, i64 noundef %923)
  %925 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %924) #6
  %926 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %925)
  store i64 %926, ptr %22, align 8, !tbaa !9
  %927 = load i64, ptr %11, align 8, !tbaa !9
  %928 = add i64 %927, 1
  store i64 %928, ptr %11, align 8, !tbaa !9
  store i64 %927, ptr %23, align 8, !tbaa !9
  %929 = load i64, ptr %11, align 8, !tbaa !9
  %930 = add i64 %929, 1
  store i64 %930, ptr %11, align 8, !tbaa !9
  store i64 %929, ptr %24, align 8, !tbaa !9
  %931 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %61) #6
  %932 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %933 = load i64, ptr %23, align 8, !tbaa !9
  %934 = load double, ptr %33, align 8, !tbaa !11
  %935 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %932, i64 noundef %933, double noundef %934, double noundef %935)
          to label %936 unwind label %945

936:                                              ; preds = %908
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %61, ptr noundef %932) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %931, ptr noundef nonnull align 8 dereferenceable(8) %61)
          to label %937 unwind label %949

937:                                              ; preds = %936
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %61) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #6
  %938 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %62) #6
  %939 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %940 = load i64, ptr %24, align 8, !tbaa !9
  %941 = load double, ptr %35, align 8, !tbaa !11
  %942 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %939, i64 noundef %940, double noundef %941, double noundef %942)
          to label %943 unwind label %954

943:                                              ; preds = %937
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %62, ptr noundef %939) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %938, ptr noundef nonnull align 8 dereferenceable(8) %62)
          to label %944 unwind label %958

944:                                              ; preds = %943
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %62) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #6
  br label %1029

945:                                              ; preds = %908
  %946 = landingpad { ptr, i32 }
          cleanup
  %947 = extractvalue { ptr, i32 } %946, 0
  store ptr %947, ptr %38, align 8
  %948 = extractvalue { ptr, i32 } %946, 1
  store i32 %948, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %932, i64 noundef 24) #8
  br label %953

949:                                              ; preds = %936
  %950 = landingpad { ptr, i32 }
          cleanup
  %951 = extractvalue { ptr, i32 } %950, 0
  store ptr %951, ptr %38, align 8
  %952 = extractvalue { ptr, i32 } %950, 1
  store i32 %952, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %61) #6
  br label %953

953:                                              ; preds = %949, %945
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #6
  br label %1059

954:                                              ; preds = %937
  %955 = landingpad { ptr, i32 }
          cleanup
  %956 = extractvalue { ptr, i32 } %955, 0
  store ptr %956, ptr %38, align 8
  %957 = extractvalue { ptr, i32 } %955, 1
  store i32 %957, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %939, i64 noundef 24) #8
  br label %962

958:                                              ; preds = %943
  %959 = landingpad { ptr, i32 }
          cleanup
  %960 = extractvalue { ptr, i32 } %959, 0
  store ptr %960, ptr %38, align 8
  %961 = extractvalue { ptr, i32 } %959, 1
  store i32 %961, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %62) #6
  br label %962

962:                                              ; preds = %958, %954
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #6
  br label %1059

963:                                              ; preds = %899
  %964 = load i8, ptr %25, align 1, !tbaa !13, !range !15, !noundef !16
  %965 = trunc i8 %964 to i1
  %966 = xor i1 %965, true
  %967 = zext i1 %966 to i32
  %968 = load i8, ptr %26, align 1, !tbaa !13, !range !15, !noundef !16
  %969 = trunc i8 %968 to i1
  %970 = zext i1 %969 to i32
  %971 = and i32 %967, %970
  %972 = icmp ne i32 %971, 0
  br i1 %972, label %973, label %1028

973:                                              ; preds = %963
  %974 = load ptr, ptr %10, align 8, !tbaa !5
  %975 = load ptr, ptr %8, align 8, !tbaa !5
  %976 = load i64, ptr %20, align 8, !tbaa !9
  %977 = add i64 %976, 1
  %978 = load i64, ptr %19, align 8, !tbaa !9
  %979 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %975, i64 noundef %977, i64 noundef %978)
  %980 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %974, i64 noundef %979)
  %981 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %980) #6
  %982 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %981)
  store i64 %982, ptr %21, align 8, !tbaa !9
  %983 = load ptr, ptr %10, align 8, !tbaa !5
  %984 = load ptr, ptr %8, align 8, !tbaa !5
  %985 = load i64, ptr %20, align 8, !tbaa !9
  %986 = add i64 %985, 1
  %987 = load i64, ptr %19, align 8, !tbaa !9
  %988 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %984, i64 noundef %986, i64 noundef %987)
  %989 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %983, i64 noundef %988)
  %990 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %989) #6
  %991 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %990)
  store i64 %991, ptr %22, align 8, !tbaa !9
  %992 = load i64, ptr %11, align 8, !tbaa !9
  %993 = add i64 %992, 1
  store i64 %993, ptr %11, align 8, !tbaa !9
  store i64 %992, ptr %23, align 8, !tbaa !9
  %994 = load i64, ptr %11, align 8, !tbaa !9
  %995 = add i64 %994, 1
  store i64 %995, ptr %11, align 8, !tbaa !9
  store i64 %994, ptr %24, align 8, !tbaa !9
  %996 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %63) #6
  %997 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %998 = load i64, ptr %23, align 8, !tbaa !9
  %999 = load double, ptr %33, align 8, !tbaa !11
  %1000 = load double, ptr %34, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %997, i64 noundef %998, double noundef %999, double noundef %1000)
          to label %1001 unwind label %1010

1001:                                             ; preds = %973
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %63, ptr noundef %997) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %996, ptr noundef nonnull align 8 dereferenceable(8) %63)
          to label %1002 unwind label %1014

1002:                                             ; preds = %1001
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %63) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #6
  %1003 = load ptr, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %64) #6
  %1004 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 24) #7
  %1005 = load i64, ptr %24, align 8, !tbaa !9
  %1006 = load double, ptr %35, align 8, !tbaa !11
  %1007 = load double, ptr %36, align 8, !tbaa !11
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %1004, i64 noundef %1005, double noundef %1006, double noundef %1007)
          to label %1008 unwind label %1019

1008:                                             ; preds = %1002
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %64, ptr noundef %1004) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %1003, ptr noundef nonnull align 8 dereferenceable(8) %64)
          to label %1009 unwind label %1023

1009:                                             ; preds = %1008
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %64) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #6
  br label %1028

1010:                                             ; preds = %973
  %1011 = landingpad { ptr, i32 }
          cleanup
  %1012 = extractvalue { ptr, i32 } %1011, 0
  store ptr %1012, ptr %38, align 8
  %1013 = extractvalue { ptr, i32 } %1011, 1
  store i32 %1013, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %997, i64 noundef 24) #8
  br label %1018

1014:                                             ; preds = %1001
  %1015 = landingpad { ptr, i32 }
          cleanup
  %1016 = extractvalue { ptr, i32 } %1015, 0
  store ptr %1016, ptr %38, align 8
  %1017 = extractvalue { ptr, i32 } %1015, 1
  store i32 %1017, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %63) #6
  br label %1018

1018:                                             ; preds = %1014, %1010
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #6
  br label %1059

1019:                                             ; preds = %1002
  %1020 = landingpad { ptr, i32 }
          cleanup
  %1021 = extractvalue { ptr, i32 } %1020, 0
  store ptr %1021, ptr %38, align 8
  %1022 = extractvalue { ptr, i32 } %1020, 1
  store i32 %1022, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %1004, i64 noundef 24) #8
  br label %1027

1023:                                             ; preds = %1008
  %1024 = landingpad { ptr, i32 }
          cleanup
  %1025 = extractvalue { ptr, i32 } %1024, 0
  store ptr %1025, ptr %38, align 8
  %1026 = extractvalue { ptr, i32 } %1024, 1
  store i32 %1026, ptr %39, align 4
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %64) #6
  br label %1027

1027:                                             ; preds = %1023, %1019
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #6
  br label %1059

1028:                                             ; preds = %1009, %963
  br label %1029

1029:                                             ; preds = %1028, %944
  br label %1030

1030:                                             ; preds = %1029, %880
  br label %1031

1031:                                             ; preds = %1030, %806
  br label %1032

1032:                                             ; preds = %1031, %732
  br label %1033

1033:                                             ; preds = %1032, %665
  br label %1034

1034:                                             ; preds = %1033, %609
  br label %1035

1035:                                             ; preds = %1034, %536
  br label %1036

1036:                                             ; preds = %1035, %451
  br label %1037

1037:                                             ; preds = %1036, %375
  br label %1038

1038:                                             ; preds = %1037, %300
  br label %1039

1039:                                             ; preds = %1038, %207
  %1040 = load ptr, ptr %8, align 8, !tbaa !5
  %1041 = load i64, ptr %20, align 8, !tbaa !9
  %1042 = load i64, ptr %19, align 8, !tbaa !9
  %1043 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %1040, i64 noundef %1041, i64 noundef %1042)
  store i64 %1043, ptr %12, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %65) #6
  %1044 = call noalias noundef nonnull ptr @_Znwm(i64 noundef 56) #7
  %1045 = load i64, ptr %12, align 8, !tbaa !9
  %1046 = load i64, ptr %21, align 8, !tbaa !9
  %1047 = load i64, ptr %22, align 8, !tbaa !9
  %1048 = load i64, ptr %23, align 8, !tbaa !9
  %1049 = load i64, ptr %24, align 8, !tbaa !9
  invoke void @_ZN12resultssaver9SaverCellC1Emmmmm(ptr noundef nonnull align 8 dereferenceable(56) %1044, i64 noundef %1045, i64 noundef %1046, i64 noundef %1047, i64 noundef %1048, i64 noundef %1049)
          to label %1050 unwind label %1055

1050:                                             ; preds = %1039
  call void @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %65, ptr noundef %1044) #6
  %1051 = load ptr, ptr %10, align 8, !tbaa !5
  %1052 = load i64, ptr %12, align 8, !tbaa !9
  %1053 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %1051, i64 noundef %1052) #6
  %1054 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(8) %1053, ptr noundef nonnull align 8 dereferenceable(8) %65) #6
  call void @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %65) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %65) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #6
  br label %1060

1055:                                             ; preds = %1039
  %1056 = landingpad { ptr, i32 }
          cleanup
  %1057 = extractvalue { ptr, i32 } %1056, 0
  store ptr %1057, ptr %38, align 8
  %1058 = extractvalue { ptr, i32 } %1056, 1
  store i32 %1058, ptr %39, align 4
  call void @_ZdlPvm(ptr noundef %1044, i64 noundef 56) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %65) #6
  br label %1059

1059:                                             ; preds = %1055, %1027, %1018, %962, %953, %898, %889, %824, %815, %750, %741, %674, %618, %563, %554, %545, %478, %469, %460, %393, %384, %318, %309, %243, %234, %225, %216
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #6
  br label %1075

1060:                                             ; preds = %1050, %87
  %1061 = load double, ptr %15, align 8, !tbaa !11
  %1062 = load double, ptr %13, align 8, !tbaa !11
  %1063 = fadd double %1062, %1061
  store double %1063, ptr %13, align 8, !tbaa !11
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #6
  br label %1064

1064:                                             ; preds = %1060
  %1065 = load i64, ptr %19, align 8, !tbaa !9
  %1066 = add i64 %1065, 1
  store i64 %1066, ptr %19, align 8, !tbaa !9
  br label %81, !llvm.loop !17

1067:                                             ; preds = %86
  %1068 = load double, ptr %16, align 8, !tbaa !11
  %1069 = load double, ptr %14, align 8, !tbaa !11
  %1070 = fadd double %1069, %1068
  store double %1070, ptr %14, align 8, !tbaa !11
  br label %1071

1071:                                             ; preds = %1067
  %1072 = load i64, ptr %17, align 8, !tbaa !9
  %1073 = add i64 %1072, 1
  store i64 %1073, ptr %17, align 8, !tbaa !9
  br label %74, !llvm.loop !19

1074:                                             ; preds = %79
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #6
  ret void

1075:                                             ; preds = %1059
  %1076 = load ptr, ptr %38, align 8
  %1077 = load i32, ptr %39, align 4
  %1078 = insertvalue { ptr, i32 } poison, ptr %1076, 0
  %1079 = insertvalue { ptr, i32 } %1078, i32 %1077, 1
  resume { ptr, i32 } %1079
}

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

declare noundef i64 @_ZNK12resultssaver15MeshInformation14getCellsAmountEv(ptr noundef nonnull align 8 dereferenceable(16)) #1

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

declare noundef double @_ZNK12resultssaver15MeshInformation6get_dXEv(ptr noundef nonnull align 8 dereferenceable(16)) #1

declare noundef double @_ZNK12resultssaver15MeshInformation6get_dYEv(ptr noundef nonnull align 8 dereferenceable(16)) #1

declare noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16)) #1

declare noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionXEv(ptr noundef nonnull align 8 dereferenceable(16)) #1

declare noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef) #1

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

; Function Attrs: nobuiltin allocsize(0)
declare noundef nonnull ptr @_Znwm(i64 noundef) #3

declare void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, double noundef, double noundef) unnamed_addr #1

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nobuiltin nounwind
declare void @_ZdlPvm(ptr noundef, i64 noundef) #4

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

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

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

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

declare noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef) #1

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

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56)) #1

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56)) #1

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56)) #1

declare void @_ZN12resultssaver9SaverCellC1Emmmmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef) unnamed_addr #1

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"long", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"double", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"bool", !7, i64 0}
!15 = !{i8 0, i8 2}
!16 = !{}
!17 = distinct !{!17, !18}
!18 = !{!"llvm.loop.mustprogress"}
!19 = distinct !{!19, !18}


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

%"class.std::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.11" }
%"struct.std::_Head_base.11" = type { ptr }
%"class.std::unique_ptr.12" = type { %"struct.std::__uniq_ptr_data.13" }
%"struct.std::__uniq_ptr_data.13" = type { %"class.std::__uniq_ptr_impl.14" }
%"class.std::__uniq_ptr_impl.14" = type { %"class.std::tuple.15" }
%"class.std::tuple.15" = type { %"struct.std::_Tuple_impl.16" }
%"struct.std::_Tuple_impl.16" = type { %"struct.std::_Head_base.19" }
%"struct.std::_Head_base.19" = type { ptr }

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN12resultssaver14CellsGenerator20createCellsAndPointsERKNS_15MeshInformationERKNS_9CellsInfoERSt6vectorISt10unique_ptrINS_10SaverPointESt14default_deleteIS9_EESaISC_EERS7_IS8_INS_9SaverCellESA_ISG_EESaISI_EE(ptr nocapture noundef nonnull readnone align 1 dereferenceable(1) %0, ptr noundef nonnull align 8 dereferenceable(16) %1, ptr noundef nonnull align 8 dereferenceable(56) %2, ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(24) %4) local_unnamed_addr #0 align 2 personality ptr @__gxx_personality_v0 {
  %6 = alloca %"class.std::unique_ptr", align 8
  %7 = alloca %"class.std::unique_ptr", align 8
  %8 = alloca %"class.std::unique_ptr", align 8
  %9 = alloca %"class.std::unique_ptr", align 8
  %10 = alloca %"class.std::unique_ptr", align 8
  %11 = alloca %"class.std::unique_ptr", align 8
  %12 = alloca %"class.std::unique_ptr", align 8
  %13 = alloca %"class.std::unique_ptr", align 8
  %14 = alloca %"class.std::unique_ptr", align 8
  %15 = alloca %"class.std::unique_ptr", align 8
  %16 = alloca %"class.std::unique_ptr", align 8
  %17 = alloca %"class.std::unique_ptr", align 8
  %18 = alloca %"class.std::unique_ptr", align 8
  %19 = alloca %"class.std::unique_ptr", align 8
  %20 = alloca %"class.std::unique_ptr", align 8
  %21 = alloca %"class.std::unique_ptr", align 8
  %22 = alloca %"class.std::unique_ptr", align 8
  %23 = alloca %"class.std::unique_ptr", align 8
  %24 = alloca %"class.std::unique_ptr", align 8
  %25 = alloca %"class.std::unique_ptr", align 8
  %26 = alloca %"class.std::unique_ptr", align 8
  %27 = alloca %"class.std::unique_ptr", align 8
  %28 = alloca %"class.std::unique_ptr", align 8
  %29 = alloca %"class.std::unique_ptr", align 8
  %30 = alloca %"class.std::unique_ptr", align 8
  %31 = alloca %"class.std::unique_ptr", align 8
  %32 = alloca %"class.std::unique_ptr.12", align 8
  %33 = tail call noundef i64 @_ZNK12resultssaver15MeshInformation14getCellsAmountEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  tail call void @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE6resizeEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %33)
  %34 = tail call noundef double @_ZNK12resultssaver15MeshInformation6get_dXEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %35 = tail call noundef double @_ZNK12resultssaver15MeshInformation6get_dYEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %36 = tail call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %.not571 = icmp eq i64 %36, 0
  br i1 %.not571, label %._crit_edge570, label %.preheader

.preheader:                                       ; preds = %5, %._crit_edge
  %.0340569 = phi i64 [ %.1341.lcssa, %._crit_edge ], [ 0, %5 ]
  %.0345568 = phi double [ %.pre-phi, %._crit_edge ], [ 0.000000e+00, %5 ]
  %.0346567 = phi i64 [ %40, %._crit_edge ], [ 0, %5 ]
  %37 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionXEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %.not572 = icmp eq i64 %37, 0
  br i1 %.not572, label %.preheader.._crit_edge_crit_edge, label %.lr.ph

.preheader.._crit_edge_crit_edge:                 ; preds = %.preheader
  %.pre = fadd double %35, %.0345568
  br label %._crit_edge

.lr.ph:                                           ; preds = %.preheader
  %38 = xor i64 %.0346567, -1
  %39 = fadd double %35, %.0345568
  br label %43

._crit_edge570:                                   ; preds = %._crit_edge, %5
  ret void

._crit_edge:                                      ; preds = %453, %.preheader.._crit_edge_crit_edge
  %.pre-phi = phi double [ %.pre, %.preheader.._crit_edge_crit_edge ], [ %39, %453 ]
  %.1341.lcssa = phi i64 [ %.0340569, %.preheader.._crit_edge_crit_edge ], [ %.3343, %453 ]
  %40 = add nuw i64 %.0346567, 1
  %41 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %42 = icmp ult i64 %40, %41
  br i1 %42, label %.preheader, label %._crit_edge570, !llvm.loop !5

43:                                               ; preds = %.lr.ph, %453
  %.1341566 = phi i64 [ %.0340569, %.lr.ph ], [ %.3343, %453 ]
  %.0344565 = phi double [ 0.000000e+00, %.lr.ph ], [ %.pre-phi665, %453 ]
  %.0347564 = phi i64 [ 0, %.lr.ph ], [ %47, %453 ]
  %44 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %45 = add i64 %44, %38
  %46 = sub i64 %44, %.0346567
  %47 = add nuw i64 %.0347564, 1
  %48 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %47)
  %.not = icmp eq i64 %48, 0
  br i1 %.not, label %._crit_edge663, label %49

._crit_edge663:                                   ; preds = %43
  %.pre664 = fadd double %34, %.0344565
  br label %453

49:                                               ; preds = %43
  %50 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %51 = icmp ne i64 %50, 0
  %52 = add i64 %45, 2
  %53 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %52, i64 noundef %47)
  %54 = icmp ne i64 %53, 0
  %55 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %52, i64 noundef %.0347564)
  %56 = icmp ne i64 %55, 0
  %57 = add i64 %.0347564, 2
  %58 = call noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %52, i64 noundef %57)
  %59 = icmp ne i64 %58, 0
  %60 = fadd double %34, %.0344565
  %61 = xor i1 %51, true
  %62 = zext i1 %61 to i32
  %63 = xor i1 %54, true
  %64 = zext i1 %63 to i32
  %65 = and i32 %64, %62
  %66 = xor i1 %56, true
  %67 = zext i1 %66 to i32
  %68 = and i32 %65, %67
  %69 = xor i1 %59, true
  %70 = zext i1 %69 to i32
  %71 = and i32 %68, %70
  %.not356 = icmp eq i32 %71, 0
  br i1 %.not356, label %109, label %72

72:                                               ; preds = %49
  %73 = add i64 %.1341566, 1
  %74 = add i64 %.1341566, 2
  %75 = add i64 %.1341566, 3
  %76 = add i64 %.1341566, 4
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %6) #6
  %77 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %77, i64 noundef %.1341566, double noundef %.0344565, double noundef %.0345568)
          to label %78 unwind label %89

78:                                               ; preds = %72
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull %77) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %6)
          to label %79 unwind label %91

79:                                               ; preds = %78
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %6) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %7) #6
  %80 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %80, i64 noundef %73, double noundef %60, double noundef %.0345568)
          to label %81 unwind label %94

81:                                               ; preds = %79
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef nonnull %80) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %7)
          to label %82 unwind label %96

82:                                               ; preds = %81
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %7) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %8) #6
  %83 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %83, i64 noundef %74, double noundef %60, double noundef %39)
          to label %84 unwind label %99

84:                                               ; preds = %82
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef nonnull %83) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %8)
          to label %85 unwind label %101

85:                                               ; preds = %84
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %8) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %9) #6
  %86 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %86, i64 noundef %75, double noundef %.0344565, double noundef %39)
          to label %87 unwind label %104

87:                                               ; preds = %85
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %9, ptr noundef nonnull %86) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %9)
          to label %88 unwind label %106

88:                                               ; preds = %87
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #6
  br label %444

89:                                               ; preds = %72
  %90 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %77, i64 noundef 24) #8
  br label %93

91:                                               ; preds = %78
  %92 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %6) #6
  br label %93

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

94:                                               ; preds = %79
  %95 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %80, i64 noundef 24) #8
  br label %98

96:                                               ; preds = %81
  %97 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %7) #6
  br label %98

98:                                               ; preds = %96, %94
  %.pn413 = phi { ptr, i32 } [ %97, %96 ], [ %95, %94 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %7) #6
  br label %452

99:                                               ; preds = %82
  %100 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %83, i64 noundef 24) #8
  br label %103

101:                                              ; preds = %84
  %102 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %8) #6
  br label %103

103:                                              ; preds = %101, %99
  %.pn415 = phi { ptr, i32 } [ %102, %101 ], [ %100, %99 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %8) #6
  br label %452

104:                                              ; preds = %85
  %105 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %86, i64 noundef 24) #8
  br label %108

106:                                              ; preds = %87
  %107 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %9) #6
  br label %108

108:                                              ; preds = %106, %104
  %.pn417 = phi { ptr, i32 } [ %107, %106 ], [ %105, %104 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #6
  br label %452

109:                                              ; preds = %49
  %110 = zext i1 %51 to i32
  %111 = and i32 %64, %110
  %112 = and i32 %111, %67
  %113 = and i32 %112, %70
  %.not357 = icmp eq i32 %113, 0
  br i1 %.not357, label %142, label %114

114:                                              ; preds = %109
  %115 = add i64 %.0347564, -1
  %116 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %115)
  %117 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %116)
  %118 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %117) #6
  %119 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %118)
  %120 = add i64 %.1341566, 1
  %121 = add i64 %.1341566, 2
  %122 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %115)
  %123 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %122)
  %124 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %123) #6
  %125 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %124)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #6
  %126 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %126, i64 noundef %.1341566, double noundef %60, double noundef %.0345568)
          to label %127 unwind label %132

127:                                              ; preds = %114
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull %126) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %10)
          to label %128 unwind label %134

128:                                              ; preds = %127
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %10) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %11) #6
  %129 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %129, i64 noundef %120, double noundef %60, double noundef %39)
          to label %130 unwind label %137

130:                                              ; preds = %128
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %11, ptr noundef nonnull %129) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %11)
          to label %131 unwind label %139

131:                                              ; preds = %130
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %11) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #6
  br label %444

132:                                              ; preds = %114
  %133 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %126, i64 noundef 24) #8
  br label %136

134:                                              ; preds = %127
  %135 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %10) #6
  br label %136

136:                                              ; preds = %134, %132
  %.pn407 = phi { ptr, i32 } [ %135, %134 ], [ %133, %132 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #6
  br label %452

137:                                              ; preds = %128
  %138 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %129, i64 noundef 24) #8
  br label %141

139:                                              ; preds = %130
  %140 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %11) #6
  br label %141

141:                                              ; preds = %139, %137
  %.pn409 = phi { ptr, i32 } [ %140, %139 ], [ %138, %137 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #6
  br label %452

142:                                              ; preds = %109
  %143 = zext i1 %54 to i32
  %144 = and i32 %143, %62
  %145 = and i32 %144, %67
  %146 = and i32 %145, %70
  %.not358 = icmp eq i32 %146, 0
  br i1 %.not358, label %174, label %147

147:                                              ; preds = %142
  %148 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %149 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %148)
  %150 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %149) #6
  %151 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %150)
  %152 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %153 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %152)
  %154 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %153) #6
  %155 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %154)
  %156 = add i64 %.1341566, 1
  %157 = add i64 %.1341566, 2
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %12) #6
  %158 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %158, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %159 unwind label %164

159:                                              ; preds = %147
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %12, ptr noundef nonnull %158) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %12)
          to label %160 unwind label %166

160:                                              ; preds = %159
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %12) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #6
  %161 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %161, i64 noundef %156, double noundef %.0344565, double noundef %39)
          to label %162 unwind label %169

162:                                              ; preds = %160
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull %161) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %13)
          to label %163 unwind label %171

163:                                              ; preds = %162
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %13) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #6
  br label %444

164:                                              ; preds = %147
  %165 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %158, i64 noundef 24) #8
  br label %168

166:                                              ; preds = %159
  %167 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %12) #6
  br label %168

168:                                              ; preds = %166, %164
  %.pn403 = phi { ptr, i32 } [ %167, %166 ], [ %165, %164 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %12) #6
  br label %452

169:                                              ; preds = %160
  %170 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %161, i64 noundef 24) #8
  br label %173

171:                                              ; preds = %162
  %172 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %13) #6
  br label %173

173:                                              ; preds = %171, %169
  %.pn405 = phi { ptr, i32 } [ %172, %171 ], [ %170, %169 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #6
  br label %452

174:                                              ; preds = %142
  %175 = zext i1 %56 to i32
  %176 = and i32 %65, %175
  %177 = and i32 %176, %70
  %.not359 = icmp eq i32 %177, 0
  br i1 %.not359, label %211, label %178

178:                                              ; preds = %174
  %179 = add i64 %.0347564, -1
  %180 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %179)
  %181 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %180)
  %182 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %181) #6
  %183 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %182)
  %184 = add i64 %.1341566, 1
  %185 = add i64 %.1341566, 2
  %186 = add i64 %.1341566, 3
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %14) #6
  %187 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %187, i64 noundef %.1341566, double noundef %60, double noundef %.0345568)
          to label %188 unwind label %196

188:                                              ; preds = %178
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %14, ptr noundef nonnull %187) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %14)
          to label %189 unwind label %198

189:                                              ; preds = %188
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %14) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %15) #6
  %190 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %190, i64 noundef %184, double noundef %60, double noundef %39)
          to label %191 unwind label %201

191:                                              ; preds = %189
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %15, ptr noundef nonnull %190) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %15)
          to label %192 unwind label %203

192:                                              ; preds = %191
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %15) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #6
  %193 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %193, i64 noundef %185, double noundef %.0344565, double noundef %39)
          to label %194 unwind label %206

194:                                              ; preds = %192
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull %193) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %16)
          to label %195 unwind label %208

195:                                              ; preds = %194
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %16) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #6
  br label %444

196:                                              ; preds = %178
  %197 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %187, i64 noundef 24) #8
  br label %200

198:                                              ; preds = %188
  %199 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %14) #6
  br label %200

200:                                              ; preds = %198, %196
  %.pn397 = phi { ptr, i32 } [ %199, %198 ], [ %197, %196 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %14) #6
  br label %452

201:                                              ; preds = %189
  %202 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %190, i64 noundef 24) #8
  br label %205

203:                                              ; preds = %191
  %204 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %15) #6
  br label %205

205:                                              ; preds = %203, %201
  %.pn399 = phi { ptr, i32 } [ %204, %203 ], [ %202, %201 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #6
  br label %452

206:                                              ; preds = %192
  %207 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %193, i64 noundef 24) #8
  br label %210

208:                                              ; preds = %194
  %209 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %16) #6
  br label %210

210:                                              ; preds = %208, %206
  %.pn401 = phi { ptr, i32 } [ %209, %208 ], [ %207, %206 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #6
  br label %452

211:                                              ; preds = %174
  %212 = zext i1 %59 to i32
  %213 = and i32 %68, %212
  %.not360 = icmp eq i32 %213, 0
  br i1 %.not360, label %246, label %214

214:                                              ; preds = %211
  %215 = add i64 %.1341566, 1
  %216 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %47)
  %217 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %216)
  %218 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %217) #6
  %219 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %218)
  %220 = add i64 %.1341566, 2
  %221 = add i64 %.1341566, 3
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %17) #6
  %222 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %222, i64 noundef %.1341566, double noundef %.0344565, double noundef %.0345568)
          to label %223 unwind label %231

223:                                              ; preds = %214
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef nonnull %222) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %17)
          to label %224 unwind label %233

224:                                              ; preds = %223
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %17) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %18) #6
  %225 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %225, i64 noundef %215, double noundef %60, double noundef %39)
          to label %226 unwind label %236

226:                                              ; preds = %224
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %18, ptr noundef nonnull %225) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %18)
          to label %227 unwind label %238

227:                                              ; preds = %226
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %18) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %19) #6
  %228 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %228, i64 noundef %220, double noundef %.0344565, double noundef %39)
          to label %229 unwind label %241

229:                                              ; preds = %227
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %19, ptr noundef nonnull %228) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %230 unwind label %243

230:                                              ; preds = %229
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %19) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #6
  br label %444

231:                                              ; preds = %214
  %232 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %222, i64 noundef 24) #8
  br label %235

233:                                              ; preds = %223
  %234 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %17) #6
  br label %235

235:                                              ; preds = %233, %231
  %.pn391 = phi { ptr, i32 } [ %234, %233 ], [ %232, %231 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #6
  br label %452

236:                                              ; preds = %224
  %237 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %225, i64 noundef 24) #8
  br label %240

238:                                              ; preds = %226
  %239 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %18) #6
  br label %240

240:                                              ; preds = %238, %236
  %.pn393 = phi { ptr, i32 } [ %239, %238 ], [ %237, %236 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %18) #6
  br label %452

241:                                              ; preds = %227
  %242 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %228, i64 noundef 24) #8
  br label %245

243:                                              ; preds = %229
  %244 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %19) #6
  br label %245

245:                                              ; preds = %243, %241
  %.pn395 = phi { ptr, i32 } [ %244, %243 ], [ %242, %241 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #6
  br label %452

246:                                              ; preds = %211
  %247 = and i32 %143, %110
  %.not361 = icmp eq i32 %247, 0
  br i1 %.not361, label %271, label %248

248:                                              ; preds = %246
  %249 = add i64 %.0347564, -1
  %250 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %249)
  %251 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %250)
  %252 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %251) #6
  %253 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %252)
  %254 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %255 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %254)
  %256 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %255) #6
  %257 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %256)
  %258 = add i64 %.1341566, 1
  %259 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %249)
  %260 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %259)
  %261 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %260) #6
  %262 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %261)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %20) #6
  %263 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %263, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %264 unwind label %266

264:                                              ; preds = %248
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %20, ptr noundef nonnull %263) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %20)
          to label %265 unwind label %268

265:                                              ; preds = %264
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %20) #6
  br label %444

266:                                              ; preds = %248
  %267 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %263, i64 noundef 24) #8
  br label %270

268:                                              ; preds = %264
  %269 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %20) #6
  br label %270

270:                                              ; preds = %268, %266
  %.pn389 = phi { ptr, i32 } [ %269, %268 ], [ %267, %266 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %20) #6
  br label %452

271:                                              ; preds = %246
  %272 = and i32 %212, %110
  %.not362 = icmp eq i32 %272, 0
  br i1 %.not362, label %296, label %273

273:                                              ; preds = %271
  %274 = add i64 %.0347564, -1
  %275 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %274)
  %276 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %275)
  %277 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %276) #6
  %278 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %277)
  %279 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %47)
  %280 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %279)
  %281 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %280) #6
  %282 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %281)
  %283 = add i64 %.1341566, 1
  %284 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %274)
  %285 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %284)
  %286 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %285) #6
  %287 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %286)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %21) #6
  %288 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %288, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %289 unwind label %291

289:                                              ; preds = %273
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %21, ptr noundef nonnull %288) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %21)
          to label %290 unwind label %293

290:                                              ; preds = %289
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %21) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %21) #6
  br label %444

291:                                              ; preds = %273
  %292 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %288, i64 noundef 24) #8
  br label %295

293:                                              ; preds = %289
  %294 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %21) #6
  br label %295

295:                                              ; preds = %293, %291
  %.pn387 = phi { ptr, i32 } [ %294, %293 ], [ %292, %291 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %21) #6
  br label %452

296:                                              ; preds = %271
  %297 = and i32 %176, %212
  %.not363 = icmp eq i32 %297, 0
  br i1 %.not363, label %326, label %298

298:                                              ; preds = %296
  %299 = add i64 %.0347564, -1
  %300 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %299)
  %301 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %300)
  %302 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %301) #6
  %303 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %302)
  %304 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %47)
  %305 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %304)
  %306 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %305) #6
  %307 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %306)
  %308 = add i64 %.1341566, 1
  %309 = add i64 %.1341566, 2
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %22) #6
  %310 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %310, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %311 unwind label %316

311:                                              ; preds = %298
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull %310) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %22)
          to label %312 unwind label %318

312:                                              ; preds = %311
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %22) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %23) #6
  %313 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %313, i64 noundef %308, double noundef %.0344565, double noundef %39)
          to label %314 unwind label %321

314:                                              ; preds = %312
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef nonnull %313) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %23)
          to label %315 unwind label %323

315:                                              ; preds = %314
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %23) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #6
  br label %444

316:                                              ; preds = %298
  %317 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %310, i64 noundef 24) #8
  br label %320

318:                                              ; preds = %311
  %319 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %22) #6
  br label %320

320:                                              ; preds = %318, %316
  %.pn383 = phi { ptr, i32 } [ %319, %318 ], [ %317, %316 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %22) #6
  br label %452

321:                                              ; preds = %312
  %322 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %313, i64 noundef 24) #8
  br label %325

323:                                              ; preds = %314
  %324 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %23) #6
  br label %325

325:                                              ; preds = %323, %321
  %.pn385 = phi { ptr, i32 } [ %324, %323 ], [ %322, %321 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %23) #6
  br label %452

326:                                              ; preds = %296
  %327 = and i32 %111, %175
  %328 = and i32 %327, %70
  %.not364 = icmp eq i32 %328, 0
  br i1 %.not364, label %357, label %329

329:                                              ; preds = %326
  %330 = add i64 %.0347564, -1
  %331 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %330)
  %332 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %331)
  %333 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %332) #6
  %334 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56) %333)
  %335 = add i64 %.1341566, 1
  %336 = add i64 %.1341566, 2
  %337 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %330)
  %338 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %337)
  %339 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %338) #6
  %340 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %339)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %24) #6
  %341 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %341, i64 noundef %.1341566, double noundef %60, double noundef %.0345568)
          to label %342 unwind label %347

342:                                              ; preds = %329
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %24, ptr noundef nonnull %341) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %24)
          to label %343 unwind label %349

343:                                              ; preds = %342
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %25) #6
  %344 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %344, i64 noundef %335, double noundef %60, double noundef %39)
          to label %345 unwind label %352

345:                                              ; preds = %343
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %25, ptr noundef nonnull %344) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %346 unwind label %354

346:                                              ; preds = %345
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %25) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #6
  br label %444

347:                                              ; preds = %329
  %348 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %341, i64 noundef 24) #8
  br label %351

349:                                              ; preds = %342
  %350 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %24) #6
  br label %351

351:                                              ; preds = %349, %347
  %.pn379 = phi { ptr, i32 } [ %350, %349 ], [ %348, %347 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %24) #6
  br label %452

352:                                              ; preds = %343
  %353 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %344, i64 noundef 24) #8
  br label %356

354:                                              ; preds = %345
  %355 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %25) #6
  br label %356

356:                                              ; preds = %354, %352
  %.pn381 = phi { ptr, i32 } [ %355, %354 ], [ %353, %352 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #6
  br label %452

357:                                              ; preds = %326
  %358 = and i32 %144, %175
  %359 = and i32 %358, %70
  %.not365 = icmp eq i32 %359, 0
  br i1 %.not365, label %387, label %360

360:                                              ; preds = %357
  %361 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %362 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %361)
  %363 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %362) #6
  %364 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %363)
  %365 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %366 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %365)
  %367 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %366) #6
  %368 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %367)
  %369 = add i64 %.1341566, 1
  %370 = add i64 %.1341566, 2
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %26) #6
  %371 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %371, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %372 unwind label %377

372:                                              ; preds = %360
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %26, ptr noundef nonnull %371) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %26)
          to label %373 unwind label %379

373:                                              ; preds = %372
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %26) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %27) #6
  %374 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %374, i64 noundef %369, double noundef %.0344565, double noundef %39)
          to label %375 unwind label %382

375:                                              ; preds = %373
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull %374) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %27)
          to label %376 unwind label %384

376:                                              ; preds = %375
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %27) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #6
  br label %444

377:                                              ; preds = %360
  %378 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %371, i64 noundef 24) #8
  br label %381

379:                                              ; preds = %372
  %380 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %26) #6
  br label %381

381:                                              ; preds = %379, %377
  %.pn375 = phi { ptr, i32 } [ %380, %379 ], [ %378, %377 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %26) #6
  br label %452

382:                                              ; preds = %373
  %383 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %374, i64 noundef 24) #8
  br label %386

384:                                              ; preds = %375
  %385 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %27) #6
  br label %386

386:                                              ; preds = %384, %382
  %.pn377 = phi { ptr, i32 } [ %385, %384 ], [ %383, %382 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #6
  br label %452

387:                                              ; preds = %357
  %388 = and i32 %212, %143
  %.not366 = icmp eq i32 %388, 0
  br i1 %.not366, label %416, label %389

389:                                              ; preds = %387
  %390 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %391 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %390)
  %392 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %391) #6
  %393 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %392)
  %394 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %395 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %394)
  %396 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %395) #6
  %397 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %396)
  %398 = add i64 %.1341566, 1
  %399 = add i64 %.1341566, 2
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %28) #6
  %400 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %400, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %401 unwind label %406

401:                                              ; preds = %389
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %28, ptr noundef nonnull %400) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %28)
          to label %402 unwind label %408

402:                                              ; preds = %401
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %28) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %29) #6
  %403 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %403, i64 noundef %398, double noundef %.0344565, double noundef %39)
          to label %404 unwind label %411

404:                                              ; preds = %402
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %29, ptr noundef nonnull %403) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %29)
          to label %405 unwind label %413

405:                                              ; preds = %404
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %29) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %29) #6
  br label %444

406:                                              ; preds = %389
  %407 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %400, i64 noundef 24) #8
  br label %410

408:                                              ; preds = %401
  %409 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %28) #6
  br label %410

410:                                              ; preds = %408, %406
  %.pn371 = phi { ptr, i32 } [ %409, %408 ], [ %407, %406 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %28) #6
  br label %452

411:                                              ; preds = %402
  %412 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %403, i64 noundef 24) #8
  br label %415

413:                                              ; preds = %404
  %414 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %29) #6
  br label %415

415:                                              ; preds = %413, %411
  %.pn373 = phi { ptr, i32 } [ %414, %413 ], [ %412, %411 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %29) #6
  br label %452

416:                                              ; preds = %387
  %.not367 = icmp eq i32 %144, 0
  br i1 %.not367, label %444, label %417

417:                                              ; preds = %416
  %418 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %419 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %418)
  %420 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %419) #6
  %421 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56) %420)
  %422 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %46, i64 noundef %.0347564)
  %423 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EE2atEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %422)
  %424 = call noundef ptr @_ZNKSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEptEv(ptr noundef nonnull align 8 dereferenceable(8) %423) #6
  %425 = call noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56) %424)
  %426 = add i64 %.1341566, 1
  %427 = add i64 %.1341566, 2
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %30) #6
  %428 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %428, i64 noundef %.1341566, double noundef %60, double noundef %39)
          to label %429 unwind label %434

429:                                              ; preds = %417
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %30, ptr noundef nonnull %428) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %30)
          to label %430 unwind label %436

430:                                              ; preds = %429
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %30) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %31) #6
  %431 = call noalias noundef nonnull dereferenceable(24) ptr @_Znwm(i64 noundef 24) #7
  invoke void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24) %431, i64 noundef %426, double noundef %.0344565, double noundef %39)
          to label %432 unwind label %439

432:                                              ; preds = %430
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %31, ptr noundef nonnull %431) #6
  invoke void @_ZNSt6vectorISt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS2_EESaIS5_EE9push_backEOS5_(ptr noundef nonnull align 8 dereferenceable(24) %3, ptr noundef nonnull align 8 dereferenceable(8) %31)
          to label %433 unwind label %441

433:                                              ; preds = %432
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %31) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #6
  br label %444

434:                                              ; preds = %417
  %435 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %428, i64 noundef 24) #8
  br label %438

436:                                              ; preds = %429
  %437 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %30) #6
  br label %438

438:                                              ; preds = %436, %434
  %.pn = phi { ptr, i32 } [ %437, %436 ], [ %435, %434 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %30) #6
  br label %452

439:                                              ; preds = %430
  %440 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %431, i64 noundef 24) #8
  br label %443

441:                                              ; preds = %432
  %442 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt10unique_ptrIN12resultssaver10SaverPointESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %31) #6
  br label %443

443:                                              ; preds = %441, %439
  %.pn369 = phi { ptr, i32 } [ %442, %441 ], [ %440, %439 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #6
  br label %452

444:                                              ; preds = %131, %195, %265, %315, %376, %416, %433, %405, %346, %290, %230, %163, %88
  %.0355 = phi i64 [ %73, %88 ], [ %.1341566, %131 ], [ %155, %163 ], [ %.1341566, %195 ], [ %219, %230 ], [ %257, %265 ], [ %282, %290 ], [ %307, %315 ], [ %.1341566, %346 ], [ %368, %376 ], [ %397, %405 ], [ %425, %433 ], [ 0, %416 ]
  %.0354 = phi i64 [ %74, %88 ], [ %120, %131 ], [ %.1341566, %163 ], [ %184, %195 ], [ %215, %230 ], [ %.1341566, %265 ], [ %.1341566, %290 ], [ %.1341566, %315 ], [ %335, %346 ], [ %.1341566, %376 ], [ %.1341566, %405 ], [ %.1341566, %433 ], [ 0, %416 ]
  %.0353 = phi i64 [ %75, %88 ], [ %125, %131 ], [ %156, %163 ], [ %185, %195 ], [ %220, %230 ], [ %262, %265 ], [ %287, %290 ], [ %308, %315 ], [ %340, %346 ], [ %369, %376 ], [ %398, %405 ], [ %426, %433 ], [ 0, %416 ]
  %.0348 = phi i64 [ %.1341566, %88 ], [ %119, %131 ], [ %151, %163 ], [ %183, %195 ], [ %.1341566, %230 ], [ %253, %265 ], [ %278, %290 ], [ %303, %315 ], [ %334, %346 ], [ %364, %376 ], [ %393, %405 ], [ %421, %433 ], [ 0, %416 ]
  %.2342 = phi i64 [ %76, %88 ], [ %121, %131 ], [ %157, %163 ], [ %186, %195 ], [ %221, %230 ], [ %258, %265 ], [ %283, %290 ], [ %309, %315 ], [ %336, %346 ], [ %370, %376 ], [ %399, %405 ], [ %427, %433 ], [ %.1341566, %416 ]
  %445 = call noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56) %2, i64 noundef %45, i64 noundef %.0347564)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %32) #6
  %446 = call noalias noundef nonnull dereferenceable(56) ptr @_Znwm(i64 noundef 56) #7
  invoke void @_ZN12resultssaver9SaverCellC1Emmmmm(ptr noundef nonnull align 8 dereferenceable(56) %446, i64 noundef %445, i64 noundef %.0348, i64 noundef %.0355, i64 noundef %.0354, i64 noundef %.0353)
          to label %447 unwind label %450

447:                                              ; preds = %444
  call void @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEC2IS3_vEEPS1_(ptr noundef nonnull align 8 dereferenceable(8) %32, ptr noundef nonnull %446) #6
  %448 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorISt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS2_EESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %445) #6
  %449 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EEaSEOS4_(ptr noundef nonnull align 8 dereferenceable(8) %448, ptr noundef nonnull align 8 dereferenceable(8) %32) #6
  call void @_ZNSt10unique_ptrIN12resultssaver9SaverCellESt14default_deleteIS1_EED2Ev(ptr noundef nonnull align 8 dereferenceable(8) %32) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %32) #6
  br label %453

450:                                              ; preds = %444
  %451 = landingpad { ptr, i32 }
          cleanup
  call void @_ZdlPvm(ptr noundef nonnull %446, i64 noundef 56) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %32) #6
  br label %452

452:                                              ; preds = %450, %443, %438, %415, %410, %386, %381, %356, %351, %325, %320, %295, %270, %245, %240, %235, %210, %205, %200, %173, %168, %141, %136, %108, %103, %98, %93
  %.pn419 = phi { ptr, i32 } [ %451, %450 ], [ %.pn417, %108 ], [ %.pn415, %103 ], [ %.pn413, %98 ], [ %.pn411, %93 ], [ %.pn409, %141 ], [ %.pn407, %136 ], [ %.pn405, %173 ], [ %.pn403, %168 ], [ %.pn401, %210 ], [ %.pn399, %205 ], [ %.pn397, %200 ], [ %.pn395, %245 ], [ %.pn393, %240 ], [ %.pn391, %235 ], [ %.pn389, %270 ], [ %.pn387, %295 ], [ %.pn385, %325 ], [ %.pn383, %320 ], [ %.pn381, %356 ], [ %.pn379, %351 ], [ %.pn377, %386 ], [ %.pn375, %381 ], [ %.pn373, %415 ], [ %.pn371, %410 ], [ %.pn369, %443 ], [ %.pn, %438 ]
  resume { ptr, i32 } %.pn419

453:                                              ; preds = %._crit_edge663, %447
  %.pre-phi665 = phi double [ %.pre664, %._crit_edge663 ], [ %60, %447 ]
  %.3343 = phi i64 [ %.1341566, %._crit_edge663 ], [ %.2342, %447 ]
  %454 = call noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionXEv(ptr noundef nonnull align 8 dereferenceable(16) %1)
  %455 = icmp ult i64 %47, %454
  br i1 %455, label %43, label %._crit_edge, !llvm.loop !7
}

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

declare noundef i64 @_ZNK12resultssaver15MeshInformation14getCellsAmountEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #1

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

declare noundef double @_ZNK12resultssaver15MeshInformation6get_dXEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #1

declare noundef double @_ZNK12resultssaver15MeshInformation6get_dYEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #1

declare noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionYEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #1

declare noundef i64 @_ZNK12resultssaver15MeshInformation13getDimentionXEv(ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #1

declare noundef i64 @_ZNK12resultssaver9CellsInfo7getTypeEmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef) local_unnamed_addr #1

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

; Function Attrs: nobuiltin allocsize(0)
declare noundef nonnull ptr @_Znwm(i64 noundef) local_unnamed_addr #3

declare void @_ZN12resultssaver10SaverPointC1Emdd(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef, double noundef, double noundef) unnamed_addr #1

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nobuiltin nounwind
declare void @_ZdlPvm(ptr noundef, i64 noundef) local_unnamed_addr #4

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

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

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

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

declare noundef i64 @_ZNK12resultssaver9CellsInfo6getNumEmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef) local_unnamed_addr #1

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

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_1Ev(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #1

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_2Ev(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #1

declare noundef i64 @_ZNK12resultssaver9SaverCell12getPointId_3Ev(ptr noundef nonnull align 8 dereferenceable(56)) local_unnamed_addr #1

declare void @_ZN12resultssaver9SaverCellC1Emmmmm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef, i64 noundef, i64 noundef, i64 noundef, i64 noundef) unnamed_addr #1

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

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = distinct !{!5, !6}
!6 = !{!"llvm.loop.mustprogress"}
!7 = distinct !{!7, !6}


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