; LLVM IR from sp-nitech/SPTK :: src/main (df2)

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

%"class.std::basic_ostream" = type { ptr, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator.0" = type { i8 }
%"class.std::__cxx11::basic_ostringstream" = type { %"class.std::basic_ostream.base", %"class.std::__cxx11::basic_stringbuf", %"class.std::basic_ios" }
%"class.std::basic_ostream.base" = type { ptr }
%"class.std::__cxx11::basic_stringbuf" = type { %"class.std::basic_streambuf", i32, %"class.std::__cxx11::basic_string" }
%"class.std::basic_streambuf" = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::locale" }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.std::basic_ifstream" = type { %"class.std::basic_istream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::basic_istream.base" = type { ptr, i64 }
%"class.std::basic_filebuf" = type { %"class.std::basic_streambuf", %union.pthread_mutex_t, %"class.std::__basic_file", i32, %struct.__mbstate_t, %struct.__mbstate_t, %struct.__mbstate_t, ptr, i64, i8, i8, i8, i8, ptr, ptr, i8, ptr, ptr, i64, ptr, ptr }
%union.pthread_mutex_t = type { %struct.__pthread_mutex_s }
%struct.__pthread_mutex_s = type { i32, i32, i32, i32, i32, i16, i16, %struct.__pthread_internal_list }
%struct.__pthread_internal_list = type { ptr, ptr }
%"class.std::__basic_file" = type <{ ptr, i8, [7 x i8] }>
%struct.__mbstate_t = type { i32, %union.anon.3 }
%union.anon.3 = type { i32 }
%"class.std::vector.4" = type { %"struct.std::_Vector_base.5" }
%"struct.std::_Vector_base.5" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.9" = type { %"struct.std::_Vector_base.10" }
%"struct.std::_Vector_base.10" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::allocator.11" = type { i8 }
%"class.__gnu_cxx::__normal_iterator.14" = type { ptr }

@.str = external hidden unnamed_addr constant [8 x i8], align 1
@ya_optarg = external global ptr, align 8
@.str.1 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [61 x i8], align 1
@ya_optind = external global i32, align 4
@.str.4 = external hidden unnamed_addr constant [61 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [61 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [61 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@_ZSt4cerr = external global %"class.std::basic_ostream", align 8
@.str.7 = external hidden unnamed_addr constant [51 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [51 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [18 x i8], align 1
@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str.12 = external hidden unnamed_addr constant [42 x i8], align 1
@_ZTISt9exception = external constant ptr
@.str.13 = external hidden unnamed_addr constant [46 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [18 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef i32 @main(i32 noundef %0, ptr noundef %1) #0 personality ptr @__gxx_personality_v0 {
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca ptr, align 8
  %6 = alloca double, align 8
  %7 = alloca %"class.std::vector", align 8
  %8 = alloca %"class.std::vector", align 8
  %9 = alloca %"class.std::vector", align 8
  %10 = alloca %"class.std::vector", align 8
  %11 = alloca i32, align 4
  %12 = alloca ptr, align 8
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.std::allocator.0", align 1
  %17 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::allocator.0", align 1
  %20 = alloca double, align 8
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.std::allocator.0", align 1
  %23 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::allocator.0", align 1
  %26 = alloca double, align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca i1, align 1
  %29 = alloca %"class.std::allocator.0", align 1
  %30 = alloca i1, align 1
  %31 = alloca i1, align 1
  %32 = alloca i1, align 1
  %33 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::allocator.0", align 1
  %36 = alloca double, align 8
  %37 = alloca %"class.std::__cxx11::basic_string", align 8
  %38 = alloca %"class.std::allocator.0", align 1
  %39 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::allocator.0", align 1
  %42 = alloca double, align 8
  %43 = alloca %"class.std::__cxx11::basic_string", align 8
  %44 = alloca i1, align 1
  %45 = alloca %"class.std::allocator.0", align 1
  %46 = alloca i1, align 1
  %47 = alloca i1, align 1
  %48 = alloca i1, align 1
  %49 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"class.std::allocator.0", align 1
  %52 = alloca double, align 8
  %53 = alloca double, align 8
  %54 = alloca ptr, align 8
  %55 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %56 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %57 = alloca double, align 8
  %58 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::allocator.0", align 1
  %61 = alloca ptr, align 8
  %62 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %63 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %64 = alloca double, align 8
  %65 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %66 = alloca %"class.std::__cxx11::basic_string", align 8
  %67 = alloca %"class.std::allocator.0", align 1
  %68 = alloca i32, align 4
  %69 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::allocator.0", align 1
  %72 = alloca ptr, align 8
  %73 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::allocator.0", align 1
  %76 = alloca %"class.std::basic_ifstream", align 8
  %77 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %78 = alloca %"class.std::__cxx11::basic_string", align 8
  %79 = alloca %"class.std::allocator.0", align 1
  %80 = alloca ptr, align 8
  %81 = alloca i32, align 4
  %82 = alloca i32, align 4
  %83 = alloca i32, align 4
  %84 = alloca %"class.std::vector.4", align 8
  %85 = alloca %"class.std::vector.9", align 8
  %86 = alloca %"class.std::allocator.11", align 1
  %87 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %88 = alloca %"class.std::__cxx11::basic_string", align 8
  %89 = alloca %"class.std::allocator.0", align 1
  %90 = alloca i32, align 4
  %91 = alloca ptr, align 8
  %92 = alloca ptr, align 8
  %93 = alloca ptr, align 8
  %94 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"class.std::allocator.0", align 1
  %97 = alloca ptr, align 8
  %98 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %99 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %100 = alloca ptr, align 8
  %101 = alloca double, align 8
  %102 = alloca i32, align 4
  %103 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %104 = alloca %"class.std::__cxx11::basic_string", align 8
  %105 = alloca %"class.std::allocator.0", align 1
  %106 = alloca ptr, align 8
  %107 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %108 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %109 = alloca ptr, align 8
  %110 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %111 = alloca %"class.std::__cxx11::basic_string", align 8
  %112 = alloca %"class.std::allocator.0", align 1
  %113 = alloca ptr, align 8
  %114 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %115 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %116 = alloca ptr, align 8
  %117 = alloca ptr, align 8
  %118 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %119 = alloca %"class.std::__cxx11::basic_string", align 8
  %120 = alloca %"class.std::allocator.0", align 1
  %121 = alloca ptr, align 8
  %122 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %123 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %124 = alloca ptr, align 8
  %125 = alloca ptr, align 8
  %126 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %127 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %128 = alloca ptr, align 8
  store i32 0, ptr %3, align 4
  store i32 %0, ptr %4, align 4, !tbaa !5
  store ptr %1, ptr %5, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %6) #11
  store double 1.000000e+01, ptr %6, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 24, ptr %7) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr %8) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr %9) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr %10) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #11
  br label %129

129:                                              ; preds = %463, %2
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #11
  %130 = load i32, ptr %4, align 4, !tbaa !5
  %131 = load ptr, ptr %5, align 8, !tbaa !9
  %132 = invoke i32 @ya_getopt_long(i32 noundef %130, ptr noundef %131, ptr noundef @.str, ptr noundef null, ptr noundef null)
          to label %133 unwind label %137

133:                                              ; preds = %129
  store i32 %132, ptr %11, align 4, !tbaa !5
  %134 = load i32, ptr %11, align 4, !tbaa !5
  %135 = icmp eq i32 -1, %134
  br i1 %135, label %136, label %141

136:                                              ; preds = %133
  store i32 2, ptr %14, align 4
  br label %461

137:                                              ; preds = %458, %456, %129
  %138 = landingpad { ptr, i32 }
          cleanup
  %139 = extractvalue { ptr, i32 } %138, 0
  store ptr %139, ptr %12, align 8
  %140 = extractvalue { ptr, i32 } %138, 1
  store i32 %140, ptr %13, align 4
  br label %464

141:                                              ; preds = %133
  %142 = load i32, ptr %11, align 4, !tbaa !5
  switch i32 %142, label %458 [
    i32 115, label %143
    i32 112, label %188
    i32 122, label %322
    i32 104, label %456
  ]

143:                                              ; preds = %141
  call void @llvm.lifetime.start.p0(i64 32, ptr %15) #11
  %144 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %16) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef %144, ptr noundef nonnull align 1 dereferenceable(1) %16)
          to label %145 unwind label %159

145:                                              ; preds = %143
  %146 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %15, ptr noundef %6)
          to label %147 unwind label %163

147:                                              ; preds = %145
  br i1 %146, label %148, label %151

148:                                              ; preds = %147
  %149 = load double, ptr %6, align 8, !tbaa !11
  %150 = fcmp ole double %149, 0.000000e+00
  br label %151

151:                                              ; preds = %148, %147
  %152 = phi i1 [ true, %147 ], [ %150, %148 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %15) #11
  br i1 %152, label %153, label %187

153:                                              ; preds = %151
  call void @llvm.lifetime.start.p0(i64 376, ptr %17) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %17)
          to label %154 unwind label %168

154:                                              ; preds = %153
  %155 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %17, ptr noundef @.str.1)
          to label %156 unwind label %172

156:                                              ; preds = %154
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %19) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %19)
          to label %157 unwind label %176

157:                                              ; preds = %156
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull align 8 dereferenceable(112) %17)
          to label %158 unwind label %180

158:                                              ; preds = %157
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %19) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %17) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %17) #11
  br label %461

159:                                              ; preds = %143
  %160 = landingpad { ptr, i32 }
          cleanup
  %161 = extractvalue { ptr, i32 } %160, 0
  store ptr %161, ptr %12, align 8
  %162 = extractvalue { ptr, i32 } %160, 1
  store i32 %162, ptr %13, align 4
  br label %167

163:                                              ; preds = %145
  %164 = landingpad { ptr, i32 }
          cleanup
  %165 = extractvalue { ptr, i32 } %164, 0
  store ptr %165, ptr %12, align 8
  %166 = extractvalue { ptr, i32 } %164, 1
  store i32 %166, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #11
  br label %167

167:                                              ; preds = %163, %159
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %16) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %15) #11
  br label %464

168:                                              ; preds = %153
  %169 = landingpad { ptr, i32 }
          cleanup
  %170 = extractvalue { ptr, i32 } %169, 0
  store ptr %170, ptr %12, align 8
  %171 = extractvalue { ptr, i32 } %169, 1
  store i32 %171, ptr %13, align 4
  br label %186

172:                                              ; preds = %154
  %173 = landingpad { ptr, i32 }
          cleanup
  %174 = extractvalue { ptr, i32 } %173, 0
  store ptr %174, ptr %12, align 8
  %175 = extractvalue { ptr, i32 } %173, 1
  store i32 %175, ptr %13, align 4
  br label %185

176:                                              ; preds = %156
  %177 = landingpad { ptr, i32 }
          cleanup
  %178 = extractvalue { ptr, i32 } %177, 0
  store ptr %178, ptr %12, align 8
  %179 = extractvalue { ptr, i32 } %177, 1
  store i32 %179, ptr %13, align 4
  br label %184

180:                                              ; preds = %157
  %181 = landingpad { ptr, i32 }
          cleanup
  %182 = extractvalue { ptr, i32 } %181, 0
  store ptr %182, ptr %12, align 8
  %183 = extractvalue { ptr, i32 } %181, 1
  store i32 %183, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #11
  br label %184

184:                                              ; preds = %180, %176
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %19) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %19) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #11
  br label %185

185:                                              ; preds = %184, %172
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %17) #11
  br label %186

186:                                              ; preds = %185, %168
  call void @llvm.lifetime.end.p0(i64 376, ptr %17) #11
  br label %464

187:                                              ; preds = %151
  br label %460

188:                                              ; preds = %141
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #11
  call void @llvm.lifetime.start.p0(i64 32, ptr %21) #11
  %189 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %22) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef %189, ptr noundef nonnull align 1 dereferenceable(1) %22)
          to label %190 unwind label %204

190:                                              ; preds = %188
  %191 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %21, ptr noundef %20)
          to label %192 unwind label %208

192:                                              ; preds = %190
  br i1 %191, label %193, label %196

193:                                              ; preds = %192
  %194 = load double, ptr %20, align 8, !tbaa !11
  %195 = fcmp ole double %194, 0.000000e+00
  br label %196

196:                                              ; preds = %193, %192
  %197 = phi i1 [ true, %192 ], [ %195, %193 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #11
  br i1 %197, label %198, label %232

198:                                              ; preds = %196
  call void @llvm.lifetime.start.p0(i64 376, ptr %23) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %23)
          to label %199 unwind label %213

199:                                              ; preds = %198
  %200 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %23, ptr noundef @.str.3)
          to label %201 unwind label %217

201:                                              ; preds = %199
  call void @llvm.lifetime.start.p0(i64 32, ptr %24) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %25) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %25)
          to label %202 unwind label %221

202:                                              ; preds = %201
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef nonnull align 8 dereferenceable(112) %23)
          to label %203 unwind label %225

203:                                              ; preds = %202
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %24) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %23) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %23) #11
  br label %319

204:                                              ; preds = %188
  %205 = landingpad { ptr, i32 }
          cleanup
  %206 = extractvalue { ptr, i32 } %205, 0
  store ptr %206, ptr %12, align 8
  %207 = extractvalue { ptr, i32 } %205, 1
  store i32 %207, ptr %13, align 4
  br label %212

208:                                              ; preds = %190
  %209 = landingpad { ptr, i32 }
          cleanup
  %210 = extractvalue { ptr, i32 } %209, 0
  store ptr %210, ptr %12, align 8
  %211 = extractvalue { ptr, i32 } %209, 1
  store i32 %211, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #11
  br label %212

212:                                              ; preds = %208, %204
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %22) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #11
  br label %321

213:                                              ; preds = %198
  %214 = landingpad { ptr, i32 }
          cleanup
  %215 = extractvalue { ptr, i32 } %214, 0
  store ptr %215, ptr %12, align 8
  %216 = extractvalue { ptr, i32 } %214, 1
  store i32 %216, ptr %13, align 4
  br label %231

217:                                              ; preds = %199
  %218 = landingpad { ptr, i32 }
          cleanup
  %219 = extractvalue { ptr, i32 } %218, 0
  store ptr %219, ptr %12, align 8
  %220 = extractvalue { ptr, i32 } %218, 1
  store i32 %220, ptr %13, align 4
  br label %230

221:                                              ; preds = %201
  %222 = landingpad { ptr, i32 }
          cleanup
  %223 = extractvalue { ptr, i32 } %222, 0
  store ptr %223, ptr %12, align 8
  %224 = extractvalue { ptr, i32 } %222, 1
  store i32 %224, ptr %13, align 4
  br label %229

225:                                              ; preds = %202
  %226 = landingpad { ptr, i32 }
          cleanup
  %227 = extractvalue { ptr, i32 } %226, 0
  store ptr %227, ptr %12, align 8
  %228 = extractvalue { ptr, i32 } %226, 1
  store i32 %228, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #11
  br label %229

229:                                              ; preds = %225, %221
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %25) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %25) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %24) #11
  br label %230

230:                                              ; preds = %229, %217
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %23) #11
  br label %231

231:                                              ; preds = %230, %213
  call void @llvm.lifetime.end.p0(i64 376, ptr %23) #11
  br label %321

232:                                              ; preds = %196
  call void @llvm.lifetime.start.p0(i64 8, ptr %26) #11
  %233 = load i32, ptr %4, align 4, !tbaa !5
  %234 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %235 = icmp sle i32 %233, %234
  store i1 false, ptr %28, align 1
  store i1 false, ptr %30, align 1
  store i1 false, ptr %31, align 1
  store i1 false, ptr %32, align 1
  br i1 %235, label %248, label %236

236:                                              ; preds = %232
  call void @llvm.lifetime.start.p0(i64 32, ptr %27) #11
  store i1 true, ptr %28, align 1
  %237 = load ptr, ptr %5, align 8, !tbaa !9
  %238 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %239 = sext i32 %238 to i64
  %240 = getelementptr inbounds ptr, ptr %237, i64 %239
  %241 = load ptr, ptr %240, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %29) #11
  store i1 true, ptr %30, align 1
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #11
  store i1 true, ptr %31, align 1
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef %241, ptr noundef nonnull align 1 dereferenceable(1) %29)
          to label %242 unwind label %268

242:                                              ; preds = %236
  store i1 true, ptr %32, align 1
  %243 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef %26)
          to label %244 unwind label %272

244:                                              ; preds = %242
  br i1 %243, label %245, label %248

245:                                              ; preds = %244
  %246 = load double, ptr %26, align 8, !tbaa !11
  %247 = fcmp ole double %246, 0.000000e+00
  br label %248

248:                                              ; preds = %245, %244, %232
  %249 = phi i1 [ true, %244 ], [ true, %232 ], [ %247, %245 ]
  %250 = load i1, ptr %32, align 1
  br i1 %250, label %251, label %252

251:                                              ; preds = %248
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #11
  br label %252

252:                                              ; preds = %251, %248
  %253 = load i1, ptr %31, align 1
  br i1 %253, label %254, label %255

254:                                              ; preds = %252
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #11
  br label %255

255:                                              ; preds = %254, %252
  %256 = load i1, ptr %30, align 1
  br i1 %256, label %257, label %258

257:                                              ; preds = %255
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #11
  br label %258

258:                                              ; preds = %257, %255
  %259 = load i1, ptr %28, align 1
  br i1 %259, label %260, label %261

260:                                              ; preds = %258
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #11
  br label %261

261:                                              ; preds = %260, %258
  br i1 %249, label %262, label %308

262:                                              ; preds = %261
  call void @llvm.lifetime.start.p0(i64 376, ptr %33) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %33)
          to label %263 unwind label %289

263:                                              ; preds = %262
  %264 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %33, ptr noundef @.str.4)
          to label %265 unwind label %293

265:                                              ; preds = %263
  call void @llvm.lifetime.start.p0(i64 32, ptr %34) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %35) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %35)
          to label %266 unwind label %297

266:                                              ; preds = %265
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull align 8 dereferenceable(112) %33)
          to label %267 unwind label %301

267:                                              ; preds = %266
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %35) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %33) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %33) #11
  br label %317

268:                                              ; preds = %236
  %269 = landingpad { ptr, i32 }
          cleanup
  %270 = extractvalue { ptr, i32 } %269, 0
  store ptr %270, ptr %12, align 8
  %271 = extractvalue { ptr, i32 } %269, 1
  store i32 %271, ptr %13, align 4
  br label %279

272:                                              ; preds = %242
  %273 = landingpad { ptr, i32 }
          cleanup
  %274 = extractvalue { ptr, i32 } %273, 0
  store ptr %274, ptr %12, align 8
  %275 = extractvalue { ptr, i32 } %273, 1
  store i32 %275, ptr %13, align 4
  %276 = load i1, ptr %32, align 1
  br i1 %276, label %277, label %278

277:                                              ; preds = %272
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #11
  br label %278

278:                                              ; preds = %277, %272
  br label %279

279:                                              ; preds = %278, %268
  %280 = load i1, ptr %31, align 1
  br i1 %280, label %281, label %282

281:                                              ; preds = %279
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %29) #11
  br label %282

282:                                              ; preds = %281, %279
  %283 = load i1, ptr %30, align 1
  br i1 %283, label %284, label %285

284:                                              ; preds = %282
  call void @llvm.lifetime.end.p0(i64 1, ptr %29) #11
  br label %285

285:                                              ; preds = %284, %282
  %286 = load i1, ptr %28, align 1
  br i1 %286, label %287, label %288

287:                                              ; preds = %285
  call void @llvm.lifetime.end.p0(i64 32, ptr %27) #11
  br label %288

288:                                              ; preds = %287, %285
  br label %318

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

293:                                              ; preds = %263
  %294 = landingpad { ptr, i32 }
          cleanup
  %295 = extractvalue { ptr, i32 } %294, 0
  store ptr %295, ptr %12, align 8
  %296 = extractvalue { ptr, i32 } %294, 1
  store i32 %296, ptr %13, align 4
  br label %306

297:                                              ; preds = %265
  %298 = landingpad { ptr, i32 }
          cleanup
  %299 = extractvalue { ptr, i32 } %298, 0
  store ptr %299, ptr %12, align 8
  %300 = extractvalue { ptr, i32 } %298, 1
  store i32 %300, ptr %13, align 4
  br label %305

301:                                              ; preds = %266
  %302 = landingpad { ptr, i32 }
          cleanup
  %303 = extractvalue { ptr, i32 } %302, 0
  store ptr %303, ptr %12, align 8
  %304 = extractvalue { ptr, i32 } %302, 1
  store i32 %304, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #11
  br label %305

305:                                              ; preds = %301, %297
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %35) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %35) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #11
  br label %306

306:                                              ; preds = %305, %293
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %33) #11
  br label %307

307:                                              ; preds = %306, %289
  call void @llvm.lifetime.end.p0(i64 376, ptr %33) #11
  br label %318

308:                                              ; preds = %261
  %309 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %310 = add nsw i32 %309, 1
  store i32 %310, ptr @ya_optind, align 4, !tbaa !5
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 8 dereferenceable(8) %20)
          to label %311 unwind label %313

311:                                              ; preds = %308
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %8, ptr noundef nonnull align 8 dereferenceable(8) %26)
          to label %312 unwind label %313

312:                                              ; preds = %311
  store i32 4, ptr %14, align 4
  br label %317

313:                                              ; preds = %311, %308
  %314 = landingpad { ptr, i32 }
          cleanup
  %315 = extractvalue { ptr, i32 } %314, 0
  store ptr %315, ptr %12, align 8
  %316 = extractvalue { ptr, i32 } %314, 1
  store i32 %316, ptr %13, align 4
  br label %318

317:                                              ; preds = %312, %267
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #11
  br label %319

318:                                              ; preds = %313, %307, %288
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #11
  br label %321

319:                                              ; preds = %317, %203
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #11
  %320 = load i32, ptr %14, align 4
  switch i32 %320, label %461 [
    i32 4, label %460
  ]

321:                                              ; preds = %318, %231, %212
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #11
  br label %464

322:                                              ; preds = %141
  call void @llvm.lifetime.start.p0(i64 8, ptr %36) #11
  call void @llvm.lifetime.start.p0(i64 32, ptr %37) #11
  %323 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %38) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %38) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef %323, ptr noundef nonnull align 1 dereferenceable(1) %38)
          to label %324 unwind label %338

324:                                              ; preds = %322
  %325 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef %36)
          to label %326 unwind label %342

326:                                              ; preds = %324
  br i1 %325, label %327, label %330

327:                                              ; preds = %326
  %328 = load double, ptr %36, align 8, !tbaa !11
  %329 = fcmp ole double %328, 0.000000e+00
  br label %330

330:                                              ; preds = %327, %326
  %331 = phi i1 [ true, %326 ], [ %329, %327 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %38) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %38) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %37) #11
  br i1 %331, label %332, label %366

332:                                              ; preds = %330
  call void @llvm.lifetime.start.p0(i64 376, ptr %39) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39)
          to label %333 unwind label %347

333:                                              ; preds = %332
  %334 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %39, ptr noundef @.str.5)
          to label %335 unwind label %351

335:                                              ; preds = %333
  call void @llvm.lifetime.start.p0(i64 32, ptr %40) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %41) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %336 unwind label %355

336:                                              ; preds = %335
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(112) %39)
          to label %337 unwind label %359

337:                                              ; preds = %336
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %41) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %39) #11
  br label %453

338:                                              ; preds = %322
  %339 = landingpad { ptr, i32 }
          cleanup
  %340 = extractvalue { ptr, i32 } %339, 0
  store ptr %340, ptr %12, align 8
  %341 = extractvalue { ptr, i32 } %339, 1
  store i32 %341, ptr %13, align 4
  br label %346

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

346:                                              ; preds = %342, %338
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %38) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %38) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %37) #11
  br label %455

347:                                              ; preds = %332
  %348 = landingpad { ptr, i32 }
          cleanup
  %349 = extractvalue { ptr, i32 } %348, 0
  store ptr %349, ptr %12, align 8
  %350 = extractvalue { ptr, i32 } %348, 1
  store i32 %350, ptr %13, align 4
  br label %365

351:                                              ; preds = %333
  %352 = landingpad { ptr, i32 }
          cleanup
  %353 = extractvalue { ptr, i32 } %352, 0
  store ptr %353, ptr %12, align 8
  %354 = extractvalue { ptr, i32 } %352, 1
  store i32 %354, ptr %13, align 4
  br label %364

355:                                              ; preds = %335
  %356 = landingpad { ptr, i32 }
          cleanup
  %357 = extractvalue { ptr, i32 } %356, 0
  store ptr %357, ptr %12, align 8
  %358 = extractvalue { ptr, i32 } %356, 1
  store i32 %358, ptr %13, align 4
  br label %363

359:                                              ; preds = %336
  %360 = landingpad { ptr, i32 }
          cleanup
  %361 = extractvalue { ptr, i32 } %360, 0
  store ptr %361, ptr %12, align 8
  %362 = extractvalue { ptr, i32 } %360, 1
  store i32 %362, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #11
  br label %363

363:                                              ; preds = %359, %355
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %41) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #11
  br label %364

364:                                              ; preds = %363, %351
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39) #11
  br label %365

365:                                              ; preds = %364, %347
  call void @llvm.lifetime.end.p0(i64 376, ptr %39) #11
  br label %455

366:                                              ; preds = %330
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #11
  %367 = load i32, ptr %4, align 4, !tbaa !5
  %368 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %369 = icmp sle i32 %367, %368
  store i1 false, ptr %44, align 1
  store i1 false, ptr %46, align 1
  store i1 false, ptr %47, align 1
  store i1 false, ptr %48, align 1
  br i1 %369, label %382, label %370

370:                                              ; preds = %366
  call void @llvm.lifetime.start.p0(i64 32, ptr %43) #11
  store i1 true, ptr %44, align 1
  %371 = load ptr, ptr %5, align 8, !tbaa !9
  %372 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %373 = sext i32 %372 to i64
  %374 = getelementptr inbounds ptr, ptr %371, i64 %373
  %375 = load ptr, ptr %374, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr %45) #11
  store i1 true, ptr %46, align 1
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %45) #11
  store i1 true, ptr %47, align 1
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %43, ptr noundef %375, ptr noundef nonnull align 1 dereferenceable(1) %45)
          to label %376 unwind label %402

376:                                              ; preds = %370
  store i1 true, ptr %48, align 1
  %377 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %43, ptr noundef %42)
          to label %378 unwind label %406

378:                                              ; preds = %376
  br i1 %377, label %379, label %382

379:                                              ; preds = %378
  %380 = load double, ptr %42, align 8, !tbaa !11
  %381 = fcmp ole double %380, 0.000000e+00
  br label %382

382:                                              ; preds = %379, %378, %366
  %383 = phi i1 [ true, %378 ], [ true, %366 ], [ %381, %379 ]
  %384 = load i1, ptr %48, align 1
  br i1 %384, label %385, label %386

385:                                              ; preds = %382
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #11
  br label %386

386:                                              ; preds = %385, %382
  %387 = load i1, ptr %47, align 1
  br i1 %387, label %388, label %389

388:                                              ; preds = %386
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %45) #11
  br label %389

389:                                              ; preds = %388, %386
  %390 = load i1, ptr %46, align 1
  br i1 %390, label %391, label %392

391:                                              ; preds = %389
  call void @llvm.lifetime.end.p0(i64 1, ptr %45) #11
  br label %392

392:                                              ; preds = %391, %389
  %393 = load i1, ptr %44, align 1
  br i1 %393, label %394, label %395

394:                                              ; preds = %392
  call void @llvm.lifetime.end.p0(i64 32, ptr %43) #11
  br label %395

395:                                              ; preds = %394, %392
  br i1 %383, label %396, label %442

396:                                              ; preds = %395
  call void @llvm.lifetime.start.p0(i64 376, ptr %49) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %49)
          to label %397 unwind label %423

397:                                              ; preds = %396
  %398 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %49, ptr noundef @.str.6)
          to label %399 unwind label %427

399:                                              ; preds = %397
  call void @llvm.lifetime.start.p0(i64 32, ptr %50) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %51) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %51) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %51)
          to label %400 unwind label %431

400:                                              ; preds = %399
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull align 8 dereferenceable(112) %49)
          to label %401 unwind label %435

401:                                              ; preds = %400
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %51) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %51) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %50) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %49) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %49) #11
  br label %451

402:                                              ; preds = %370
  %403 = landingpad { ptr, i32 }
          cleanup
  %404 = extractvalue { ptr, i32 } %403, 0
  store ptr %404, ptr %12, align 8
  %405 = extractvalue { ptr, i32 } %403, 1
  store i32 %405, ptr %13, align 4
  br label %413

406:                                              ; preds = %376
  %407 = landingpad { ptr, i32 }
          cleanup
  %408 = extractvalue { ptr, i32 } %407, 0
  store ptr %408, ptr %12, align 8
  %409 = extractvalue { ptr, i32 } %407, 1
  store i32 %409, ptr %13, align 4
  %410 = load i1, ptr %48, align 1
  br i1 %410, label %411, label %412

411:                                              ; preds = %406
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #11
  br label %412

412:                                              ; preds = %411, %406
  br label %413

413:                                              ; preds = %412, %402
  %414 = load i1, ptr %47, align 1
  br i1 %414, label %415, label %416

415:                                              ; preds = %413
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %45) #11
  br label %416

416:                                              ; preds = %415, %413
  %417 = load i1, ptr %46, align 1
  br i1 %417, label %418, label %419

418:                                              ; preds = %416
  call void @llvm.lifetime.end.p0(i64 1, ptr %45) #11
  br label %419

419:                                              ; preds = %418, %416
  %420 = load i1, ptr %44, align 1
  br i1 %420, label %421, label %422

421:                                              ; preds = %419
  call void @llvm.lifetime.end.p0(i64 32, ptr %43) #11
  br label %422

422:                                              ; preds = %421, %419
  br label %452

423:                                              ; preds = %396
  %424 = landingpad { ptr, i32 }
          cleanup
  %425 = extractvalue { ptr, i32 } %424, 0
  store ptr %425, ptr %12, align 8
  %426 = extractvalue { ptr, i32 } %424, 1
  store i32 %426, ptr %13, align 4
  br label %441

427:                                              ; preds = %397
  %428 = landingpad { ptr, i32 }
          cleanup
  %429 = extractvalue { ptr, i32 } %428, 0
  store ptr %429, ptr %12, align 8
  %430 = extractvalue { ptr, i32 } %428, 1
  store i32 %430, ptr %13, align 4
  br label %440

431:                                              ; preds = %399
  %432 = landingpad { ptr, i32 }
          cleanup
  %433 = extractvalue { ptr, i32 } %432, 0
  store ptr %433, ptr %12, align 8
  %434 = extractvalue { ptr, i32 } %432, 1
  store i32 %434, ptr %13, align 4
  br label %439

435:                                              ; preds = %400
  %436 = landingpad { ptr, i32 }
          cleanup
  %437 = extractvalue { ptr, i32 } %436, 0
  store ptr %437, ptr %12, align 8
  %438 = extractvalue { ptr, i32 } %436, 1
  store i32 %438, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #11
  br label %439

439:                                              ; preds = %435, %431
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %51) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %51) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %50) #11
  br label %440

440:                                              ; preds = %439, %427
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %49) #11
  br label %441

441:                                              ; preds = %440, %423
  call void @llvm.lifetime.end.p0(i64 376, ptr %49) #11
  br label %452

442:                                              ; preds = %395
  %443 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %444 = add nsw i32 %443, 1
  store i32 %444, ptr @ya_optind, align 4, !tbaa !5
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %9, ptr noundef nonnull align 8 dereferenceable(8) %36)
          to label %445 unwind label %447

445:                                              ; preds = %442
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %10, ptr noundef nonnull align 8 dereferenceable(8) %42)
          to label %446 unwind label %447

446:                                              ; preds = %445
  store i32 4, ptr %14, align 4
  br label %451

447:                                              ; preds = %445, %442
  %448 = landingpad { ptr, i32 }
          cleanup
  %449 = extractvalue { ptr, i32 } %448, 0
  store ptr %449, ptr %12, align 8
  %450 = extractvalue { ptr, i32 } %448, 1
  store i32 %450, ptr %13, align 4
  br label %452

451:                                              ; preds = %446, %401
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #11
  br label %453

452:                                              ; preds = %447, %441, %422
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #11
  br label %455

453:                                              ; preds = %451, %337
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #11
  %454 = load i32, ptr %14, align 4
  switch i32 %454, label %461 [
    i32 4, label %460
  ]

455:                                              ; preds = %452, %365, %346
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #11
  br label %464

456:                                              ; preds = %141
  invoke void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef @_ZSt4cout)
          to label %457 unwind label %137

457:                                              ; preds = %456
  store i32 0, ptr %3, align 4
  store i32 1, ptr %14, align 4
  br label %461

458:                                              ; preds = %141
  invoke void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef @_ZSt4cerr)
          to label %459 unwind label %137

459:                                              ; preds = %458
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  br label %461

460:                                              ; preds = %453, %319, %187
  store i32 0, ptr %14, align 4
  br label %461

461:                                              ; preds = %460, %459, %457, %453, %319, %158, %136
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #11
  %462 = load i32, ptr %14, align 4
  switch i32 %462, label %1150 [
    i32 0, label %463
    i32 2, label %465
  ]

463:                                              ; preds = %461
  br label %129, !llvm.loop !13

464:                                              ; preds = %455, %321, %186, %167, %137
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #11
  br label %1152

465:                                              ; preds = %461
  call void @llvm.lifetime.start.p0(i64 8, ptr %52) #11
  %466 = load double, ptr %6, align 8, !tbaa !11
  %467 = fmul double 1.000000e+03, %466
  store double %467, ptr %52, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %53) #11
  %468 = load double, ptr %52, align 8, !tbaa !11
  %469 = fmul double 5.000000e-01, %468
  store double %469, ptr %53, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %54) #11
  store ptr %7, ptr %54, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %55) #11
  %470 = load ptr, ptr %54, align 8, !tbaa !9
  %471 = call ptr @_ZNSt6vectorIdSaIdEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %470) #11
  %472 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %55, i32 0, i32 0
  store ptr %471, ptr %472, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %56) #11
  %473 = load ptr, ptr %54, align 8, !tbaa !9
  %474 = call ptr @_ZNSt6vectorIdSaIdEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %473) #11
  %475 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %56, i32 0, i32 0
  store ptr %474, ptr %475, align 8
  br label %476

476:                                              ; preds = %514, %465
  %477 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %55, ptr noundef nonnull align 8 dereferenceable(8) %56) #11
  br i1 %477, label %479, label %478

478:                                              ; preds = %476
  store i32 5, ptr %14, align 4
  br label %516

479:                                              ; preds = %476
  call void @llvm.lifetime.start.p0(i64 8, ptr %57) #11
  %480 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %55) #11
  %481 = load double, ptr %480, align 8, !tbaa !11
  store double %481, ptr %57, align 8, !tbaa !11
  %482 = load double, ptr %53, align 8, !tbaa !11
  %483 = load double, ptr %57, align 8, !tbaa !11
  %484 = fcmp ole double %482, %483
  br i1 %484, label %485, label %510

485:                                              ; preds = %479
  call void @llvm.lifetime.start.p0(i64 376, ptr %58) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %58)
          to label %486 unwind label %491

486:                                              ; preds = %485
  %487 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %58, ptr noundef @.str.7)
          to label %488 unwind label %495

488:                                              ; preds = %486
  call void @llvm.lifetime.start.p0(i64 32, ptr %59) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %60) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %60)
          to label %489 unwind label %499

489:                                              ; preds = %488
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull align 8 dereferenceable(112) %58)
          to label %490 unwind label %503

490:                                              ; preds = %489
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %59) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %58) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %58) #11
  br label %511

491:                                              ; preds = %485
  %492 = landingpad { ptr, i32 }
          cleanup
  %493 = extractvalue { ptr, i32 } %492, 0
  store ptr %493, ptr %12, align 8
  %494 = extractvalue { ptr, i32 } %492, 1
  store i32 %494, ptr %13, align 4
  br label %509

495:                                              ; preds = %486
  %496 = landingpad { ptr, i32 }
          cleanup
  %497 = extractvalue { ptr, i32 } %496, 0
  store ptr %497, ptr %12, align 8
  %498 = extractvalue { ptr, i32 } %496, 1
  store i32 %498, ptr %13, align 4
  br label %508

499:                                              ; preds = %488
  %500 = landingpad { ptr, i32 }
          cleanup
  %501 = extractvalue { ptr, i32 } %500, 0
  store ptr %501, ptr %12, align 8
  %502 = extractvalue { ptr, i32 } %500, 1
  store i32 %502, ptr %13, align 4
  br label %507

503:                                              ; preds = %489
  %504 = landingpad { ptr, i32 }
          cleanup
  %505 = extractvalue { ptr, i32 } %504, 0
  store ptr %505, ptr %12, align 8
  %506 = extractvalue { ptr, i32 } %504, 1
  store i32 %506, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #11
  br label %507

507:                                              ; preds = %503, %499
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %60) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %59) #11
  br label %508

508:                                              ; preds = %507, %495
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %58) #11
  br label %509

509:                                              ; preds = %508, %491
  call void @llvm.lifetime.end.p0(i64 376, ptr %58) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #11
  br label %1149

510:                                              ; preds = %479
  store i32 0, ptr %14, align 4
  br label %511

511:                                              ; preds = %510, %490
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #11
  %512 = load i32, ptr %14, align 4
  switch i32 %512, label %516 [
    i32 0, label %513
  ]

513:                                              ; preds = %511
  br label %514

514:                                              ; preds = %513
  %515 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %55) #11
  br label %476

516:                                              ; preds = %511, %478
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #11
  %517 = load i32, ptr %14, align 4
  switch i32 %517, label %1148 [
    i32 5, label %518
  ]

518:                                              ; preds = %516
  call void @llvm.lifetime.start.p0(i64 8, ptr %61) #11
  store ptr %9, ptr %61, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %62) #11
  %519 = load ptr, ptr %61, align 8, !tbaa !9
  %520 = call ptr @_ZNSt6vectorIdSaIdEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %519) #11
  %521 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %62, i32 0, i32 0
  store ptr %520, ptr %521, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %63) #11
  %522 = load ptr, ptr %61, align 8, !tbaa !9
  %523 = call ptr @_ZNSt6vectorIdSaIdEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %522) #11
  %524 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator", ptr %63, i32 0, i32 0
  store ptr %523, ptr %524, align 8
  br label %525

525:                                              ; preds = %563, %518
  %526 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %62, ptr noundef nonnull align 8 dereferenceable(8) %63) #11
  br i1 %526, label %528, label %527

527:                                              ; preds = %525
  store i32 7, ptr %14, align 4
  br label %565

528:                                              ; preds = %525
  call void @llvm.lifetime.start.p0(i64 8, ptr %64) #11
  %529 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %62) #11
  %530 = load double, ptr %529, align 8, !tbaa !11
  store double %530, ptr %64, align 8, !tbaa !11
  %531 = load double, ptr %53, align 8, !tbaa !11
  %532 = load double, ptr %64, align 8, !tbaa !11
  %533 = fcmp ole double %531, %532
  br i1 %533, label %534, label %559

534:                                              ; preds = %528
  call void @llvm.lifetime.start.p0(i64 376, ptr %65) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %65)
          to label %535 unwind label %540

535:                                              ; preds = %534
  %536 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %65, ptr noundef @.str.8)
          to label %537 unwind label %544

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

538:                                              ; preds = %537
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %66, ptr noundef nonnull align 8 dereferenceable(112) %65)
          to label %539 unwind label %552

539:                                              ; preds = %538
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %67) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %66) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %65) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %65) #11
  br label %560

540:                                              ; preds = %534
  %541 = landingpad { ptr, i32 }
          cleanup
  %542 = extractvalue { ptr, i32 } %541, 0
  store ptr %542, ptr %12, align 8
  %543 = extractvalue { ptr, i32 } %541, 1
  store i32 %543, ptr %13, align 4
  br label %558

544:                                              ; preds = %535
  %545 = landingpad { ptr, i32 }
          cleanup
  %546 = extractvalue { ptr, i32 } %545, 0
  store ptr %546, ptr %12, align 8
  %547 = extractvalue { ptr, i32 } %545, 1
  store i32 %547, ptr %13, align 4
  br label %557

548:                                              ; preds = %537
  %549 = landingpad { ptr, i32 }
          cleanup
  %550 = extractvalue { ptr, i32 } %549, 0
  store ptr %550, ptr %12, align 8
  %551 = extractvalue { ptr, i32 } %549, 1
  store i32 %551, ptr %13, align 4
  br label %556

552:                                              ; preds = %538
  %553 = landingpad { ptr, i32 }
          cleanup
  %554 = extractvalue { ptr, i32 } %553, 0
  store ptr %554, ptr %12, align 8
  %555 = extractvalue { ptr, i32 } %553, 1
  store i32 %555, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #11
  br label %556

556:                                              ; preds = %552, %548
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %67) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %67) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %66) #11
  br label %557

557:                                              ; preds = %556, %544
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %65) #11
  br label %558

558:                                              ; preds = %557, %540
  call void @llvm.lifetime.end.p0(i64 376, ptr %65) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #11
  br label %1149

559:                                              ; preds = %528
  store i32 0, ptr %14, align 4
  br label %560

560:                                              ; preds = %559, %539
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #11
  %561 = load i32, ptr %14, align 4
  switch i32 %561, label %565 [
    i32 0, label %562
  ]

562:                                              ; preds = %560
  br label %563

563:                                              ; preds = %562
  %564 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %62) #11
  br label %525

565:                                              ; preds = %560, %527
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #11
  %566 = load i32, ptr %14, align 4
  switch i32 %566, label %1148 [
    i32 7, label %567
  ]

567:                                              ; preds = %565
  call void @llvm.lifetime.start.p0(i64 4, ptr %68) #11
  %568 = load i32, ptr %4, align 4, !tbaa !5
  %569 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %570 = sub nsw i32 %568, %569
  store i32 %570, ptr %68, align 4, !tbaa !5
  %571 = load i32, ptr %68, align 4, !tbaa !5
  %572 = icmp slt i32 1, %571
  br i1 %572, label %573, label %598

573:                                              ; preds = %567
  call void @llvm.lifetime.start.p0(i64 376, ptr %69) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %69)
          to label %574 unwind label %579

574:                                              ; preds = %573
  %575 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %69, ptr noundef @.str.9)
          to label %576 unwind label %583

576:                                              ; preds = %574
  call void @llvm.lifetime.start.p0(i64 32, ptr %70) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %71) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %71)
          to label %577 unwind label %587

577:                                              ; preds = %576
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull align 8 dereferenceable(112) %69)
          to label %578 unwind label %591

578:                                              ; preds = %577
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %70) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %69) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %69) #11
  br label %1146

579:                                              ; preds = %573
  %580 = landingpad { ptr, i32 }
          cleanup
  %581 = extractvalue { ptr, i32 } %580, 0
  store ptr %581, ptr %12, align 8
  %582 = extractvalue { ptr, i32 } %580, 1
  store i32 %582, ptr %13, align 4
  br label %597

583:                                              ; preds = %574
  %584 = landingpad { ptr, i32 }
          cleanup
  %585 = extractvalue { ptr, i32 } %584, 0
  store ptr %585, ptr %12, align 8
  %586 = extractvalue { ptr, i32 } %584, 1
  store i32 %586, ptr %13, align 4
  br label %596

587:                                              ; preds = %576
  %588 = landingpad { ptr, i32 }
          cleanup
  %589 = extractvalue { ptr, i32 } %588, 0
  store ptr %589, ptr %12, align 8
  %590 = extractvalue { ptr, i32 } %588, 1
  store i32 %590, ptr %13, align 4
  br label %595

591:                                              ; preds = %577
  %592 = landingpad { ptr, i32 }
          cleanup
  %593 = extractvalue { ptr, i32 } %592, 0
  store ptr %593, ptr %12, align 8
  %594 = extractvalue { ptr, i32 } %592, 1
  store i32 %594, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #11
  br label %595

595:                                              ; preds = %591, %587
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %71) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %70) #11
  br label %596

596:                                              ; preds = %595, %583
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %69) #11
  br label %597

597:                                              ; preds = %596, %579
  call void @llvm.lifetime.end.p0(i64 376, ptr %69) #11
  br label %1147

598:                                              ; preds = %567
  call void @llvm.lifetime.start.p0(i64 8, ptr %72) #11
  %599 = load i32, ptr %68, align 4, !tbaa !5
  %600 = icmp eq i32 0, %599
  br i1 %600, label %601, label %602

601:                                              ; preds = %598
  br label %608

602:                                              ; preds = %598
  %603 = load ptr, ptr %5, align 8, !tbaa !9
  %604 = load i32, ptr @ya_optind, align 4, !tbaa !5
  %605 = sext i32 %604 to i64
  %606 = getelementptr inbounds ptr, ptr %603, i64 %605
  %607 = load ptr, ptr %606, align 8, !tbaa !9
  br label %608

608:                                              ; preds = %602, %601
  %609 = phi ptr [ null, %601 ], [ %607, %602 ]
  store ptr %609, ptr %72, align 8, !tbaa !9
  %610 = invoke noundef zeroext i1 @_ZN4sptk13SetBinaryModeEv()
          to label %611 unwind label %618

611:                                              ; preds = %608
  br i1 %610, label %641, label %612

612:                                              ; preds = %611
  call void @llvm.lifetime.start.p0(i64 376, ptr %73) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %73)
          to label %613 unwind label %622

613:                                              ; preds = %612
  %614 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %73, ptr noundef @.str.10)
          to label %615 unwind label %626

615:                                              ; preds = %613
  call void @llvm.lifetime.start.p0(i64 32, ptr %74) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %75) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %75) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %75)
          to label %616 unwind label %630

616:                                              ; preds = %615
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef nonnull align 8 dereferenceable(112) %73)
          to label %617 unwind label %634

617:                                              ; preds = %616
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %75) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %73) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %73) #11
  br label %1144

618:                                              ; preds = %608
  %619 = landingpad { ptr, i32 }
          cleanup
  %620 = extractvalue { ptr, i32 } %619, 0
  store ptr %620, ptr %12, align 8
  %621 = extractvalue { ptr, i32 } %619, 1
  store i32 %621, ptr %13, align 4
  br label %1145

622:                                              ; preds = %612
  %623 = landingpad { ptr, i32 }
          cleanup
  %624 = extractvalue { ptr, i32 } %623, 0
  store ptr %624, ptr %12, align 8
  %625 = extractvalue { ptr, i32 } %623, 1
  store i32 %625, ptr %13, align 4
  br label %640

626:                                              ; preds = %613
  %627 = landingpad { ptr, i32 }
          cleanup
  %628 = extractvalue { ptr, i32 } %627, 0
  store ptr %628, ptr %12, align 8
  %629 = extractvalue { ptr, i32 } %627, 1
  store i32 %629, ptr %13, align 4
  br label %639

630:                                              ; preds = %615
  %631 = landingpad { ptr, i32 }
          cleanup
  %632 = extractvalue { ptr, i32 } %631, 0
  store ptr %632, ptr %12, align 8
  %633 = extractvalue { ptr, i32 } %631, 1
  store i32 %633, ptr %13, align 4
  br label %638

634:                                              ; preds = %616
  %635 = landingpad { ptr, i32 }
          cleanup
  %636 = extractvalue { ptr, i32 } %635, 0
  store ptr %636, ptr %12, align 8
  %637 = extractvalue { ptr, i32 } %635, 1
  store i32 %637, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #11
  br label %638

638:                                              ; preds = %634, %630
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %75) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #11
  br label %639

639:                                              ; preds = %638, %626
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %73) #11
  br label %640

640:                                              ; preds = %639, %622
  call void @llvm.lifetime.end.p0(i64 376, ptr %73) #11
  br label %1145

641:                                              ; preds = %611
  call void @llvm.lifetime.start.p0(i64 520, ptr %76) #11
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(256) %76)
          to label %642 unwind label %665

642:                                              ; preds = %641
  %643 = load ptr, ptr %72, align 8, !tbaa !9
  %644 = icmp ne ptr null, %643
  br i1 %644, label %645, label %693

645:                                              ; preds = %642
  %646 = load ptr, ptr %72, align 8, !tbaa !9
  %647 = invoke noundef i32 @_ZStorSt13_Ios_OpenmodeS_(i32 noundef 8, i32 noundef 4)
          to label %648 unwind label %669

648:                                              ; preds = %645
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256) %76, ptr noundef %646, i32 noundef %647)
          to label %649 unwind label %669

649:                                              ; preds = %648
  %650 = load ptr, ptr %76, align 8, !tbaa !15
  %651 = getelementptr i8, ptr %650, i64 -24
  %652 = load i64, ptr %651, align 8
  %653 = getelementptr inbounds i8, ptr %76, i64 %652
  %654 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv(ptr noundef nonnull align 8 dereferenceable(264) %653)
          to label %655 unwind label %669

655:                                              ; preds = %649
  br i1 %654, label %656, label %692

656:                                              ; preds = %655
  call void @llvm.lifetime.start.p0(i64 376, ptr %77) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %77)
          to label %657 unwind label %673

657:                                              ; preds = %656
  %658 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %77, ptr noundef @.str.11)
          to label %659 unwind label %677

659:                                              ; preds = %657
  %660 = load ptr, ptr %72, align 8, !tbaa !9
  %661 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %658, ptr noundef %660)
          to label %662 unwind label %677

662:                                              ; preds = %659
  call void @llvm.lifetime.start.p0(i64 32, ptr %78) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %79) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %78, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %79)
          to label %663 unwind label %681

663:                                              ; preds = %662
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %78, ptr noundef nonnull align 8 dereferenceable(112) %77)
          to label %664 unwind label %685

664:                                              ; preds = %663
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %79) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %78) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %77) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %77) #11
  br label %1141

665:                                              ; preds = %641
  %666 = landingpad { ptr, i32 }
          cleanup
  %667 = extractvalue { ptr, i32 } %666, 0
  store ptr %667, ptr %12, align 8
  %668 = extractvalue { ptr, i32 } %666, 1
  store i32 %668, ptr %13, align 4
  br label %1143

669:                                              ; preds = %649, %648, %645
  %670 = landingpad { ptr, i32 }
          cleanup
  %671 = extractvalue { ptr, i32 } %670, 0
  store ptr %671, ptr %12, align 8
  %672 = extractvalue { ptr, i32 } %670, 1
  store i32 %672, ptr %13, align 4
  br label %1142

673:                                              ; preds = %656
  %674 = landingpad { ptr, i32 }
          cleanup
  %675 = extractvalue { ptr, i32 } %674, 0
  store ptr %675, ptr %12, align 8
  %676 = extractvalue { ptr, i32 } %674, 1
  store i32 %676, ptr %13, align 4
  br label %691

677:                                              ; preds = %659, %657
  %678 = landingpad { ptr, i32 }
          cleanup
  %679 = extractvalue { ptr, i32 } %678, 0
  store ptr %679, ptr %12, align 8
  %680 = extractvalue { ptr, i32 } %678, 1
  store i32 %680, ptr %13, align 4
  br label %690

681:                                              ; preds = %662
  %682 = landingpad { ptr, i32 }
          cleanup
  %683 = extractvalue { ptr, i32 } %682, 0
  store ptr %683, ptr %12, align 8
  %684 = extractvalue { ptr, i32 } %682, 1
  store i32 %684, ptr %13, align 4
  br label %689

685:                                              ; preds = %663
  %686 = landingpad { ptr, i32 }
          cleanup
  %687 = extractvalue { ptr, i32 } %686, 0
  store ptr %687, ptr %12, align 8
  %688 = extractvalue { ptr, i32 } %686, 1
  store i32 %688, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #11
  br label %689

689:                                              ; preds = %685, %681
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %79) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %79) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %78) #11
  br label %690

690:                                              ; preds = %689, %677
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %77) #11
  br label %691

691:                                              ; preds = %690, %673
  call void @llvm.lifetime.end.p0(i64 376, ptr %77) #11
  br label %1142

692:                                              ; preds = %655
  br label %693

693:                                              ; preds = %692, %642
  call void @llvm.lifetime.start.p0(i64 8, ptr %80) #11
  %694 = invoke noundef zeroext i1 @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv(ptr noundef nonnull align 8 dereferenceable(256) %76)
          to label %695 unwind label %718

695:                                              ; preds = %693
  br i1 %694, label %696, label %697

696:                                              ; preds = %695
  br label %698

697:                                              ; preds = %695
  br label %698

698:                                              ; preds = %697, %696
  %699 = phi ptr [ %76, %696 ], [ @_ZSt3cin, %697 ]
  store ptr %699, ptr %80, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %81) #11
  %700 = call noundef i64 @_ZNKSt6vectorIdSaIdEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  %701 = trunc i64 %700 to i32
  store i32 %701, ptr %81, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %82) #11
  %702 = call noundef i64 @_ZNKSt6vectorIdSaIdEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %9) #11
  %703 = trunc i64 %702 to i32
  store i32 %703, ptr %82, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %83) #11
  %704 = invoke noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %81, ptr noundef nonnull align 4 dereferenceable(4) %82)
          to label %705 unwind label %722

705:                                              ; preds = %698
  %706 = load i32, ptr %704, align 4, !tbaa !5
  store i32 %706, ptr %83, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr %84) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr %85) #11
  %707 = load i32, ptr %83, align 4, !tbaa !5
  %708 = sext i32 %707 to i64
  call void @llvm.lifetime.start.p0(i64 1, ptr %86) #11
  call void @_ZNSaIN4sptk24SecondOrderDigitalFilter6BufferEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  invoke void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EEC2EmRKS3_(ptr noundef nonnull align 8 dereferenceable(24) %85, i64 noundef %708, ptr noundef nonnull align 1 dereferenceable(1) %86)
          to label %709 unwind label %726

709:                                              ; preds = %705
  call void @_ZNSt15__new_allocatorIN4sptk24SecondOrderDigitalFilter6BufferEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %86) #11
  %710 = load i32, ptr %83, align 4, !tbaa !5
  %711 = icmp eq i32 0, %710
  br i1 %711, label %712, label %749

712:                                              ; preds = %709
  call void @llvm.lifetime.start.p0(i64 376, ptr %87) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %87)
          to label %713 unwind label %730

713:                                              ; preds = %712
  %714 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %87, ptr noundef @.str.12)
          to label %715 unwind label %734

715:                                              ; preds = %713
  call void @llvm.lifetime.start.p0(i64 32, ptr %88) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %89) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %89) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %88, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %89)
          to label %716 unwind label %738

716:                                              ; preds = %715
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %88, ptr noundef nonnull align 8 dereferenceable(112) %87)
          to label %717 unwind label %742

717:                                              ; preds = %716
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %89) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %88) #11
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %87) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %87) #11
  br label %1136

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

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

726:                                              ; preds = %705
  %727 = landingpad { ptr, i32 }
          cleanup
  %728 = extractvalue { ptr, i32 } %727, 0
  store ptr %728, ptr %12, align 8
  %729 = extractvalue { ptr, i32 } %727, 1
  store i32 %729, ptr %13, align 4
  call void @_ZNSt15__new_allocatorIN4sptk24SecondOrderDigitalFilter6BufferEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %86) #11
  br label %1138

730:                                              ; preds = %712
  %731 = landingpad { ptr, i32 }
          cleanup
  %732 = extractvalue { ptr, i32 } %731, 0
  store ptr %732, ptr %12, align 8
  %733 = extractvalue { ptr, i32 } %731, 1
  store i32 %733, ptr %13, align 4
  br label %748

734:                                              ; preds = %713
  %735 = landingpad { ptr, i32 }
          cleanup
  %736 = extractvalue { ptr, i32 } %735, 0
  store ptr %736, ptr %12, align 8
  %737 = extractvalue { ptr, i32 } %735, 1
  store i32 %737, ptr %13, align 4
  br label %747

738:                                              ; preds = %715
  %739 = landingpad { ptr, i32 }
          cleanup
  %740 = extractvalue { ptr, i32 } %739, 0
  store ptr %740, ptr %12, align 8
  %741 = extractvalue { ptr, i32 } %739, 1
  store i32 %741, ptr %13, align 4
  br label %746

742:                                              ; preds = %716
  %743 = landingpad { ptr, i32 }
          cleanup
  %744 = extractvalue { ptr, i32 } %743, 0
  store ptr %744, ptr %12, align 8
  %745 = extractvalue { ptr, i32 } %743, 1
  store i32 %745, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #11
  br label %746

746:                                              ; preds = %742, %738
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %89) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %89) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %88) #11
  br label %747

747:                                              ; preds = %746, %734
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %87) #11
  br label %748

748:                                              ; preds = %747, %730
  call void @llvm.lifetime.end.p0(i64 376, ptr %87) #11
  br label %1137

749:                                              ; preds = %709
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #11
  store i32 0, ptr %90, align 4, !tbaa !5
  br label %750

750:                                              ; preds = %907, %749
  %751 = load i32, ptr %90, align 4, !tbaa !5
  %752 = load i32, ptr %83, align 4, !tbaa !5
  %753 = icmp slt i32 %751, %752
  br i1 %753, label %755, label %754

754:                                              ; preds = %750
  store i32 9, ptr %14, align 4
  br label %910

755:                                              ; preds = %750
  %756 = load i32, ptr %90, align 4, !tbaa !5
  %757 = load i32, ptr %81, align 4, !tbaa !5
  %758 = icmp slt i32 %756, %757
  br i1 %758, label %759, label %794

759:                                              ; preds = %755
  %760 = load i32, ptr %90, align 4, !tbaa !5
  %761 = load i32, ptr %82, align 4, !tbaa !5
  %762 = icmp slt i32 %760, %761
  br i1 %762, label %763, label %794

763:                                              ; preds = %759
  call void @llvm.lifetime.start.p0(i64 8, ptr %91) #11
  %764 = invoke noalias noundef nonnull ptr @_Znwm(i64 noundef 88) #12
          to label %765 unwind label %785

765:                                              ; preds = %763
  %766 = load i32, ptr %90, align 4, !tbaa !5
  %767 = sext i32 %766 to i64
  %768 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %767) #11
  %769 = load double, ptr %768, align 8, !tbaa !11
  %770 = load i32, ptr %90, align 4, !tbaa !5
  %771 = sext i32 %770 to i64
  %772 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %771) #11
  %773 = load double, ptr %772, align 8, !tbaa !11
  %774 = load i32, ptr %90, align 4, !tbaa !5
  %775 = sext i32 %774 to i64
  %776 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %775) #11
  %777 = load double, ptr %776, align 8, !tbaa !11
  %778 = load i32, ptr %90, align 4, !tbaa !5
  %779 = sext i32 %778 to i64
  %780 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %779) #11
  %781 = load double, ptr %780, align 8, !tbaa !11
  %782 = load double, ptr %52, align 8, !tbaa !11
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1Eddddd(ptr noundef nonnull align 8 dereferenceable(81) %764, double noundef %769, double noundef %773, double noundef %777, double noundef %781, double noundef %782)
          to label %783 unwind label %789

783:                                              ; preds = %765
  store ptr %764, ptr %91, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(8) %91)
          to label %784 unwind label %785

784:                                              ; preds = %783
  call void @llvm.lifetime.end.p0(i64 8, ptr %91) #11
  br label %850

785:                                              ; preds = %783, %763
  %786 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %787 = extractvalue { ptr, i32 } %786, 0
  store ptr %787, ptr %12, align 8
  %788 = extractvalue { ptr, i32 } %786, 1
  store i32 %788, ptr %13, align 4
  br label %793

789:                                              ; preds = %765
  %790 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %791 = extractvalue { ptr, i32 } %790, 0
  store ptr %791, ptr %12, align 8
  %792 = extractvalue { ptr, i32 } %790, 1
  store i32 %792, ptr %13, align 4
  call void @_ZdlPvm(ptr noundef %764, i64 noundef 88) #13
  br label %793

793:                                              ; preds = %789, %785
  call void @llvm.lifetime.end.p0(i64 8, ptr %91) #11
  br label %912

794:                                              ; preds = %759, %755
  %795 = load i32, ptr %90, align 4, !tbaa !5
  %796 = load i32, ptr %81, align 4, !tbaa !5
  %797 = icmp slt i32 %795, %796
  br i1 %797, label %798, label %821

798:                                              ; preds = %794
  call void @llvm.lifetime.start.p0(i64 8, ptr %92) #11
  %799 = invoke noalias noundef nonnull ptr @_Znwm(i64 noundef 88) #12
          to label %800 unwind label %812

800:                                              ; preds = %798
  %801 = load i32, ptr %90, align 4, !tbaa !5
  %802 = sext i32 %801 to i64
  %803 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %802) #11
  %804 = load double, ptr %803, align 8, !tbaa !11
  %805 = load i32, ptr %90, align 4, !tbaa !5
  %806 = sext i32 %805 to i64
  %807 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %8, i64 noundef %806) #11
  %808 = load double, ptr %807, align 8, !tbaa !11
  %809 = load double, ptr %52, align 8, !tbaa !11
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81) %799, i32 noundef 0, double noundef %804, double noundef %808, double noundef %809)
          to label %810 unwind label %816

810:                                              ; preds = %800
  store ptr %799, ptr %92, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(8) %92)
          to label %811 unwind label %812

811:                                              ; preds = %810
  call void @llvm.lifetime.end.p0(i64 8, ptr %92) #11
  br label %849

812:                                              ; preds = %810, %798
  %813 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %814 = extractvalue { ptr, i32 } %813, 0
  store ptr %814, ptr %12, align 8
  %815 = extractvalue { ptr, i32 } %813, 1
  store i32 %815, ptr %13, align 4
  br label %820

816:                                              ; preds = %800
  %817 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %818 = extractvalue { ptr, i32 } %817, 0
  store ptr %818, ptr %12, align 8
  %819 = extractvalue { ptr, i32 } %817, 1
  store i32 %819, ptr %13, align 4
  call void @_ZdlPvm(ptr noundef %799, i64 noundef 88) #13
  br label %820

820:                                              ; preds = %816, %812
  call void @llvm.lifetime.end.p0(i64 8, ptr %92) #11
  br label %912

821:                                              ; preds = %794
  %822 = load i32, ptr %90, align 4, !tbaa !5
  %823 = load i32, ptr %82, align 4, !tbaa !5
  %824 = icmp slt i32 %822, %823
  br i1 %824, label %825, label %848

825:                                              ; preds = %821
  call void @llvm.lifetime.start.p0(i64 8, ptr %93) #11
  %826 = invoke noalias noundef nonnull ptr @_Znwm(i64 noundef 88) #12
          to label %827 unwind label %839

827:                                              ; preds = %825
  %828 = load i32, ptr %90, align 4, !tbaa !5
  %829 = sext i32 %828 to i64
  %830 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %9, i64 noundef %829) #11
  %831 = load double, ptr %830, align 8, !tbaa !11
  %832 = load i32, ptr %90, align 4, !tbaa !5
  %833 = sext i32 %832 to i64
  %834 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %10, i64 noundef %833) #11
  %835 = load double, ptr %834, align 8, !tbaa !11
  %836 = load double, ptr %52, align 8, !tbaa !11
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81) %826, i32 noundef 1, double noundef %831, double noundef %835, double noundef %836)
          to label %837 unwind label %843

837:                                              ; preds = %827
  store ptr %826, ptr %93, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %84, ptr noundef nonnull align 8 dereferenceable(8) %93)
          to label %838 unwind label %839

838:                                              ; preds = %837
  call void @llvm.lifetime.end.p0(i64 8, ptr %93) #11
  br label %848

839:                                              ; preds = %837, %825
  %840 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %841 = extractvalue { ptr, i32 } %840, 0
  store ptr %841, ptr %12, align 8
  %842 = extractvalue { ptr, i32 } %840, 1
  store i32 %842, ptr %13, align 4
  br label %847

843:                                              ; preds = %827
  %844 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %845 = extractvalue { ptr, i32 } %844, 0
  store ptr %845, ptr %12, align 8
  %846 = extractvalue { ptr, i32 } %844, 1
  store i32 %846, ptr %13, align 4
  call void @_ZdlPvm(ptr noundef %826, i64 noundef 88) #13
  br label %847

847:                                              ; preds = %843, %839
  call void @llvm.lifetime.end.p0(i64 8, ptr %93) #11
  br label %912

848:                                              ; preds = %838, %821
  br label %849

849:                                              ; preds = %848, %811
  br label %850

850:                                              ; preds = %849, %784
  %851 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #11
  %852 = load ptr, ptr %851, align 8, !tbaa !9
  %853 = invoke noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter7IsValidEv(ptr noundef nonnull align 8 dereferenceable(81) %852)
          to label %854 unwind label %870

854:                                              ; preds = %850
  br i1 %853, label %906, label %855

855:                                              ; preds = %854
  call void @llvm.lifetime.start.p0(i64 376, ptr %94) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %94)
          to label %856 unwind label %874

856:                                              ; preds = %855
  %857 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %94, ptr noundef @.str.13)
          to label %858 unwind label %878

858:                                              ; preds = %856
  call void @llvm.lifetime.start.p0(i64 32, ptr %95) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %96) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %96) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %96)
          to label %859 unwind label %882

859:                                              ; preds = %858
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef nonnull align 8 dereferenceable(112) %94)
          to label %860 unwind label %886

860:                                              ; preds = %859
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %96) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr %97) #11
  store ptr %84, ptr %97, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %98) #11
  %861 = load ptr, ptr %97, align 8, !tbaa !9
  %862 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %861) #11
  %863 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %98, i32 0, i32 0
  store ptr %862, ptr %863, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %99) #11
  %864 = load ptr, ptr %97, align 8, !tbaa !9
  %865 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %864) #11
  %866 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %99, i32 0, i32 0
  store ptr %865, ptr %866, align 8
  br label %867

867:                                              ; preds = %901, %860
  %868 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %98, ptr noundef nonnull align 8 dereferenceable(8) %99) #11
  br i1 %868, label %891, label %869

869:                                              ; preds = %867
  store i32 12, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %99) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %98) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %97) #11
  br label %903

870:                                              ; preds = %850
  %871 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %872 = extractvalue { ptr, i32 } %871, 0
  store ptr %872, ptr %12, align 8
  %873 = extractvalue { ptr, i32 } %871, 1
  store i32 %873, ptr %13, align 4
  br label %912

874:                                              ; preds = %855
  %875 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %876 = extractvalue { ptr, i32 } %875, 0
  store ptr %876, ptr %12, align 8
  %877 = extractvalue { ptr, i32 } %875, 1
  store i32 %877, ptr %13, align 4
  br label %905

878:                                              ; preds = %856
  %879 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %880 = extractvalue { ptr, i32 } %879, 0
  store ptr %880, ptr %12, align 8
  %881 = extractvalue { ptr, i32 } %879, 1
  store i32 %881, ptr %13, align 4
  br label %904

882:                                              ; preds = %858
  %883 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %884 = extractvalue { ptr, i32 } %883, 0
  store ptr %884, ptr %12, align 8
  %885 = extractvalue { ptr, i32 } %883, 1
  store i32 %885, ptr %13, align 4
  br label %890

886:                                              ; preds = %859
  %887 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %888 = extractvalue { ptr, i32 } %887, 0
  store ptr %888, ptr %12, align 8
  %889 = extractvalue { ptr, i32 } %887, 1
  store i32 %889, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #11
  br label %890

890:                                              ; preds = %886, %882
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %96) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #11
  br label %904

891:                                              ; preds = %867
  call void @llvm.lifetime.start.p0(i64 8, ptr %100) #11
  %892 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %98) #11
  %893 = load ptr, ptr %892, align 8, !tbaa !9
  store ptr %893, ptr %100, align 8, !tbaa !9
  %894 = load ptr, ptr %100, align 8, !tbaa !9
  %895 = icmp eq ptr %894, null
  br i1 %895, label %900, label %896

896:                                              ; preds = %891
  %897 = load ptr, ptr %894, align 8, !tbaa !15
  %898 = getelementptr inbounds ptr, ptr %897, i64 1
  %899 = load ptr, ptr %898, align 8
  call void %899(ptr noundef nonnull align 8 dereferenceable(81) %894) #11
  br label %900

900:                                              ; preds = %896, %891
  call void @llvm.lifetime.end.p0(i64 8, ptr %100) #11
  br label %901

901:                                              ; preds = %900
  %902 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %98) #11
  br label %867

903:                                              ; preds = %869
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %94) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %94) #11
  br label %910

904:                                              ; preds = %890, %878
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %94) #11
  br label %905

905:                                              ; preds = %904, %874
  call void @llvm.lifetime.end.p0(i64 376, ptr %94) #11
  br label %912

906:                                              ; preds = %854
  br label %907

907:                                              ; preds = %906
  %908 = load i32, ptr %90, align 4, !tbaa !5
  %909 = add nsw i32 %908, 1
  store i32 %909, ptr %90, align 4, !tbaa !5
  br label %750, !llvm.loop !17

910:                                              ; preds = %903, %754
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #11
  %911 = load i32, ptr %14, align 4
  switch i32 %911, label %1136 [
    i32 9, label %913
  ]

912:                                              ; preds = %905, %870, %847, %820, %793
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #11
  br label %1053

913:                                              ; preds = %910
  call void @llvm.lifetime.start.p0(i64 8, ptr %101) #11
  br label %914

914:                                              ; preds = %1047, %913
  %915 = load ptr, ptr %80, align 8, !tbaa !9
  %916 = invoke noundef zeroext i1 @_ZN4sptk10ReadStreamIdEEbPT_PSi(ptr noundef %101, ptr noundef %915)
          to label %917 unwind label %924

917:                                              ; preds = %914
  br i1 %916, label %918, label %1048

918:                                              ; preds = %917
  call void @llvm.lifetime.start.p0(i64 4, ptr %102) #11
  store i32 0, ptr %102, align 4, !tbaa !5
  br label %919

919:                                              ; preds = %990, %918
  %920 = load i32, ptr %102, align 4, !tbaa !5
  %921 = load i32, ptr %83, align 4, !tbaa !5
  %922 = icmp slt i32 %920, %921
  br i1 %922, label %928, label %923

923:                                              ; preds = %919
  store i32 16, ptr %14, align 4
  br label %993

924:                                              ; preds = %996, %914
  %925 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %926 = extractvalue { ptr, i32 } %925, 0
  store ptr %926, ptr %12, align 8
  %927 = extractvalue { ptr, i32 } %925, 1
  store i32 %927, ptr %13, align 4
  br label %1052

928:                                              ; preds = %919
  %929 = load i32, ptr %102, align 4, !tbaa !5
  %930 = sext i32 %929 to i64
  %931 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef %930) #11
  %932 = load ptr, ptr %931, align 8, !tbaa !9
  %933 = load i32, ptr %102, align 4, !tbaa !5
  %934 = sext i32 %933 to i64
  %935 = call noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %85, i64 noundef %934) #11
  %936 = invoke noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter3RunEPdPNS0_6BufferE(ptr noundef nonnull align 8 dereferenceable(81) %932, ptr noundef %101, ptr noundef %935)
          to label %937 unwind label %953

937:                                              ; preds = %928
  br i1 %936, label %989, label %938

938:                                              ; preds = %937
  call void @llvm.lifetime.start.p0(i64 376, ptr %103) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %103)
          to label %939 unwind label %957

939:                                              ; preds = %938
  %940 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %103, ptr noundef @.str.14)
          to label %941 unwind label %961

941:                                              ; preds = %939
  call void @llvm.lifetime.start.p0(i64 32, ptr %104) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %105) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %105) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %104, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %105)
          to label %942 unwind label %965

942:                                              ; preds = %941
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %104, ptr noundef nonnull align 8 dereferenceable(112) %103)
          to label %943 unwind label %969

943:                                              ; preds = %942
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %104) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %105) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %104) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr %106) #11
  store ptr %84, ptr %106, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %107) #11
  %944 = load ptr, ptr %106, align 8, !tbaa !9
  %945 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %944) #11
  %946 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %107, i32 0, i32 0
  store ptr %945, ptr %946, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %108) #11
  %947 = load ptr, ptr %106, align 8, !tbaa !9
  %948 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %947) #11
  %949 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %108, i32 0, i32 0
  store ptr %948, ptr %949, align 8
  br label %950

950:                                              ; preds = %984, %943
  %951 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %107, ptr noundef nonnull align 8 dereferenceable(8) %108) #11
  br i1 %951, label %974, label %952

952:                                              ; preds = %950
  store i32 19, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %108) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %107) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %106) #11
  br label %986

953:                                              ; preds = %928
  %954 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %955 = extractvalue { ptr, i32 } %954, 0
  store ptr %955, ptr %12, align 8
  %956 = extractvalue { ptr, i32 } %954, 1
  store i32 %956, ptr %13, align 4
  br label %995

957:                                              ; preds = %938
  %958 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %959 = extractvalue { ptr, i32 } %958, 0
  store ptr %959, ptr %12, align 8
  %960 = extractvalue { ptr, i32 } %958, 1
  store i32 %960, ptr %13, align 4
  br label %988

961:                                              ; preds = %939
  %962 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %963 = extractvalue { ptr, i32 } %962, 0
  store ptr %963, ptr %12, align 8
  %964 = extractvalue { ptr, i32 } %962, 1
  store i32 %964, ptr %13, align 4
  br label %987

965:                                              ; preds = %941
  %966 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %967 = extractvalue { ptr, i32 } %966, 0
  store ptr %967, ptr %12, align 8
  %968 = extractvalue { ptr, i32 } %966, 1
  store i32 %968, ptr %13, align 4
  br label %973

969:                                              ; preds = %942
  %970 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %971 = extractvalue { ptr, i32 } %970, 0
  store ptr %971, ptr %12, align 8
  %972 = extractvalue { ptr, i32 } %970, 1
  store i32 %972, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %104) #11
  br label %973

973:                                              ; preds = %969, %965
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %105) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %104) #11
  br label %987

974:                                              ; preds = %950
  call void @llvm.lifetime.start.p0(i64 8, ptr %109) #11
  %975 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %107) #11
  %976 = load ptr, ptr %975, align 8, !tbaa !9
  store ptr %976, ptr %109, align 8, !tbaa !9
  %977 = load ptr, ptr %109, align 8, !tbaa !9
  %978 = icmp eq ptr %977, null
  br i1 %978, label %983, label %979

979:                                              ; preds = %974
  %980 = load ptr, ptr %977, align 8, !tbaa !15
  %981 = getelementptr inbounds ptr, ptr %980, i64 1
  %982 = load ptr, ptr %981, align 8
  call void %982(ptr noundef nonnull align 8 dereferenceable(81) %977) #11
  br label %983

983:                                              ; preds = %979, %974
  call void @llvm.lifetime.end.p0(i64 8, ptr %109) #11
  br label %984

984:                                              ; preds = %983
  %985 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %107) #11
  br label %950

986:                                              ; preds = %952
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %103) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %103) #11
  br label %993

987:                                              ; preds = %973, %961
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %103) #11
  br label %988

988:                                              ; preds = %987, %957
  call void @llvm.lifetime.end.p0(i64 376, ptr %103) #11
  br label %995

989:                                              ; preds = %937
  br label %990

990:                                              ; preds = %989
  %991 = load i32, ptr %102, align 4, !tbaa !5
  %992 = add nsw i32 %991, 1
  store i32 %992, ptr %102, align 4, !tbaa !5
  br label %919, !llvm.loop !18

993:                                              ; preds = %986, %923
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #11
  %994 = load i32, ptr %14, align 4
  switch i32 %994, label %1049 [
    i32 16, label %996
  ]

995:                                              ; preds = %988, %953
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #11
  br label %1052

996:                                              ; preds = %993
  %997 = load double, ptr %101, align 8, !tbaa !11
  %998 = invoke noundef zeroext i1 @_ZN4sptk11WriteStreamIdEEbT_PSo(double noundef %997, ptr noundef @_ZSt4cout)
          to label %999 unwind label %924

999:                                              ; preds = %996
  br i1 %998, label %1047, label %1000

1000:                                             ; preds = %999
  call void @llvm.lifetime.start.p0(i64 376, ptr %110) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %110)
          to label %1001 unwind label %1015

1001:                                             ; preds = %1000
  %1002 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %110, ptr noundef @.str.15)
          to label %1003 unwind label %1019

1003:                                             ; preds = %1001
  call void @llvm.lifetime.start.p0(i64 32, ptr %111) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %112) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %112) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %112)
          to label %1004 unwind label %1023

1004:                                             ; preds = %1003
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %111, ptr noundef nonnull align 8 dereferenceable(112) %110)
          to label %1005 unwind label %1027

1005:                                             ; preds = %1004
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %112) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %112) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr %113) #11
  store ptr %84, ptr %113, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %114) #11
  %1006 = load ptr, ptr %113, align 8, !tbaa !9
  %1007 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %1006) #11
  %1008 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %114, i32 0, i32 0
  store ptr %1007, ptr %1008, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %115) #11
  %1009 = load ptr, ptr %113, align 8, !tbaa !9
  %1010 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %1009) #11
  %1011 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %115, i32 0, i32 0
  store ptr %1010, ptr %1011, align 8
  br label %1012

1012:                                             ; preds = %1042, %1005
  %1013 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %114, ptr noundef nonnull align 8 dereferenceable(8) %115) #11
  br i1 %1013, label %1032, label %1014

1014:                                             ; preds = %1012
  store i32 21, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %115) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %114) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %113) #11
  br label %1044

1015:                                             ; preds = %1000
  %1016 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %1017 = extractvalue { ptr, i32 } %1016, 0
  store ptr %1017, ptr %12, align 8
  %1018 = extractvalue { ptr, i32 } %1016, 1
  store i32 %1018, ptr %13, align 4
  br label %1046

1019:                                             ; preds = %1001
  %1020 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %1021 = extractvalue { ptr, i32 } %1020, 0
  store ptr %1021, ptr %12, align 8
  %1022 = extractvalue { ptr, i32 } %1020, 1
  store i32 %1022, ptr %13, align 4
  br label %1045

1023:                                             ; preds = %1003
  %1024 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %1025 = extractvalue { ptr, i32 } %1024, 0
  store ptr %1025, ptr %12, align 8
  %1026 = extractvalue { ptr, i32 } %1024, 1
  store i32 %1026, ptr %13, align 4
  br label %1031

1027:                                             ; preds = %1004
  %1028 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  %1029 = extractvalue { ptr, i32 } %1028, 0
  store ptr %1029, ptr %12, align 8
  %1030 = extractvalue { ptr, i32 } %1028, 1
  store i32 %1030, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #11
  br label %1031

1031:                                             ; preds = %1027, %1023
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %112) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %112) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #11
  br label %1045

1032:                                             ; preds = %1012
  call void @llvm.lifetime.start.p0(i64 8, ptr %116) #11
  %1033 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %114) #11
  %1034 = load ptr, ptr %1033, align 8, !tbaa !9
  store ptr %1034, ptr %116, align 8, !tbaa !9
  %1035 = load ptr, ptr %116, align 8, !tbaa !9
  %1036 = icmp eq ptr %1035, null
  br i1 %1036, label %1041, label %1037

1037:                                             ; preds = %1032
  %1038 = load ptr, ptr %1035, align 8, !tbaa !15
  %1039 = getelementptr inbounds ptr, ptr %1038, i64 1
  %1040 = load ptr, ptr %1039, align 8
  call void %1040(ptr noundef nonnull align 8 dereferenceable(81) %1035) #11
  br label %1041

1041:                                             ; preds = %1037, %1032
  call void @llvm.lifetime.end.p0(i64 8, ptr %116) #11
  br label %1042

1042:                                             ; preds = %1041
  %1043 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %114) #11
  br label %1012

1044:                                             ; preds = %1014
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %110) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %110) #11
  br label %1049

1045:                                             ; preds = %1031, %1019
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %110) #11
  br label %1046

1046:                                             ; preds = %1045, %1015
  call void @llvm.lifetime.end.p0(i64 376, ptr %110) #11
  br label %1052

1047:                                             ; preds = %999
  br label %914, !llvm.loop !19

1048:                                             ; preds = %917
  store i32 0, ptr %14, align 4
  br label %1049

1049:                                             ; preds = %1048, %1044, %993
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #11
  %1050 = load i32, ptr %14, align 4
  switch i32 %1050, label %1136 [
    i32 0, label %1051
  ]

1051:                                             ; preds = %1049
  br label %1113

1052:                                             ; preds = %1046, %995, %924
  call void @llvm.lifetime.end.p0(i64 8, ptr %101) #11
  br label %1053

1053:                                             ; preds = %1052, %912
  %1054 = load i32, ptr %13, align 4
  %1055 = call i32 @llvm.eh.typeid.for.p0(ptr @_ZTISt9exception) #11
  %1056 = icmp eq i32 %1054, %1055
  br i1 %1056, label %1057, label %1137

1057:                                             ; preds = %1053
  call void @llvm.lifetime.start.p0(i64 8, ptr %117) #11
  %1058 = load ptr, ptr %12, align 8
  %1059 = call ptr @__cxa_begin_catch(ptr %1058) #11
  store ptr %1059, ptr %117, align 8
  call void @llvm.lifetime.start.p0(i64 376, ptr %118) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %118)
          to label %1060 unwind label %1074

1060:                                             ; preds = %1057
  %1061 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %118, ptr noundef @.str.16)
          to label %1062 unwind label %1078

1062:                                             ; preds = %1060
  call void @llvm.lifetime.start.p0(i64 32, ptr %119) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr %120) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %120) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %120)
          to label %1063 unwind label %1082

1063:                                             ; preds = %1062
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull align 8 dereferenceable(112) %118)
          to label %1064 unwind label %1086

1064:                                             ; preds = %1063
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %120) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %119) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr %121) #11
  store ptr %84, ptr %121, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %122) #11
  %1065 = load ptr, ptr %121, align 8, !tbaa !9
  %1066 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %1065) #11
  %1067 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %122, i32 0, i32 0
  store ptr %1066, ptr %1067, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %123) #11
  %1068 = load ptr, ptr %121, align 8, !tbaa !9
  %1069 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %1068) #11
  %1070 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %123, i32 0, i32 0
  store ptr %1069, ptr %1070, align 8
  br label %1071

1071:                                             ; preds = %1101, %1064
  %1072 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %122, ptr noundef nonnull align 8 dereferenceable(8) %123) #11
  br i1 %1072, label %1091, label %1073

1073:                                             ; preds = %1071
  store i32 23, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %123) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %122) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %121) #11
  br label %1103

1074:                                             ; preds = %1057
  %1075 = landingpad { ptr, i32 }
          cleanup
  %1076 = extractvalue { ptr, i32 } %1075, 0
  store ptr %1076, ptr %12, align 8
  %1077 = extractvalue { ptr, i32 } %1075, 1
  store i32 %1077, ptr %13, align 4
  br label %1105

1078:                                             ; preds = %1060
  %1079 = landingpad { ptr, i32 }
          cleanup
  %1080 = extractvalue { ptr, i32 } %1079, 0
  store ptr %1080, ptr %12, align 8
  %1081 = extractvalue { ptr, i32 } %1079, 1
  store i32 %1081, ptr %13, align 4
  br label %1104

1082:                                             ; preds = %1062
  %1083 = landingpad { ptr, i32 }
          cleanup
  %1084 = extractvalue { ptr, i32 } %1083, 0
  store ptr %1084, ptr %12, align 8
  %1085 = extractvalue { ptr, i32 } %1083, 1
  store i32 %1085, ptr %13, align 4
  br label %1090

1086:                                             ; preds = %1063
  %1087 = landingpad { ptr, i32 }
          cleanup
  %1088 = extractvalue { ptr, i32 } %1087, 0
  store ptr %1088, ptr %12, align 8
  %1089 = extractvalue { ptr, i32 } %1087, 1
  store i32 %1089, ptr %13, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %119) #11
  br label %1090

1090:                                             ; preds = %1086, %1082
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %120) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr %119) #11
  br label %1104

1091:                                             ; preds = %1071
  call void @llvm.lifetime.start.p0(i64 8, ptr %124) #11
  %1092 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %122) #11
  %1093 = load ptr, ptr %1092, align 8, !tbaa !9
  store ptr %1093, ptr %124, align 8, !tbaa !9
  %1094 = load ptr, ptr %124, align 8, !tbaa !9
  %1095 = icmp eq ptr %1094, null
  br i1 %1095, label %1100, label %1096

1096:                                             ; preds = %1091
  %1097 = load ptr, ptr %1094, align 8, !tbaa !15
  %1098 = getelementptr inbounds ptr, ptr %1097, i64 1
  %1099 = load ptr, ptr %1098, align 8
  call void %1099(ptr noundef nonnull align 8 dereferenceable(81) %1094) #11
  br label %1100

1100:                                             ; preds = %1096, %1091
  call void @llvm.lifetime.end.p0(i64 8, ptr %124) #11
  br label %1101

1101:                                             ; preds = %1100
  %1102 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %122) #11
  br label %1071

1103:                                             ; preds = %1073
  store i32 1, ptr %3, align 4
  store i32 1, ptr %14, align 4
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %118) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr %118) #11
  invoke void @__cxa_end_catch()
          to label %1106 unwind label %1107

1104:                                             ; preds = %1090, %1078
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %118) #11
  br label %1105

1105:                                             ; preds = %1104, %1074
  call void @llvm.lifetime.end.p0(i64 376, ptr %118) #11
  invoke void @__cxa_end_catch()
          to label %1111 unwind label %1158

1106:                                             ; preds = %1103
  call void @llvm.lifetime.end.p0(i64 8, ptr %117) #11
  br label %1136

1107:                                             ; preds = %1103
  %1108 = landingpad { ptr, i32 }
          cleanup
  %1109 = extractvalue { ptr, i32 } %1108, 0
  store ptr %1109, ptr %12, align 8
  %1110 = extractvalue { ptr, i32 } %1108, 1
  store i32 %1110, ptr %13, align 4
  br label %1112

1111:                                             ; preds = %1105
  br label %1112

1112:                                             ; preds = %1111, %1107
  call void @llvm.lifetime.end.p0(i64 8, ptr %117) #11
  br label %1137

1113:                                             ; preds = %1051
  call void @llvm.lifetime.start.p0(i64 8, ptr %125) #11
  store ptr %84, ptr %125, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %126) #11
  %1114 = load ptr, ptr %125, align 8, !tbaa !9
  %1115 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %1114) #11
  %1116 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %126, i32 0, i32 0
  store ptr %1115, ptr %1116, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %127) #11
  %1117 = load ptr, ptr %125, align 8, !tbaa !9
  %1118 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %1117) #11
  %1119 = getelementptr inbounds %"class.__gnu_cxx::__normal_iterator.14", ptr %127, i32 0, i32 0
  store ptr %1118, ptr %1119, align 8
  br label %1120

1120:                                             ; preds = %1133, %1113
  %1121 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %126, ptr noundef nonnull align 8 dereferenceable(8) %127) #11
  br i1 %1121, label %1123, label %1122

1122:                                             ; preds = %1120
  store i32 25, ptr %14, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %127) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %126) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %125) #11
  br label %1135

1123:                                             ; preds = %1120
  call void @llvm.lifetime.start.p0(i64 8, ptr %128) #11
  %1124 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %126) #11
  %1125 = load ptr, ptr %1124, align 8, !tbaa !9
  store ptr %1125, ptr %128, align 8, !tbaa !9
  %1126 = load ptr, ptr %128, align 8, !tbaa !9
  %1127 = icmp eq ptr %1126, null
  br i1 %1127, label %1132, label %1128

1128:                                             ; preds = %1123
  %1129 = load ptr, ptr %1126, align 8, !tbaa !15
  %1130 = getelementptr inbounds ptr, ptr %1129, i64 1
  %1131 = load ptr, ptr %1130, align 8
  call void %1131(ptr noundef nonnull align 8 dereferenceable(81) %1126) #11
  br label %1132

1132:                                             ; preds = %1128, %1123
  call void @llvm.lifetime.end.p0(i64 8, ptr %128) #11
  br label %1133

1133:                                             ; preds = %1132
  %1134 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %126) #11
  br label %1120

1135:                                             ; preds = %1122
  store i32 0, ptr %3, align 4
  store i32 1, ptr %14, align 4
  br label %1136

1136:                                             ; preds = %1135, %1106, %1049, %910, %717
  call void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %85) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr %81) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %80) #11
  br label %1141

1137:                                             ; preds = %1112, %1053, %748
  call void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %85) #11
  br label %1138

1138:                                             ; preds = %1137, %726
  call void @llvm.lifetime.end.p0(i64 24, ptr %85) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %84) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %84) #11
  br label %1139

1139:                                             ; preds = %1138, %722
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr %81) #11
  br label %1140

1140:                                             ; preds = %1139, %718
  call void @llvm.lifetime.end.p0(i64 8, ptr %80) #11
  br label %1142

1141:                                             ; preds = %1136, %664
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %76) #11
  call void @llvm.lifetime.end.p0(i64 520, ptr %76) #11
  br label %1144

1142:                                             ; preds = %1140, %691, %669
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %76) #11
  br label %1143

1143:                                             ; preds = %1142, %665
  call void @llvm.lifetime.end.p0(i64 520, ptr %76) #11
  br label %1145

1144:                                             ; preds = %1141, %617
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #11
  br label %1146

1145:                                             ; preds = %1143, %640, %618
  call void @llvm.lifetime.end.p0(i64 8, ptr %72) #11
  br label %1147

1146:                                             ; preds = %1144, %578
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #11
  br label %1148

1147:                                             ; preds = %1145, %597
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #11
  br label %1149

1148:                                             ; preds = %1146, %565, %516
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %52) #11
  br label %1150

1149:                                             ; preds = %1147, %558, %509
  call void @llvm.lifetime.end.p0(i64 8, ptr %53) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %52) #11
  br label %1152

1150:                                             ; preds = %1148, %461
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %9) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %8) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %7) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #11
  %1151 = load i32, ptr %3, align 4
  ret i32 %1151

1152:                                             ; preds = %1149, %464
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %10) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %10) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %9) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %9) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %8) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %8) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr %7) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #11
  br label %1153

1153:                                             ; preds = %1152
  %1154 = load ptr, ptr %12, align 8
  %1155 = load i32, ptr %13, align 4
  %1156 = insertvalue { ptr, i32 } poison, ptr %1154, 0
  %1157 = insertvalue { ptr, i32 } %1156, i32 %1155, 1
  resume { ptr, i32 } %1157

1158:                                             ; preds = %1105
  %1159 = landingpad { ptr, i32 }
          catch ptr null
  %1160 = extractvalue { ptr, i32 } %1159, 0
  call void @__clang_call_terminate(ptr %1160) #14
  unreachable
}

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

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

declare i32 @ya_getopt_long(i32 noundef, ptr noundef, ptr noundef, ptr noundef, ptr noundef) #3

declare i32 @__gxx_personality_v0(...)

declare noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

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

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

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

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

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

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

declare void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(112)) #3

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef) #4

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

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

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

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

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

declare noundef zeroext i1 @_ZN4sptk13SetBinaryModeEv() #3

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

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256), ptr noundef, i32 noundef) #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZStorSt13_Ios_OpenmodeS_(i32 noundef, i32 noundef) #6

; Function Attrs: mustprogress uwtable
declare noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv(ptr noundef nonnull align 8 dereferenceable(264)) #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv(ptr noundef nonnull align 8 dereferenceable(256)) #2 align 2

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

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

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

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

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

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

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

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

declare void @_ZN4sptk24SecondOrderDigitalFilterC1Eddddd(ptr noundef nonnull align 8 dereferenceable(81), double noundef, double noundef, double noundef, double noundef, double noundef) unnamed_addr #3

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

declare void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81), i32 noundef, double noundef, double noundef, double noundef) unnamed_addr #3

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

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

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

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

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

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

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

declare noundef zeroext i1 @_ZN4sptk10ReadStreamIdEEbPT_PSi(ptr noundef, ptr noundef) #3

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

declare noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter3RunEPdPNS0_6BufferE(ptr noundef nonnull align 8 dereferenceable(81), ptr noundef, ptr noundef) #3

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

declare noundef zeroext i1 @_ZN4sptk11WriteStreamIdEEbT_PSo(double noundef, ptr noundef) #3

; Function Attrs: nounwind memory(none)
declare i32 @llvm.eh.typeid.for.p0(ptr) #9

declare ptr @__cxa_begin_catch(ptr)

declare void @__cxa_end_catch()

; Function Attrs: noinline noreturn nounwind uwtable
declare hidden void @__clang_call_terminate(ptr noundef) #10

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

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

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

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

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

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

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

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

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


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

%"class.std::basic_ostream" = type { ptr, %"class.std::basic_ios" }
%"class.std::basic_ios" = type { %"class.std::ios_base", ptr, i8, i8, ptr, ptr, ptr, ptr }
%"class.std::ios_base" = type { ptr, i64, i64, i32, i32, i32, ptr, %"struct.std::ios_base::_Words", [8 x %"struct.std::ios_base::_Words"], i32, ptr, %"class.std::locale" }
%"struct.std::ios_base::_Words" = type { ptr, i64 }
%"class.std::locale" = type { ptr }
%"class.std::basic_istream" = type { ptr, i64, %"class.std::basic_ios" }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl" = type { %"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" }
%"struct.std::_Vector_base<double, std::allocator<double>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator.0" = type { i8 }
%"class.std::__cxx11::basic_ostringstream" = type { %"class.std::basic_ostream.base", %"class.std::__cxx11::basic_stringbuf", %"class.std::basic_ios" }
%"class.std::basic_ostream.base" = type { ptr }
%"class.std::__cxx11::basic_stringbuf" = type { %"class.std::basic_streambuf", i32, %"class.std::__cxx11::basic_string" }
%"class.std::basic_streambuf" = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, %"class.std::locale" }
%"class.__gnu_cxx::__normal_iterator" = type { ptr }
%"class.std::basic_ifstream" = type { %"class.std::basic_istream.base", %"class.std::basic_filebuf", %"class.std::basic_ios" }
%"class.std::basic_istream.base" = type { ptr, i64 }
%"class.std::basic_filebuf" = type { %"class.std::basic_streambuf", %union.pthread_mutex_t, %"class.std::__basic_file", i32, %struct.__mbstate_t, %struct.__mbstate_t, %struct.__mbstate_t, ptr, i64, i8, i8, i8, i8, ptr, ptr, i8, ptr, ptr, i64, ptr, ptr }
%union.pthread_mutex_t = type { %struct.__pthread_mutex_s }
%struct.__pthread_mutex_s = type { i32, i32, i32, i32, i32, i16, i16, %struct.__pthread_internal_list }
%struct.__pthread_internal_list = type { ptr, ptr }
%"class.std::__basic_file" = type <{ ptr, i8, [7 x i8] }>
%struct.__mbstate_t = type { i32, %union.anon.3 }
%union.anon.3 = type { i32 }
%"class.std::vector.4" = type { %"struct.std::_Vector_base.5" }
%"struct.std::_Vector_base.5" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter *, std::allocator<sptk::SecondOrderDigitalFilter *>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::vector.9" = type { %"struct.std::_Vector_base.10" }
%"struct.std::_Vector_base.10" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl" = type { %"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl_data" }
%"struct.std::_Vector_base<sptk::SecondOrderDigitalFilter::Buffer, std::allocator<sptk::SecondOrderDigitalFilter::Buffer>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::allocator.11" = type { i8 }
%"class.__gnu_cxx::__normal_iterator.14" = type { ptr }

@.str = external hidden unnamed_addr constant [8 x i8], align 1
@ya_optarg = external local_unnamed_addr global ptr, align 8
@.str.1 = external hidden unnamed_addr constant [57 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [61 x i8], align 1
@ya_optind = external local_unnamed_addr global i32, align 4
@.str.4 = external hidden unnamed_addr constant [61 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [61 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [61 x i8], align 1
@_ZSt4cout = external global %"class.std::basic_ostream", align 8
@_ZSt4cerr = external global %"class.std::basic_ostream", align 8
@.str.7 = external hidden unnamed_addr constant [51 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [51 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [18 x i8], align 1
@_ZSt3cin = external global %"class.std::basic_istream", align 8
@.str.12 = external hidden unnamed_addr constant [42 x i8], align 1
@_ZTISt9exception = external constant ptr
@.str.13 = external hidden unnamed_addr constant [46 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [44 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [18 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef range(i32 0, 2) i32 @main(i32 noundef %0, ptr noundef %1) local_unnamed_addr #0 personality ptr @__gxx_personality_v0 {
  %3 = alloca double, align 8
  %4 = alloca %"class.std::vector", align 8
  %5 = alloca %"class.std::vector", align 8
  %6 = alloca %"class.std::vector", align 8
  %7 = alloca %"class.std::vector", align 8
  %8 = alloca %"class.std::__cxx11::basic_string", align 8
  %9 = alloca %"class.std::allocator.0", align 1
  %10 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %11 = alloca %"class.std::__cxx11::basic_string", align 8
  %12 = alloca %"class.std::allocator.0", align 1
  %13 = alloca double, align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::allocator.0", align 1
  %16 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::allocator.0", align 1
  %19 = alloca double, align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::allocator.0", align 1
  %22 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %23 = alloca %"class.std::__cxx11::basic_string", align 8
  %24 = alloca %"class.std::allocator.0", align 1
  %25 = alloca double, align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::allocator.0", align 1
  %28 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca %"class.std::allocator.0", align 1
  %31 = alloca double, align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::allocator.0", align 1
  %34 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca %"class.std::allocator.0", align 1
  %37 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %38 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %39 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::allocator.0", align 1
  %42 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %43 = alloca %"class.__gnu_cxx::__normal_iterator", align 8
  %44 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::allocator.0", align 1
  %47 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca %"class.std::allocator.0", align 1
  %50 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::allocator.0", align 1
  %53 = alloca %"class.std::basic_ifstream", align 8
  %54 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::allocator.0", align 1
  %57 = alloca i32, align 4
  %58 = alloca i32, align 4
  %59 = alloca %"class.std::vector.4", align 8
  %60 = alloca %"class.std::vector.9", align 8
  %61 = alloca %"class.std::allocator.11", align 1
  %62 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::allocator.0", align 1
  %65 = alloca ptr, align 8
  %66 = alloca ptr, align 8
  %67 = alloca ptr, align 8
  %68 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::allocator.0", align 1
  %71 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %72 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %73 = alloca double, align 8
  %74 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::allocator.0", align 1
  %77 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %78 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %79 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::allocator.0", align 1
  %82 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %83 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %84 = alloca %"class.std::__cxx11::basic_ostringstream", align 8
  %85 = alloca %"class.std::__cxx11::basic_string", align 8
  %86 = alloca %"class.std::allocator.0", align 1
  %87 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %88 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %89 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  %90 = alloca %"class.__gnu_cxx::__normal_iterator.14", align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %3) #11
  store double 1.000000e+01, ptr %3, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %4) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %5) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %6) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %7) #11
  call void @_ZNSt6vectorIdSaIdEEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  br label %91

91:                                               ; preds = %.backedge, %2
  %92 = invoke i32 @ya_getopt_long(i32 noundef %0, ptr noundef %1, ptr noundef nonnull @.str, ptr noundef null, ptr noundef null)
          to label %93 unwind label %.loopexit379

93:                                               ; preds = %91
  switch i32 %92, label %258 [
    i32 -1, label %260
    i32 115, label %94
    i32 112, label %123
    i32 122, label %190
    i32 104, label %257
  ]

.loopexit379:                                     ; preds = %91
  %lpad.loopexit = landingpad { ptr, i32 }
          cleanup
  br label %259

.loopexit.split-lp:                               ; preds = %257, %258
  %lpad.loopexit.split-lp = landingpad { ptr, i32 }
          cleanup
  br label %259

94:                                               ; preds = %93
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %8) #11
  %95 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %9) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef %95, ptr noundef nonnull align 1 dereferenceable(1) %9)
          to label %96 unwind label %107

96:                                               ; preds = %94
  %97 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %8, ptr noundef nonnull %3)
          to label %98 unwind label %109

98:                                               ; preds = %96
  %99 = load double, ptr %3, align 8
  %100 = fcmp ugt double %99, 0.000000e+00
  %.not262 = select i1 %97, i1 %100, i1 false
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %9) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #11
  br i1 %.not262, label %.backedge, label %101

.backedge:                                        ; preds = %98, %.thread335, %.thread346
  br label %91

101:                                              ; preds = %98
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %10) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %10)
          to label %102 unwind label %112

102:                                              ; preds = %101
  %103 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %10, ptr noundef nonnull @.str.1)
          to label %104 unwind label %114

104:                                              ; preds = %102
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %11) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %12) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %12)
          to label %105 unwind label %116

105:                                              ; preds = %104
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %11, ptr noundef nonnull align 8 dereferenceable(112) %10)
          to label %106 unwind label %118

106:                                              ; preds = %105
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %10) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %10) #11
  br label %.thread351

107:                                              ; preds = %94
  %108 = landingpad { ptr, i32 }
          cleanup
  br label %111

109:                                              ; preds = %96
  %110 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %8) #11
  br label %111

111:                                              ; preds = %109, %107
  %.pn259 = phi { ptr, i32 } [ %110, %109 ], [ %108, %107 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %9) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %9) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %8) #11
  br label %259

112:                                              ; preds = %101
  %113 = landingpad { ptr, i32 }
          cleanup
  br label %122

114:                                              ; preds = %102
  %115 = landingpad { ptr, i32 }
          cleanup
  br label %121

116:                                              ; preds = %104
  %117 = landingpad { ptr, i32 }
          cleanup
  br label %120

118:                                              ; preds = %105
  %119 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %11) #11
  br label %120

120:                                              ; preds = %118, %116
  %.pn263 = phi { ptr, i32 } [ %119, %118 ], [ %117, %116 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %12) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %12) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %11) #11
  br label %121

121:                                              ; preds = %120, %114
  %.pn263.pn = phi { ptr, i32 } [ %.pn263, %120 ], [ %115, %114 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %10) #11
  br label %122

122:                                              ; preds = %121, %112
  %.pn263.pn.pn = phi { ptr, i32 } [ %.pn263.pn, %121 ], [ %113, %112 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %10) #11
  br label %259

123:                                              ; preds = %93
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %13) #11
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %14) #11
  %124 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %15) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef %124, ptr noundef nonnull align 1 dereferenceable(1) %15)
          to label %125 unwind label %135

125:                                              ; preds = %123
  %126 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull %13)
          to label %127 unwind label %137

127:                                              ; preds = %125
  %128 = load double, ptr %13, align 8
  %129 = fcmp ugt double %128, 0.000000e+00
  %.not245 = select i1 %126, i1 %129, i1 false
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %15) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #11
  br i1 %.not245, label %151, label %130

130:                                              ; preds = %127
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %16) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %16)
          to label %131 unwind label %140

131:                                              ; preds = %130
  %132 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull @.str.3)
          to label %133 unwind label %142

133:                                              ; preds = %131
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %17) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %18) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %18)
          to label %134 unwind label %144

134:                                              ; preds = %133
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef nonnull align 8 dereferenceable(112) %16)
          to label %.thread331 unwind label %146

.thread331:                                       ; preds = %134
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %16) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %16) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #11
  br label %.thread351

135:                                              ; preds = %123
  %136 = landingpad { ptr, i32 }
          cleanup
  br label %139

137:                                              ; preds = %125
  %138 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #11
  br label %139

139:                                              ; preds = %137, %135
  %.pn242 = phi { ptr, i32 } [ %138, %137 ], [ %136, %135 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %15) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %15) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #11
  br label %189

140:                                              ; preds = %130
  %141 = landingpad { ptr, i32 }
          cleanup
  br label %150

142:                                              ; preds = %131
  %143 = landingpad { ptr, i32 }
          cleanup
  br label %149

144:                                              ; preds = %133
  %145 = landingpad { ptr, i32 }
          cleanup
  br label %148

146:                                              ; preds = %134
  %147 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #11
  br label %148

148:                                              ; preds = %146, %144
  %.pn254 = phi { ptr, i32 } [ %147, %146 ], [ %145, %144 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %18) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %18) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %17) #11
  br label %149

149:                                              ; preds = %148, %142
  %.pn254.pn = phi { ptr, i32 } [ %.pn254, %148 ], [ %143, %142 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %16) #11
  br label %150

150:                                              ; preds = %149, %140
  %.pn254.pn.pn = phi { ptr, i32 } [ %.pn254.pn, %149 ], [ %141, %140 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %16) #11
  br label %189

151:                                              ; preds = %127
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %19) #11
  %152 = load i32, ptr @ya_optind, align 4, !tbaa !11
  %.not246 = icmp slt i32 %152, %0
  br i1 %.not246, label %153, label %.critedge325.thread

153:                                              ; preds = %151
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %20) #11
  %154 = sext i32 %152 to i64
  %155 = getelementptr inbounds ptr, ptr %1, i64 %154
  %156 = load ptr, ptr %155, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %21) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef %156, ptr noundef nonnull align 1 dereferenceable(1) %21)
          to label %157 unwind label %165

157:                                              ; preds = %153
  %158 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull %19)
          to label %.critedge325 unwind label %167

.critedge325:                                     ; preds = %157
  %159 = load double, ptr %19, align 8
  %160 = fcmp ugt double %159, 0.000000e+00
  %.ph.not = select i1 %158, i1 %160, i1 false
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %21) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #11
  br i1 %.ph.not, label %181, label %.critedge325.thread

.critedge325.thread:                              ; preds = %151, %.critedge325
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %22) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %22)
          to label %161 unwind label %170

161:                                              ; preds = %.critedge325.thread
  %162 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull @.str.4)
          to label %163 unwind label %172

163:                                              ; preds = %161
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %23) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %24) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %24)
          to label %164 unwind label %174

164:                                              ; preds = %163
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %23, ptr noundef nonnull align 8 dereferenceable(112) %22)
          to label %188 unwind label %176

165:                                              ; preds = %153
  %166 = landingpad { ptr, i32 }
          cleanup
  br label %169

167:                                              ; preds = %157
  %168 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #11
  br label %169

169:                                              ; preds = %165, %167
  %.pn247 = phi { ptr, i32 } [ %168, %167 ], [ %166, %165 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %21) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %21) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %20) #11
  br label %187

170:                                              ; preds = %.critedge325.thread
  %171 = landingpad { ptr, i32 }
          cleanup
  br label %180

172:                                              ; preds = %161
  %173 = landingpad { ptr, i32 }
          cleanup
  br label %179

174:                                              ; preds = %163
  %175 = landingpad { ptr, i32 }
          cleanup
  br label %178

176:                                              ; preds = %164
  %177 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #11
  br label %178

178:                                              ; preds = %176, %174
  %.pn249 = phi { ptr, i32 } [ %177, %176 ], [ %175, %174 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #11
  br label %179

179:                                              ; preds = %178, %172
  %.pn249.pn = phi { ptr, i32 } [ %.pn249, %178 ], [ %173, %172 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %22) #11
  br label %180

180:                                              ; preds = %179, %170
  %.pn249.pn.pn = phi { ptr, i32 } [ %.pn249.pn, %179 ], [ %171, %170 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %22) #11
  br label %187

181:                                              ; preds = %.critedge325
  %182 = load i32, ptr @ya_optind, align 4, !tbaa !11
  %183 = add nsw i32 %182, 1
  store i32 %183, ptr @ya_optind, align 4, !tbaa !11
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %4, ptr noundef nonnull align 8 dereferenceable(8) %13)
          to label %184 unwind label %185

184:                                              ; preds = %181
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %5, ptr noundef nonnull align 8 dereferenceable(8) %19)
          to label %.thread335 unwind label %185

.thread335:                                       ; preds = %184
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #11
  br label %.backedge

185:                                              ; preds = %184, %181
  %186 = landingpad { ptr, i32 }
          cleanup
  br label %187

187:                                              ; preds = %169, %185, %180
  %.pn249.pn.pn.pn = phi { ptr, i32 } [ %.pn249.pn.pn, %180 ], [ %186, %185 ], [ %.pn247, %169 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #11
  br label %189

188:                                              ; preds = %164
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %23) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %24) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %24) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %23) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %22) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %22) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %19) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #11
  br label %.thread351

189:                                              ; preds = %187, %150, %139
  %.pn254.pn.pn.pn = phi { ptr, i32 } [ %.pn254.pn.pn, %150 ], [ %.pn249.pn.pn.pn, %187 ], [ %.pn242, %139 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %13) #11
  br label %259

190:                                              ; preds = %93
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %25) #11
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #11
  %191 = load ptr, ptr @ya_optarg, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %27) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %27) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef %191, ptr noundef nonnull align 1 dereferenceable(1) %27)
          to label %192 unwind label %202

192:                                              ; preds = %190
  %193 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull %25)
          to label %194 unwind label %204

194:                                              ; preds = %192
  %195 = load double, ptr %25, align 8
  %196 = fcmp ugt double %195, 0.000000e+00
  %.not229 = select i1 %193, i1 %196, i1 false
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %27) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %27) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #11
  br i1 %.not229, label %218, label %197

197:                                              ; preds = %194
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %28) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %28)
          to label %198 unwind label %207

198:                                              ; preds = %197
  %199 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %28, ptr noundef nonnull @.str.5)
          to label %200 unwind label %209

200:                                              ; preds = %198
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %29) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %30) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %30)
          to label %201 unwind label %211

201:                                              ; preds = %200
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef nonnull align 8 dereferenceable(112) %28)
          to label %.thread342 unwind label %213

.thread342:                                       ; preds = %201
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %30) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %28) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %28) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #11
  br label %.thread351

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

204:                                              ; preds = %192
  %205 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #11
  br label %206

206:                                              ; preds = %204, %202
  %.pn = phi { ptr, i32 } [ %205, %204 ], [ %203, %202 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %27) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %27) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #11
  br label %256

207:                                              ; preds = %197
  %208 = landingpad { ptr, i32 }
          cleanup
  br label %217

209:                                              ; preds = %198
  %210 = landingpad { ptr, i32 }
          cleanup
  br label %216

211:                                              ; preds = %200
  %212 = landingpad { ptr, i32 }
          cleanup
  br label %215

213:                                              ; preds = %201
  %214 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #11
  br label %215

215:                                              ; preds = %213, %211
  %.pn237 = phi { ptr, i32 } [ %214, %213 ], [ %212, %211 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %30) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %30) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %29) #11
  br label %216

216:                                              ; preds = %215, %209
  %.pn237.pn = phi { ptr, i32 } [ %.pn237, %215 ], [ %210, %209 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %28) #11
  br label %217

217:                                              ; preds = %216, %207
  %.pn237.pn.pn = phi { ptr, i32 } [ %.pn237.pn, %216 ], [ %208, %207 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %28) #11
  br label %256

218:                                              ; preds = %194
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %31) #11
  %219 = load i32, ptr @ya_optind, align 4, !tbaa !11
  %.not = icmp slt i32 %219, %0
  br i1 %.not, label %220, label %.critedge329.thread

220:                                              ; preds = %218
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #11
  %221 = sext i32 %219 to i64
  %222 = getelementptr inbounds ptr, ptr %1, i64 %221
  %223 = load ptr, ptr %222, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %33) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %33) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef %223, ptr noundef nonnull align 1 dereferenceable(1) %33)
          to label %224 unwind label %232

224:                                              ; preds = %220
  %225 = invoke noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull %31)
          to label %.critedge329 unwind label %234

.critedge329:                                     ; preds = %224
  %226 = load double, ptr %31, align 8
  %227 = fcmp ugt double %226, 0.000000e+00
  %.ph340.not = select i1 %225, i1 %227, i1 false
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %33) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #11
  br i1 %.ph340.not, label %248, label %.critedge329.thread

.critedge329.thread:                              ; preds = %218, %.critedge329
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %34) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %34)
          to label %228 unwind label %237

228:                                              ; preds = %.critedge329.thread
  %229 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %34, ptr noundef nonnull @.str.6)
          to label %230 unwind label %239

230:                                              ; preds = %228
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %35) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %36) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %36) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %36)
          to label %231 unwind label %241

231:                                              ; preds = %230
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull align 8 dereferenceable(112) %34)
          to label %255 unwind label %243

232:                                              ; preds = %220
  %233 = landingpad { ptr, i32 }
          cleanup
  br label %236

234:                                              ; preds = %224
  %235 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #11
  br label %236

236:                                              ; preds = %232, %234
  %.pn230 = phi { ptr, i32 } [ %235, %234 ], [ %233, %232 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %33) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %33) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #11
  br label %254

237:                                              ; preds = %.critedge329.thread
  %238 = landingpad { ptr, i32 }
          cleanup
  br label %247

239:                                              ; preds = %228
  %240 = landingpad { ptr, i32 }
          cleanup
  br label %246

241:                                              ; preds = %230
  %242 = landingpad { ptr, i32 }
          cleanup
  br label %245

243:                                              ; preds = %231
  %244 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #11
  br label %245

245:                                              ; preds = %243, %241
  %.pn232 = phi { ptr, i32 } [ %244, %243 ], [ %242, %241 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %36) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %36) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #11
  br label %246

246:                                              ; preds = %245, %239
  %.pn232.pn = phi { ptr, i32 } [ %.pn232, %245 ], [ %240, %239 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %34) #11
  br label %247

247:                                              ; preds = %246, %237
  %.pn232.pn.pn = phi { ptr, i32 } [ %.pn232.pn, %246 ], [ %238, %237 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %34) #11
  br label %254

248:                                              ; preds = %.critedge329
  %249 = load i32, ptr @ya_optind, align 4, !tbaa !11
  %250 = add nsw i32 %249, 1
  store i32 %250, ptr @ya_optind, align 4, !tbaa !11
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %6, ptr noundef nonnull align 8 dereferenceable(8) %25)
          to label %251 unwind label %252

251:                                              ; preds = %248
  invoke void @_ZNSt6vectorIdSaIdEE9push_backERKd(ptr noundef nonnull align 8 dereferenceable(24) %7, ptr noundef nonnull align 8 dereferenceable(8) %31)
          to label %.thread346 unwind label %252

.thread346:                                       ; preds = %251
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #11
  br label %.backedge

252:                                              ; preds = %251, %248
  %253 = landingpad { ptr, i32 }
          cleanup
  br label %254

254:                                              ; preds = %236, %252, %247
  %.pn232.pn.pn.pn = phi { ptr, i32 } [ %.pn232.pn.pn, %247 ], [ %253, %252 ], [ %.pn230, %236 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #11
  br label %256

255:                                              ; preds = %231
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %36) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %36) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %35) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %34) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %34) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %31) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #11
  br label %.thread351

256:                                              ; preds = %254, %217, %206
  %.pn237.pn.pn.pn = phi { ptr, i32 } [ %.pn237.pn.pn, %217 ], [ %.pn232.pn.pn.pn, %254 ], [ %.pn, %206 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %25) #11
  br label %259

257:                                              ; preds = %93
  invoke void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef nonnull @_ZSt4cout)
          to label %.thread351 unwind label %.loopexit.split-lp

258:                                              ; preds = %93
  invoke void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef nonnull @_ZSt4cerr)
          to label %.thread351 unwind label %.loopexit.split-lp

259:                                              ; preds = %.loopexit379, %.loopexit.split-lp, %256, %189, %122, %111
  %.pn267 = phi { ptr, i32 } [ %.pn237.pn.pn.pn, %256 ], [ %.pn254.pn.pn.pn, %189 ], [ %.pn263.pn.pn, %122 ], [ %.pn259, %111 ], [ %lpad.loopexit, %.loopexit379 ], [ %lpad.loopexit.split-lp, %.loopexit.split-lp ]
  %.24 = extractvalue { ptr, i32 } %.pn267, 0
  %.24150 = extractvalue { ptr, i32 } %.pn267, 1
  br label %657

260:                                              ; preds = %93
  %261 = load double, ptr %3, align 8, !tbaa !5
  %262 = fmul double %261, 1.000000e+03
  %263 = fmul double %262, 5.000000e-01
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %37) #11
  %264 = call ptr @_ZNSt6vectorIdSaIdEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  store ptr %264, ptr %37, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %38) #11
  %265 = call ptr @_ZNSt6vectorIdSaIdEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  store ptr %265, ptr %38, align 8
  %266 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef nonnull align 8 dereferenceable(8) %38) #11
  br i1 %266, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %260, %286
  %267 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %37) #11
  %268 = load double, ptr %267, align 8, !tbaa !5
  %269 = fcmp ugt double %263, %268
  br i1 %269, label %286, label %270

270:                                              ; preds = %.lr.ph
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %39) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39)
          to label %271 unwind label %275

271:                                              ; preds = %270
  %272 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %39, ptr noundef nonnull @.str.7)
          to label %273 unwind label %277

273:                                              ; preds = %271
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %40) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %41) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %41)
          to label %274 unwind label %279

274:                                              ; preds = %273
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(112) %39)
          to label %.thread361 unwind label %281

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

277:                                              ; preds = %271
  %278 = landingpad { ptr, i32 }
          cleanup
  br label %284

279:                                              ; preds = %273
  %280 = landingpad { ptr, i32 }
          cleanup
  br label %283

281:                                              ; preds = %274
  %282 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #11
  br label %283

283:                                              ; preds = %281, %279
  %.pn269 = phi { ptr, i32 } [ %282, %281 ], [ %280, %279 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #11
  br label %284

284:                                              ; preds = %283, %277
  %.pn269.pn = phi { ptr, i32 } [ %.pn269, %283 ], [ %278, %277 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39) #11
  br label %285

285:                                              ; preds = %284, %275
  %.pn269.pn.pn = phi { ptr, i32 } [ %.pn269.pn, %284 ], [ %276, %275 ]
  %.27 = extractvalue { ptr, i32 } %.pn269.pn.pn, 0
  %.27153 = extractvalue { ptr, i32 } %.pn269.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %39) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %37) #11
  br label %657

.thread361:                                       ; preds = %274
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %41) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %41) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %39) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %39) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %37) #11
  br label %.thread351

286:                                              ; preds = %.lr.ph
  %287 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %37) #11
  %288 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %37, ptr noundef nonnull align 8 dereferenceable(8) %38) #11
  br i1 %288, label %.lr.ph, label %._crit_edge

._crit_edge:                                      ; preds = %286, %260
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %37) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %42) #11
  %289 = call ptr @_ZNSt6vectorIdSaIdEE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  store ptr %289, ptr %42, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %43) #11
  %290 = call ptr @_ZNSt6vectorIdSaIdEE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  store ptr %290, ptr %43, align 8
  %291 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %42, ptr noundef nonnull align 8 dereferenceable(8) %43) #11
  br i1 %291, label %.lr.ph390, label %._crit_edge391

.lr.ph390:                                        ; preds = %._crit_edge, %311
  %292 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %42) #11
  %293 = load double, ptr %292, align 8, !tbaa !5
  %294 = fcmp ugt double %263, %293
  br i1 %294, label %311, label %295

295:                                              ; preds = %.lr.ph390
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %44) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %44)
          to label %296 unwind label %300

296:                                              ; preds = %295
  %297 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %44, ptr noundef nonnull @.str.8)
          to label %298 unwind label %302

298:                                              ; preds = %296
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %45) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %46) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %46)
          to label %299 unwind label %304

299:                                              ; preds = %298
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull align 8 dereferenceable(112) %44)
          to label %.thread366 unwind label %306

300:                                              ; preds = %295
  %301 = landingpad { ptr, i32 }
          cleanup
  br label %310

302:                                              ; preds = %296
  %303 = landingpad { ptr, i32 }
          cleanup
  br label %309

304:                                              ; preds = %298
  %305 = landingpad { ptr, i32 }
          cleanup
  br label %308

306:                                              ; preds = %299
  %307 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #11
  br label %308

308:                                              ; preds = %306, %304
  %.pn273 = phi { ptr, i32 } [ %307, %306 ], [ %305, %304 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #11
  br label %309

309:                                              ; preds = %308, %302
  %.pn273.pn = phi { ptr, i32 } [ %.pn273, %308 ], [ %303, %302 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %44) #11
  br label %310

310:                                              ; preds = %309, %300
  %.pn273.pn.pn = phi { ptr, i32 } [ %.pn273.pn, %309 ], [ %301, %300 ]
  %.30 = extractvalue { ptr, i32 } %.pn273.pn.pn, 0
  %.30156 = extractvalue { ptr, i32 } %.pn273.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %44) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %43) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %42) #11
  br label %657

.thread366:                                       ; preds = %299
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %46) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %46) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %44) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %44) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %43) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %42) #11
  br label %.thread351

311:                                              ; preds = %.lr.ph390
  %312 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPdSt6vectorIdSaIdEEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %42) #11
  %313 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPdSt6vectorIdSaIdEEEEbRKNS_17__normal_iteratorIT_T0_EESA_(ptr noundef nonnull align 8 dereferenceable(8) %42, ptr noundef nonnull align 8 dereferenceable(8) %43) #11
  br i1 %313, label %.lr.ph390, label %._crit_edge391

._crit_edge391:                                   ; preds = %311, %._crit_edge
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %43) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %42) #11
  %314 = load i32, ptr @ya_optind, align 4, !tbaa !11
  %315 = sub nsw i32 %0, %314
  %316 = icmp sgt i32 %315, 1
  br i1 %316, label %317, label %334

317:                                              ; preds = %._crit_edge391
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %47) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %47)
          to label %318 unwind label %323

318:                                              ; preds = %317
  %319 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %47, ptr noundef nonnull @.str.9)
          to label %320 unwind label %325

320:                                              ; preds = %318
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %48) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %49) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %49)
          to label %321 unwind label %327

321:                                              ; preds = %320
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef nonnull align 8 dereferenceable(112) %47)
          to label %322 unwind label %329

322:                                              ; preds = %321
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %49) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %47) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %47) #11
  br label %.thread351

323:                                              ; preds = %317
  %324 = landingpad { ptr, i32 }
          cleanup
  br label %333

325:                                              ; preds = %318
  %326 = landingpad { ptr, i32 }
          cleanup
  br label %332

327:                                              ; preds = %320
  %328 = landingpad { ptr, i32 }
          cleanup
  br label %331

329:                                              ; preds = %321
  %330 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #11
  br label %331

331:                                              ; preds = %329, %327
  %.pn320 = phi { ptr, i32 } [ %330, %329 ], [ %328, %327 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %49) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %49) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %48) #11
  br label %332

332:                                              ; preds = %331, %325
  %.pn320.pn = phi { ptr, i32 } [ %.pn320, %331 ], [ %326, %325 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %47) #11
  br label %333

333:                                              ; preds = %332, %323
  %.pn320.pn.pn = phi { ptr, i32 } [ %.pn320.pn, %332 ], [ %324, %323 ]
  %.33 = extractvalue { ptr, i32 } %.pn320.pn.pn, 0
  %.33159 = extractvalue { ptr, i32 } %.pn320.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %47) #11
  br label %657

334:                                              ; preds = %._crit_edge391
  %335 = icmp eq i32 %314, %0
  br i1 %335, label %340, label %336

336:                                              ; preds = %334
  %337 = sext i32 %314 to i64
  %338 = getelementptr inbounds ptr, ptr %1, i64 %337
  %339 = load ptr, ptr %338, align 8, !tbaa !9
  br label %340

340:                                              ; preds = %334, %336
  %341 = phi ptr [ %339, %336 ], [ null, %334 ]
  %342 = invoke noundef zeroext i1 @_ZN4sptk13SetBinaryModeEv()
          to label %343 unwind label %350

343:                                              ; preds = %340
  br i1 %342, label %365, label %344

344:                                              ; preds = %343
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %50) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %50)
          to label %345 unwind label %354

345:                                              ; preds = %344
  %346 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %50, ptr noundef nonnull @.str.10)
          to label %347 unwind label %356

347:                                              ; preds = %345
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %51) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %52) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %52) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %52)
          to label %348 unwind label %358

348:                                              ; preds = %347
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef nonnull align 8 dereferenceable(112) %50)
          to label %349 unwind label %360

349:                                              ; preds = %348
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %52) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %52) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %50) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %50) #11
  br label %.thread351

350:                                              ; preds = %340
  %351 = landingpad { ptr, i32 }
          cleanup
  %352 = extractvalue { ptr, i32 } %351, 0
  %353 = extractvalue { ptr, i32 } %351, 1
  br label %657

354:                                              ; preds = %344
  %355 = landingpad { ptr, i32 }
          cleanup
  br label %364

356:                                              ; preds = %345
  %357 = landingpad { ptr, i32 }
          cleanup
  br label %363

358:                                              ; preds = %347
  %359 = landingpad { ptr, i32 }
          cleanup
  br label %362

360:                                              ; preds = %348
  %361 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #11
  br label %362

362:                                              ; preds = %360, %358
  %.pn277 = phi { ptr, i32 } [ %361, %360 ], [ %359, %358 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %52) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %52) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #11
  br label %363

363:                                              ; preds = %362, %356
  %.pn277.pn = phi { ptr, i32 } [ %.pn277, %362 ], [ %357, %356 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %50) #11
  br label %364

364:                                              ; preds = %363, %354
  %.pn277.pn.pn = phi { ptr, i32 } [ %.pn277.pn, %363 ], [ %355, %354 ]
  %.36 = extractvalue { ptr, i32 } %.pn277.pn.pn, 0
  %.36162 = extractvalue { ptr, i32 } %.pn277.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %50) #11
  br label %657

365:                                              ; preds = %343
  call void @llvm.lifetime.start.p0(i64 520, ptr nonnull %53) #11
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(256) %53)
          to label %366 unwind label %384

366:                                              ; preds = %365
  %.not281 = icmp eq ptr %341, null
  br i1 %.not281, label %403, label %367

367:                                              ; preds = %366
  %368 = call noundef i32 @_ZStorSt13_Ios_OpenmodeS_(i32 noundef 8, i32 noundef 4)
  invoke void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256) %53, ptr noundef nonnull %341, i32 noundef %368)
          to label %369 unwind label %388

369:                                              ; preds = %367
  %370 = load ptr, ptr %53, align 8, !tbaa !13
  %371 = getelementptr i8, ptr %370, i64 -24
  %372 = load i64, ptr %371, align 8
  %373 = getelementptr inbounds i8, ptr %53, i64 %372
  %374 = invoke noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv(ptr noundef nonnull align 8 dereferenceable(264) %373)
          to label %375 unwind label %388

375:                                              ; preds = %369
  br i1 %374, label %376, label %403

376:                                              ; preds = %375
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %54) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %54)
          to label %377 unwind label %392

377:                                              ; preds = %376
  %378 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %54, ptr noundef nonnull @.str.11)
          to label %379 unwind label %394

379:                                              ; preds = %377
  %380 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %378, ptr noundef nonnull %341)
          to label %381 unwind label %394

381:                                              ; preds = %379
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %55) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %56) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %56) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %56)
          to label %382 unwind label %396

382:                                              ; preds = %381
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull align 8 dereferenceable(112) %54)
          to label %383 unwind label %398

383:                                              ; preds = %382
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %56) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %56) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %54) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %54) #11
  br label %654

384:                                              ; preds = %365
  %385 = landingpad { ptr, i32 }
          cleanup
  %386 = extractvalue { ptr, i32 } %385, 0
  %387 = extractvalue { ptr, i32 } %385, 1
  br label %656

388:                                              ; preds = %369, %367
  %389 = landingpad { ptr, i32 }
          cleanup
  %390 = extractvalue { ptr, i32 } %389, 0
  %391 = extractvalue { ptr, i32 } %389, 1
  br label %655

392:                                              ; preds = %376
  %393 = landingpad { ptr, i32 }
          cleanup
  br label %402

394:                                              ; preds = %379, %377
  %395 = landingpad { ptr, i32 }
          cleanup
  br label %401

396:                                              ; preds = %381
  %397 = landingpad { ptr, i32 }
          cleanup
  br label %400

398:                                              ; preds = %382
  %399 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #11
  br label %400

400:                                              ; preds = %398, %396
  %.pn316 = phi { ptr, i32 } [ %399, %398 ], [ %397, %396 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %56) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %56) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #11
  br label %401

401:                                              ; preds = %400, %394
  %.pn316.pn = phi { ptr, i32 } [ %.pn316, %400 ], [ %395, %394 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %54) #11
  br label %402

402:                                              ; preds = %401, %392
  %.pn316.pn.pn = phi { ptr, i32 } [ %.pn316.pn, %401 ], [ %393, %392 ]
  %.39 = extractvalue { ptr, i32 } %.pn316.pn.pn, 0
  %.39165 = extractvalue { ptr, i32 } %.pn316.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %54) #11
  br label %655

403:                                              ; preds = %375, %366
  %404 = call noundef zeroext i1 @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv(ptr noundef nonnull align 8 dereferenceable(256) %53)
  %405 = select i1 %404, ptr %53, ptr @_ZSt3cin
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %57) #11
  %406 = call noundef i64 @_ZNKSt6vectorIdSaIdEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  %407 = trunc i64 %406 to i32
  store i32 %407, ptr %57, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %58) #11
  %408 = call noundef i64 @_ZNKSt6vectorIdSaIdEE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  %409 = trunc i64 %408 to i32
  store i32 %409, ptr %58, align 4, !tbaa !11
  %410 = call noundef nonnull align 4 dereferenceable(4) ptr @_ZSt3maxIiERKT_S2_S2_(ptr noundef nonnull align 4 dereferenceable(4) %57, ptr noundef nonnull align 4 dereferenceable(4) %58)
  %411 = load i32, ptr %410, align 4, !tbaa !11
  %.fr = freeze i32 %411
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %59) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EEC2Ev(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %60) #11
  %412 = sext i32 %.fr to i64
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %61) #11
  call void @_ZNSaIN4sptk24SecondOrderDigitalFilter6BufferEEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %61) #11
  invoke void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EEC2EmRKS3_(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %412, ptr noundef nonnull align 1 dereferenceable(1) %61)
          to label %413 unwind label %421

413:                                              ; preds = %403
  call void @_ZNSt15__new_allocatorIN4sptk24SecondOrderDigitalFilter6BufferEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %61) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %61) #11
  %414 = icmp eq i32 %.fr, 0
  br i1 %414, label %415, label %.preheader378

.preheader378:                                    ; preds = %413
  %.not293392 = icmp sgt i32 %.fr, 0
  br i1 %.not293392, label %.lr.ph394.preheader, label %.thread368.thread

.thread368.thread:                                ; preds = %.preheader378
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %73) #11
  br label %.thread368.split.preheader

.lr.ph394.preheader:                              ; preds = %.preheader378
  %wide.trip.count = zext nneg i32 %.fr to i64
  br label %.lr.ph394

415:                                              ; preds = %413
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %62) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %62)
          to label %416 unwind label %425

416:                                              ; preds = %415
  %417 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %62, ptr noundef nonnull @.str.12)
          to label %418 unwind label %427

418:                                              ; preds = %416
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %63) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %64) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %64)
          to label %419 unwind label %429

419:                                              ; preds = %418
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(112) %62)
          to label %420 unwind label %431

420:                                              ; preds = %419
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %64) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %62) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %62) #11
  br label %651

421:                                              ; preds = %403
  %422 = landingpad { ptr, i32 }
          cleanup
  %423 = extractvalue { ptr, i32 } %422, 0
  %424 = extractvalue { ptr, i32 } %422, 1
  call void @_ZNSt15__new_allocatorIN4sptk24SecondOrderDigitalFilter6BufferEED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %61) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %61) #11
  br label %653

425:                                              ; preds = %415
  %426 = landingpad { ptr, i32 }
          cleanup
  br label %435

427:                                              ; preds = %416
  %428 = landingpad { ptr, i32 }
          cleanup
  br label %434

429:                                              ; preds = %418
  %430 = landingpad { ptr, i32 }
          cleanup
  br label %433

431:                                              ; preds = %419
  %432 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #11
  br label %433

433:                                              ; preds = %431, %429
  %.pn312 = phi { ptr, i32 } [ %432, %431 ], [ %430, %429 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %64) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %64) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #11
  br label %434

434:                                              ; preds = %433, %427
  %.pn312.pn = phi { ptr, i32 } [ %.pn312, %433 ], [ %428, %427 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %62) #11
  br label %435

435:                                              ; preds = %434, %425
  %.pn312.pn.pn = phi { ptr, i32 } [ %.pn312.pn, %434 ], [ %426, %425 ]
  %.42 = extractvalue { ptr, i32 } %.pn312.pn.pn, 0
  %.42168 = extractvalue { ptr, i32 } %.pn312.pn.pn, 1
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %62) #11
  br label %652

436:                                              ; preds = %491
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, %wide.trip.count
  br i1 %exitcond.not, label %.thread368, label %.lr.ph394, !llvm.loop !15

.lr.ph394:                                        ; preds = %.lr.ph394.preheader, %436
  %indvars.iv = phi i64 [ 0, %.lr.ph394.preheader ], [ %indvars.iv.next, %436 ]
  %437 = load i32, ptr %57, align 4, !tbaa !11
  %438 = sext i32 %437 to i64
  %439 = icmp slt i64 %indvars.iv, %438
  %440 = load i32, ptr %58, align 4
  %441 = sext i32 %440 to i64
  %442 = icmp slt i64 %indvars.iv, %441
  %or.cond = select i1 %439, i1 %442, i1 false
  br i1 %or.cond, label %443, label %461

443:                                              ; preds = %.lr.ph394
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %65) #11
  %444 = invoke noalias noundef nonnull dereferenceable(88) ptr @_Znwm(i64 noundef 88) #12
          to label %445 unwind label %456

445:                                              ; preds = %443
  %446 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %indvars.iv) #11
  %447 = load double, ptr %446, align 8, !tbaa !5
  %448 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %indvars.iv) #11
  %449 = load double, ptr %448, align 8, !tbaa !5
  %450 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6, i64 noundef %indvars.iv) #11
  %451 = load double, ptr %450, align 8, !tbaa !5
  %452 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %indvars.iv) #11
  %453 = load double, ptr %452, align 8, !tbaa !5
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1Eddddd(ptr noundef nonnull align 8 dereferenceable(81) %444, double noundef %447, double noundef %449, double noundef %451, double noundef %453, double noundef %262)
          to label %454 unwind label %458

454:                                              ; preds = %445
  store ptr %444, ptr %65, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %59, ptr noundef nonnull align 8 dereferenceable(8) %65)
          to label %455 unwind label %456

455:                                              ; preds = %454
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #11
  br label %491

456:                                              ; preds = %454, %443
  %457 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %460

458:                                              ; preds = %445
  %459 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZdlPvm(ptr noundef nonnull %444, i64 noundef 88) #13
  br label %460

460:                                              ; preds = %458, %456
  %.pn286 = phi { ptr, i32 } [ %457, %456 ], [ %459, %458 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %65) #11
  br label %601

461:                                              ; preds = %.lr.ph394
  br i1 %439, label %462, label %476

462:                                              ; preds = %461
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %66) #11
  %463 = invoke noalias noundef nonnull dereferenceable(88) ptr @_Znwm(i64 noundef 88) #12
          to label %464 unwind label %471

464:                                              ; preds = %462
  %465 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %4, i64 noundef %indvars.iv) #11
  %466 = load double, ptr %465, align 8, !tbaa !5
  %467 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %5, i64 noundef %indvars.iv) #11
  %468 = load double, ptr %467, align 8, !tbaa !5
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81) %463, i32 noundef 0, double noundef %466, double noundef %468, double noundef %262)
          to label %469 unwind label %473

469:                                              ; preds = %464
  store ptr %463, ptr %66, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %59, ptr noundef nonnull align 8 dereferenceable(8) %66)
          to label %470 unwind label %471

470:                                              ; preds = %469
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %66) #11
  br label %491

471:                                              ; preds = %469, %462
  %472 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %475

473:                                              ; preds = %464
  %474 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZdlPvm(ptr noundef nonnull %463, i64 noundef 88) #13
  br label %475

475:                                              ; preds = %473, %471
  %.pn284 = phi { ptr, i32 } [ %472, %471 ], [ %474, %473 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %66) #11
  br label %601

476:                                              ; preds = %461
  br i1 %442, label %477, label %491

477:                                              ; preds = %476
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %67) #11
  %478 = invoke noalias noundef nonnull dereferenceable(88) ptr @_Znwm(i64 noundef 88) #12
          to label %479 unwind label %486

479:                                              ; preds = %477
  %480 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %6, i64 noundef %indvars.iv) #11
  %481 = load double, ptr %480, align 8, !tbaa !5
  %482 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIdSaIdEEixEm(ptr noundef nonnull align 8 dereferenceable(24) %7, i64 noundef %indvars.iv) #11
  %483 = load double, ptr %482, align 8, !tbaa !5
  invoke void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81) %478, i32 noundef 1, double noundef %481, double noundef %483, double noundef %262)
          to label %484 unwind label %488

484:                                              ; preds = %479
  store ptr %478, ptr %67, align 8, !tbaa !9
  invoke void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE9push_backEOS2_(ptr noundef nonnull align 8 dereferenceable(24) %59, ptr noundef nonnull align 8 dereferenceable(8) %67)
          to label %485 unwind label %486

485:                                              ; preds = %484
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %67) #11
  br label %491

486:                                              ; preds = %484, %477
  %487 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %490

488:                                              ; preds = %479
  %489 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZdlPvm(ptr noundef nonnull %478, i64 noundef 88) #13
  br label %490

490:                                              ; preds = %488, %486
  %.pn282 = phi { ptr, i32 } [ %487, %486 ], [ %489, %488 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %67) #11
  br label %601

491:                                              ; preds = %470, %485, %476, %455
  %492 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE4backEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  %493 = load ptr, ptr %492, align 8, !tbaa !9
  %494 = call noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter7IsValidEv(ptr noundef nonnull align 8 dereferenceable(81) %493)
  br i1 %494, label %436, label %495

495:                                              ; preds = %491
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %68) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %68)
          to label %496 unwind label %504

496:                                              ; preds = %495
  %497 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %68, ptr noundef nonnull @.str.13)
          to label %498 unwind label %506

498:                                              ; preds = %496
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %69) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %70) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %70) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %70)
          to label %499 unwind label %508

499:                                              ; preds = %498
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(112) %68)
          to label %500 unwind label %510

500:                                              ; preds = %499
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %70) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %70) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %71) #11
  %501 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %501, ptr %71, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %72) #11
  %502 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %502, ptr %72, align 8
  %503 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %71, ptr noundef nonnull align 8 dereferenceable(8) %72) #11
  br i1 %503, label %.lr.ph396, label %._crit_edge397

504:                                              ; preds = %495
  %505 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %524

506:                                              ; preds = %496
  %507 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %523

508:                                              ; preds = %498
  %509 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %512

510:                                              ; preds = %499
  %511 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #11
  br label %512

512:                                              ; preds = %510, %508
  %.pn288 = phi { ptr, i32 } [ %511, %510 ], [ %509, %508 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %70) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %70) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #11
  br label %523

.lr.ph396:                                        ; preds = %500, %520
  %513 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %71) #11
  %514 = load ptr, ptr %513, align 8, !tbaa !9
  %515 = icmp eq ptr %514, null
  br i1 %515, label %520, label %516

516:                                              ; preds = %.lr.ph396
  %517 = load ptr, ptr %514, align 8, !tbaa !13
  %518 = getelementptr inbounds i8, ptr %517, i64 8
  %519 = load ptr, ptr %518, align 8
  call void %519(ptr noundef nonnull align 8 dereferenceable(81) %514) #11
  br label %520

520:                                              ; preds = %516, %.lr.ph396
  %521 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %71) #11
  %522 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %71, ptr noundef nonnull align 8 dereferenceable(8) %72) #11
  br i1 %522, label %.lr.ph396, label %._crit_edge397

523:                                              ; preds = %512, %506
  %.pn288.pn = phi { ptr, i32 } [ %.pn288, %512 ], [ %507, %506 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %68) #11
  br label %524

524:                                              ; preds = %523, %504
  %.pn288.pn.pn = phi { ptr, i32 } [ %.pn288.pn, %523 ], [ %505, %504 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %68) #11
  br label %601

._crit_edge397:                                   ; preds = %520, %500
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %72) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %71) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %68) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %68) #11
  br label %651

.thread368:                                       ; preds = %436
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %73) #11
  br i1 %.not293392, label %.thread368.split.us.preheader, label %.thread368.split.preheader

.thread368.split.preheader:                       ; preds = %.thread368.thread, %.thread368
  br label %.thread368.split

.thread368.split.us.preheader:                    ; preds = %.thread368
  %wide.trip.count444 = zext nneg i32 %.fr to i64
  br label %.thread368.split.us

.thread368.split.us:                              ; preds = %.thread368.split.us.preheader, %542
  %525 = invoke noundef zeroext i1 @_ZN4sptk10ReadStreamIdEEbPT_PSi(ptr noundef nonnull %73, ptr noundef nonnull %405)
          to label %526 unwind label %.split.us

526:                                              ; preds = %.thread368.split.us
  br i1 %525, label %.preheader.us, label %.loopexit

527:                                              ; preds = %532
  %indvars.iv.next442 = add nuw nsw i64 %indvars.iv441, 1
  %exitcond445.not = icmp eq i64 %indvars.iv.next442, %wide.trip.count444
  br i1 %exitcond445.not, label %..thread371.loopexit_crit_edge.us, label %.preheader.us, !llvm.loop !17

.preheader.us:                                    ; preds = %526, %527
  %indvars.iv441 = phi i64 [ %indvars.iv.next442, %527 ], [ 0, %526 ]
  %528 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %59, i64 noundef %indvars.iv441) #11
  %529 = load ptr, ptr %528, align 8, !tbaa !9
  %530 = call noundef nonnull align 8 dereferenceable(48) ptr @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %60, i64 noundef %indvars.iv441) #11
  %531 = invoke noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter3RunEPdPNS0_6BufferE(ptr noundef nonnull align 8 dereferenceable(81) %529, ptr noundef nonnull %73, ptr noundef nonnull %530)
          to label %532 unwind label %.split405.us

532:                                              ; preds = %.preheader.us
  br i1 %531, label %527, label %533

533:                                              ; preds = %532
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %74) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %74)
          to label %534 unwind label %.split408.us

534:                                              ; preds = %533
  %535 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %74, ptr noundef nonnull @.str.14)
          to label %536 unwind label %.split411.us

536:                                              ; preds = %534
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %75) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %76) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %76) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %76)
          to label %537 unwind label %.split414.us

537:                                              ; preds = %536
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull align 8 dereferenceable(112) %74)
          to label %538 unwind label %.split417.us

538:                                              ; preds = %537
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %76) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %76) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %77) #11
  %539 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %539, ptr %77, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %78) #11
  %540 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %540, ptr %78, align 8
  %541 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %77, ptr noundef nonnull align 8 dereferenceable(8) %78) #11
  br i1 %541, label %.lr.ph402.us, label %._crit_edge403.us

._crit_edge403.us:                                ; preds = %550, %538
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %78) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %77) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %74) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %74) #11
  br label %599

542:                                              ; preds = %..thread371.loopexit_crit_edge.us
  br i1 %554, label %.thread368.split.us, label %.split421.us, !llvm.loop !18

.lr.ph402.us:                                     ; preds = %538, %550
  %543 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %77) #11
  %544 = load ptr, ptr %543, align 8, !tbaa !9
  %545 = icmp eq ptr %544, null
  br i1 %545, label %550, label %546

546:                                              ; preds = %.lr.ph402.us
  %547 = load ptr, ptr %544, align 8, !tbaa !13
  %548 = getelementptr inbounds i8, ptr %547, i64 8
  %549 = load ptr, ptr %548, align 8
  call void %549(ptr noundef nonnull align 8 dereferenceable(81) %544) #11
  br label %550

550:                                              ; preds = %546, %.lr.ph402.us
  %551 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %77) #11
  %552 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %77, ptr noundef nonnull align 8 dereferenceable(8) %78) #11
  br i1 %552, label %.lr.ph402.us, label %._crit_edge403.us

..thread371.loopexit_crit_edge.us:                ; preds = %527
  %553 = load double, ptr %73, align 8, !tbaa !5
  %554 = invoke noundef zeroext i1 @_ZN4sptk11WriteStreamIdEEbT_PSo(double noundef %553, ptr noundef nonnull @_ZSt4cout)
          to label %542 unwind label %.split.us

.split.us:                                        ; preds = %..thread371.loopexit_crit_edge.us, %.thread368.split.us
  %555 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %600

.split405.us:                                     ; preds = %.preheader.us
  %556 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %600

.split408.us:                                     ; preds = %533
  %557 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %568

.split411.us:                                     ; preds = %534
  %558 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %567

.split414.us:                                     ; preds = %536
  %559 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %566

.split417.us:                                     ; preds = %537
  %560 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #11
  br label %566

.thread368.split:                                 ; preds = %.thread368.split.preheader, %569
  %561 = invoke noundef zeroext i1 @_ZN4sptk10ReadStreamIdEEbPT_PSi(ptr noundef nonnull %73, ptr noundef nonnull %405)
          to label %562 unwind label %.split

562:                                              ; preds = %.thread368.split
  br i1 %561, label %.preheader, label %.loopexit

.preheader:                                       ; preds = %562
  %563 = load double, ptr %73, align 8, !tbaa !5
  %564 = invoke noundef zeroext i1 @_ZN4sptk11WriteStreamIdEEbT_PSo(double noundef %563, ptr noundef nonnull @_ZSt4cout)
          to label %569 unwind label %.split

.split:                                           ; preds = %.preheader, %.thread368.split
  %565 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %600

566:                                              ; preds = %.split417.us, %.split414.us
  %.pn294 = phi { ptr, i32 } [ %560, %.split417.us ], [ %559, %.split414.us ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %76) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %76) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #11
  br label %567

567:                                              ; preds = %566, %.split411.us
  %.pn294.pn = phi { ptr, i32 } [ %.pn294, %566 ], [ %558, %.split411.us ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %74) #11
  br label %568

568:                                              ; preds = %567, %.split408.us
  %.pn294.pn.pn = phi { ptr, i32 } [ %.pn294.pn, %567 ], [ %557, %.split408.us ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %74) #11
  br label %600

569:                                              ; preds = %.preheader
  br i1 %564, label %.thread368.split, label %.split421.us, !llvm.loop !18

.split421.us:                                     ; preds = %569, %542
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %79) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %79)
          to label %570 unwind label %578

570:                                              ; preds = %.split421.us
  %571 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %79, ptr noundef nonnull @.str.15)
          to label %572 unwind label %580

572:                                              ; preds = %570
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %80) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %81) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %81) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %81)
          to label %573 unwind label %582

573:                                              ; preds = %572
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef nonnull align 8 dereferenceable(112) %79)
          to label %574 unwind label %584

574:                                              ; preds = %573
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %81) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %81) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %82) #11
  %575 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %575, ptr %82, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %83) #11
  %576 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %576, ptr %83, align 8
  %577 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %82, ptr noundef nonnull align 8 dereferenceable(8) %83) #11
  br i1 %577, label %.lr.ph427, label %._crit_edge428

._crit_edge428:                                   ; preds = %594, %574
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %83) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %82) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %79) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %79) #11
  br label %599

578:                                              ; preds = %.split421.us
  %579 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %598

580:                                              ; preds = %570
  %581 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %597

582:                                              ; preds = %572
  %583 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  br label %586

584:                                              ; preds = %573
  %585 = landingpad { ptr, i32 }
          cleanup
          catch ptr @_ZTISt9exception
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #11
  br label %586

586:                                              ; preds = %584, %582
  %.pn300 = phi { ptr, i32 } [ %585, %584 ], [ %583, %582 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %81) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %81) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %80) #11
  br label %597

.lr.ph427:                                        ; preds = %574, %594
  %587 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %82) #11
  %588 = load ptr, ptr %587, align 8, !tbaa !9
  %589 = icmp eq ptr %588, null
  br i1 %589, label %594, label %590

590:                                              ; preds = %.lr.ph427
  %591 = load ptr, ptr %588, align 8, !tbaa !13
  %592 = getelementptr inbounds i8, ptr %591, i64 8
  %593 = load ptr, ptr %592, align 8
  call void %593(ptr noundef nonnull align 8 dereferenceable(81) %588) #11
  br label %594

594:                                              ; preds = %590, %.lr.ph427
  %595 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %82) #11
  %596 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %82, ptr noundef nonnull align 8 dereferenceable(8) %83) #11
  br i1 %596, label %.lr.ph427, label %._crit_edge428

597:                                              ; preds = %586, %580
  %.pn300.pn = phi { ptr, i32 } [ %.pn300, %586 ], [ %581, %580 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %79) #11
  br label %598

598:                                              ; preds = %597, %578
  %.pn300.pn.pn = phi { ptr, i32 } [ %.pn300.pn, %597 ], [ %579, %578 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %79) #11
  br label %600

599:                                              ; preds = %._crit_edge403.us, %._crit_edge428
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %73) #11
  br label %651

600:                                              ; preds = %.split, %.split.us, %.split405.us, %568, %598
  %.pn300.pn.pn.pn = phi { ptr, i32 } [ %.pn300.pn.pn, %598 ], [ %.pn294.pn.pn, %568 ], [ %556, %.split405.us ], [ %565, %.split ], [ %555, %.split.us ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %73) #11
  br label %601

601:                                              ; preds = %460, %475, %490, %524, %600
  %.pn300.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn300.pn.pn.pn, %600 ], [ %.pn288.pn.pn, %524 ], [ %.pn286, %460 ], [ %.pn284, %475 ], [ %.pn282, %490 ]
  %.58 = extractvalue { ptr, i32 } %.pn300.pn.pn.pn.pn, 0
  %.58184 = extractvalue { ptr, i32 } %.pn300.pn.pn.pn.pn, 1
  %602 = call i32 @llvm.eh.typeid.for.p0(ptr nonnull @_ZTISt9exception) #11
  %603 = icmp eq i32 %.58184, %602
  br i1 %603, label %604, label %652

604:                                              ; preds = %601
  %605 = call ptr @__cxa_begin_catch(ptr %.58) #11
  call void @llvm.lifetime.start.p0(i64 376, ptr nonnull %84) #11
  invoke void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEEC1Ev(ptr noundef nonnull align 8 dereferenceable(112) %84)
          to label %606 unwind label %614

606:                                              ; preds = %604
  %607 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %84, ptr noundef nonnull @.str.16)
          to label %608 unwind label %616

608:                                              ; preds = %606
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %85) #11
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %86) #11
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull @.str.2, ptr noundef nonnull align 1 dereferenceable(1) %86)
          to label %609 unwind label %618

609:                                              ; preds = %608
  invoke void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32) %85, ptr noundef nonnull align 8 dereferenceable(112) %84)
          to label %610 unwind label %620

610:                                              ; preds = %609
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #11
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %86) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %87) #11
  %611 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %611, ptr %87, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %88) #11
  %612 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %612, ptr %88, align 8
  %613 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %87, ptr noundef nonnull align 8 dereferenceable(8) %88) #11
  br i1 %613, label %.lr.ph424, label %._crit_edge425

._crit_edge425:                                   ; preds = %630, %610
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %88) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %87) #11
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %84) #11
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %84) #11
  invoke void @__cxa_end_catch()
          to label %651 unwind label %635

614:                                              ; preds = %604
  %615 = landingpad { ptr, i32 }
          cleanup
  br label %634

616:                                              ; preds = %606
  %617 = landingpad { ptr, i32 }
          cleanup
  br label %633

618:                                              ; preds = %608
  %619 = landingpad { ptr, i32 }
          cleanup
  br label %622

620:                                              ; preds = %609
  %621 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #11
  br label %622

622:                                              ; preds = %620, %618
  %.pn306 = phi { ptr, i32 } [ %621, %620 ], [ %619, %618 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %86) #11
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %86) #11
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %85) #11
  br label %633

.lr.ph424:                                        ; preds = %610, %630
  %623 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %87) #11
  %624 = load ptr, ptr %623, align 8, !tbaa !9
  %625 = icmp eq ptr %624, null
  br i1 %625, label %630, label %626

626:                                              ; preds = %.lr.ph424
  %627 = load ptr, ptr %624, align 8, !tbaa !13
  %628 = getelementptr inbounds i8, ptr %627, i64 8
  %629 = load ptr, ptr %628, align 8
  call void %629(ptr noundef nonnull align 8 dereferenceable(81) %624) #11
  br label %630

630:                                              ; preds = %626, %.lr.ph424
  %631 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %87) #11
  %632 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %87, ptr noundef nonnull align 8 dereferenceable(8) %88) #11
  br i1 %632, label %.lr.ph424, label %._crit_edge425

633:                                              ; preds = %622, %616
  %.pn306.pn = phi { ptr, i32 } [ %.pn306, %622 ], [ %617, %616 ]
  call void @_ZNSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(112) %84) #11
  br label %634

634:                                              ; preds = %633, %614
  %.pn306.pn.pn = phi { ptr, i32 } [ %.pn306.pn, %633 ], [ %615, %614 ]
  call void @llvm.lifetime.end.p0(i64 376, ptr nonnull %84) #11
  invoke void @__cxa_end_catch()
          to label %637 unwind label %660

635:                                              ; preds = %._crit_edge425
  %636 = landingpad { ptr, i32 }
          cleanup
  br label %637

637:                                              ; preds = %634, %635
  %.pn310 = phi { ptr, i32 } [ %636, %635 ], [ %.pn306.pn.pn, %634 ]
  %.62 = extractvalue { ptr, i32 } %.pn310, 0
  %.62188 = extractvalue { ptr, i32 } %.pn310, 1
  br label %652

.loopexit:                                        ; preds = %562, %526
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %73) #11
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %89) #11
  %638 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE5beginEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %638, ptr %89, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %90) #11
  %639 = call ptr @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EE3endEv(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  store ptr %639, ptr %90, align 8
  %640 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %89, ptr noundef nonnull align 8 dereferenceable(8) %90) #11
  br i1 %640, label %.lr.ph430, label %._crit_edge431

._crit_edge431:                                   ; preds = %648, %.loopexit
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %90) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %89) #11
  br label %651

.lr.ph430:                                        ; preds = %.loopexit, %648
  %641 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEdeEv(ptr noundef nonnull align 8 dereferenceable(8) %89) #11
  %642 = load ptr, ptr %641, align 8, !tbaa !9
  %643 = icmp eq ptr %642, null
  br i1 %643, label %648, label %644

644:                                              ; preds = %.lr.ph430
  %645 = load ptr, ptr %642, align 8, !tbaa !13
  %646 = getelementptr inbounds i8, ptr %645, i64 8
  %647 = load ptr, ptr %646, align 8
  call void %647(ptr noundef nonnull align 8 dereferenceable(81) %642) #11
  br label %648

648:                                              ; preds = %644, %.lr.ph430
  %649 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZN9__gnu_cxx17__normal_iteratorIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEppEv(ptr noundef nonnull align 8 dereferenceable(8) %89) #11
  %650 = call noundef zeroext i1 @_ZN9__gnu_cxxneIPPN4sptk24SecondOrderDigitalFilterESt6vectorIS3_SaIS3_EEEEbRKNS_17__normal_iteratorIT_T0_EESD_(ptr noundef nonnull align 8 dereferenceable(8) %89, ptr noundef nonnull align 8 dereferenceable(8) %90) #11
  br i1 %650, label %.lr.ph430, label %._crit_edge431

651:                                              ; preds = %599, %._crit_edge397, %._crit_edge425, %._crit_edge431, %420
  %.17 = phi i32 [ 1, %420 ], [ 0, %._crit_edge431 ], [ 1, %599 ], [ 1, %._crit_edge397 ], [ 1, %._crit_edge425 ]
  call void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %59) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %58) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %57) #11
  br label %654

652:                                              ; preds = %637, %601, %435
  %.63189 = phi i32 [ %.42168, %435 ], [ %.62188, %637 ], [ %.58184, %601 ]
  %.63 = phi ptr [ %.42, %435 ], [ %.62, %637 ], [ %.58, %601 ]
  call void @_ZNSt6vectorIN4sptk24SecondOrderDigitalFilter6BufferESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %60) #11
  br label %653

653:                                              ; preds = %652, %421
  %.64190 = phi i32 [ %.63189, %652 ], [ %424, %421 ]
  %.64 = phi ptr [ %.63, %652 ], [ %423, %421 ]
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %60) #11
  call void @_ZNSt6vectorIPN4sptk24SecondOrderDigitalFilterESaIS2_EED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %59) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %59) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %58) #11
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %57) #11
  br label %655

654:                                              ; preds = %651, %383
  %.18 = phi i32 [ 1, %383 ], [ %.17, %651 ]
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %53) #11
  call void @llvm.lifetime.end.p0(i64 520, ptr nonnull %53) #11
  br label %.thread351

655:                                              ; preds = %653, %402, %388
  %.65191 = phi i32 [ %.39165, %402 ], [ %.64190, %653 ], [ %391, %388 ]
  %.65 = phi ptr [ %.39, %402 ], [ %.64, %653 ], [ %390, %388 ]
  call void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev(ptr noundef nonnull align 8 dereferenceable(256) %53) #11
  br label %656

656:                                              ; preds = %655, %384
  %.66192 = phi i32 [ %.65191, %655 ], [ %387, %384 ]
  %.66 = phi ptr [ %.65, %655 ], [ %386, %384 ]
  call void @llvm.lifetime.end.p0(i64 520, ptr nonnull %53) #11
  br label %657

.thread351:                                       ; preds = %.thread342, %.thread331, %258, %257, %106, %188, %255, %.thread366, %.thread361, %349, %654, %322
  %.22 = phi i32 [ 1, %322 ], [ %.18, %654 ], [ 1, %349 ], [ 1, %.thread361 ], [ 1, %.thread366 ], [ 1, %.thread342 ], [ 1, %.thread331 ], [ 1, %258 ], [ 0, %257 ], [ 1, %106 ], [ 1, %188 ], [ 1, %255 ]
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %7) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %5) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %4) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %3) #11
  ret i32 %.22

657:                                              ; preds = %285, %310, %350, %364, %656, %333, %259
  %.70196 = phi i32 [ %.24150, %259 ], [ %.30156, %310 ], [ %.27153, %285 ], [ %.33159, %333 ], [ %.66192, %656 ], [ %.36162, %364 ], [ %353, %350 ]
  %.70 = phi ptr [ %.24, %259 ], [ %.30, %310 ], [ %.27, %285 ], [ %.33, %333 ], [ %.66, %656 ], [ %.36, %364 ], [ %352, %350 ]
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %7) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %7) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %6) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %6) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %5) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %5) #11
  call void @_ZNSt6vectorIdSaIdEED2Ev(ptr noundef nonnull align 8 dereferenceable(24) %4) #11
  call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %4) #11
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %3) #11
  %658 = insertvalue { ptr, i32 } poison, ptr %.70, 0
  %659 = insertvalue { ptr, i32 } %658, i32 %.70196, 1
  resume { ptr, i32 } %659

660:                                              ; preds = %634
  %661 = landingpad { ptr, i32 }
          catch ptr null
  %662 = extractvalue { ptr, i32 } %661, 0
  call void @__clang_call_terminate(ptr %662) #14
  unreachable
}

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

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

declare i32 @ya_getopt_long(i32 noundef, ptr noundef, ptr noundef, ptr noundef, ptr noundef) local_unnamed_addr #3

declare i32 @__gxx_personality_v0(...)

declare noundef zeroext i1 @_ZN4sptk21ConvertStringToDoubleERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPd(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #3

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

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

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

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

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

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

declare void @_ZN4sptk17PrintErrorMessageERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS0_19basic_ostringstreamIcS3_S4_EE(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(112)) local_unnamed_addr #3

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

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

; Function Attrs: mustprogress uwtable
declare hidden void @_ZN12_GLOBAL__N_110PrintUsageEPSo(ptr noundef) local_unnamed_addr #4

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

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

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

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

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

declare noundef zeroext i1 @_ZN4sptk13SetBinaryModeEv() local_unnamed_addr #3

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

; Function Attrs: mustprogress uwtable
declare void @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode(ptr noundef nonnull align 8 dereferenceable(256), ptr noundef, i32 noundef) local_unnamed_addr #4 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZStorSt13_Ios_OpenmodeS_(i32 noundef, i32 noundef) local_unnamed_addr #6

; Function Attrs: mustprogress uwtable
declare noundef zeroext i1 @_ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv(ptr noundef nonnull align 8 dereferenceable(264)) local_unnamed_addr #4 align 2

; Function Attrs: mustprogress nounwind uwtable
declare noundef zeroext i1 @_ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv(ptr noundef nonnull align 8 dereferenceable(256)) local_unnamed_addr #2 align 2

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

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

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

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

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

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

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

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

declare void @_ZN4sptk24SecondOrderDigitalFilterC1Eddddd(ptr noundef nonnull align 8 dereferenceable(81), double noundef, double noundef, double noundef, double noundef, double noundef) unnamed_addr #3

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

declare void @_ZN4sptk24SecondOrderDigitalFilterC1ENS0_10FilterTypeEddd(ptr noundef nonnull align 8 dereferenceable(81), i32 noundef, double noundef, double noundef, double noundef) unnamed_addr #3

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

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

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

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

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

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

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

declare noundef zeroext i1 @_ZN4sptk10ReadStreamIdEEbPT_PSi(ptr noundef, ptr noundef) local_unnamed_addr #3

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

declare noundef zeroext i1 @_ZNK4sptk24SecondOrderDigitalFilter3RunEPdPNS0_6BufferE(ptr noundef nonnull align 8 dereferenceable(81), ptr noundef, ptr noundef) local_unnamed_addr #3

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

declare noundef zeroext i1 @_ZN4sptk11WriteStreamIdEEbT_PSo(double noundef, ptr noundef) local_unnamed_addr #3

; Function Attrs: nofree nosync nounwind memory(none)
declare i32 @llvm.eh.typeid.for.p0(ptr) #9

declare ptr @__cxa_begin_catch(ptr) local_unnamed_addr

declare void @__cxa_end_catch() local_unnamed_addr

; Function Attrs: noinline noreturn nounwind uwtable
declare hidden void @__clang_call_terminate(ptr noundef) local_unnamed_addr #10

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

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

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

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

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

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

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

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

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


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