; LLVM IR from gem5/gem5 :: src/systemc/tests/systemc/datatypes/fx/bit/test_bit.ll (Z8test_bitRSoii)

; 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.sc_dt::sc_context" = type { %"class.sc_dt::sc_fxtype_params", ptr, ptr }
%"class.sc_dt::sc_fxtype_params" = type { i32, i32, i32, i32, i32 }
%"class.sc_dt::sc_fix" = type { %"class.sc_dt::sc_fxnum" }
%"class.sc_dt::sc_fxnum" = type { ptr, %"class.sc_dt::scfx_params", i8, i8, ptr }
%"class.sc_dt::scfx_params" = type { %"class.sc_dt::sc_fxtype_params", i32, %"class.sc_dt::sc_fxcast_switch" }
%"class.sc_dt::sc_fxcast_switch" = type { i32 }
%"class.sc_dt::sc_fxnum_bitref" = type <{ ptr, i32, [4 x i8] }>
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.sc_dt::sc_fixed" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufix" = type { %"class.sc_dt::sc_fxnum" }
%"class.sc_dt::sc_ufixed" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.0" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.1" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.2" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.3" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.4" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.5" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.6" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.7" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.8" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.9" = type { %"class.sc_dt::sc_ufix" }

@.str = external hidden unnamed_addr constant [9 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [12 x i8], align 1

; Function Attrs: mustprogress uwtable
define dso_local void @_Z8test_bitRSoii(ptr noundef nonnull align 8 dereferenceable(8) %0, i32 noundef %1, i32 noundef %2) #0 personality ptr @__gxx_personality_v0 {
  %4 = alloca ptr, align 8
  %5 = alloca i32, align 4
  %6 = alloca i32, align 4
  %7 = alloca %"class.sc_dt::sc_context", align 8
  %8 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %9 = alloca %"class.sc_dt::sc_fix", align 8
  %10 = alloca ptr, align 8
  %11 = alloca i32, align 4
  %12 = alloca i32, align 4
  %13 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %14 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %15 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %16 = alloca %"class.sc_dt::sc_fix", align 8
  %17 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %18 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %19 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca %"class.std::__cxx11::basic_string", align 8
  %22 = alloca %"class.sc_dt::sc_context", align 8
  %23 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %24 = alloca %"class.sc_dt::sc_fixed", align 8
  %25 = alloca i32, align 4
  %26 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %27 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %28 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %29 = alloca %"class.sc_dt::sc_fix", align 8
  %30 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %31 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %32 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.sc_dt::sc_context", align 8
  %36 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %37 = alloca %"class.sc_dt::sc_ufix", align 8
  %38 = alloca i32, align 4
  %39 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %40 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %41 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %42 = alloca %"class.sc_dt::sc_ufix", align 8
  %43 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %44 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %45 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.sc_dt::sc_context", align 8
  %49 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %50 = alloca %"class.sc_dt::sc_ufixed", align 8
  %51 = alloca i32, align 4
  %52 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %53 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %54 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %55 = alloca %"class.sc_dt::sc_ufix", align 8
  %56 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %57 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %58 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca %"class.sc_dt::sc_context", align 8
  %62 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %63 = alloca %"class.sc_dt::sc_fix", align 8
  %64 = alloca i32, align 4
  %65 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %66 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %67 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %68 = alloca %"class.sc_dt::sc_fix", align 8
  %69 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %70 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %71 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %72 = alloca %"class.std::__cxx11::basic_string", align 8
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.sc_dt::sc_context", align 8
  %75 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %76 = alloca %"class.sc_dt::sc_fixed.0", align 8
  %77 = alloca i32, align 4
  %78 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %79 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %80 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %81 = alloca %"class.sc_dt::sc_fix", align 8
  %82 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %83 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %84 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %85 = alloca %"class.std::__cxx11::basic_string", align 8
  %86 = alloca %"class.std::__cxx11::basic_string", align 8
  %87 = alloca %"class.sc_dt::sc_context", align 8
  %88 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %89 = alloca %"class.sc_dt::sc_ufix", align 8
  %90 = alloca i32, align 4
  %91 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %92 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %93 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %94 = alloca %"class.sc_dt::sc_ufix", align 8
  %95 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %96 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %97 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca %"class.std::__cxx11::basic_string", align 8
  %100 = alloca %"class.sc_dt::sc_context", align 8
  %101 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %102 = alloca %"class.sc_dt::sc_ufixed.1", align 8
  %103 = alloca i32, align 4
  %104 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %105 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %106 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %107 = alloca %"class.sc_dt::sc_ufix", align 8
  %108 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %109 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %110 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %111 = alloca %"class.std::__cxx11::basic_string", align 8
  %112 = alloca %"class.std::__cxx11::basic_string", align 8
  %113 = alloca %"class.sc_dt::sc_context", align 8
  %114 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %115 = alloca %"class.sc_dt::sc_fix", align 8
  %116 = alloca i32, align 4
  %117 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %118 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %119 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %120 = alloca %"class.sc_dt::sc_fix", align 8
  %121 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %122 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %123 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %124 = alloca %"class.std::__cxx11::basic_string", align 8
  %125 = alloca %"class.std::__cxx11::basic_string", align 8
  %126 = alloca %"class.sc_dt::sc_context", align 8
  %127 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %128 = alloca %"class.sc_dt::sc_fixed.2", align 8
  %129 = alloca i32, align 4
  %130 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %131 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %132 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %133 = alloca %"class.sc_dt::sc_fix", align 8
  %134 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %135 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %136 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %137 = alloca %"class.std::__cxx11::basic_string", align 8
  %138 = alloca %"class.std::__cxx11::basic_string", align 8
  %139 = alloca %"class.sc_dt::sc_context", align 8
  %140 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %141 = alloca %"class.sc_dt::sc_ufix", align 8
  %142 = alloca i32, align 4
  %143 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %144 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %145 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %146 = alloca %"class.sc_dt::sc_ufix", align 8
  %147 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %148 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %149 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %150 = alloca %"class.std::__cxx11::basic_string", align 8
  %151 = alloca %"class.std::__cxx11::basic_string", align 8
  %152 = alloca %"class.sc_dt::sc_context", align 8
  %153 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %154 = alloca %"class.sc_dt::sc_ufixed.3", align 8
  %155 = alloca i32, align 4
  %156 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %157 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %158 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %159 = alloca %"class.sc_dt::sc_ufix", align 8
  %160 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %161 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %162 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %163 = alloca %"class.std::__cxx11::basic_string", align 8
  %164 = alloca %"class.std::__cxx11::basic_string", align 8
  %165 = alloca %"class.sc_dt::sc_context", align 8
  %166 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %167 = alloca %"class.sc_dt::sc_fix", align 8
  %168 = alloca i32, align 4
  %169 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %170 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %171 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %172 = alloca %"class.sc_dt::sc_fix", align 8
  %173 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %174 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %175 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %176 = alloca %"class.std::__cxx11::basic_string", align 8
  %177 = alloca %"class.std::__cxx11::basic_string", align 8
  %178 = alloca %"class.sc_dt::sc_context", align 8
  %179 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %180 = alloca %"class.sc_dt::sc_fixed.4", align 8
  %181 = alloca i32, align 4
  %182 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %183 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %184 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %185 = alloca %"class.sc_dt::sc_fix", align 8
  %186 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %187 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %188 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %189 = alloca %"class.std::__cxx11::basic_string", align 8
  %190 = alloca %"class.std::__cxx11::basic_string", align 8
  %191 = alloca %"class.sc_dt::sc_context", align 8
  %192 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %193 = alloca %"class.sc_dt::sc_ufix", align 8
  %194 = alloca i32, align 4
  %195 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %196 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %197 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %198 = alloca %"class.sc_dt::sc_ufix", align 8
  %199 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %200 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %201 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %202 = alloca %"class.std::__cxx11::basic_string", align 8
  %203 = alloca %"class.std::__cxx11::basic_string", align 8
  %204 = alloca %"class.sc_dt::sc_context", align 8
  %205 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %206 = alloca %"class.sc_dt::sc_ufixed.5", align 8
  %207 = alloca i32, align 4
  %208 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %209 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %210 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %211 = alloca %"class.sc_dt::sc_ufix", align 8
  %212 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %213 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %214 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %215 = alloca %"class.std::__cxx11::basic_string", align 8
  %216 = alloca %"class.std::__cxx11::basic_string", align 8
  %217 = alloca %"class.sc_dt::sc_context", align 8
  %218 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %219 = alloca %"class.sc_dt::sc_fix", align 8
  %220 = alloca i32, align 4
  %221 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %222 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %223 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %224 = alloca %"class.sc_dt::sc_fix", align 8
  %225 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %226 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %227 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %228 = alloca %"class.std::__cxx11::basic_string", align 8
  %229 = alloca %"class.std::__cxx11::basic_string", align 8
  %230 = alloca %"class.sc_dt::sc_context", align 8
  %231 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %232 = alloca %"class.sc_dt::sc_fixed.6", align 8
  %233 = alloca i32, align 4
  %234 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %235 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %236 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %237 = alloca %"class.sc_dt::sc_fix", align 8
  %238 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %239 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %240 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %241 = alloca %"class.std::__cxx11::basic_string", align 8
  %242 = alloca %"class.std::__cxx11::basic_string", align 8
  %243 = alloca %"class.sc_dt::sc_context", align 8
  %244 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %245 = alloca %"class.sc_dt::sc_ufix", align 8
  %246 = alloca i32, align 4
  %247 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %248 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %249 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %250 = alloca %"class.sc_dt::sc_ufix", align 8
  %251 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %252 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %253 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %254 = alloca %"class.std::__cxx11::basic_string", align 8
  %255 = alloca %"class.std::__cxx11::basic_string", align 8
  %256 = alloca %"class.sc_dt::sc_context", align 8
  %257 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %258 = alloca %"class.sc_dt::sc_ufixed.7", align 8
  %259 = alloca i32, align 4
  %260 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %261 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %262 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %263 = alloca %"class.sc_dt::sc_ufix", align 8
  %264 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %265 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %266 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %267 = alloca %"class.std::__cxx11::basic_string", align 8
  %268 = alloca %"class.std::__cxx11::basic_string", align 8
  %269 = alloca %"class.sc_dt::sc_context", align 8
  %270 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %271 = alloca %"class.sc_dt::sc_fix", align 8
  %272 = alloca i32, align 4
  %273 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %274 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %275 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %276 = alloca %"class.sc_dt::sc_fix", align 8
  %277 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %278 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %279 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %280 = alloca %"class.std::__cxx11::basic_string", align 8
  %281 = alloca %"class.std::__cxx11::basic_string", align 8
  %282 = alloca %"class.sc_dt::sc_context", align 8
  %283 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %284 = alloca %"class.sc_dt::sc_fixed.8", align 8
  %285 = alloca i32, align 4
  %286 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %287 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %288 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %289 = alloca %"class.sc_dt::sc_fix", align 8
  %290 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %291 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %292 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %293 = alloca %"class.std::__cxx11::basic_string", align 8
  %294 = alloca %"class.std::__cxx11::basic_string", align 8
  %295 = alloca %"class.sc_dt::sc_context", align 8
  %296 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %297 = alloca %"class.sc_dt::sc_ufix", align 8
  %298 = alloca i32, align 4
  %299 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %300 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %301 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %302 = alloca %"class.sc_dt::sc_ufix", align 8
  %303 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %304 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %305 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %306 = alloca %"class.std::__cxx11::basic_string", align 8
  %307 = alloca %"class.std::__cxx11::basic_string", align 8
  %308 = alloca %"class.sc_dt::sc_context", align 8
  %309 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %310 = alloca %"class.sc_dt::sc_ufixed.9", align 8
  %311 = alloca i32, align 4
  %312 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %313 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %314 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %315 = alloca %"class.sc_dt::sc_ufix", align 8
  %316 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %317 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %318 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %319 = alloca %"class.std::__cxx11::basic_string", align 8
  %320 = alloca %"class.std::__cxx11::basic_string", align 8
  store ptr %0, ptr %4, align 8, !tbaa !5
  store i32 %1, ptr %5, align 4, !tbaa !9
  store i32 %2, ptr %6, align 4, !tbaa !9
  %321 = load ptr, ptr %4, align 8, !tbaa !5
  %322 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %321, ptr noundef @.str)
  %323 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %322, ptr noundef @.str.2)
  %324 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %323, i32 noundef 13)
  %325 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %324, ptr noundef @.str.2)
  %326 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %325, i32 noundef 13)
  %327 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %326, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %7) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %8) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %8, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %7, ptr noundef nonnull align 4 dereferenceable(20) %8, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %8) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %9) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef 0, ptr noundef null)
          to label %328 unwind label %341

328:                                              ; preds = %3
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #6
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %329

329:                                              ; preds = %358, %328
  %330 = load i32, ptr %12, align 4, !tbaa !9
  %331 = icmp slt i32 %330, 13
  br i1 %331, label %332, label %361

332:                                              ; preds = %329
  call void @llvm.lifetime.start.p0(i64 16, ptr %13) #6
  %333 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %333)
          to label %334 unwind label %345

334:                                              ; preds = %332
  %335 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %336 unwind label %345

336:                                              ; preds = %334
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #6
  br i1 %335, label %337, label %353

337:                                              ; preds = %336
  %338 = load ptr, ptr %4, align 8, !tbaa !5
  %339 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %338, ptr noundef @.str.4)
          to label %340 unwind label %349

340:                                              ; preds = %337
  br label %357

341:                                              ; preds = %3
  %342 = landingpad { ptr, i32 }
          cleanup
  %343 = extractvalue { ptr, i32 } %342, 0
  store ptr %343, ptr %10, align 8
  %344 = extractvalue { ptr, i32 } %342, 1
  store i32 %344, ptr %11, align 4
  br label %552

345:                                              ; preds = %334, %332
  %346 = landingpad { ptr, i32 }
          cleanup
  %347 = extractvalue { ptr, i32 } %346, 0
  store ptr %347, ptr %10, align 8
  %348 = extractvalue { ptr, i32 } %346, 1
  store i32 %348, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %13) #6
  br label %551

349:                                              ; preds = %504, %502, %494, %491, %483, %475, %447, %439, %422, %408, %405, %397, %389, %361, %353, %337
  %350 = landingpad { ptr, i32 }
          cleanup
  %351 = extractvalue { ptr, i32 } %350, 0
  store ptr %351, ptr %10, align 8
  %352 = extractvalue { ptr, i32 } %350, 1
  store i32 %352, ptr %11, align 4
  br label %551

353:                                              ; preds = %336
  %354 = load ptr, ptr %4, align 8, !tbaa !5
  %355 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %354, ptr noundef @.str.5)
          to label %356 unwind label %349

356:                                              ; preds = %353
  br label %357

357:                                              ; preds = %356, %340
  br label %358

358:                                              ; preds = %357
  %359 = load i32, ptr %12, align 4, !tbaa !9
  %360 = add nsw i32 %359, 1
  store i32 %360, ptr %12, align 4, !tbaa !9
  br label %329, !llvm.loop !11

361:                                              ; preds = %329
  %362 = load ptr, ptr %4, align 8, !tbaa !5
  %363 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %362, ptr noundef @.str.6)
          to label %364 unwind label %349

364:                                              ; preds = %361
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %365

365:                                              ; preds = %373, %364
  %366 = load i32, ptr %12, align 4, !tbaa !9
  %367 = icmp slt i32 %366, 13
  br i1 %367, label %368, label %380

368:                                              ; preds = %365
  call void @llvm.lifetime.start.p0(i64 16, ptr %14) #6
  %369 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %14, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %369)
          to label %370 unwind label %376

370:                                              ; preds = %368
  %371 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %14, i1 noundef zeroext true)
          to label %372 unwind label %376

372:                                              ; preds = %370
  call void @llvm.lifetime.end.p0(i64 16, ptr %14) #6
  br label %373

373:                                              ; preds = %372
  %374 = load i32, ptr %12, align 4, !tbaa !9
  %375 = add nsw i32 %374, 3
  store i32 %375, ptr %12, align 4, !tbaa !9
  br label %365, !llvm.loop !13

376:                                              ; preds = %370, %368
  %377 = landingpad { ptr, i32 }
          cleanup
  %378 = extractvalue { ptr, i32 } %377, 0
  store ptr %378, ptr %10, align 8
  %379 = extractvalue { ptr, i32 } %377, 1
  store i32 %379, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %14) #6
  br label %551

380:                                              ; preds = %365
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %381

381:                                              ; preds = %402, %380
  %382 = load i32, ptr %12, align 4, !tbaa !9
  %383 = icmp slt i32 %382, 13
  br i1 %383, label %384, label %405

384:                                              ; preds = %381
  call void @llvm.lifetime.start.p0(i64 16, ptr %15) #6
  %385 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %15, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %385)
          to label %386 unwind label %393

386:                                              ; preds = %384
  %387 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %15)
          to label %388 unwind label %393

388:                                              ; preds = %386
  call void @llvm.lifetime.end.p0(i64 16, ptr %15) #6
  br i1 %387, label %389, label %397

389:                                              ; preds = %388
  %390 = load ptr, ptr %4, align 8, !tbaa !5
  %391 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %390, ptr noundef @.str.4)
          to label %392 unwind label %349

392:                                              ; preds = %389
  br label %401

393:                                              ; preds = %386, %384
  %394 = landingpad { ptr, i32 }
          cleanup
  %395 = extractvalue { ptr, i32 } %394, 0
  store ptr %395, ptr %10, align 8
  %396 = extractvalue { ptr, i32 } %394, 1
  store i32 %396, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %15) #6
  br label %551

397:                                              ; preds = %388
  %398 = load ptr, ptr %4, align 8, !tbaa !5
  %399 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %398, ptr noundef @.str.5)
          to label %400 unwind label %349

400:                                              ; preds = %397
  br label %401

401:                                              ; preds = %400, %392
  br label %402

402:                                              ; preds = %401
  %403 = load i32, ptr %12, align 4, !tbaa !9
  %404 = add nsw i32 %403, 1
  store i32 %404, ptr %12, align 4, !tbaa !9
  br label %381, !llvm.loop !14

405:                                              ; preds = %381
  %406 = load ptr, ptr %4, align 8, !tbaa !5
  %407 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %406, ptr noundef @.str.3)
          to label %408 unwind label %349

408:                                              ; preds = %405
  %409 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef 0)
          to label %410 unwind label %349

410:                                              ; preds = %408
  call void @llvm.lifetime.start.p0(i64 48, ptr %16) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %16, ptr noundef nonnull align 8 dereferenceable(48) %9)
          to label %411 unwind label %426

411:                                              ; preds = %410
  %412 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %9, ptr noundef nonnull align 8 dereferenceable(48) %16)
          to label %413 unwind label %430

413:                                              ; preds = %411
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #6
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %414

414:                                              ; preds = %444, %413
  %415 = load i32, ptr %12, align 4, !tbaa !9
  %416 = icmp slt i32 %415, 13
  br i1 %416, label %417, label %447

417:                                              ; preds = %414
  call void @llvm.lifetime.start.p0(i64 16, ptr %17) #6
  %418 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %17, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %418)
          to label %419 unwind label %435

419:                                              ; preds = %417
  %420 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %17)
          to label %421 unwind label %435

421:                                              ; preds = %419
  call void @llvm.lifetime.end.p0(i64 16, ptr %17) #6
  br i1 %420, label %422, label %439

422:                                              ; preds = %421
  %423 = load ptr, ptr %4, align 8, !tbaa !5
  %424 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %423, ptr noundef @.str.4)
          to label %425 unwind label %349

425:                                              ; preds = %422
  br label %443

426:                                              ; preds = %410
  %427 = landingpad { ptr, i32 }
          cleanup
  %428 = extractvalue { ptr, i32 } %427, 0
  store ptr %428, ptr %10, align 8
  %429 = extractvalue { ptr, i32 } %427, 1
  store i32 %429, ptr %11, align 4
  br label %434

430:                                              ; preds = %411
  %431 = landingpad { ptr, i32 }
          cleanup
  %432 = extractvalue { ptr, i32 } %431, 0
  store ptr %432, ptr %10, align 8
  %433 = extractvalue { ptr, i32 } %431, 1
  store i32 %433, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %16) #6
  br label %434

434:                                              ; preds = %430, %426
  call void @llvm.lifetime.end.p0(i64 48, ptr %16) #6
  br label %551

435:                                              ; preds = %419, %417
  %436 = landingpad { ptr, i32 }
          cleanup
  %437 = extractvalue { ptr, i32 } %436, 0
  store ptr %437, ptr %10, align 8
  %438 = extractvalue { ptr, i32 } %436, 1
  store i32 %438, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %17) #6
  br label %551

439:                                              ; preds = %421
  %440 = load ptr, ptr %4, align 8, !tbaa !5
  %441 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %440, ptr noundef @.str.5)
          to label %442 unwind label %349

442:                                              ; preds = %439
  br label %443

443:                                              ; preds = %442, %425
  br label %444

444:                                              ; preds = %443
  %445 = load i32, ptr %12, align 4, !tbaa !9
  %446 = add nsw i32 %445, 1
  store i32 %446, ptr %12, align 4, !tbaa !9
  br label %414, !llvm.loop !15

447:                                              ; preds = %414
  %448 = load ptr, ptr %4, align 8, !tbaa !5
  %449 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %448, ptr noundef @.str.6)
          to label %450 unwind label %349

450:                                              ; preds = %447
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %451

451:                                              ; preds = %459, %450
  %452 = load i32, ptr %12, align 4, !tbaa !9
  %453 = icmp slt i32 %452, 13
  br i1 %453, label %454, label %466

454:                                              ; preds = %451
  call void @llvm.lifetime.start.p0(i64 16, ptr %18) #6
  %455 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %18, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %455)
          to label %456 unwind label %462

456:                                              ; preds = %454
  %457 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %18, i1 noundef zeroext false)
          to label %458 unwind label %462

458:                                              ; preds = %456
  call void @llvm.lifetime.end.p0(i64 16, ptr %18) #6
  br label %459

459:                                              ; preds = %458
  %460 = load i32, ptr %12, align 4, !tbaa !9
  %461 = add nsw i32 %460, 3
  store i32 %461, ptr %12, align 4, !tbaa !9
  br label %451, !llvm.loop !16

462:                                              ; preds = %456, %454
  %463 = landingpad { ptr, i32 }
          cleanup
  %464 = extractvalue { ptr, i32 } %463, 0
  store ptr %464, ptr %10, align 8
  %465 = extractvalue { ptr, i32 } %463, 1
  store i32 %465, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %18) #6
  br label %551

466:                                              ; preds = %451
  store i32 0, ptr %12, align 4, !tbaa !9
  br label %467

467:                                              ; preds = %488, %466
  %468 = load i32, ptr %12, align 4, !tbaa !9
  %469 = icmp slt i32 %468, 13
  br i1 %469, label %470, label %491

470:                                              ; preds = %467
  call void @llvm.lifetime.start.p0(i64 16, ptr %19) #6
  %471 = load i32, ptr %12, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef %471)
          to label %472 unwind label %479

472:                                              ; preds = %470
  %473 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %474 unwind label %479

474:                                              ; preds = %472
  call void @llvm.lifetime.end.p0(i64 16, ptr %19) #6
  br i1 %473, label %475, label %483

475:                                              ; preds = %474
  %476 = load ptr, ptr %4, align 8, !tbaa !5
  %477 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %476, ptr noundef @.str.4)
          to label %478 unwind label %349

478:                                              ; preds = %475
  br label %487

479:                                              ; preds = %472, %470
  %480 = landingpad { ptr, i32 }
          cleanup
  %481 = extractvalue { ptr, i32 } %480, 0
  store ptr %481, ptr %10, align 8
  %482 = extractvalue { ptr, i32 } %480, 1
  store i32 %482, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %19) #6
  br label %551

483:                                              ; preds = %474
  %484 = load ptr, ptr %4, align 8, !tbaa !5
  %485 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %484, ptr noundef @.str.5)
          to label %486 unwind label %349

486:                                              ; preds = %483
  br label %487

487:                                              ; preds = %486, %478
  br label %488

488:                                              ; preds = %487
  %489 = load i32, ptr %12, align 4, !tbaa !9
  %490 = add nsw i32 %489, 1
  store i32 %490, ptr %12, align 4, !tbaa !9
  br label %467, !llvm.loop !17

491:                                              ; preds = %467
  %492 = load ptr, ptr %4, align 8, !tbaa !5
  %493 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %492, ptr noundef @.str.3)
          to label %494 unwind label %349

494:                                              ; preds = %491
  %495 = load ptr, ptr %4, align 8, !tbaa !5
  %496 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %495, ptr noundef @.str.7)
          to label %497 unwind label %349

497:                                              ; preds = %494
  call void @llvm.lifetime.start.p0(i64 32, ptr %20) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef 2)
          to label %498 unwind label %533

498:                                              ; preds = %497
  %499 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %496, ptr noundef nonnull align 8 dereferenceable(32) %20)
          to label %500 unwind label %537

500:                                              ; preds = %498
  %501 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %499, ptr noundef @.str.3)
          to label %502 unwind label %537

502:                                              ; preds = %500
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %20) #6
  %503 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %9, ptr noundef @.str.8)
          to label %504 unwind label %349

504:                                              ; preds = %502
  %505 = load ptr, ptr %4, align 8, !tbaa !5
  %506 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %505, ptr noundef @.str.7)
          to label %507 unwind label %349

507:                                              ; preds = %504
  call void @llvm.lifetime.start.p0(i64 32, ptr %21) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %9, i32 noundef 2)
          to label %508 unwind label %542

508:                                              ; preds = %507
  %509 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %506, ptr noundef nonnull align 8 dereferenceable(32) %21)
          to label %510 unwind label %546

510:                                              ; preds = %508
  %511 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %509, ptr noundef @.str.3)
          to label %512 unwind label %546

512:                                              ; preds = %510
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %9) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %9) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %7) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %7) #6
  %513 = load ptr, ptr %4, align 8, !tbaa !5
  %514 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %513, ptr noundef @.str.9)
  %515 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %514, ptr noundef @.str.2)
  %516 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %515, i32 noundef 13)
  %517 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %516, ptr noundef @.str.2)
  %518 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %517, i32 noundef 13)
  %519 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %518, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %22) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %23) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %23, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %22, ptr noundef nonnull align 4 dereferenceable(20) %23, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %23) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %24) #6
  invoke void @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef 0, ptr noundef null)
          to label %520 unwind label %553

520:                                              ; preds = %512
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #6
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %521

521:                                              ; preds = %570, %520
  %522 = load i32, ptr %25, align 4, !tbaa !9
  %523 = icmp slt i32 %522, 13
  br i1 %523, label %524, label %573

524:                                              ; preds = %521
  call void @llvm.lifetime.start.p0(i64 16, ptr %26) #6
  %525 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %26, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %525)
          to label %526 unwind label %557

526:                                              ; preds = %524
  %527 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %26)
          to label %528 unwind label %557

528:                                              ; preds = %526
  call void @llvm.lifetime.end.p0(i64 16, ptr %26) #6
  br i1 %527, label %529, label %565

529:                                              ; preds = %528
  %530 = load ptr, ptr %4, align 8, !tbaa !5
  %531 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %530, ptr noundef @.str.4)
          to label %532 unwind label %561

532:                                              ; preds = %529
  br label %569

533:                                              ; preds = %497
  %534 = landingpad { ptr, i32 }
          cleanup
  %535 = extractvalue { ptr, i32 } %534, 0
  store ptr %535, ptr %10, align 8
  %536 = extractvalue { ptr, i32 } %534, 1
  store i32 %536, ptr %11, align 4
  br label %541

537:                                              ; preds = %500, %498
  %538 = landingpad { ptr, i32 }
          cleanup
  %539 = extractvalue { ptr, i32 } %538, 0
  store ptr %539, ptr %10, align 8
  %540 = extractvalue { ptr, i32 } %538, 1
  store i32 %540, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #6
  br label %541

541:                                              ; preds = %537, %533
  call void @llvm.lifetime.end.p0(i64 32, ptr %20) #6
  br label %551

542:                                              ; preds = %507
  %543 = landingpad { ptr, i32 }
          cleanup
  %544 = extractvalue { ptr, i32 } %543, 0
  store ptr %544, ptr %10, align 8
  %545 = extractvalue { ptr, i32 } %543, 1
  store i32 %545, ptr %11, align 4
  br label %550

546:                                              ; preds = %510, %508
  %547 = landingpad { ptr, i32 }
          cleanup
  %548 = extractvalue { ptr, i32 } %547, 0
  store ptr %548, ptr %10, align 8
  %549 = extractvalue { ptr, i32 } %547, 1
  store i32 %549, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %21) #6
  br label %550

550:                                              ; preds = %546, %542
  call void @llvm.lifetime.end.p0(i64 32, ptr %21) #6
  br label %551

551:                                              ; preds = %550, %541, %479, %462, %435, %434, %393, %376, %349, %345
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %9) #6
  br label %552

552:                                              ; preds = %551, %341
  call void @llvm.lifetime.end.p0(i64 48, ptr %9) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %7) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %7) #6
  br label %5409

553:                                              ; preds = %512
  %554 = landingpad { ptr, i32 }
          cleanup
  %555 = extractvalue { ptr, i32 } %554, 0
  store ptr %555, ptr %10, align 8
  %556 = extractvalue { ptr, i32 } %554, 1
  store i32 %556, ptr %11, align 4
  br label %764

557:                                              ; preds = %526, %524
  %558 = landingpad { ptr, i32 }
          cleanup
  %559 = extractvalue { ptr, i32 } %558, 0
  store ptr %559, ptr %10, align 8
  %560 = extractvalue { ptr, i32 } %558, 1
  store i32 %560, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %26) #6
  br label %763

561:                                              ; preds = %716, %714, %706, %703, %695, %687, %659, %651, %634, %620, %617, %609, %601, %573, %565, %529
  %562 = landingpad { ptr, i32 }
          cleanup
  %563 = extractvalue { ptr, i32 } %562, 0
  store ptr %563, ptr %10, align 8
  %564 = extractvalue { ptr, i32 } %562, 1
  store i32 %564, ptr %11, align 4
  br label %763

565:                                              ; preds = %528
  %566 = load ptr, ptr %4, align 8, !tbaa !5
  %567 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %566, ptr noundef @.str.5)
          to label %568 unwind label %561

568:                                              ; preds = %565
  br label %569

569:                                              ; preds = %568, %532
  br label %570

570:                                              ; preds = %569
  %571 = load i32, ptr %25, align 4, !tbaa !9
  %572 = add nsw i32 %571, 1
  store i32 %572, ptr %25, align 4, !tbaa !9
  br label %521, !llvm.loop !18

573:                                              ; preds = %521
  %574 = load ptr, ptr %4, align 8, !tbaa !5
  %575 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %574, ptr noundef @.str.6)
          to label %576 unwind label %561

576:                                              ; preds = %573
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %577

577:                                              ; preds = %585, %576
  %578 = load i32, ptr %25, align 4, !tbaa !9
  %579 = icmp slt i32 %578, 13
  br i1 %579, label %580, label %592

580:                                              ; preds = %577
  call void @llvm.lifetime.start.p0(i64 16, ptr %27) #6
  %581 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %27, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %581)
          to label %582 unwind label %588

582:                                              ; preds = %580
  %583 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %27, i1 noundef zeroext true)
          to label %584 unwind label %588

584:                                              ; preds = %582
  call void @llvm.lifetime.end.p0(i64 16, ptr %27) #6
  br label %585

585:                                              ; preds = %584
  %586 = load i32, ptr %25, align 4, !tbaa !9
  %587 = add nsw i32 %586, 3
  store i32 %587, ptr %25, align 4, !tbaa !9
  br label %577, !llvm.loop !19

588:                                              ; preds = %582, %580
  %589 = landingpad { ptr, i32 }
          cleanup
  %590 = extractvalue { ptr, i32 } %589, 0
  store ptr %590, ptr %10, align 8
  %591 = extractvalue { ptr, i32 } %589, 1
  store i32 %591, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %27) #6
  br label %763

592:                                              ; preds = %577
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %593

593:                                              ; preds = %614, %592
  %594 = load i32, ptr %25, align 4, !tbaa !9
  %595 = icmp slt i32 %594, 13
  br i1 %595, label %596, label %617

596:                                              ; preds = %593
  call void @llvm.lifetime.start.p0(i64 16, ptr %28) #6
  %597 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %28, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %597)
          to label %598 unwind label %605

598:                                              ; preds = %596
  %599 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %28)
          to label %600 unwind label %605

600:                                              ; preds = %598
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #6
  br i1 %599, label %601, label %609

601:                                              ; preds = %600
  %602 = load ptr, ptr %4, align 8, !tbaa !5
  %603 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %602, ptr noundef @.str.4)
          to label %604 unwind label %561

604:                                              ; preds = %601
  br label %613

605:                                              ; preds = %598, %596
  %606 = landingpad { ptr, i32 }
          cleanup
  %607 = extractvalue { ptr, i32 } %606, 0
  store ptr %607, ptr %10, align 8
  %608 = extractvalue { ptr, i32 } %606, 1
  store i32 %608, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %28) #6
  br label %763

609:                                              ; preds = %600
  %610 = load ptr, ptr %4, align 8, !tbaa !5
  %611 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %610, ptr noundef @.str.5)
          to label %612 unwind label %561

612:                                              ; preds = %609
  br label %613

613:                                              ; preds = %612, %604
  br label %614

614:                                              ; preds = %613
  %615 = load i32, ptr %25, align 4, !tbaa !9
  %616 = add nsw i32 %615, 1
  store i32 %616, ptr %25, align 4, !tbaa !9
  br label %593, !llvm.loop !20

617:                                              ; preds = %593
  %618 = load ptr, ptr %4, align 8, !tbaa !5
  %619 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %618, ptr noundef @.str.3)
          to label %620 unwind label %561

620:                                              ; preds = %617
  %621 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef 0)
          to label %622 unwind label %561

622:                                              ; preds = %620
  call void @llvm.lifetime.start.p0(i64 48, ptr %29) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %29, ptr noundef nonnull align 8 dereferenceable(48) %24)
          to label %623 unwind label %638

623:                                              ; preds = %622
  %624 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %24, ptr noundef nonnull align 8 dereferenceable(48) %29)
          to label %625 unwind label %642

625:                                              ; preds = %623
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %29) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %29) #6
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %626

626:                                              ; preds = %656, %625
  %627 = load i32, ptr %25, align 4, !tbaa !9
  %628 = icmp slt i32 %627, 13
  br i1 %628, label %629, label %659

629:                                              ; preds = %626
  call void @llvm.lifetime.start.p0(i64 16, ptr %30) #6
  %630 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %30, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %630)
          to label %631 unwind label %647

631:                                              ; preds = %629
  %632 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %30)
          to label %633 unwind label %647

633:                                              ; preds = %631
  call void @llvm.lifetime.end.p0(i64 16, ptr %30) #6
  br i1 %632, label %634, label %651

634:                                              ; preds = %633
  %635 = load ptr, ptr %4, align 8, !tbaa !5
  %636 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %635, ptr noundef @.str.4)
          to label %637 unwind label %561

637:                                              ; preds = %634
  br label %655

638:                                              ; preds = %622
  %639 = landingpad { ptr, i32 }
          cleanup
  %640 = extractvalue { ptr, i32 } %639, 0
  store ptr %640, ptr %10, align 8
  %641 = extractvalue { ptr, i32 } %639, 1
  store i32 %641, ptr %11, align 4
  br label %646

642:                                              ; preds = %623
  %643 = landingpad { ptr, i32 }
          cleanup
  %644 = extractvalue { ptr, i32 } %643, 0
  store ptr %644, ptr %10, align 8
  %645 = extractvalue { ptr, i32 } %643, 1
  store i32 %645, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %29) #6
  br label %646

646:                                              ; preds = %642, %638
  call void @llvm.lifetime.end.p0(i64 48, ptr %29) #6
  br label %763

647:                                              ; preds = %631, %629
  %648 = landingpad { ptr, i32 }
          cleanup
  %649 = extractvalue { ptr, i32 } %648, 0
  store ptr %649, ptr %10, align 8
  %650 = extractvalue { ptr, i32 } %648, 1
  store i32 %650, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %30) #6
  br label %763

651:                                              ; preds = %633
  %652 = load ptr, ptr %4, align 8, !tbaa !5
  %653 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %652, ptr noundef @.str.5)
          to label %654 unwind label %561

654:                                              ; preds = %651
  br label %655

655:                                              ; preds = %654, %637
  br label %656

656:                                              ; preds = %655
  %657 = load i32, ptr %25, align 4, !tbaa !9
  %658 = add nsw i32 %657, 1
  store i32 %658, ptr %25, align 4, !tbaa !9
  br label %626, !llvm.loop !21

659:                                              ; preds = %626
  %660 = load ptr, ptr %4, align 8, !tbaa !5
  %661 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %660, ptr noundef @.str.6)
          to label %662 unwind label %561

662:                                              ; preds = %659
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %663

663:                                              ; preds = %671, %662
  %664 = load i32, ptr %25, align 4, !tbaa !9
  %665 = icmp slt i32 %664, 13
  br i1 %665, label %666, label %678

666:                                              ; preds = %663
  call void @llvm.lifetime.start.p0(i64 16, ptr %31) #6
  %667 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %667)
          to label %668 unwind label %674

668:                                              ; preds = %666
  %669 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %31, i1 noundef zeroext false)
          to label %670 unwind label %674

670:                                              ; preds = %668
  call void @llvm.lifetime.end.p0(i64 16, ptr %31) #6
  br label %671

671:                                              ; preds = %670
  %672 = load i32, ptr %25, align 4, !tbaa !9
  %673 = add nsw i32 %672, 3
  store i32 %673, ptr %25, align 4, !tbaa !9
  br label %663, !llvm.loop !22

674:                                              ; preds = %668, %666
  %675 = landingpad { ptr, i32 }
          cleanup
  %676 = extractvalue { ptr, i32 } %675, 0
  store ptr %676, ptr %10, align 8
  %677 = extractvalue { ptr, i32 } %675, 1
  store i32 %677, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %31) #6
  br label %763

678:                                              ; preds = %663
  store i32 0, ptr %25, align 4, !tbaa !9
  br label %679

679:                                              ; preds = %700, %678
  %680 = load i32, ptr %25, align 4, !tbaa !9
  %681 = icmp slt i32 %680, 13
  br i1 %681, label %682, label %703

682:                                              ; preds = %679
  call void @llvm.lifetime.start.p0(i64 16, ptr %32) #6
  %683 = load i32, ptr %25, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef %683)
          to label %684 unwind label %691

684:                                              ; preds = %682
  %685 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %32)
          to label %686 unwind label %691

686:                                              ; preds = %684
  call void @llvm.lifetime.end.p0(i64 16, ptr %32) #6
  br i1 %685, label %687, label %695

687:                                              ; preds = %686
  %688 = load ptr, ptr %4, align 8, !tbaa !5
  %689 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %688, ptr noundef @.str.4)
          to label %690 unwind label %561

690:                                              ; preds = %687
  br label %699

691:                                              ; preds = %684, %682
  %692 = landingpad { ptr, i32 }
          cleanup
  %693 = extractvalue { ptr, i32 } %692, 0
  store ptr %693, ptr %10, align 8
  %694 = extractvalue { ptr, i32 } %692, 1
  store i32 %694, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %32) #6
  br label %763

695:                                              ; preds = %686
  %696 = load ptr, ptr %4, align 8, !tbaa !5
  %697 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %696, ptr noundef @.str.5)
          to label %698 unwind label %561

698:                                              ; preds = %695
  br label %699

699:                                              ; preds = %698, %690
  br label %700

700:                                              ; preds = %699
  %701 = load i32, ptr %25, align 4, !tbaa !9
  %702 = add nsw i32 %701, 1
  store i32 %702, ptr %25, align 4, !tbaa !9
  br label %679, !llvm.loop !23

703:                                              ; preds = %679
  %704 = load ptr, ptr %4, align 8, !tbaa !5
  %705 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %704, ptr noundef @.str.3)
          to label %706 unwind label %561

706:                                              ; preds = %703
  %707 = load ptr, ptr %4, align 8, !tbaa !5
  %708 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %707, ptr noundef @.str.7)
          to label %709 unwind label %561

709:                                              ; preds = %706
  call void @llvm.lifetime.start.p0(i64 32, ptr %33) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef 2)
          to label %710 unwind label %745

710:                                              ; preds = %709
  %711 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %708, ptr noundef nonnull align 8 dereferenceable(32) %33)
          to label %712 unwind label %749

712:                                              ; preds = %710
  %713 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %711, ptr noundef @.str.3)
          to label %714 unwind label %749

714:                                              ; preds = %712
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %33) #6
  %715 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %24, ptr noundef @.str.8)
          to label %716 unwind label %561

716:                                              ; preds = %714
  %717 = load ptr, ptr %4, align 8, !tbaa !5
  %718 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %717, ptr noundef @.str.7)
          to label %719 unwind label %561

719:                                              ; preds = %716
  call void @llvm.lifetime.start.p0(i64 32, ptr %34) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %34, ptr noundef nonnull align 8 dereferenceable(48) %24, i32 noundef 2)
          to label %720 unwind label %754

720:                                              ; preds = %719
  %721 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %718, ptr noundef nonnull align 8 dereferenceable(32) %34)
          to label %722 unwind label %758

722:                                              ; preds = %720
  %723 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %721, ptr noundef @.str.3)
          to label %724 unwind label %758

724:                                              ; preds = %722
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %24) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %24) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %22) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %22) #6
  %725 = load ptr, ptr %4, align 8, !tbaa !5
  %726 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %725, ptr noundef @.str.10)
  %727 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %726, ptr noundef @.str.2)
  %728 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %727, i32 noundef 13)
  %729 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %728, ptr noundef @.str.2)
  %730 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %729, i32 noundef 13)
  %731 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %730, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %35) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %36) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %36, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %35, ptr noundef nonnull align 4 dereferenceable(20) %36, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %36) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %37) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef 0, ptr noundef null)
          to label %732 unwind label %765

732:                                              ; preds = %724
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #6
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %733

733:                                              ; preds = %782, %732
  %734 = load i32, ptr %38, align 4, !tbaa !9
  %735 = icmp slt i32 %734, 13
  br i1 %735, label %736, label %785

736:                                              ; preds = %733
  call void @llvm.lifetime.start.p0(i64 16, ptr %39) #6
  %737 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %39, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %737)
          to label %738 unwind label %769

738:                                              ; preds = %736
  %739 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %39)
          to label %740 unwind label %769

740:                                              ; preds = %738
  call void @llvm.lifetime.end.p0(i64 16, ptr %39) #6
  br i1 %739, label %741, label %777

741:                                              ; preds = %740
  %742 = load ptr, ptr %4, align 8, !tbaa !5
  %743 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %742, ptr noundef @.str.4)
          to label %744 unwind label %773

744:                                              ; preds = %741
  br label %781

745:                                              ; preds = %709
  %746 = landingpad { ptr, i32 }
          cleanup
  %747 = extractvalue { ptr, i32 } %746, 0
  store ptr %747, ptr %10, align 8
  %748 = extractvalue { ptr, i32 } %746, 1
  store i32 %748, ptr %11, align 4
  br label %753

749:                                              ; preds = %712, %710
  %750 = landingpad { ptr, i32 }
          cleanup
  %751 = extractvalue { ptr, i32 } %750, 0
  store ptr %751, ptr %10, align 8
  %752 = extractvalue { ptr, i32 } %750, 1
  store i32 %752, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #6
  br label %753

753:                                              ; preds = %749, %745
  call void @llvm.lifetime.end.p0(i64 32, ptr %33) #6
  br label %763

754:                                              ; preds = %719
  %755 = landingpad { ptr, i32 }
          cleanup
  %756 = extractvalue { ptr, i32 } %755, 0
  store ptr %756, ptr %10, align 8
  %757 = extractvalue { ptr, i32 } %755, 1
  store i32 %757, ptr %11, align 4
  br label %762

758:                                              ; preds = %722, %720
  %759 = landingpad { ptr, i32 }
          cleanup
  %760 = extractvalue { ptr, i32 } %759, 0
  store ptr %760, ptr %10, align 8
  %761 = extractvalue { ptr, i32 } %759, 1
  store i32 %761, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #6
  br label %762

762:                                              ; preds = %758, %754
  call void @llvm.lifetime.end.p0(i64 32, ptr %34) #6
  br label %763

763:                                              ; preds = %762, %753, %691, %674, %647, %646, %605, %588, %561, %557
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %24) #6
  br label %764

764:                                              ; preds = %763, %553
  call void @llvm.lifetime.end.p0(i64 48, ptr %24) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %22) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %22) #6
  br label %5409

765:                                              ; preds = %724
  %766 = landingpad { ptr, i32 }
          cleanup
  %767 = extractvalue { ptr, i32 } %766, 0
  store ptr %767, ptr %10, align 8
  %768 = extractvalue { ptr, i32 } %766, 1
  store i32 %768, ptr %11, align 4
  br label %976

769:                                              ; preds = %738, %736
  %770 = landingpad { ptr, i32 }
          cleanup
  %771 = extractvalue { ptr, i32 } %770, 0
  store ptr %771, ptr %10, align 8
  %772 = extractvalue { ptr, i32 } %770, 1
  store i32 %772, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %39) #6
  br label %975

773:                                              ; preds = %928, %926, %918, %915, %907, %899, %871, %863, %846, %832, %829, %821, %813, %785, %777, %741
  %774 = landingpad { ptr, i32 }
          cleanup
  %775 = extractvalue { ptr, i32 } %774, 0
  store ptr %775, ptr %10, align 8
  %776 = extractvalue { ptr, i32 } %774, 1
  store i32 %776, ptr %11, align 4
  br label %975

777:                                              ; preds = %740
  %778 = load ptr, ptr %4, align 8, !tbaa !5
  %779 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %778, ptr noundef @.str.5)
          to label %780 unwind label %773

780:                                              ; preds = %777
  br label %781

781:                                              ; preds = %780, %744
  br label %782

782:                                              ; preds = %781
  %783 = load i32, ptr %38, align 4, !tbaa !9
  %784 = add nsw i32 %783, 1
  store i32 %784, ptr %38, align 4, !tbaa !9
  br label %733, !llvm.loop !24

785:                                              ; preds = %733
  %786 = load ptr, ptr %4, align 8, !tbaa !5
  %787 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %786, ptr noundef @.str.6)
          to label %788 unwind label %773

788:                                              ; preds = %785
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %789

789:                                              ; preds = %797, %788
  %790 = load i32, ptr %38, align 4, !tbaa !9
  %791 = icmp slt i32 %790, 13
  br i1 %791, label %792, label %804

792:                                              ; preds = %789
  call void @llvm.lifetime.start.p0(i64 16, ptr %40) #6
  %793 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %40, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %793)
          to label %794 unwind label %800

794:                                              ; preds = %792
  %795 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %40, i1 noundef zeroext true)
          to label %796 unwind label %800

796:                                              ; preds = %794
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #6
  br label %797

797:                                              ; preds = %796
  %798 = load i32, ptr %38, align 4, !tbaa !9
  %799 = add nsw i32 %798, 3
  store i32 %799, ptr %38, align 4, !tbaa !9
  br label %789, !llvm.loop !25

800:                                              ; preds = %794, %792
  %801 = landingpad { ptr, i32 }
          cleanup
  %802 = extractvalue { ptr, i32 } %801, 0
  store ptr %802, ptr %10, align 8
  %803 = extractvalue { ptr, i32 } %801, 1
  store i32 %803, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %40) #6
  br label %975

804:                                              ; preds = %789
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %805

805:                                              ; preds = %826, %804
  %806 = load i32, ptr %38, align 4, !tbaa !9
  %807 = icmp slt i32 %806, 13
  br i1 %807, label %808, label %829

808:                                              ; preds = %805
  call void @llvm.lifetime.start.p0(i64 16, ptr %41) #6
  %809 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %41, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %809)
          to label %810 unwind label %817

810:                                              ; preds = %808
  %811 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %41)
          to label %812 unwind label %817

812:                                              ; preds = %810
  call void @llvm.lifetime.end.p0(i64 16, ptr %41) #6
  br i1 %811, label %813, label %821

813:                                              ; preds = %812
  %814 = load ptr, ptr %4, align 8, !tbaa !5
  %815 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %814, ptr noundef @.str.4)
          to label %816 unwind label %773

816:                                              ; preds = %813
  br label %825

817:                                              ; preds = %810, %808
  %818 = landingpad { ptr, i32 }
          cleanup
  %819 = extractvalue { ptr, i32 } %818, 0
  store ptr %819, ptr %10, align 8
  %820 = extractvalue { ptr, i32 } %818, 1
  store i32 %820, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %41) #6
  br label %975

821:                                              ; preds = %812
  %822 = load ptr, ptr %4, align 8, !tbaa !5
  %823 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %822, ptr noundef @.str.5)
          to label %824 unwind label %773

824:                                              ; preds = %821
  br label %825

825:                                              ; preds = %824, %816
  br label %826

826:                                              ; preds = %825
  %827 = load i32, ptr %38, align 4, !tbaa !9
  %828 = add nsw i32 %827, 1
  store i32 %828, ptr %38, align 4, !tbaa !9
  br label %805, !llvm.loop !26

829:                                              ; preds = %805
  %830 = load ptr, ptr %4, align 8, !tbaa !5
  %831 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %830, ptr noundef @.str.3)
          to label %832 unwind label %773

832:                                              ; preds = %829
  %833 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef 0)
          to label %834 unwind label %773

834:                                              ; preds = %832
  call void @llvm.lifetime.start.p0(i64 48, ptr %42) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %42, ptr noundef nonnull align 8 dereferenceable(48) %37)
          to label %835 unwind label %850

835:                                              ; preds = %834
  %836 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %37, ptr noundef nonnull align 8 dereferenceable(48) %42)
          to label %837 unwind label %854

837:                                              ; preds = %835
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %42) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %42) #6
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %838

838:                                              ; preds = %868, %837
  %839 = load i32, ptr %38, align 4, !tbaa !9
  %840 = icmp slt i32 %839, 13
  br i1 %840, label %841, label %871

841:                                              ; preds = %838
  call void @llvm.lifetime.start.p0(i64 16, ptr %43) #6
  %842 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %842)
          to label %843 unwind label %859

843:                                              ; preds = %841
  %844 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %845 unwind label %859

845:                                              ; preds = %843
  call void @llvm.lifetime.end.p0(i64 16, ptr %43) #6
  br i1 %844, label %846, label %863

846:                                              ; preds = %845
  %847 = load ptr, ptr %4, align 8, !tbaa !5
  %848 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %847, ptr noundef @.str.4)
          to label %849 unwind label %773

849:                                              ; preds = %846
  br label %867

850:                                              ; preds = %834
  %851 = landingpad { ptr, i32 }
          cleanup
  %852 = extractvalue { ptr, i32 } %851, 0
  store ptr %852, ptr %10, align 8
  %853 = extractvalue { ptr, i32 } %851, 1
  store i32 %853, ptr %11, align 4
  br label %858

854:                                              ; preds = %835
  %855 = landingpad { ptr, i32 }
          cleanup
  %856 = extractvalue { ptr, i32 } %855, 0
  store ptr %856, ptr %10, align 8
  %857 = extractvalue { ptr, i32 } %855, 1
  store i32 %857, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %42) #6
  br label %858

858:                                              ; preds = %854, %850
  call void @llvm.lifetime.end.p0(i64 48, ptr %42) #6
  br label %975

859:                                              ; preds = %843, %841
  %860 = landingpad { ptr, i32 }
          cleanup
  %861 = extractvalue { ptr, i32 } %860, 0
  store ptr %861, ptr %10, align 8
  %862 = extractvalue { ptr, i32 } %860, 1
  store i32 %862, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %43) #6
  br label %975

863:                                              ; preds = %845
  %864 = load ptr, ptr %4, align 8, !tbaa !5
  %865 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %864, ptr noundef @.str.5)
          to label %866 unwind label %773

866:                                              ; preds = %863
  br label %867

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

868:                                              ; preds = %867
  %869 = load i32, ptr %38, align 4, !tbaa !9
  %870 = add nsw i32 %869, 1
  store i32 %870, ptr %38, align 4, !tbaa !9
  br label %838, !llvm.loop !27

871:                                              ; preds = %838
  %872 = load ptr, ptr %4, align 8, !tbaa !5
  %873 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %872, ptr noundef @.str.6)
          to label %874 unwind label %773

874:                                              ; preds = %871
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %875

875:                                              ; preds = %883, %874
  %876 = load i32, ptr %38, align 4, !tbaa !9
  %877 = icmp slt i32 %876, 13
  br i1 %877, label %878, label %890

878:                                              ; preds = %875
  call void @llvm.lifetime.start.p0(i64 16, ptr %44) #6
  %879 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %879)
          to label %880 unwind label %886

880:                                              ; preds = %878
  %881 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext false)
          to label %882 unwind label %886

882:                                              ; preds = %880
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #6
  br label %883

883:                                              ; preds = %882
  %884 = load i32, ptr %38, align 4, !tbaa !9
  %885 = add nsw i32 %884, 3
  store i32 %885, ptr %38, align 4, !tbaa !9
  br label %875, !llvm.loop !28

886:                                              ; preds = %880, %878
  %887 = landingpad { ptr, i32 }
          cleanup
  %888 = extractvalue { ptr, i32 } %887, 0
  store ptr %888, ptr %10, align 8
  %889 = extractvalue { ptr, i32 } %887, 1
  store i32 %889, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %44) #6
  br label %975

890:                                              ; preds = %875
  store i32 0, ptr %38, align 4, !tbaa !9
  br label %891

891:                                              ; preds = %912, %890
  %892 = load i32, ptr %38, align 4, !tbaa !9
  %893 = icmp slt i32 %892, 13
  br i1 %893, label %894, label %915

894:                                              ; preds = %891
  call void @llvm.lifetime.start.p0(i64 16, ptr %45) #6
  %895 = load i32, ptr %38, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef %895)
          to label %896 unwind label %903

896:                                              ; preds = %894
  %897 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %898 unwind label %903

898:                                              ; preds = %896
  call void @llvm.lifetime.end.p0(i64 16, ptr %45) #6
  br i1 %897, label %899, label %907

899:                                              ; preds = %898
  %900 = load ptr, ptr %4, align 8, !tbaa !5
  %901 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %900, ptr noundef @.str.4)
          to label %902 unwind label %773

902:                                              ; preds = %899
  br label %911

903:                                              ; preds = %896, %894
  %904 = landingpad { ptr, i32 }
          cleanup
  %905 = extractvalue { ptr, i32 } %904, 0
  store ptr %905, ptr %10, align 8
  %906 = extractvalue { ptr, i32 } %904, 1
  store i32 %906, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %45) #6
  br label %975

907:                                              ; preds = %898
  %908 = load ptr, ptr %4, align 8, !tbaa !5
  %909 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %908, ptr noundef @.str.5)
          to label %910 unwind label %773

910:                                              ; preds = %907
  br label %911

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

912:                                              ; preds = %911
  %913 = load i32, ptr %38, align 4, !tbaa !9
  %914 = add nsw i32 %913, 1
  store i32 %914, ptr %38, align 4, !tbaa !9
  br label %891, !llvm.loop !29

915:                                              ; preds = %891
  %916 = load ptr, ptr %4, align 8, !tbaa !5
  %917 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %916, ptr noundef @.str.3)
          to label %918 unwind label %773

918:                                              ; preds = %915
  %919 = load ptr, ptr %4, align 8, !tbaa !5
  %920 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %919, ptr noundef @.str.7)
          to label %921 unwind label %773

921:                                              ; preds = %918
  call void @llvm.lifetime.start.p0(i64 32, ptr %46) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef 2)
          to label %922 unwind label %957

922:                                              ; preds = %921
  %923 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %920, ptr noundef nonnull align 8 dereferenceable(32) %46)
          to label %924 unwind label %961

924:                                              ; preds = %922
  %925 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %923, ptr noundef @.str.3)
          to label %926 unwind label %961

926:                                              ; preds = %924
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %46) #6
  %927 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %37, ptr noundef @.str.8)
          to label %928 unwind label %773

928:                                              ; preds = %926
  %929 = load ptr, ptr %4, align 8, !tbaa !5
  %930 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %929, ptr noundef @.str.7)
          to label %931 unwind label %773

931:                                              ; preds = %928
  call void @llvm.lifetime.start.p0(i64 32, ptr %47) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %37, i32 noundef 2)
          to label %932 unwind label %966

932:                                              ; preds = %931
  %933 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %930, ptr noundef nonnull align 8 dereferenceable(32) %47)
          to label %934 unwind label %970

934:                                              ; preds = %932
  %935 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %933, ptr noundef @.str.3)
          to label %936 unwind label %970

936:                                              ; preds = %934
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %37) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %37) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %35) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %35) #6
  %937 = load ptr, ptr %4, align 8, !tbaa !5
  %938 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %937, ptr noundef @.str.11)
  %939 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %938, ptr noundef @.str.2)
  %940 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %939, i32 noundef 13)
  %941 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %940, ptr noundef @.str.2)
  %942 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %941, i32 noundef 13)
  %943 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %942, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %48) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %49) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %49, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %48, ptr noundef nonnull align 4 dereferenceable(20) %49, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %50) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef 0, ptr noundef null)
          to label %944 unwind label %977

944:                                              ; preds = %936
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #6
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %945

945:                                              ; preds = %994, %944
  %946 = load i32, ptr %51, align 4, !tbaa !9
  %947 = icmp slt i32 %946, 13
  br i1 %947, label %948, label %997

948:                                              ; preds = %945
  call void @llvm.lifetime.start.p0(i64 16, ptr %52) #6
  %949 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %52, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %949)
          to label %950 unwind label %981

950:                                              ; preds = %948
  %951 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %52)
          to label %952 unwind label %981

952:                                              ; preds = %950
  call void @llvm.lifetime.end.p0(i64 16, ptr %52) #6
  br i1 %951, label %953, label %989

953:                                              ; preds = %952
  %954 = load ptr, ptr %4, align 8, !tbaa !5
  %955 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %954, ptr noundef @.str.4)
          to label %956 unwind label %985

956:                                              ; preds = %953
  br label %993

957:                                              ; preds = %921
  %958 = landingpad { ptr, i32 }
          cleanup
  %959 = extractvalue { ptr, i32 } %958, 0
  store ptr %959, ptr %10, align 8
  %960 = extractvalue { ptr, i32 } %958, 1
  store i32 %960, ptr %11, align 4
  br label %965

961:                                              ; preds = %924, %922
  %962 = landingpad { ptr, i32 }
          cleanup
  %963 = extractvalue { ptr, i32 } %962, 0
  store ptr %963, ptr %10, align 8
  %964 = extractvalue { ptr, i32 } %962, 1
  store i32 %964, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #6
  br label %965

965:                                              ; preds = %961, %957
  call void @llvm.lifetime.end.p0(i64 32, ptr %46) #6
  br label %975

966:                                              ; preds = %931
  %967 = landingpad { ptr, i32 }
          cleanup
  %968 = extractvalue { ptr, i32 } %967, 0
  store ptr %968, ptr %10, align 8
  %969 = extractvalue { ptr, i32 } %967, 1
  store i32 %969, ptr %11, align 4
  br label %974

970:                                              ; preds = %934, %932
  %971 = landingpad { ptr, i32 }
          cleanup
  %972 = extractvalue { ptr, i32 } %971, 0
  store ptr %972, ptr %10, align 8
  %973 = extractvalue { ptr, i32 } %971, 1
  store i32 %973, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #6
  br label %974

974:                                              ; preds = %970, %966
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #6
  br label %975

975:                                              ; preds = %974, %965, %903, %886, %859, %858, %817, %800, %773, %769
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %37) #6
  br label %976

976:                                              ; preds = %975, %765
  call void @llvm.lifetime.end.p0(i64 48, ptr %37) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %35) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %35) #6
  br label %5409

977:                                              ; preds = %936
  %978 = landingpad { ptr, i32 }
          cleanup
  %979 = extractvalue { ptr, i32 } %978, 0
  store ptr %979, ptr %10, align 8
  %980 = extractvalue { ptr, i32 } %978, 1
  store i32 %980, ptr %11, align 4
  br label %1188

981:                                              ; preds = %950, %948
  %982 = landingpad { ptr, i32 }
          cleanup
  %983 = extractvalue { ptr, i32 } %982, 0
  store ptr %983, ptr %10, align 8
  %984 = extractvalue { ptr, i32 } %982, 1
  store i32 %984, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %52) #6
  br label %1187

985:                                              ; preds = %1140, %1138, %1130, %1127, %1119, %1111, %1083, %1075, %1058, %1044, %1041, %1033, %1025, %997, %989, %953
  %986 = landingpad { ptr, i32 }
          cleanup
  %987 = extractvalue { ptr, i32 } %986, 0
  store ptr %987, ptr %10, align 8
  %988 = extractvalue { ptr, i32 } %986, 1
  store i32 %988, ptr %11, align 4
  br label %1187

989:                                              ; preds = %952
  %990 = load ptr, ptr %4, align 8, !tbaa !5
  %991 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %990, ptr noundef @.str.5)
          to label %992 unwind label %985

992:                                              ; preds = %989
  br label %993

993:                                              ; preds = %992, %956
  br label %994

994:                                              ; preds = %993
  %995 = load i32, ptr %51, align 4, !tbaa !9
  %996 = add nsw i32 %995, 1
  store i32 %996, ptr %51, align 4, !tbaa !9
  br label %945, !llvm.loop !30

997:                                              ; preds = %945
  %998 = load ptr, ptr %4, align 8, !tbaa !5
  %999 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %998, ptr noundef @.str.6)
          to label %1000 unwind label %985

1000:                                             ; preds = %997
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %1001

1001:                                             ; preds = %1009, %1000
  %1002 = load i32, ptr %51, align 4, !tbaa !9
  %1003 = icmp slt i32 %1002, 13
  br i1 %1003, label %1004, label %1016

1004:                                             ; preds = %1001
  call void @llvm.lifetime.start.p0(i64 16, ptr %53) #6
  %1005 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %53, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %1005)
          to label %1006 unwind label %1012

1006:                                             ; preds = %1004
  %1007 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %53, i1 noundef zeroext true)
          to label %1008 unwind label %1012

1008:                                             ; preds = %1006
  call void @llvm.lifetime.end.p0(i64 16, ptr %53) #6
  br label %1009

1009:                                             ; preds = %1008
  %1010 = load i32, ptr %51, align 4, !tbaa !9
  %1011 = add nsw i32 %1010, 3
  store i32 %1011, ptr %51, align 4, !tbaa !9
  br label %1001, !llvm.loop !31

1012:                                             ; preds = %1006, %1004
  %1013 = landingpad { ptr, i32 }
          cleanup
  %1014 = extractvalue { ptr, i32 } %1013, 0
  store ptr %1014, ptr %10, align 8
  %1015 = extractvalue { ptr, i32 } %1013, 1
  store i32 %1015, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %53) #6
  br label %1187

1016:                                             ; preds = %1001
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %1017

1017:                                             ; preds = %1038, %1016
  %1018 = load i32, ptr %51, align 4, !tbaa !9
  %1019 = icmp slt i32 %1018, 13
  br i1 %1019, label %1020, label %1041

1020:                                             ; preds = %1017
  call void @llvm.lifetime.start.p0(i64 16, ptr %54) #6
  %1021 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %54, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %1021)
          to label %1022 unwind label %1029

1022:                                             ; preds = %1020
  %1023 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %54)
          to label %1024 unwind label %1029

1024:                                             ; preds = %1022
  call void @llvm.lifetime.end.p0(i64 16, ptr %54) #6
  br i1 %1023, label %1025, label %1033

1025:                                             ; preds = %1024
  %1026 = load ptr, ptr %4, align 8, !tbaa !5
  %1027 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1026, ptr noundef @.str.4)
          to label %1028 unwind label %985

1028:                                             ; preds = %1025
  br label %1037

1029:                                             ; preds = %1022, %1020
  %1030 = landingpad { ptr, i32 }
          cleanup
  %1031 = extractvalue { ptr, i32 } %1030, 0
  store ptr %1031, ptr %10, align 8
  %1032 = extractvalue { ptr, i32 } %1030, 1
  store i32 %1032, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %54) #6
  br label %1187

1033:                                             ; preds = %1024
  %1034 = load ptr, ptr %4, align 8, !tbaa !5
  %1035 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1034, ptr noundef @.str.5)
          to label %1036 unwind label %985

1036:                                             ; preds = %1033
  br label %1037

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

1038:                                             ; preds = %1037
  %1039 = load i32, ptr %51, align 4, !tbaa !9
  %1040 = add nsw i32 %1039, 1
  store i32 %1040, ptr %51, align 4, !tbaa !9
  br label %1017, !llvm.loop !32

1041:                                             ; preds = %1017
  %1042 = load ptr, ptr %4, align 8, !tbaa !5
  %1043 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1042, ptr noundef @.str.3)
          to label %1044 unwind label %985

1044:                                             ; preds = %1041
  %1045 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef 0)
          to label %1046 unwind label %985

1046:                                             ; preds = %1044
  call void @llvm.lifetime.start.p0(i64 48, ptr %55) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %50)
          to label %1047 unwind label %1062

1047:                                             ; preds = %1046
  %1048 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %50, ptr noundef nonnull align 8 dereferenceable(48) %55)
          to label %1049 unwind label %1066

1049:                                             ; preds = %1047
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %55) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %55) #6
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %1050

1050:                                             ; preds = %1080, %1049
  %1051 = load i32, ptr %51, align 4, !tbaa !9
  %1052 = icmp slt i32 %1051, 13
  br i1 %1052, label %1053, label %1083

1053:                                             ; preds = %1050
  call void @llvm.lifetime.start.p0(i64 16, ptr %56) #6
  %1054 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %1054)
          to label %1055 unwind label %1071

1055:                                             ; preds = %1053
  %1056 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %56)
          to label %1057 unwind label %1071

1057:                                             ; preds = %1055
  call void @llvm.lifetime.end.p0(i64 16, ptr %56) #6
  br i1 %1056, label %1058, label %1075

1058:                                             ; preds = %1057
  %1059 = load ptr, ptr %4, align 8, !tbaa !5
  %1060 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1059, ptr noundef @.str.4)
          to label %1061 unwind label %985

1061:                                             ; preds = %1058
  br label %1079

1062:                                             ; preds = %1046
  %1063 = landingpad { ptr, i32 }
          cleanup
  %1064 = extractvalue { ptr, i32 } %1063, 0
  store ptr %1064, ptr %10, align 8
  %1065 = extractvalue { ptr, i32 } %1063, 1
  store i32 %1065, ptr %11, align 4
  br label %1070

1066:                                             ; preds = %1047
  %1067 = landingpad { ptr, i32 }
          cleanup
  %1068 = extractvalue { ptr, i32 } %1067, 0
  store ptr %1068, ptr %10, align 8
  %1069 = extractvalue { ptr, i32 } %1067, 1
  store i32 %1069, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %55) #6
  br label %1070

1070:                                             ; preds = %1066, %1062
  call void @llvm.lifetime.end.p0(i64 48, ptr %55) #6
  br label %1187

1071:                                             ; preds = %1055, %1053
  %1072 = landingpad { ptr, i32 }
          cleanup
  %1073 = extractvalue { ptr, i32 } %1072, 0
  store ptr %1073, ptr %10, align 8
  %1074 = extractvalue { ptr, i32 } %1072, 1
  store i32 %1074, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %56) #6
  br label %1187

1075:                                             ; preds = %1057
  %1076 = load ptr, ptr %4, align 8, !tbaa !5
  %1077 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1076, ptr noundef @.str.5)
          to label %1078 unwind label %985

1078:                                             ; preds = %1075
  br label %1079

1079:                                             ; preds = %1078, %1061
  br label %1080

1080:                                             ; preds = %1079
  %1081 = load i32, ptr %51, align 4, !tbaa !9
  %1082 = add nsw i32 %1081, 1
  store i32 %1082, ptr %51, align 4, !tbaa !9
  br label %1050, !llvm.loop !33

1083:                                             ; preds = %1050
  %1084 = load ptr, ptr %4, align 8, !tbaa !5
  %1085 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1084, ptr noundef @.str.6)
          to label %1086 unwind label %985

1086:                                             ; preds = %1083
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %1087

1087:                                             ; preds = %1095, %1086
  %1088 = load i32, ptr %51, align 4, !tbaa !9
  %1089 = icmp slt i32 %1088, 13
  br i1 %1089, label %1090, label %1102

1090:                                             ; preds = %1087
  call void @llvm.lifetime.start.p0(i64 16, ptr %57) #6
  %1091 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %1091)
          to label %1092 unwind label %1098

1092:                                             ; preds = %1090
  %1093 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %57, i1 noundef zeroext false)
          to label %1094 unwind label %1098

1094:                                             ; preds = %1092
  call void @llvm.lifetime.end.p0(i64 16, ptr %57) #6
  br label %1095

1095:                                             ; preds = %1094
  %1096 = load i32, ptr %51, align 4, !tbaa !9
  %1097 = add nsw i32 %1096, 3
  store i32 %1097, ptr %51, align 4, !tbaa !9
  br label %1087, !llvm.loop !34

1098:                                             ; preds = %1092, %1090
  %1099 = landingpad { ptr, i32 }
          cleanup
  %1100 = extractvalue { ptr, i32 } %1099, 0
  store ptr %1100, ptr %10, align 8
  %1101 = extractvalue { ptr, i32 } %1099, 1
  store i32 %1101, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %57) #6
  br label %1187

1102:                                             ; preds = %1087
  store i32 0, ptr %51, align 4, !tbaa !9
  br label %1103

1103:                                             ; preds = %1124, %1102
  %1104 = load i32, ptr %51, align 4, !tbaa !9
  %1105 = icmp slt i32 %1104, 13
  br i1 %1105, label %1106, label %1127

1106:                                             ; preds = %1103
  call void @llvm.lifetime.start.p0(i64 16, ptr %58) #6
  %1107 = load i32, ptr %51, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %58, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef %1107)
          to label %1108 unwind label %1115

1108:                                             ; preds = %1106
  %1109 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %58)
          to label %1110 unwind label %1115

1110:                                             ; preds = %1108
  call void @llvm.lifetime.end.p0(i64 16, ptr %58) #6
  br i1 %1109, label %1111, label %1119

1111:                                             ; preds = %1110
  %1112 = load ptr, ptr %4, align 8, !tbaa !5
  %1113 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1112, ptr noundef @.str.4)
          to label %1114 unwind label %985

1114:                                             ; preds = %1111
  br label %1123

1115:                                             ; preds = %1108, %1106
  %1116 = landingpad { ptr, i32 }
          cleanup
  %1117 = extractvalue { ptr, i32 } %1116, 0
  store ptr %1117, ptr %10, align 8
  %1118 = extractvalue { ptr, i32 } %1116, 1
  store i32 %1118, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %58) #6
  br label %1187

1119:                                             ; preds = %1110
  %1120 = load ptr, ptr %4, align 8, !tbaa !5
  %1121 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1120, ptr noundef @.str.5)
          to label %1122 unwind label %985

1122:                                             ; preds = %1119
  br label %1123

1123:                                             ; preds = %1122, %1114
  br label %1124

1124:                                             ; preds = %1123
  %1125 = load i32, ptr %51, align 4, !tbaa !9
  %1126 = add nsw i32 %1125, 1
  store i32 %1126, ptr %51, align 4, !tbaa !9
  br label %1103, !llvm.loop !35

1127:                                             ; preds = %1103
  %1128 = load ptr, ptr %4, align 8, !tbaa !5
  %1129 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1128, ptr noundef @.str.3)
          to label %1130 unwind label %985

1130:                                             ; preds = %1127
  %1131 = load ptr, ptr %4, align 8, !tbaa !5
  %1132 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1131, ptr noundef @.str.7)
          to label %1133 unwind label %985

1133:                                             ; preds = %1130
  call void @llvm.lifetime.start.p0(i64 32, ptr %59) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef 2)
          to label %1134 unwind label %1169

1134:                                             ; preds = %1133
  %1135 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1132, ptr noundef nonnull align 8 dereferenceable(32) %59)
          to label %1136 unwind label %1173

1136:                                             ; preds = %1134
  %1137 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1135, ptr noundef @.str.3)
          to label %1138 unwind label %1173

1138:                                             ; preds = %1136
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %59) #6
  %1139 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %50, ptr noundef @.str.8)
          to label %1140 unwind label %985

1140:                                             ; preds = %1138
  %1141 = load ptr, ptr %4, align 8, !tbaa !5
  %1142 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1141, ptr noundef @.str.7)
          to label %1143 unwind label %985

1143:                                             ; preds = %1140
  call void @llvm.lifetime.start.p0(i64 32, ptr %60) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %50, i32 noundef 2)
          to label %1144 unwind label %1178

1144:                                             ; preds = %1143
  %1145 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1142, ptr noundef nonnull align 8 dereferenceable(32) %60)
          to label %1146 unwind label %1182

1146:                                             ; preds = %1144
  %1147 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1145, ptr noundef @.str.3)
          to label %1148 unwind label %1182

1148:                                             ; preds = %1146
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %60) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %50) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %50) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %48) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %48) #6
  %1149 = load ptr, ptr %4, align 8, !tbaa !5
  %1150 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1149, ptr noundef @.str)
  %1151 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1150, ptr noundef @.str.2)
  %1152 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1151, i32 noundef 13)
  %1153 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1152, ptr noundef @.str.2)
  %1154 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1153, i32 noundef 0)
  %1155 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1154, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %61) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %62) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %62, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %61, ptr noundef nonnull align 4 dereferenceable(20) %62, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %62) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %63) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef 0, ptr noundef null)
          to label %1156 unwind label %1189

1156:                                             ; preds = %1148
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #6
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1157

1157:                                             ; preds = %1206, %1156
  %1158 = load i32, ptr %64, align 4, !tbaa !9
  %1159 = icmp slt i32 %1158, 13
  br i1 %1159, label %1160, label %1209

1160:                                             ; preds = %1157
  call void @llvm.lifetime.start.p0(i64 16, ptr %65) #6
  %1161 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %65, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1161)
          to label %1162 unwind label %1193

1162:                                             ; preds = %1160
  %1163 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %65)
          to label %1164 unwind label %1193

1164:                                             ; preds = %1162
  call void @llvm.lifetime.end.p0(i64 16, ptr %65) #6
  br i1 %1163, label %1165, label %1201

1165:                                             ; preds = %1164
  %1166 = load ptr, ptr %4, align 8, !tbaa !5
  %1167 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1166, ptr noundef @.str.4)
          to label %1168 unwind label %1197

1168:                                             ; preds = %1165
  br label %1205

1169:                                             ; preds = %1133
  %1170 = landingpad { ptr, i32 }
          cleanup
  %1171 = extractvalue { ptr, i32 } %1170, 0
  store ptr %1171, ptr %10, align 8
  %1172 = extractvalue { ptr, i32 } %1170, 1
  store i32 %1172, ptr %11, align 4
  br label %1177

1173:                                             ; preds = %1136, %1134
  %1174 = landingpad { ptr, i32 }
          cleanup
  %1175 = extractvalue { ptr, i32 } %1174, 0
  store ptr %1175, ptr %10, align 8
  %1176 = extractvalue { ptr, i32 } %1174, 1
  store i32 %1176, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #6
  br label %1177

1177:                                             ; preds = %1173, %1169
  call void @llvm.lifetime.end.p0(i64 32, ptr %59) #6
  br label %1187

1178:                                             ; preds = %1143
  %1179 = landingpad { ptr, i32 }
          cleanup
  %1180 = extractvalue { ptr, i32 } %1179, 0
  store ptr %1180, ptr %10, align 8
  %1181 = extractvalue { ptr, i32 } %1179, 1
  store i32 %1181, ptr %11, align 4
  br label %1186

1182:                                             ; preds = %1146, %1144
  %1183 = landingpad { ptr, i32 }
          cleanup
  %1184 = extractvalue { ptr, i32 } %1183, 0
  store ptr %1184, ptr %10, align 8
  %1185 = extractvalue { ptr, i32 } %1183, 1
  store i32 %1185, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #6
  br label %1186

1186:                                             ; preds = %1182, %1178
  call void @llvm.lifetime.end.p0(i64 32, ptr %60) #6
  br label %1187

1187:                                             ; preds = %1186, %1177, %1115, %1098, %1071, %1070, %1029, %1012, %985, %981
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %50) #6
  br label %1188

1188:                                             ; preds = %1187, %977
  call void @llvm.lifetime.end.p0(i64 48, ptr %50) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %48) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %48) #6
  br label %5409

1189:                                             ; preds = %1148
  %1190 = landingpad { ptr, i32 }
          cleanup
  %1191 = extractvalue { ptr, i32 } %1190, 0
  store ptr %1191, ptr %10, align 8
  %1192 = extractvalue { ptr, i32 } %1190, 1
  store i32 %1192, ptr %11, align 4
  br label %1400

1193:                                             ; preds = %1162, %1160
  %1194 = landingpad { ptr, i32 }
          cleanup
  %1195 = extractvalue { ptr, i32 } %1194, 0
  store ptr %1195, ptr %10, align 8
  %1196 = extractvalue { ptr, i32 } %1194, 1
  store i32 %1196, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %65) #6
  br label %1399

1197:                                             ; preds = %1352, %1350, %1342, %1339, %1331, %1323, %1295, %1287, %1270, %1256, %1253, %1245, %1237, %1209, %1201, %1165
  %1198 = landingpad { ptr, i32 }
          cleanup
  %1199 = extractvalue { ptr, i32 } %1198, 0
  store ptr %1199, ptr %10, align 8
  %1200 = extractvalue { ptr, i32 } %1198, 1
  store i32 %1200, ptr %11, align 4
  br label %1399

1201:                                             ; preds = %1164
  %1202 = load ptr, ptr %4, align 8, !tbaa !5
  %1203 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1202, ptr noundef @.str.5)
          to label %1204 unwind label %1197

1204:                                             ; preds = %1201
  br label %1205

1205:                                             ; preds = %1204, %1168
  br label %1206

1206:                                             ; preds = %1205
  %1207 = load i32, ptr %64, align 4, !tbaa !9
  %1208 = add nsw i32 %1207, 1
  store i32 %1208, ptr %64, align 4, !tbaa !9
  br label %1157, !llvm.loop !36

1209:                                             ; preds = %1157
  %1210 = load ptr, ptr %4, align 8, !tbaa !5
  %1211 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1210, ptr noundef @.str.6)
          to label %1212 unwind label %1197

1212:                                             ; preds = %1209
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1213

1213:                                             ; preds = %1221, %1212
  %1214 = load i32, ptr %64, align 4, !tbaa !9
  %1215 = icmp slt i32 %1214, 13
  br i1 %1215, label %1216, label %1228

1216:                                             ; preds = %1213
  call void @llvm.lifetime.start.p0(i64 16, ptr %66) #6
  %1217 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %66, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1217)
          to label %1218 unwind label %1224

1218:                                             ; preds = %1216
  %1219 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %66, i1 noundef zeroext true)
          to label %1220 unwind label %1224

1220:                                             ; preds = %1218
  call void @llvm.lifetime.end.p0(i64 16, ptr %66) #6
  br label %1221

1221:                                             ; preds = %1220
  %1222 = load i32, ptr %64, align 4, !tbaa !9
  %1223 = add nsw i32 %1222, 3
  store i32 %1223, ptr %64, align 4, !tbaa !9
  br label %1213, !llvm.loop !37

1224:                                             ; preds = %1218, %1216
  %1225 = landingpad { ptr, i32 }
          cleanup
  %1226 = extractvalue { ptr, i32 } %1225, 0
  store ptr %1226, ptr %10, align 8
  %1227 = extractvalue { ptr, i32 } %1225, 1
  store i32 %1227, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %66) #6
  br label %1399

1228:                                             ; preds = %1213
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1229

1229:                                             ; preds = %1250, %1228
  %1230 = load i32, ptr %64, align 4, !tbaa !9
  %1231 = icmp slt i32 %1230, 13
  br i1 %1231, label %1232, label %1253

1232:                                             ; preds = %1229
  call void @llvm.lifetime.start.p0(i64 16, ptr %67) #6
  %1233 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1233)
          to label %1234 unwind label %1241

1234:                                             ; preds = %1232
  %1235 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %1236 unwind label %1241

1236:                                             ; preds = %1234
  call void @llvm.lifetime.end.p0(i64 16, ptr %67) #6
  br i1 %1235, label %1237, label %1245

1237:                                             ; preds = %1236
  %1238 = load ptr, ptr %4, align 8, !tbaa !5
  %1239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1238, ptr noundef @.str.4)
          to label %1240 unwind label %1197

1240:                                             ; preds = %1237
  br label %1249

1241:                                             ; preds = %1234, %1232
  %1242 = landingpad { ptr, i32 }
          cleanup
  %1243 = extractvalue { ptr, i32 } %1242, 0
  store ptr %1243, ptr %10, align 8
  %1244 = extractvalue { ptr, i32 } %1242, 1
  store i32 %1244, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %67) #6
  br label %1399

1245:                                             ; preds = %1236
  %1246 = load ptr, ptr %4, align 8, !tbaa !5
  %1247 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1246, ptr noundef @.str.5)
          to label %1248 unwind label %1197

1248:                                             ; preds = %1245
  br label %1249

1249:                                             ; preds = %1248, %1240
  br label %1250

1250:                                             ; preds = %1249
  %1251 = load i32, ptr %64, align 4, !tbaa !9
  %1252 = add nsw i32 %1251, 1
  store i32 %1252, ptr %64, align 4, !tbaa !9
  br label %1229, !llvm.loop !38

1253:                                             ; preds = %1229
  %1254 = load ptr, ptr %4, align 8, !tbaa !5
  %1255 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1254, ptr noundef @.str.3)
          to label %1256 unwind label %1197

1256:                                             ; preds = %1253
  %1257 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef 0)
          to label %1258 unwind label %1197

1258:                                             ; preds = %1256
  call void @llvm.lifetime.start.p0(i64 48, ptr %68) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %63)
          to label %1259 unwind label %1274

1259:                                             ; preds = %1258
  %1260 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %63, ptr noundef nonnull align 8 dereferenceable(48) %68)
          to label %1261 unwind label %1278

1261:                                             ; preds = %1259
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %68) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %68) #6
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1262

1262:                                             ; preds = %1292, %1261
  %1263 = load i32, ptr %64, align 4, !tbaa !9
  %1264 = icmp slt i32 %1263, 13
  br i1 %1264, label %1265, label %1295

1265:                                             ; preds = %1262
  call void @llvm.lifetime.start.p0(i64 16, ptr %69) #6
  %1266 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1266)
          to label %1267 unwind label %1283

1267:                                             ; preds = %1265
  %1268 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %1269 unwind label %1283

1269:                                             ; preds = %1267
  call void @llvm.lifetime.end.p0(i64 16, ptr %69) #6
  br i1 %1268, label %1270, label %1287

1270:                                             ; preds = %1269
  %1271 = load ptr, ptr %4, align 8, !tbaa !5
  %1272 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1271, ptr noundef @.str.4)
          to label %1273 unwind label %1197

1273:                                             ; preds = %1270
  br label %1291

1274:                                             ; preds = %1258
  %1275 = landingpad { ptr, i32 }
          cleanup
  %1276 = extractvalue { ptr, i32 } %1275, 0
  store ptr %1276, ptr %10, align 8
  %1277 = extractvalue { ptr, i32 } %1275, 1
  store i32 %1277, ptr %11, align 4
  br label %1282

1278:                                             ; preds = %1259
  %1279 = landingpad { ptr, i32 }
          cleanup
  %1280 = extractvalue { ptr, i32 } %1279, 0
  store ptr %1280, ptr %10, align 8
  %1281 = extractvalue { ptr, i32 } %1279, 1
  store i32 %1281, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %68) #6
  br label %1282

1282:                                             ; preds = %1278, %1274
  call void @llvm.lifetime.end.p0(i64 48, ptr %68) #6
  br label %1399

1283:                                             ; preds = %1267, %1265
  %1284 = landingpad { ptr, i32 }
          cleanup
  %1285 = extractvalue { ptr, i32 } %1284, 0
  store ptr %1285, ptr %10, align 8
  %1286 = extractvalue { ptr, i32 } %1284, 1
  store i32 %1286, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %69) #6
  br label %1399

1287:                                             ; preds = %1269
  %1288 = load ptr, ptr %4, align 8, !tbaa !5
  %1289 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1288, ptr noundef @.str.5)
          to label %1290 unwind label %1197

1290:                                             ; preds = %1287
  br label %1291

1291:                                             ; preds = %1290, %1273
  br label %1292

1292:                                             ; preds = %1291
  %1293 = load i32, ptr %64, align 4, !tbaa !9
  %1294 = add nsw i32 %1293, 1
  store i32 %1294, ptr %64, align 4, !tbaa !9
  br label %1262, !llvm.loop !39

1295:                                             ; preds = %1262
  %1296 = load ptr, ptr %4, align 8, !tbaa !5
  %1297 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1296, ptr noundef @.str.6)
          to label %1298 unwind label %1197

1298:                                             ; preds = %1295
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1299

1299:                                             ; preds = %1307, %1298
  %1300 = load i32, ptr %64, align 4, !tbaa !9
  %1301 = icmp slt i32 %1300, 13
  br i1 %1301, label %1302, label %1314

1302:                                             ; preds = %1299
  call void @llvm.lifetime.start.p0(i64 16, ptr %70) #6
  %1303 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %70, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1303)
          to label %1304 unwind label %1310

1304:                                             ; preds = %1302
  %1305 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %70, i1 noundef zeroext false)
          to label %1306 unwind label %1310

1306:                                             ; preds = %1304
  call void @llvm.lifetime.end.p0(i64 16, ptr %70) #6
  br label %1307

1307:                                             ; preds = %1306
  %1308 = load i32, ptr %64, align 4, !tbaa !9
  %1309 = add nsw i32 %1308, 3
  store i32 %1309, ptr %64, align 4, !tbaa !9
  br label %1299, !llvm.loop !40

1310:                                             ; preds = %1304, %1302
  %1311 = landingpad { ptr, i32 }
          cleanup
  %1312 = extractvalue { ptr, i32 } %1311, 0
  store ptr %1312, ptr %10, align 8
  %1313 = extractvalue { ptr, i32 } %1311, 1
  store i32 %1313, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %70) #6
  br label %1399

1314:                                             ; preds = %1299
  store i32 0, ptr %64, align 4, !tbaa !9
  br label %1315

1315:                                             ; preds = %1336, %1314
  %1316 = load i32, ptr %64, align 4, !tbaa !9
  %1317 = icmp slt i32 %1316, 13
  br i1 %1317, label %1318, label %1339

1318:                                             ; preds = %1315
  call void @llvm.lifetime.start.p0(i64 16, ptr %71) #6
  %1319 = load i32, ptr %64, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef %1319)
          to label %1320 unwind label %1327

1320:                                             ; preds = %1318
  %1321 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %1322 unwind label %1327

1322:                                             ; preds = %1320
  call void @llvm.lifetime.end.p0(i64 16, ptr %71) #6
  br i1 %1321, label %1323, label %1331

1323:                                             ; preds = %1322
  %1324 = load ptr, ptr %4, align 8, !tbaa !5
  %1325 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1324, ptr noundef @.str.4)
          to label %1326 unwind label %1197

1326:                                             ; preds = %1323
  br label %1335

1327:                                             ; preds = %1320, %1318
  %1328 = landingpad { ptr, i32 }
          cleanup
  %1329 = extractvalue { ptr, i32 } %1328, 0
  store ptr %1329, ptr %10, align 8
  %1330 = extractvalue { ptr, i32 } %1328, 1
  store i32 %1330, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %71) #6
  br label %1399

1331:                                             ; preds = %1322
  %1332 = load ptr, ptr %4, align 8, !tbaa !5
  %1333 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1332, ptr noundef @.str.5)
          to label %1334 unwind label %1197

1334:                                             ; preds = %1331
  br label %1335

1335:                                             ; preds = %1334, %1326
  br label %1336

1336:                                             ; preds = %1335
  %1337 = load i32, ptr %64, align 4, !tbaa !9
  %1338 = add nsw i32 %1337, 1
  store i32 %1338, ptr %64, align 4, !tbaa !9
  br label %1315, !llvm.loop !41

1339:                                             ; preds = %1315
  %1340 = load ptr, ptr %4, align 8, !tbaa !5
  %1341 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1340, ptr noundef @.str.3)
          to label %1342 unwind label %1197

1342:                                             ; preds = %1339
  %1343 = load ptr, ptr %4, align 8, !tbaa !5
  %1344 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1343, ptr noundef @.str.7)
          to label %1345 unwind label %1197

1345:                                             ; preds = %1342
  call void @llvm.lifetime.start.p0(i64 32, ptr %72) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef 2)
          to label %1346 unwind label %1381

1346:                                             ; preds = %1345
  %1347 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1344, ptr noundef nonnull align 8 dereferenceable(32) %72)
          to label %1348 unwind label %1385

1348:                                             ; preds = %1346
  %1349 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1347, ptr noundef @.str.3)
          to label %1350 unwind label %1385

1350:                                             ; preds = %1348
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %72) #6
  %1351 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %63, ptr noundef @.str.8)
          to label %1352 unwind label %1197

1352:                                             ; preds = %1350
  %1353 = load ptr, ptr %4, align 8, !tbaa !5
  %1354 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1353, ptr noundef @.str.7)
          to label %1355 unwind label %1197

1355:                                             ; preds = %1352
  call void @llvm.lifetime.start.p0(i64 32, ptr %73) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %63, i32 noundef 2)
          to label %1356 unwind label %1390

1356:                                             ; preds = %1355
  %1357 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1354, ptr noundef nonnull align 8 dereferenceable(32) %73)
          to label %1358 unwind label %1394

1358:                                             ; preds = %1356
  %1359 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1357, ptr noundef @.str.3)
          to label %1360 unwind label %1394

1360:                                             ; preds = %1358
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %63) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %63) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %61) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %61) #6
  %1361 = load ptr, ptr %4, align 8, !tbaa !5
  %1362 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1361, ptr noundef @.str.9)
  %1363 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1362, ptr noundef @.str.2)
  %1364 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1363, i32 noundef 13)
  %1365 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1364, ptr noundef @.str.2)
  %1366 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1365, i32 noundef 0)
  %1367 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1366, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %74) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %75) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %75, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %74, ptr noundef nonnull align 4 dereferenceable(20) %75, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %75) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %76) #6
  invoke void @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef 0, ptr noundef null)
          to label %1368 unwind label %1401

1368:                                             ; preds = %1360
  call void @llvm.lifetime.start.p0(i64 4, ptr %77) #6
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1369

1369:                                             ; preds = %1418, %1368
  %1370 = load i32, ptr %77, align 4, !tbaa !9
  %1371 = icmp slt i32 %1370, 13
  br i1 %1371, label %1372, label %1421

1372:                                             ; preds = %1369
  call void @llvm.lifetime.start.p0(i64 16, ptr %78) #6
  %1373 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %78, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1373)
          to label %1374 unwind label %1405

1374:                                             ; preds = %1372
  %1375 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %78)
          to label %1376 unwind label %1405

1376:                                             ; preds = %1374
  call void @llvm.lifetime.end.p0(i64 16, ptr %78) #6
  br i1 %1375, label %1377, label %1413

1377:                                             ; preds = %1376
  %1378 = load ptr, ptr %4, align 8, !tbaa !5
  %1379 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1378, ptr noundef @.str.4)
          to label %1380 unwind label %1409

1380:                                             ; preds = %1377
  br label %1417

1381:                                             ; preds = %1345
  %1382 = landingpad { ptr, i32 }
          cleanup
  %1383 = extractvalue { ptr, i32 } %1382, 0
  store ptr %1383, ptr %10, align 8
  %1384 = extractvalue { ptr, i32 } %1382, 1
  store i32 %1384, ptr %11, align 4
  br label %1389

1385:                                             ; preds = %1348, %1346
  %1386 = landingpad { ptr, i32 }
          cleanup
  %1387 = extractvalue { ptr, i32 } %1386, 0
  store ptr %1387, ptr %10, align 8
  %1388 = extractvalue { ptr, i32 } %1386, 1
  store i32 %1388, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %72) #6
  br label %1389

1389:                                             ; preds = %1385, %1381
  call void @llvm.lifetime.end.p0(i64 32, ptr %72) #6
  br label %1399

1390:                                             ; preds = %1355
  %1391 = landingpad { ptr, i32 }
          cleanup
  %1392 = extractvalue { ptr, i32 } %1391, 0
  store ptr %1392, ptr %10, align 8
  %1393 = extractvalue { ptr, i32 } %1391, 1
  store i32 %1393, ptr %11, align 4
  br label %1398

1394:                                             ; preds = %1358, %1356
  %1395 = landingpad { ptr, i32 }
          cleanup
  %1396 = extractvalue { ptr, i32 } %1395, 0
  store ptr %1396, ptr %10, align 8
  %1397 = extractvalue { ptr, i32 } %1395, 1
  store i32 %1397, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #6
  br label %1398

1398:                                             ; preds = %1394, %1390
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #6
  br label %1399

1399:                                             ; preds = %1398, %1389, %1327, %1310, %1283, %1282, %1241, %1224, %1197, %1193
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %63) #6
  br label %1400

1400:                                             ; preds = %1399, %1189
  call void @llvm.lifetime.end.p0(i64 48, ptr %63) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %61) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %61) #6
  br label %5409

1401:                                             ; preds = %1360
  %1402 = landingpad { ptr, i32 }
          cleanup
  %1403 = extractvalue { ptr, i32 } %1402, 0
  store ptr %1403, ptr %10, align 8
  %1404 = extractvalue { ptr, i32 } %1402, 1
  store i32 %1404, ptr %11, align 4
  br label %1612

1405:                                             ; preds = %1374, %1372
  %1406 = landingpad { ptr, i32 }
          cleanup
  %1407 = extractvalue { ptr, i32 } %1406, 0
  store ptr %1407, ptr %10, align 8
  %1408 = extractvalue { ptr, i32 } %1406, 1
  store i32 %1408, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %78) #6
  br label %1611

1409:                                             ; preds = %1564, %1562, %1554, %1551, %1543, %1535, %1507, %1499, %1482, %1468, %1465, %1457, %1449, %1421, %1413, %1377
  %1410 = landingpad { ptr, i32 }
          cleanup
  %1411 = extractvalue { ptr, i32 } %1410, 0
  store ptr %1411, ptr %10, align 8
  %1412 = extractvalue { ptr, i32 } %1410, 1
  store i32 %1412, ptr %11, align 4
  br label %1611

1413:                                             ; preds = %1376
  %1414 = load ptr, ptr %4, align 8, !tbaa !5
  %1415 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1414, ptr noundef @.str.5)
          to label %1416 unwind label %1409

1416:                                             ; preds = %1413
  br label %1417

1417:                                             ; preds = %1416, %1380
  br label %1418

1418:                                             ; preds = %1417
  %1419 = load i32, ptr %77, align 4, !tbaa !9
  %1420 = add nsw i32 %1419, 1
  store i32 %1420, ptr %77, align 4, !tbaa !9
  br label %1369, !llvm.loop !42

1421:                                             ; preds = %1369
  %1422 = load ptr, ptr %4, align 8, !tbaa !5
  %1423 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1422, ptr noundef @.str.6)
          to label %1424 unwind label %1409

1424:                                             ; preds = %1421
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1425

1425:                                             ; preds = %1433, %1424
  %1426 = load i32, ptr %77, align 4, !tbaa !9
  %1427 = icmp slt i32 %1426, 13
  br i1 %1427, label %1428, label %1440

1428:                                             ; preds = %1425
  call void @llvm.lifetime.start.p0(i64 16, ptr %79) #6
  %1429 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1429)
          to label %1430 unwind label %1436

1430:                                             ; preds = %1428
  %1431 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %79, i1 noundef zeroext true)
          to label %1432 unwind label %1436

1432:                                             ; preds = %1430
  call void @llvm.lifetime.end.p0(i64 16, ptr %79) #6
  br label %1433

1433:                                             ; preds = %1432
  %1434 = load i32, ptr %77, align 4, !tbaa !9
  %1435 = add nsw i32 %1434, 3
  store i32 %1435, ptr %77, align 4, !tbaa !9
  br label %1425, !llvm.loop !43

1436:                                             ; preds = %1430, %1428
  %1437 = landingpad { ptr, i32 }
          cleanup
  %1438 = extractvalue { ptr, i32 } %1437, 0
  store ptr %1438, ptr %10, align 8
  %1439 = extractvalue { ptr, i32 } %1437, 1
  store i32 %1439, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %79) #6
  br label %1611

1440:                                             ; preds = %1425
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1441

1441:                                             ; preds = %1462, %1440
  %1442 = load i32, ptr %77, align 4, !tbaa !9
  %1443 = icmp slt i32 %1442, 13
  br i1 %1443, label %1444, label %1465

1444:                                             ; preds = %1441
  call void @llvm.lifetime.start.p0(i64 16, ptr %80) #6
  %1445 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1445)
          to label %1446 unwind label %1453

1446:                                             ; preds = %1444
  %1447 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %80)
          to label %1448 unwind label %1453

1448:                                             ; preds = %1446
  call void @llvm.lifetime.end.p0(i64 16, ptr %80) #6
  br i1 %1447, label %1449, label %1457

1449:                                             ; preds = %1448
  %1450 = load ptr, ptr %4, align 8, !tbaa !5
  %1451 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1450, ptr noundef @.str.4)
          to label %1452 unwind label %1409

1452:                                             ; preds = %1449
  br label %1461

1453:                                             ; preds = %1446, %1444
  %1454 = landingpad { ptr, i32 }
          cleanup
  %1455 = extractvalue { ptr, i32 } %1454, 0
  store ptr %1455, ptr %10, align 8
  %1456 = extractvalue { ptr, i32 } %1454, 1
  store i32 %1456, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %80) #6
  br label %1611

1457:                                             ; preds = %1448
  %1458 = load ptr, ptr %4, align 8, !tbaa !5
  %1459 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1458, ptr noundef @.str.5)
          to label %1460 unwind label %1409

1460:                                             ; preds = %1457
  br label %1461

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

1462:                                             ; preds = %1461
  %1463 = load i32, ptr %77, align 4, !tbaa !9
  %1464 = add nsw i32 %1463, 1
  store i32 %1464, ptr %77, align 4, !tbaa !9
  br label %1441, !llvm.loop !44

1465:                                             ; preds = %1441
  %1466 = load ptr, ptr %4, align 8, !tbaa !5
  %1467 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1466, ptr noundef @.str.3)
          to label %1468 unwind label %1409

1468:                                             ; preds = %1465
  %1469 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef 0)
          to label %1470 unwind label %1409

1470:                                             ; preds = %1468
  call void @llvm.lifetime.start.p0(i64 48, ptr %81) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %76)
          to label %1471 unwind label %1486

1471:                                             ; preds = %1470
  %1472 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %76, ptr noundef nonnull align 8 dereferenceable(48) %81)
          to label %1473 unwind label %1490

1473:                                             ; preds = %1471
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %81) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %81) #6
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1474

1474:                                             ; preds = %1504, %1473
  %1475 = load i32, ptr %77, align 4, !tbaa !9
  %1476 = icmp slt i32 %1475, 13
  br i1 %1476, label %1477, label %1507

1477:                                             ; preds = %1474
  call void @llvm.lifetime.start.p0(i64 16, ptr %82) #6
  %1478 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %82, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1478)
          to label %1479 unwind label %1495

1479:                                             ; preds = %1477
  %1480 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %82)
          to label %1481 unwind label %1495

1481:                                             ; preds = %1479
  call void @llvm.lifetime.end.p0(i64 16, ptr %82) #6
  br i1 %1480, label %1482, label %1499

1482:                                             ; preds = %1481
  %1483 = load ptr, ptr %4, align 8, !tbaa !5
  %1484 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1483, ptr noundef @.str.4)
          to label %1485 unwind label %1409

1485:                                             ; preds = %1482
  br label %1503

1486:                                             ; preds = %1470
  %1487 = landingpad { ptr, i32 }
          cleanup
  %1488 = extractvalue { ptr, i32 } %1487, 0
  store ptr %1488, ptr %10, align 8
  %1489 = extractvalue { ptr, i32 } %1487, 1
  store i32 %1489, ptr %11, align 4
  br label %1494

1490:                                             ; preds = %1471
  %1491 = landingpad { ptr, i32 }
          cleanup
  %1492 = extractvalue { ptr, i32 } %1491, 0
  store ptr %1492, ptr %10, align 8
  %1493 = extractvalue { ptr, i32 } %1491, 1
  store i32 %1493, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %81) #6
  br label %1494

1494:                                             ; preds = %1490, %1486
  call void @llvm.lifetime.end.p0(i64 48, ptr %81) #6
  br label %1611

1495:                                             ; preds = %1479, %1477
  %1496 = landingpad { ptr, i32 }
          cleanup
  %1497 = extractvalue { ptr, i32 } %1496, 0
  store ptr %1497, ptr %10, align 8
  %1498 = extractvalue { ptr, i32 } %1496, 1
  store i32 %1498, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %82) #6
  br label %1611

1499:                                             ; preds = %1481
  %1500 = load ptr, ptr %4, align 8, !tbaa !5
  %1501 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1500, ptr noundef @.str.5)
          to label %1502 unwind label %1409

1502:                                             ; preds = %1499
  br label %1503

1503:                                             ; preds = %1502, %1485
  br label %1504

1504:                                             ; preds = %1503
  %1505 = load i32, ptr %77, align 4, !tbaa !9
  %1506 = add nsw i32 %1505, 1
  store i32 %1506, ptr %77, align 4, !tbaa !9
  br label %1474, !llvm.loop !45

1507:                                             ; preds = %1474
  %1508 = load ptr, ptr %4, align 8, !tbaa !5
  %1509 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1508, ptr noundef @.str.6)
          to label %1510 unwind label %1409

1510:                                             ; preds = %1507
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1511

1511:                                             ; preds = %1519, %1510
  %1512 = load i32, ptr %77, align 4, !tbaa !9
  %1513 = icmp slt i32 %1512, 13
  br i1 %1513, label %1514, label %1526

1514:                                             ; preds = %1511
  call void @llvm.lifetime.start.p0(i64 16, ptr %83) #6
  %1515 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1515)
          to label %1516 unwind label %1522

1516:                                             ; preds = %1514
  %1517 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %83, i1 noundef zeroext false)
          to label %1518 unwind label %1522

1518:                                             ; preds = %1516
  call void @llvm.lifetime.end.p0(i64 16, ptr %83) #6
  br label %1519

1519:                                             ; preds = %1518
  %1520 = load i32, ptr %77, align 4, !tbaa !9
  %1521 = add nsw i32 %1520, 3
  store i32 %1521, ptr %77, align 4, !tbaa !9
  br label %1511, !llvm.loop !46

1522:                                             ; preds = %1516, %1514
  %1523 = landingpad { ptr, i32 }
          cleanup
  %1524 = extractvalue { ptr, i32 } %1523, 0
  store ptr %1524, ptr %10, align 8
  %1525 = extractvalue { ptr, i32 } %1523, 1
  store i32 %1525, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %83) #6
  br label %1611

1526:                                             ; preds = %1511
  store i32 0, ptr %77, align 4, !tbaa !9
  br label %1527

1527:                                             ; preds = %1548, %1526
  %1528 = load i32, ptr %77, align 4, !tbaa !9
  %1529 = icmp slt i32 %1528, 13
  br i1 %1529, label %1530, label %1551

1530:                                             ; preds = %1527
  call void @llvm.lifetime.start.p0(i64 16, ptr %84) #6
  %1531 = load i32, ptr %77, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef %1531)
          to label %1532 unwind label %1539

1532:                                             ; preds = %1530
  %1533 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %84)
          to label %1534 unwind label %1539

1534:                                             ; preds = %1532
  call void @llvm.lifetime.end.p0(i64 16, ptr %84) #6
  br i1 %1533, label %1535, label %1543

1535:                                             ; preds = %1534
  %1536 = load ptr, ptr %4, align 8, !tbaa !5
  %1537 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1536, ptr noundef @.str.4)
          to label %1538 unwind label %1409

1538:                                             ; preds = %1535
  br label %1547

1539:                                             ; preds = %1532, %1530
  %1540 = landingpad { ptr, i32 }
          cleanup
  %1541 = extractvalue { ptr, i32 } %1540, 0
  store ptr %1541, ptr %10, align 8
  %1542 = extractvalue { ptr, i32 } %1540, 1
  store i32 %1542, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %84) #6
  br label %1611

1543:                                             ; preds = %1534
  %1544 = load ptr, ptr %4, align 8, !tbaa !5
  %1545 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1544, ptr noundef @.str.5)
          to label %1546 unwind label %1409

1546:                                             ; preds = %1543
  br label %1547

1547:                                             ; preds = %1546, %1538
  br label %1548

1548:                                             ; preds = %1547
  %1549 = load i32, ptr %77, align 4, !tbaa !9
  %1550 = add nsw i32 %1549, 1
  store i32 %1550, ptr %77, align 4, !tbaa !9
  br label %1527, !llvm.loop !47

1551:                                             ; preds = %1527
  %1552 = load ptr, ptr %4, align 8, !tbaa !5
  %1553 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1552, ptr noundef @.str.3)
          to label %1554 unwind label %1409

1554:                                             ; preds = %1551
  %1555 = load ptr, ptr %4, align 8, !tbaa !5
  %1556 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1555, ptr noundef @.str.7)
          to label %1557 unwind label %1409

1557:                                             ; preds = %1554
  call void @llvm.lifetime.start.p0(i64 32, ptr %85) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef 2)
          to label %1558 unwind label %1593

1558:                                             ; preds = %1557
  %1559 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1556, ptr noundef nonnull align 8 dereferenceable(32) %85)
          to label %1560 unwind label %1597

1560:                                             ; preds = %1558
  %1561 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1559, ptr noundef @.str.3)
          to label %1562 unwind label %1597

1562:                                             ; preds = %1560
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %85) #6
  %1563 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %76, ptr noundef @.str.8)
          to label %1564 unwind label %1409

1564:                                             ; preds = %1562
  %1565 = load ptr, ptr %4, align 8, !tbaa !5
  %1566 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1565, ptr noundef @.str.7)
          to label %1567 unwind label %1409

1567:                                             ; preds = %1564
  call void @llvm.lifetime.start.p0(i64 32, ptr %86) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %86, ptr noundef nonnull align 8 dereferenceable(48) %76, i32 noundef 2)
          to label %1568 unwind label %1602

1568:                                             ; preds = %1567
  %1569 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1566, ptr noundef nonnull align 8 dereferenceable(32) %86)
          to label %1570 unwind label %1606

1570:                                             ; preds = %1568
  %1571 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1569, ptr noundef @.str.3)
          to label %1572 unwind label %1606

1572:                                             ; preds = %1570
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %86) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %76) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %76) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %74) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %74) #6
  %1573 = load ptr, ptr %4, align 8, !tbaa !5
  %1574 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1573, ptr noundef @.str.10)
  %1575 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1574, ptr noundef @.str.2)
  %1576 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1575, i32 noundef 13)
  %1577 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1576, ptr noundef @.str.2)
  %1578 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1577, i32 noundef 0)
  %1579 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1578, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %87) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %88) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %88, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %87, ptr noundef nonnull align 4 dereferenceable(20) %88, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %88) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %89) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef 0, ptr noundef null)
          to label %1580 unwind label %1613

1580:                                             ; preds = %1572
  call void @llvm.lifetime.start.p0(i64 4, ptr %90) #6
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1581

1581:                                             ; preds = %1630, %1580
  %1582 = load i32, ptr %90, align 4, !tbaa !9
  %1583 = icmp slt i32 %1582, 13
  br i1 %1583, label %1584, label %1633

1584:                                             ; preds = %1581
  call void @llvm.lifetime.start.p0(i64 16, ptr %91) #6
  %1585 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1585)
          to label %1586 unwind label %1617

1586:                                             ; preds = %1584
  %1587 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %1588 unwind label %1617

1588:                                             ; preds = %1586
  call void @llvm.lifetime.end.p0(i64 16, ptr %91) #6
  br i1 %1587, label %1589, label %1625

1589:                                             ; preds = %1588
  %1590 = load ptr, ptr %4, align 8, !tbaa !5
  %1591 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1590, ptr noundef @.str.4)
          to label %1592 unwind label %1621

1592:                                             ; preds = %1589
  br label %1629

1593:                                             ; preds = %1557
  %1594 = landingpad { ptr, i32 }
          cleanup
  %1595 = extractvalue { ptr, i32 } %1594, 0
  store ptr %1595, ptr %10, align 8
  %1596 = extractvalue { ptr, i32 } %1594, 1
  store i32 %1596, ptr %11, align 4
  br label %1601

1597:                                             ; preds = %1560, %1558
  %1598 = landingpad { ptr, i32 }
          cleanup
  %1599 = extractvalue { ptr, i32 } %1598, 0
  store ptr %1599, ptr %10, align 8
  %1600 = extractvalue { ptr, i32 } %1598, 1
  store i32 %1600, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %85) #6
  br label %1601

1601:                                             ; preds = %1597, %1593
  call void @llvm.lifetime.end.p0(i64 32, ptr %85) #6
  br label %1611

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

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

1610:                                             ; preds = %1606, %1602
  call void @llvm.lifetime.end.p0(i64 32, ptr %86) #6
  br label %1611

1611:                                             ; preds = %1610, %1601, %1539, %1522, %1495, %1494, %1453, %1436, %1409, %1405
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %76) #6
  br label %1612

1612:                                             ; preds = %1611, %1401
  call void @llvm.lifetime.end.p0(i64 48, ptr %76) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %74) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %74) #6
  br label %5409

1613:                                             ; preds = %1572
  %1614 = landingpad { ptr, i32 }
          cleanup
  %1615 = extractvalue { ptr, i32 } %1614, 0
  store ptr %1615, ptr %10, align 8
  %1616 = extractvalue { ptr, i32 } %1614, 1
  store i32 %1616, ptr %11, align 4
  br label %1824

1617:                                             ; preds = %1586, %1584
  %1618 = landingpad { ptr, i32 }
          cleanup
  %1619 = extractvalue { ptr, i32 } %1618, 0
  store ptr %1619, ptr %10, align 8
  %1620 = extractvalue { ptr, i32 } %1618, 1
  store i32 %1620, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %91) #6
  br label %1823

1621:                                             ; preds = %1776, %1774, %1766, %1763, %1755, %1747, %1719, %1711, %1694, %1680, %1677, %1669, %1661, %1633, %1625, %1589
  %1622 = landingpad { ptr, i32 }
          cleanup
  %1623 = extractvalue { ptr, i32 } %1622, 0
  store ptr %1623, ptr %10, align 8
  %1624 = extractvalue { ptr, i32 } %1622, 1
  store i32 %1624, ptr %11, align 4
  br label %1823

1625:                                             ; preds = %1588
  %1626 = load ptr, ptr %4, align 8, !tbaa !5
  %1627 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1626, ptr noundef @.str.5)
          to label %1628 unwind label %1621

1628:                                             ; preds = %1625
  br label %1629

1629:                                             ; preds = %1628, %1592
  br label %1630

1630:                                             ; preds = %1629
  %1631 = load i32, ptr %90, align 4, !tbaa !9
  %1632 = add nsw i32 %1631, 1
  store i32 %1632, ptr %90, align 4, !tbaa !9
  br label %1581, !llvm.loop !48

1633:                                             ; preds = %1581
  %1634 = load ptr, ptr %4, align 8, !tbaa !5
  %1635 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1634, ptr noundef @.str.6)
          to label %1636 unwind label %1621

1636:                                             ; preds = %1633
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1637

1637:                                             ; preds = %1645, %1636
  %1638 = load i32, ptr %90, align 4, !tbaa !9
  %1639 = icmp slt i32 %1638, 13
  br i1 %1639, label %1640, label %1652

1640:                                             ; preds = %1637
  call void @llvm.lifetime.start.p0(i64 16, ptr %92) #6
  %1641 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1641)
          to label %1642 unwind label %1648

1642:                                             ; preds = %1640
  %1643 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %1644 unwind label %1648

1644:                                             ; preds = %1642
  call void @llvm.lifetime.end.p0(i64 16, ptr %92) #6
  br label %1645

1645:                                             ; preds = %1644
  %1646 = load i32, ptr %90, align 4, !tbaa !9
  %1647 = add nsw i32 %1646, 3
  store i32 %1647, ptr %90, align 4, !tbaa !9
  br label %1637, !llvm.loop !49

1648:                                             ; preds = %1642, %1640
  %1649 = landingpad { ptr, i32 }
          cleanup
  %1650 = extractvalue { ptr, i32 } %1649, 0
  store ptr %1650, ptr %10, align 8
  %1651 = extractvalue { ptr, i32 } %1649, 1
  store i32 %1651, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %92) #6
  br label %1823

1652:                                             ; preds = %1637
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1653

1653:                                             ; preds = %1674, %1652
  %1654 = load i32, ptr %90, align 4, !tbaa !9
  %1655 = icmp slt i32 %1654, 13
  br i1 %1655, label %1656, label %1677

1656:                                             ; preds = %1653
  call void @llvm.lifetime.start.p0(i64 16, ptr %93) #6
  %1657 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1657)
          to label %1658 unwind label %1665

1658:                                             ; preds = %1656
  %1659 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %1660 unwind label %1665

1660:                                             ; preds = %1658
  call void @llvm.lifetime.end.p0(i64 16, ptr %93) #6
  br i1 %1659, label %1661, label %1669

1661:                                             ; preds = %1660
  %1662 = load ptr, ptr %4, align 8, !tbaa !5
  %1663 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1662, ptr noundef @.str.4)
          to label %1664 unwind label %1621

1664:                                             ; preds = %1661
  br label %1673

1665:                                             ; preds = %1658, %1656
  %1666 = landingpad { ptr, i32 }
          cleanup
  %1667 = extractvalue { ptr, i32 } %1666, 0
  store ptr %1667, ptr %10, align 8
  %1668 = extractvalue { ptr, i32 } %1666, 1
  store i32 %1668, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %93) #6
  br label %1823

1669:                                             ; preds = %1660
  %1670 = load ptr, ptr %4, align 8, !tbaa !5
  %1671 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1670, ptr noundef @.str.5)
          to label %1672 unwind label %1621

1672:                                             ; preds = %1669
  br label %1673

1673:                                             ; preds = %1672, %1664
  br label %1674

1674:                                             ; preds = %1673
  %1675 = load i32, ptr %90, align 4, !tbaa !9
  %1676 = add nsw i32 %1675, 1
  store i32 %1676, ptr %90, align 4, !tbaa !9
  br label %1653, !llvm.loop !50

1677:                                             ; preds = %1653
  %1678 = load ptr, ptr %4, align 8, !tbaa !5
  %1679 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1678, ptr noundef @.str.3)
          to label %1680 unwind label %1621

1680:                                             ; preds = %1677
  %1681 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef 0)
          to label %1682 unwind label %1621

1682:                                             ; preds = %1680
  call void @llvm.lifetime.start.p0(i64 48, ptr %94) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %94, ptr noundef nonnull align 8 dereferenceable(48) %89)
          to label %1683 unwind label %1698

1683:                                             ; preds = %1682
  %1684 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %89, ptr noundef nonnull align 8 dereferenceable(48) %94)
          to label %1685 unwind label %1702

1685:                                             ; preds = %1683
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %94) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %94) #6
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1686

1686:                                             ; preds = %1716, %1685
  %1687 = load i32, ptr %90, align 4, !tbaa !9
  %1688 = icmp slt i32 %1687, 13
  br i1 %1688, label %1689, label %1719

1689:                                             ; preds = %1686
  call void @llvm.lifetime.start.p0(i64 16, ptr %95) #6
  %1690 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1690)
          to label %1691 unwind label %1707

1691:                                             ; preds = %1689
  %1692 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %1693 unwind label %1707

1693:                                             ; preds = %1691
  call void @llvm.lifetime.end.p0(i64 16, ptr %95) #6
  br i1 %1692, label %1694, label %1711

1694:                                             ; preds = %1693
  %1695 = load ptr, ptr %4, align 8, !tbaa !5
  %1696 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1695, ptr noundef @.str.4)
          to label %1697 unwind label %1621

1697:                                             ; preds = %1694
  br label %1715

1698:                                             ; preds = %1682
  %1699 = landingpad { ptr, i32 }
          cleanup
  %1700 = extractvalue { ptr, i32 } %1699, 0
  store ptr %1700, ptr %10, align 8
  %1701 = extractvalue { ptr, i32 } %1699, 1
  store i32 %1701, ptr %11, align 4
  br label %1706

1702:                                             ; preds = %1683
  %1703 = landingpad { ptr, i32 }
          cleanup
  %1704 = extractvalue { ptr, i32 } %1703, 0
  store ptr %1704, ptr %10, align 8
  %1705 = extractvalue { ptr, i32 } %1703, 1
  store i32 %1705, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %94) #6
  br label %1706

1706:                                             ; preds = %1702, %1698
  call void @llvm.lifetime.end.p0(i64 48, ptr %94) #6
  br label %1823

1707:                                             ; preds = %1691, %1689
  %1708 = landingpad { ptr, i32 }
          cleanup
  %1709 = extractvalue { ptr, i32 } %1708, 0
  store ptr %1709, ptr %10, align 8
  %1710 = extractvalue { ptr, i32 } %1708, 1
  store i32 %1710, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %95) #6
  br label %1823

1711:                                             ; preds = %1693
  %1712 = load ptr, ptr %4, align 8, !tbaa !5
  %1713 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1712, ptr noundef @.str.5)
          to label %1714 unwind label %1621

1714:                                             ; preds = %1711
  br label %1715

1715:                                             ; preds = %1714, %1697
  br label %1716

1716:                                             ; preds = %1715
  %1717 = load i32, ptr %90, align 4, !tbaa !9
  %1718 = add nsw i32 %1717, 1
  store i32 %1718, ptr %90, align 4, !tbaa !9
  br label %1686, !llvm.loop !51

1719:                                             ; preds = %1686
  %1720 = load ptr, ptr %4, align 8, !tbaa !5
  %1721 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1720, ptr noundef @.str.6)
          to label %1722 unwind label %1621

1722:                                             ; preds = %1719
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1723

1723:                                             ; preds = %1731, %1722
  %1724 = load i32, ptr %90, align 4, !tbaa !9
  %1725 = icmp slt i32 %1724, 13
  br i1 %1725, label %1726, label %1738

1726:                                             ; preds = %1723
  call void @llvm.lifetime.start.p0(i64 16, ptr %96) #6
  %1727 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1727)
          to label %1728 unwind label %1734

1728:                                             ; preds = %1726
  %1729 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %1730 unwind label %1734

1730:                                             ; preds = %1728
  call void @llvm.lifetime.end.p0(i64 16, ptr %96) #6
  br label %1731

1731:                                             ; preds = %1730
  %1732 = load i32, ptr %90, align 4, !tbaa !9
  %1733 = add nsw i32 %1732, 3
  store i32 %1733, ptr %90, align 4, !tbaa !9
  br label %1723, !llvm.loop !52

1734:                                             ; preds = %1728, %1726
  %1735 = landingpad { ptr, i32 }
          cleanup
  %1736 = extractvalue { ptr, i32 } %1735, 0
  store ptr %1736, ptr %10, align 8
  %1737 = extractvalue { ptr, i32 } %1735, 1
  store i32 %1737, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %96) #6
  br label %1823

1738:                                             ; preds = %1723
  store i32 0, ptr %90, align 4, !tbaa !9
  br label %1739

1739:                                             ; preds = %1760, %1738
  %1740 = load i32, ptr %90, align 4, !tbaa !9
  %1741 = icmp slt i32 %1740, 13
  br i1 %1741, label %1742, label %1763

1742:                                             ; preds = %1739
  call void @llvm.lifetime.start.p0(i64 16, ptr %97) #6
  %1743 = load i32, ptr %90, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef %1743)
          to label %1744 unwind label %1751

1744:                                             ; preds = %1742
  %1745 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %1746 unwind label %1751

1746:                                             ; preds = %1744
  call void @llvm.lifetime.end.p0(i64 16, ptr %97) #6
  br i1 %1745, label %1747, label %1755

1747:                                             ; preds = %1746
  %1748 = load ptr, ptr %4, align 8, !tbaa !5
  %1749 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1748, ptr noundef @.str.4)
          to label %1750 unwind label %1621

1750:                                             ; preds = %1747
  br label %1759

1751:                                             ; preds = %1744, %1742
  %1752 = landingpad { ptr, i32 }
          cleanup
  %1753 = extractvalue { ptr, i32 } %1752, 0
  store ptr %1753, ptr %10, align 8
  %1754 = extractvalue { ptr, i32 } %1752, 1
  store i32 %1754, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %97) #6
  br label %1823

1755:                                             ; preds = %1746
  %1756 = load ptr, ptr %4, align 8, !tbaa !5
  %1757 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1756, ptr noundef @.str.5)
          to label %1758 unwind label %1621

1758:                                             ; preds = %1755
  br label %1759

1759:                                             ; preds = %1758, %1750
  br label %1760

1760:                                             ; preds = %1759
  %1761 = load i32, ptr %90, align 4, !tbaa !9
  %1762 = add nsw i32 %1761, 1
  store i32 %1762, ptr %90, align 4, !tbaa !9
  br label %1739, !llvm.loop !53

1763:                                             ; preds = %1739
  %1764 = load ptr, ptr %4, align 8, !tbaa !5
  %1765 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1764, ptr noundef @.str.3)
          to label %1766 unwind label %1621

1766:                                             ; preds = %1763
  %1767 = load ptr, ptr %4, align 8, !tbaa !5
  %1768 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1767, ptr noundef @.str.7)
          to label %1769 unwind label %1621

1769:                                             ; preds = %1766
  call void @llvm.lifetime.start.p0(i64 32, ptr %98) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %98, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef 2)
          to label %1770 unwind label %1805

1770:                                             ; preds = %1769
  %1771 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1768, ptr noundef nonnull align 8 dereferenceable(32) %98)
          to label %1772 unwind label %1809

1772:                                             ; preds = %1770
  %1773 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1771, ptr noundef @.str.3)
          to label %1774 unwind label %1809

1774:                                             ; preds = %1772
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #6
  %1775 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %89, ptr noundef @.str.8)
          to label %1776 unwind label %1621

1776:                                             ; preds = %1774
  %1777 = load ptr, ptr %4, align 8, !tbaa !5
  %1778 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1777, ptr noundef @.str.7)
          to label %1779 unwind label %1621

1779:                                             ; preds = %1776
  call void @llvm.lifetime.start.p0(i64 32, ptr %99) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %99, ptr noundef nonnull align 8 dereferenceable(48) %89, i32 noundef 2)
          to label %1780 unwind label %1814

1780:                                             ; preds = %1779
  %1781 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1778, ptr noundef nonnull align 8 dereferenceable(32) %99)
          to label %1782 unwind label %1818

1782:                                             ; preds = %1780
  %1783 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1781, ptr noundef @.str.3)
          to label %1784 unwind label %1818

1784:                                             ; preds = %1782
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %89) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %89) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %87) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %87) #6
  %1785 = load ptr, ptr %4, align 8, !tbaa !5
  %1786 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1785, ptr noundef @.str.11)
  %1787 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1786, ptr noundef @.str.2)
  %1788 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1787, i32 noundef 13)
  %1789 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1788, ptr noundef @.str.2)
  %1790 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1789, i32 noundef 0)
  %1791 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1790, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %100) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %101) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %101, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %100, ptr noundef nonnull align 4 dereferenceable(20) %101, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %101) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %102) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0, ptr noundef null)
          to label %1792 unwind label %1825

1792:                                             ; preds = %1784
  call void @llvm.lifetime.start.p0(i64 4, ptr %103) #6
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1793

1793:                                             ; preds = %1842, %1792
  %1794 = load i32, ptr %103, align 4, !tbaa !9
  %1795 = icmp slt i32 %1794, 13
  br i1 %1795, label %1796, label %1845

1796:                                             ; preds = %1793
  call void @llvm.lifetime.start.p0(i64 16, ptr %104) #6
  %1797 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %104, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1797)
          to label %1798 unwind label %1829

1798:                                             ; preds = %1796
  %1799 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %104)
          to label %1800 unwind label %1829

1800:                                             ; preds = %1798
  call void @llvm.lifetime.end.p0(i64 16, ptr %104) #6
  br i1 %1799, label %1801, label %1837

1801:                                             ; preds = %1800
  %1802 = load ptr, ptr %4, align 8, !tbaa !5
  %1803 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1802, ptr noundef @.str.4)
          to label %1804 unwind label %1833

1804:                                             ; preds = %1801
  br label %1841

1805:                                             ; preds = %1769
  %1806 = landingpad { ptr, i32 }
          cleanup
  %1807 = extractvalue { ptr, i32 } %1806, 0
  store ptr %1807, ptr %10, align 8
  %1808 = extractvalue { ptr, i32 } %1806, 1
  store i32 %1808, ptr %11, align 4
  br label %1813

1809:                                             ; preds = %1772, %1770
  %1810 = landingpad { ptr, i32 }
          cleanup
  %1811 = extractvalue { ptr, i32 } %1810, 0
  store ptr %1811, ptr %10, align 8
  %1812 = extractvalue { ptr, i32 } %1810, 1
  store i32 %1812, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  br label %1813

1813:                                             ; preds = %1809, %1805
  call void @llvm.lifetime.end.p0(i64 32, ptr %98) #6
  br label %1823

1814:                                             ; preds = %1779
  %1815 = landingpad { ptr, i32 }
          cleanup
  %1816 = extractvalue { ptr, i32 } %1815, 0
  store ptr %1816, ptr %10, align 8
  %1817 = extractvalue { ptr, i32 } %1815, 1
  store i32 %1817, ptr %11, align 4
  br label %1822

1818:                                             ; preds = %1782, %1780
  %1819 = landingpad { ptr, i32 }
          cleanup
  %1820 = extractvalue { ptr, i32 } %1819, 0
  store ptr %1820, ptr %10, align 8
  %1821 = extractvalue { ptr, i32 } %1819, 1
  store i32 %1821, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  br label %1822

1822:                                             ; preds = %1818, %1814
  call void @llvm.lifetime.end.p0(i64 32, ptr %99) #6
  br label %1823

1823:                                             ; preds = %1822, %1813, %1751, %1734, %1707, %1706, %1665, %1648, %1621, %1617
  call void @llvm.lifetime.end.p0(i64 4, ptr %90) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %89) #6
  br label %1824

1824:                                             ; preds = %1823, %1613
  call void @llvm.lifetime.end.p0(i64 48, ptr %89) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %87) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %87) #6
  br label %5409

1825:                                             ; preds = %1784
  %1826 = landingpad { ptr, i32 }
          cleanup
  %1827 = extractvalue { ptr, i32 } %1826, 0
  store ptr %1827, ptr %10, align 8
  %1828 = extractvalue { ptr, i32 } %1826, 1
  store i32 %1828, ptr %11, align 4
  br label %2036

1829:                                             ; preds = %1798, %1796
  %1830 = landingpad { ptr, i32 }
          cleanup
  %1831 = extractvalue { ptr, i32 } %1830, 0
  store ptr %1831, ptr %10, align 8
  %1832 = extractvalue { ptr, i32 } %1830, 1
  store i32 %1832, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %104) #6
  br label %2035

1833:                                             ; preds = %1988, %1986, %1978, %1975, %1967, %1959, %1931, %1923, %1906, %1892, %1889, %1881, %1873, %1845, %1837, %1801
  %1834 = landingpad { ptr, i32 }
          cleanup
  %1835 = extractvalue { ptr, i32 } %1834, 0
  store ptr %1835, ptr %10, align 8
  %1836 = extractvalue { ptr, i32 } %1834, 1
  store i32 %1836, ptr %11, align 4
  br label %2035

1837:                                             ; preds = %1800
  %1838 = load ptr, ptr %4, align 8, !tbaa !5
  %1839 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1838, ptr noundef @.str.5)
          to label %1840 unwind label %1833

1840:                                             ; preds = %1837
  br label %1841

1841:                                             ; preds = %1840, %1804
  br label %1842

1842:                                             ; preds = %1841
  %1843 = load i32, ptr %103, align 4, !tbaa !9
  %1844 = add nsw i32 %1843, 1
  store i32 %1844, ptr %103, align 4, !tbaa !9
  br label %1793, !llvm.loop !54

1845:                                             ; preds = %1793
  %1846 = load ptr, ptr %4, align 8, !tbaa !5
  %1847 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1846, ptr noundef @.str.6)
          to label %1848 unwind label %1833

1848:                                             ; preds = %1845
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1849

1849:                                             ; preds = %1857, %1848
  %1850 = load i32, ptr %103, align 4, !tbaa !9
  %1851 = icmp slt i32 %1850, 13
  br i1 %1851, label %1852, label %1864

1852:                                             ; preds = %1849
  call void @llvm.lifetime.start.p0(i64 16, ptr %105) #6
  %1853 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1853)
          to label %1854 unwind label %1860

1854:                                             ; preds = %1852
  %1855 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %105, i1 noundef zeroext true)
          to label %1856 unwind label %1860

1856:                                             ; preds = %1854
  call void @llvm.lifetime.end.p0(i64 16, ptr %105) #6
  br label %1857

1857:                                             ; preds = %1856
  %1858 = load i32, ptr %103, align 4, !tbaa !9
  %1859 = add nsw i32 %1858, 3
  store i32 %1859, ptr %103, align 4, !tbaa !9
  br label %1849, !llvm.loop !55

1860:                                             ; preds = %1854, %1852
  %1861 = landingpad { ptr, i32 }
          cleanup
  %1862 = extractvalue { ptr, i32 } %1861, 0
  store ptr %1862, ptr %10, align 8
  %1863 = extractvalue { ptr, i32 } %1861, 1
  store i32 %1863, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %105) #6
  br label %2035

1864:                                             ; preds = %1849
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1865

1865:                                             ; preds = %1886, %1864
  %1866 = load i32, ptr %103, align 4, !tbaa !9
  %1867 = icmp slt i32 %1866, 13
  br i1 %1867, label %1868, label %1889

1868:                                             ; preds = %1865
  call void @llvm.lifetime.start.p0(i64 16, ptr %106) #6
  %1869 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %106, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1869)
          to label %1870 unwind label %1877

1870:                                             ; preds = %1868
  %1871 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %106)
          to label %1872 unwind label %1877

1872:                                             ; preds = %1870
  call void @llvm.lifetime.end.p0(i64 16, ptr %106) #6
  br i1 %1871, label %1873, label %1881

1873:                                             ; preds = %1872
  %1874 = load ptr, ptr %4, align 8, !tbaa !5
  %1875 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1874, ptr noundef @.str.4)
          to label %1876 unwind label %1833

1876:                                             ; preds = %1873
  br label %1885

1877:                                             ; preds = %1870, %1868
  %1878 = landingpad { ptr, i32 }
          cleanup
  %1879 = extractvalue { ptr, i32 } %1878, 0
  store ptr %1879, ptr %10, align 8
  %1880 = extractvalue { ptr, i32 } %1878, 1
  store i32 %1880, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %106) #6
  br label %2035

1881:                                             ; preds = %1872
  %1882 = load ptr, ptr %4, align 8, !tbaa !5
  %1883 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1882, ptr noundef @.str.5)
          to label %1884 unwind label %1833

1884:                                             ; preds = %1881
  br label %1885

1885:                                             ; preds = %1884, %1876
  br label %1886

1886:                                             ; preds = %1885
  %1887 = load i32, ptr %103, align 4, !tbaa !9
  %1888 = add nsw i32 %1887, 1
  store i32 %1888, ptr %103, align 4, !tbaa !9
  br label %1865, !llvm.loop !56

1889:                                             ; preds = %1865
  %1890 = load ptr, ptr %4, align 8, !tbaa !5
  %1891 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1890, ptr noundef @.str.3)
          to label %1892 unwind label %1833

1892:                                             ; preds = %1889
  %1893 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %1894 unwind label %1833

1894:                                             ; preds = %1892
  call void @llvm.lifetime.start.p0(i64 48, ptr %107) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102)
          to label %1895 unwind label %1910

1895:                                             ; preds = %1894
  %1896 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %102, ptr noundef nonnull align 8 dereferenceable(48) %107)
          to label %1897 unwind label %1914

1897:                                             ; preds = %1895
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %107) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %107) #6
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1898

1898:                                             ; preds = %1928, %1897
  %1899 = load i32, ptr %103, align 4, !tbaa !9
  %1900 = icmp slt i32 %1899, 13
  br i1 %1900, label %1901, label %1931

1901:                                             ; preds = %1898
  call void @llvm.lifetime.start.p0(i64 16, ptr %108) #6
  %1902 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %108, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1902)
          to label %1903 unwind label %1919

1903:                                             ; preds = %1901
  %1904 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %108)
          to label %1905 unwind label %1919

1905:                                             ; preds = %1903
  call void @llvm.lifetime.end.p0(i64 16, ptr %108) #6
  br i1 %1904, label %1906, label %1923

1906:                                             ; preds = %1905
  %1907 = load ptr, ptr %4, align 8, !tbaa !5
  %1908 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1907, ptr noundef @.str.4)
          to label %1909 unwind label %1833

1909:                                             ; preds = %1906
  br label %1927

1910:                                             ; preds = %1894
  %1911 = landingpad { ptr, i32 }
          cleanup
  %1912 = extractvalue { ptr, i32 } %1911, 0
  store ptr %1912, ptr %10, align 8
  %1913 = extractvalue { ptr, i32 } %1911, 1
  store i32 %1913, ptr %11, align 4
  br label %1918

1914:                                             ; preds = %1895
  %1915 = landingpad { ptr, i32 }
          cleanup
  %1916 = extractvalue { ptr, i32 } %1915, 0
  store ptr %1916, ptr %10, align 8
  %1917 = extractvalue { ptr, i32 } %1915, 1
  store i32 %1917, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %107) #6
  br label %1918

1918:                                             ; preds = %1914, %1910
  call void @llvm.lifetime.end.p0(i64 48, ptr %107) #6
  br label %2035

1919:                                             ; preds = %1903, %1901
  %1920 = landingpad { ptr, i32 }
          cleanup
  %1921 = extractvalue { ptr, i32 } %1920, 0
  store ptr %1921, ptr %10, align 8
  %1922 = extractvalue { ptr, i32 } %1920, 1
  store i32 %1922, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %108) #6
  br label %2035

1923:                                             ; preds = %1905
  %1924 = load ptr, ptr %4, align 8, !tbaa !5
  %1925 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1924, ptr noundef @.str.5)
          to label %1926 unwind label %1833

1926:                                             ; preds = %1923
  br label %1927

1927:                                             ; preds = %1926, %1909
  br label %1928

1928:                                             ; preds = %1927
  %1929 = load i32, ptr %103, align 4, !tbaa !9
  %1930 = add nsw i32 %1929, 1
  store i32 %1930, ptr %103, align 4, !tbaa !9
  br label %1898, !llvm.loop !57

1931:                                             ; preds = %1898
  %1932 = load ptr, ptr %4, align 8, !tbaa !5
  %1933 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1932, ptr noundef @.str.6)
          to label %1934 unwind label %1833

1934:                                             ; preds = %1931
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1935

1935:                                             ; preds = %1943, %1934
  %1936 = load i32, ptr %103, align 4, !tbaa !9
  %1937 = icmp slt i32 %1936, 13
  br i1 %1937, label %1938, label %1950

1938:                                             ; preds = %1935
  call void @llvm.lifetime.start.p0(i64 16, ptr %109) #6
  %1939 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1939)
          to label %1940 unwind label %1946

1940:                                             ; preds = %1938
  %1941 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %109, i1 noundef zeroext false)
          to label %1942 unwind label %1946

1942:                                             ; preds = %1940
  call void @llvm.lifetime.end.p0(i64 16, ptr %109) #6
  br label %1943

1943:                                             ; preds = %1942
  %1944 = load i32, ptr %103, align 4, !tbaa !9
  %1945 = add nsw i32 %1944, 3
  store i32 %1945, ptr %103, align 4, !tbaa !9
  br label %1935, !llvm.loop !58

1946:                                             ; preds = %1940, %1938
  %1947 = landingpad { ptr, i32 }
          cleanup
  %1948 = extractvalue { ptr, i32 } %1947, 0
  store ptr %1948, ptr %10, align 8
  %1949 = extractvalue { ptr, i32 } %1947, 1
  store i32 %1949, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %109) #6
  br label %2035

1950:                                             ; preds = %1935
  store i32 0, ptr %103, align 4, !tbaa !9
  br label %1951

1951:                                             ; preds = %1972, %1950
  %1952 = load i32, ptr %103, align 4, !tbaa !9
  %1953 = icmp slt i32 %1952, 13
  br i1 %1953, label %1954, label %1975

1954:                                             ; preds = %1951
  call void @llvm.lifetime.start.p0(i64 16, ptr %110) #6
  %1955 = load i32, ptr %103, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %110, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef %1955)
          to label %1956 unwind label %1963

1956:                                             ; preds = %1954
  %1957 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %110)
          to label %1958 unwind label %1963

1958:                                             ; preds = %1956
  call void @llvm.lifetime.end.p0(i64 16, ptr %110) #6
  br i1 %1957, label %1959, label %1967

1959:                                             ; preds = %1958
  %1960 = load ptr, ptr %4, align 8, !tbaa !5
  %1961 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1960, ptr noundef @.str.4)
          to label %1962 unwind label %1833

1962:                                             ; preds = %1959
  br label %1971

1963:                                             ; preds = %1956, %1954
  %1964 = landingpad { ptr, i32 }
          cleanup
  %1965 = extractvalue { ptr, i32 } %1964, 0
  store ptr %1965, ptr %10, align 8
  %1966 = extractvalue { ptr, i32 } %1964, 1
  store i32 %1966, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %110) #6
  br label %2035

1967:                                             ; preds = %1958
  %1968 = load ptr, ptr %4, align 8, !tbaa !5
  %1969 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1968, ptr noundef @.str.5)
          to label %1970 unwind label %1833

1970:                                             ; preds = %1967
  br label %1971

1971:                                             ; preds = %1970, %1962
  br label %1972

1972:                                             ; preds = %1971
  %1973 = load i32, ptr %103, align 4, !tbaa !9
  %1974 = add nsw i32 %1973, 1
  store i32 %1974, ptr %103, align 4, !tbaa !9
  br label %1951, !llvm.loop !59

1975:                                             ; preds = %1951
  %1976 = load ptr, ptr %4, align 8, !tbaa !5
  %1977 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1976, ptr noundef @.str.3)
          to label %1978 unwind label %1833

1978:                                             ; preds = %1975
  %1979 = load ptr, ptr %4, align 8, !tbaa !5
  %1980 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1979, ptr noundef @.str.7)
          to label %1981 unwind label %1833

1981:                                             ; preds = %1978
  call void @llvm.lifetime.start.p0(i64 32, ptr %111) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %111, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %1982 unwind label %2017

1982:                                             ; preds = %1981
  %1983 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1980, ptr noundef nonnull align 8 dereferenceable(32) %111)
          to label %1984 unwind label %2021

1984:                                             ; preds = %1982
  %1985 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1983, ptr noundef @.str.3)
          to label %1986 unwind label %2021

1986:                                             ; preds = %1984
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #6
  %1987 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %102, ptr noundef @.str.8)
          to label %1988 unwind label %1833

1988:                                             ; preds = %1986
  %1989 = load ptr, ptr %4, align 8, !tbaa !5
  %1990 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1989, ptr noundef @.str.7)
          to label %1991 unwind label %1833

1991:                                             ; preds = %1988
  call void @llvm.lifetime.start.p0(i64 32, ptr %112) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %112, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %1992 unwind label %2026

1992:                                             ; preds = %1991
  %1993 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1990, ptr noundef nonnull align 8 dereferenceable(32) %112)
          to label %1994 unwind label %2030

1994:                                             ; preds = %1992
  %1995 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1993, ptr noundef @.str.3)
          to label %1996 unwind label %2030

1996:                                             ; preds = %1994
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %103) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %102) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %100) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %100) #6
  %1997 = load ptr, ptr %4, align 8, !tbaa !5
  %1998 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1997, ptr noundef @.str)
  %1999 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1998, ptr noundef @.str.2)
  %2000 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1999, i32 noundef 5)
  %2001 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2000, ptr noundef @.str.2)
  %2002 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2001, i32 noundef 13)
  %2003 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2002, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %113) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %114) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %114, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %113, ptr noundef nonnull align 4 dereferenceable(20) %114, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %114) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %115) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef 0, ptr noundef null)
          to label %2004 unwind label %2037

2004:                                             ; preds = %1996
  call void @llvm.lifetime.start.p0(i64 4, ptr %116) #6
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2005

2005:                                             ; preds = %2054, %2004
  %2006 = load i32, ptr %116, align 4, !tbaa !9
  %2007 = icmp slt i32 %2006, 5
  br i1 %2007, label %2008, label %2057

2008:                                             ; preds = %2005
  call void @llvm.lifetime.start.p0(i64 16, ptr %117) #6
  %2009 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2009)
          to label %2010 unwind label %2041

2010:                                             ; preds = %2008
  %2011 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %2012 unwind label %2041

2012:                                             ; preds = %2010
  call void @llvm.lifetime.end.p0(i64 16, ptr %117) #6
  br i1 %2011, label %2013, label %2049

2013:                                             ; preds = %2012
  %2014 = load ptr, ptr %4, align 8, !tbaa !5
  %2015 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2014, ptr noundef @.str.4)
          to label %2016 unwind label %2045

2016:                                             ; preds = %2013
  br label %2053

2017:                                             ; preds = %1981
  %2018 = landingpad { ptr, i32 }
          cleanup
  %2019 = extractvalue { ptr, i32 } %2018, 0
  store ptr %2019, ptr %10, align 8
  %2020 = extractvalue { ptr, i32 } %2018, 1
  store i32 %2020, ptr %11, align 4
  br label %2025

2021:                                             ; preds = %1984, %1982
  %2022 = landingpad { ptr, i32 }
          cleanup
  %2023 = extractvalue { ptr, i32 } %2022, 0
  store ptr %2023, ptr %10, align 8
  %2024 = extractvalue { ptr, i32 } %2022, 1
  store i32 %2024, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  br label %2025

2025:                                             ; preds = %2021, %2017
  call void @llvm.lifetime.end.p0(i64 32, ptr %111) #6
  br label %2035

2026:                                             ; preds = %1991
  %2027 = landingpad { ptr, i32 }
          cleanup
  %2028 = extractvalue { ptr, i32 } %2027, 0
  store ptr %2028, ptr %10, align 8
  %2029 = extractvalue { ptr, i32 } %2027, 1
  store i32 %2029, ptr %11, align 4
  br label %2034

2030:                                             ; preds = %1994, %1992
  %2031 = landingpad { ptr, i32 }
          cleanup
  %2032 = extractvalue { ptr, i32 } %2031, 0
  store ptr %2032, ptr %10, align 8
  %2033 = extractvalue { ptr, i32 } %2031, 1
  store i32 %2033, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %112) #6
  br label %2034

2034:                                             ; preds = %2030, %2026
  call void @llvm.lifetime.end.p0(i64 32, ptr %112) #6
  br label %2035

2035:                                             ; preds = %2034, %2025, %1963, %1946, %1919, %1918, %1877, %1860, %1833, %1829
  call void @llvm.lifetime.end.p0(i64 4, ptr %103) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #6
  br label %2036

2036:                                             ; preds = %2035, %1825
  call void @llvm.lifetime.end.p0(i64 48, ptr %102) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %100) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %100) #6
  br label %5409

2037:                                             ; preds = %1996
  %2038 = landingpad { ptr, i32 }
          cleanup
  %2039 = extractvalue { ptr, i32 } %2038, 0
  store ptr %2039, ptr %10, align 8
  %2040 = extractvalue { ptr, i32 } %2038, 1
  store i32 %2040, ptr %11, align 4
  br label %2248

2041:                                             ; preds = %2010, %2008
  %2042 = landingpad { ptr, i32 }
          cleanup
  %2043 = extractvalue { ptr, i32 } %2042, 0
  store ptr %2043, ptr %10, align 8
  %2044 = extractvalue { ptr, i32 } %2042, 1
  store i32 %2044, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %117) #6
  br label %2247

2045:                                             ; preds = %2200, %2198, %2190, %2187, %2179, %2171, %2143, %2135, %2118, %2104, %2101, %2093, %2085, %2057, %2049, %2013
  %2046 = landingpad { ptr, i32 }
          cleanup
  %2047 = extractvalue { ptr, i32 } %2046, 0
  store ptr %2047, ptr %10, align 8
  %2048 = extractvalue { ptr, i32 } %2046, 1
  store i32 %2048, ptr %11, align 4
  br label %2247

2049:                                             ; preds = %2012
  %2050 = load ptr, ptr %4, align 8, !tbaa !5
  %2051 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2050, ptr noundef @.str.5)
          to label %2052 unwind label %2045

2052:                                             ; preds = %2049
  br label %2053

2053:                                             ; preds = %2052, %2016
  br label %2054

2054:                                             ; preds = %2053
  %2055 = load i32, ptr %116, align 4, !tbaa !9
  %2056 = add nsw i32 %2055, 1
  store i32 %2056, ptr %116, align 4, !tbaa !9
  br label %2005, !llvm.loop !60

2057:                                             ; preds = %2005
  %2058 = load ptr, ptr %4, align 8, !tbaa !5
  %2059 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2058, ptr noundef @.str.6)
          to label %2060 unwind label %2045

2060:                                             ; preds = %2057
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2061

2061:                                             ; preds = %2069, %2060
  %2062 = load i32, ptr %116, align 4, !tbaa !9
  %2063 = icmp slt i32 %2062, 5
  br i1 %2063, label %2064, label %2076

2064:                                             ; preds = %2061
  call void @llvm.lifetime.start.p0(i64 16, ptr %118) #6
  %2065 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %118, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2065)
          to label %2066 unwind label %2072

2066:                                             ; preds = %2064
  %2067 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %118, i1 noundef zeroext true)
          to label %2068 unwind label %2072

2068:                                             ; preds = %2066
  call void @llvm.lifetime.end.p0(i64 16, ptr %118) #6
  br label %2069

2069:                                             ; preds = %2068
  %2070 = load i32, ptr %116, align 4, !tbaa !9
  %2071 = add nsw i32 %2070, 3
  store i32 %2071, ptr %116, align 4, !tbaa !9
  br label %2061, !llvm.loop !61

2072:                                             ; preds = %2066, %2064
  %2073 = landingpad { ptr, i32 }
          cleanup
  %2074 = extractvalue { ptr, i32 } %2073, 0
  store ptr %2074, ptr %10, align 8
  %2075 = extractvalue { ptr, i32 } %2073, 1
  store i32 %2075, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %118) #6
  br label %2247

2076:                                             ; preds = %2061
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2077

2077:                                             ; preds = %2098, %2076
  %2078 = load i32, ptr %116, align 4, !tbaa !9
  %2079 = icmp slt i32 %2078, 5
  br i1 %2079, label %2080, label %2101

2080:                                             ; preds = %2077
  call void @llvm.lifetime.start.p0(i64 16, ptr %119) #6
  %2081 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2081)
          to label %2082 unwind label %2089

2082:                                             ; preds = %2080
  %2083 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %2084 unwind label %2089

2084:                                             ; preds = %2082
  call void @llvm.lifetime.end.p0(i64 16, ptr %119) #6
  br i1 %2083, label %2085, label %2093

2085:                                             ; preds = %2084
  %2086 = load ptr, ptr %4, align 8, !tbaa !5
  %2087 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2086, ptr noundef @.str.4)
          to label %2088 unwind label %2045

2088:                                             ; preds = %2085
  br label %2097

2089:                                             ; preds = %2082, %2080
  %2090 = landingpad { ptr, i32 }
          cleanup
  %2091 = extractvalue { ptr, i32 } %2090, 0
  store ptr %2091, ptr %10, align 8
  %2092 = extractvalue { ptr, i32 } %2090, 1
  store i32 %2092, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %119) #6
  br label %2247

2093:                                             ; preds = %2084
  %2094 = load ptr, ptr %4, align 8, !tbaa !5
  %2095 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2094, ptr noundef @.str.5)
          to label %2096 unwind label %2045

2096:                                             ; preds = %2093
  br label %2097

2097:                                             ; preds = %2096, %2088
  br label %2098

2098:                                             ; preds = %2097
  %2099 = load i32, ptr %116, align 4, !tbaa !9
  %2100 = add nsw i32 %2099, 1
  store i32 %2100, ptr %116, align 4, !tbaa !9
  br label %2077, !llvm.loop !62

2101:                                             ; preds = %2077
  %2102 = load ptr, ptr %4, align 8, !tbaa !5
  %2103 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2102, ptr noundef @.str.3)
          to label %2104 unwind label %2045

2104:                                             ; preds = %2101
  %2105 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef 0)
          to label %2106 unwind label %2045

2106:                                             ; preds = %2104
  call void @llvm.lifetime.start.p0(i64 48, ptr %120) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %120, ptr noundef nonnull align 8 dereferenceable(48) %115)
          to label %2107 unwind label %2122

2107:                                             ; preds = %2106
  %2108 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %115, ptr noundef nonnull align 8 dereferenceable(48) %120)
          to label %2109 unwind label %2126

2109:                                             ; preds = %2107
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %120) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %120) #6
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2110

2110:                                             ; preds = %2140, %2109
  %2111 = load i32, ptr %116, align 4, !tbaa !9
  %2112 = icmp slt i32 %2111, 5
  br i1 %2112, label %2113, label %2143

2113:                                             ; preds = %2110
  call void @llvm.lifetime.start.p0(i64 16, ptr %121) #6
  %2114 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2114)
          to label %2115 unwind label %2131

2115:                                             ; preds = %2113
  %2116 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %2117 unwind label %2131

2117:                                             ; preds = %2115
  call void @llvm.lifetime.end.p0(i64 16, ptr %121) #6
  br i1 %2116, label %2118, label %2135

2118:                                             ; preds = %2117
  %2119 = load ptr, ptr %4, align 8, !tbaa !5
  %2120 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2119, ptr noundef @.str.4)
          to label %2121 unwind label %2045

2121:                                             ; preds = %2118
  br label %2139

2122:                                             ; preds = %2106
  %2123 = landingpad { ptr, i32 }
          cleanup
  %2124 = extractvalue { ptr, i32 } %2123, 0
  store ptr %2124, ptr %10, align 8
  %2125 = extractvalue { ptr, i32 } %2123, 1
  store i32 %2125, ptr %11, align 4
  br label %2130

2126:                                             ; preds = %2107
  %2127 = landingpad { ptr, i32 }
          cleanup
  %2128 = extractvalue { ptr, i32 } %2127, 0
  store ptr %2128, ptr %10, align 8
  %2129 = extractvalue { ptr, i32 } %2127, 1
  store i32 %2129, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %120) #6
  br label %2130

2130:                                             ; preds = %2126, %2122
  call void @llvm.lifetime.end.p0(i64 48, ptr %120) #6
  br label %2247

2131:                                             ; preds = %2115, %2113
  %2132 = landingpad { ptr, i32 }
          cleanup
  %2133 = extractvalue { ptr, i32 } %2132, 0
  store ptr %2133, ptr %10, align 8
  %2134 = extractvalue { ptr, i32 } %2132, 1
  store i32 %2134, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %121) #6
  br label %2247

2135:                                             ; preds = %2117
  %2136 = load ptr, ptr %4, align 8, !tbaa !5
  %2137 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2136, ptr noundef @.str.5)
          to label %2138 unwind label %2045

2138:                                             ; preds = %2135
  br label %2139

2139:                                             ; preds = %2138, %2121
  br label %2140

2140:                                             ; preds = %2139
  %2141 = load i32, ptr %116, align 4, !tbaa !9
  %2142 = add nsw i32 %2141, 1
  store i32 %2142, ptr %116, align 4, !tbaa !9
  br label %2110, !llvm.loop !63

2143:                                             ; preds = %2110
  %2144 = load ptr, ptr %4, align 8, !tbaa !5
  %2145 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2144, ptr noundef @.str.6)
          to label %2146 unwind label %2045

2146:                                             ; preds = %2143
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2147

2147:                                             ; preds = %2155, %2146
  %2148 = load i32, ptr %116, align 4, !tbaa !9
  %2149 = icmp slt i32 %2148, 5
  br i1 %2149, label %2150, label %2162

2150:                                             ; preds = %2147
  call void @llvm.lifetime.start.p0(i64 16, ptr %122) #6
  %2151 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %122, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2151)
          to label %2152 unwind label %2158

2152:                                             ; preds = %2150
  %2153 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %122, i1 noundef zeroext false)
          to label %2154 unwind label %2158

2154:                                             ; preds = %2152
  call void @llvm.lifetime.end.p0(i64 16, ptr %122) #6
  br label %2155

2155:                                             ; preds = %2154
  %2156 = load i32, ptr %116, align 4, !tbaa !9
  %2157 = add nsw i32 %2156, 3
  store i32 %2157, ptr %116, align 4, !tbaa !9
  br label %2147, !llvm.loop !64

2158:                                             ; preds = %2152, %2150
  %2159 = landingpad { ptr, i32 }
          cleanup
  %2160 = extractvalue { ptr, i32 } %2159, 0
  store ptr %2160, ptr %10, align 8
  %2161 = extractvalue { ptr, i32 } %2159, 1
  store i32 %2161, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %122) #6
  br label %2247

2162:                                             ; preds = %2147
  store i32 0, ptr %116, align 4, !tbaa !9
  br label %2163

2163:                                             ; preds = %2184, %2162
  %2164 = load i32, ptr %116, align 4, !tbaa !9
  %2165 = icmp slt i32 %2164, 5
  br i1 %2165, label %2166, label %2187

2166:                                             ; preds = %2163
  call void @llvm.lifetime.start.p0(i64 16, ptr %123) #6
  %2167 = load i32, ptr %116, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %123, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef %2167)
          to label %2168 unwind label %2175

2168:                                             ; preds = %2166
  %2169 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %123)
          to label %2170 unwind label %2175

2170:                                             ; preds = %2168
  call void @llvm.lifetime.end.p0(i64 16, ptr %123) #6
  br i1 %2169, label %2171, label %2179

2171:                                             ; preds = %2170
  %2172 = load ptr, ptr %4, align 8, !tbaa !5
  %2173 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2172, ptr noundef @.str.4)
          to label %2174 unwind label %2045

2174:                                             ; preds = %2171
  br label %2183

2175:                                             ; preds = %2168, %2166
  %2176 = landingpad { ptr, i32 }
          cleanup
  %2177 = extractvalue { ptr, i32 } %2176, 0
  store ptr %2177, ptr %10, align 8
  %2178 = extractvalue { ptr, i32 } %2176, 1
  store i32 %2178, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %123) #6
  br label %2247

2179:                                             ; preds = %2170
  %2180 = load ptr, ptr %4, align 8, !tbaa !5
  %2181 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2180, ptr noundef @.str.5)
          to label %2182 unwind label %2045

2182:                                             ; preds = %2179
  br label %2183

2183:                                             ; preds = %2182, %2174
  br label %2184

2184:                                             ; preds = %2183
  %2185 = load i32, ptr %116, align 4, !tbaa !9
  %2186 = add nsw i32 %2185, 1
  store i32 %2186, ptr %116, align 4, !tbaa !9
  br label %2163, !llvm.loop !65

2187:                                             ; preds = %2163
  %2188 = load ptr, ptr %4, align 8, !tbaa !5
  %2189 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2188, ptr noundef @.str.3)
          to label %2190 unwind label %2045

2190:                                             ; preds = %2187
  %2191 = load ptr, ptr %4, align 8, !tbaa !5
  %2192 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2191, ptr noundef @.str.7)
          to label %2193 unwind label %2045

2193:                                             ; preds = %2190
  call void @llvm.lifetime.start.p0(i64 32, ptr %124) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %124, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef 2)
          to label %2194 unwind label %2229

2194:                                             ; preds = %2193
  %2195 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2192, ptr noundef nonnull align 8 dereferenceable(32) %124)
          to label %2196 unwind label %2233

2196:                                             ; preds = %2194
  %2197 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2195, ptr noundef @.str.3)
          to label %2198 unwind label %2233

2198:                                             ; preds = %2196
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %124) #6
  %2199 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %115, ptr noundef @.str.8)
          to label %2200 unwind label %2045

2200:                                             ; preds = %2198
  %2201 = load ptr, ptr %4, align 8, !tbaa !5
  %2202 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2201, ptr noundef @.str.7)
          to label %2203 unwind label %2045

2203:                                             ; preds = %2200
  call void @llvm.lifetime.start.p0(i64 32, ptr %125) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %125, ptr noundef nonnull align 8 dereferenceable(48) %115, i32 noundef 2)
          to label %2204 unwind label %2238

2204:                                             ; preds = %2203
  %2205 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2202, ptr noundef nonnull align 8 dereferenceable(32) %125)
          to label %2206 unwind label %2242

2206:                                             ; preds = %2204
  %2207 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2205, ptr noundef @.str.3)
          to label %2208 unwind label %2242

2208:                                             ; preds = %2206
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %115) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %115) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %113) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %113) #6
  %2209 = load ptr, ptr %4, align 8, !tbaa !5
  %2210 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2209, ptr noundef @.str.9)
  %2211 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2210, ptr noundef @.str.2)
  %2212 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2211, i32 noundef 5)
  %2213 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2212, ptr noundef @.str.2)
  %2214 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2213, i32 noundef 13)
  %2215 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2214, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %126) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %127) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %127, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %126, ptr noundef nonnull align 4 dereferenceable(20) %127, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %127) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %128) #6
  invoke void @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef 0, ptr noundef null)
          to label %2216 unwind label %2249

2216:                                             ; preds = %2208
  call void @llvm.lifetime.start.p0(i64 4, ptr %129) #6
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2217

2217:                                             ; preds = %2266, %2216
  %2218 = load i32, ptr %129, align 4, !tbaa !9
  %2219 = icmp slt i32 %2218, 5
  br i1 %2219, label %2220, label %2269

2220:                                             ; preds = %2217
  call void @llvm.lifetime.start.p0(i64 16, ptr %130) #6
  %2221 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %130, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2221)
          to label %2222 unwind label %2253

2222:                                             ; preds = %2220
  %2223 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %130)
          to label %2224 unwind label %2253

2224:                                             ; preds = %2222
  call void @llvm.lifetime.end.p0(i64 16, ptr %130) #6
  br i1 %2223, label %2225, label %2261

2225:                                             ; preds = %2224
  %2226 = load ptr, ptr %4, align 8, !tbaa !5
  %2227 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2226, ptr noundef @.str.4)
          to label %2228 unwind label %2257

2228:                                             ; preds = %2225
  br label %2265

2229:                                             ; preds = %2193
  %2230 = landingpad { ptr, i32 }
          cleanup
  %2231 = extractvalue { ptr, i32 } %2230, 0
  store ptr %2231, ptr %10, align 8
  %2232 = extractvalue { ptr, i32 } %2230, 1
  store i32 %2232, ptr %11, align 4
  br label %2237

2233:                                             ; preds = %2196, %2194
  %2234 = landingpad { ptr, i32 }
          cleanup
  %2235 = extractvalue { ptr, i32 } %2234, 0
  store ptr %2235, ptr %10, align 8
  %2236 = extractvalue { ptr, i32 } %2234, 1
  store i32 %2236, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %124) #6
  br label %2237

2237:                                             ; preds = %2233, %2229
  call void @llvm.lifetime.end.p0(i64 32, ptr %124) #6
  br label %2247

2238:                                             ; preds = %2203
  %2239 = landingpad { ptr, i32 }
          cleanup
  %2240 = extractvalue { ptr, i32 } %2239, 0
  store ptr %2240, ptr %10, align 8
  %2241 = extractvalue { ptr, i32 } %2239, 1
  store i32 %2241, ptr %11, align 4
  br label %2246

2242:                                             ; preds = %2206, %2204
  %2243 = landingpad { ptr, i32 }
          cleanup
  %2244 = extractvalue { ptr, i32 } %2243, 0
  store ptr %2244, ptr %10, align 8
  %2245 = extractvalue { ptr, i32 } %2243, 1
  store i32 %2245, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %125) #6
  br label %2246

2246:                                             ; preds = %2242, %2238
  call void @llvm.lifetime.end.p0(i64 32, ptr %125) #6
  br label %2247

2247:                                             ; preds = %2246, %2237, %2175, %2158, %2131, %2130, %2089, %2072, %2045, %2041
  call void @llvm.lifetime.end.p0(i64 4, ptr %116) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %115) #6
  br label %2248

2248:                                             ; preds = %2247, %2037
  call void @llvm.lifetime.end.p0(i64 48, ptr %115) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %113) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %113) #6
  br label %5409

2249:                                             ; preds = %2208
  %2250 = landingpad { ptr, i32 }
          cleanup
  %2251 = extractvalue { ptr, i32 } %2250, 0
  store ptr %2251, ptr %10, align 8
  %2252 = extractvalue { ptr, i32 } %2250, 1
  store i32 %2252, ptr %11, align 4
  br label %2460

2253:                                             ; preds = %2222, %2220
  %2254 = landingpad { ptr, i32 }
          cleanup
  %2255 = extractvalue { ptr, i32 } %2254, 0
  store ptr %2255, ptr %10, align 8
  %2256 = extractvalue { ptr, i32 } %2254, 1
  store i32 %2256, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %130) #6
  br label %2459

2257:                                             ; preds = %2412, %2410, %2402, %2399, %2391, %2383, %2355, %2347, %2330, %2316, %2313, %2305, %2297, %2269, %2261, %2225
  %2258 = landingpad { ptr, i32 }
          cleanup
  %2259 = extractvalue { ptr, i32 } %2258, 0
  store ptr %2259, ptr %10, align 8
  %2260 = extractvalue { ptr, i32 } %2258, 1
  store i32 %2260, ptr %11, align 4
  br label %2459

2261:                                             ; preds = %2224
  %2262 = load ptr, ptr %4, align 8, !tbaa !5
  %2263 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2262, ptr noundef @.str.5)
          to label %2264 unwind label %2257

2264:                                             ; preds = %2261
  br label %2265

2265:                                             ; preds = %2264, %2228
  br label %2266

2266:                                             ; preds = %2265
  %2267 = load i32, ptr %129, align 4, !tbaa !9
  %2268 = add nsw i32 %2267, 1
  store i32 %2268, ptr %129, align 4, !tbaa !9
  br label %2217, !llvm.loop !66

2269:                                             ; preds = %2217
  %2270 = load ptr, ptr %4, align 8, !tbaa !5
  %2271 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2270, ptr noundef @.str.6)
          to label %2272 unwind label %2257

2272:                                             ; preds = %2269
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2273

2273:                                             ; preds = %2281, %2272
  %2274 = load i32, ptr %129, align 4, !tbaa !9
  %2275 = icmp slt i32 %2274, 5
  br i1 %2275, label %2276, label %2288

2276:                                             ; preds = %2273
  call void @llvm.lifetime.start.p0(i64 16, ptr %131) #6
  %2277 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2277)
          to label %2278 unwind label %2284

2278:                                             ; preds = %2276
  %2279 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %131, i1 noundef zeroext true)
          to label %2280 unwind label %2284

2280:                                             ; preds = %2278
  call void @llvm.lifetime.end.p0(i64 16, ptr %131) #6
  br label %2281

2281:                                             ; preds = %2280
  %2282 = load i32, ptr %129, align 4, !tbaa !9
  %2283 = add nsw i32 %2282, 3
  store i32 %2283, ptr %129, align 4, !tbaa !9
  br label %2273, !llvm.loop !67

2284:                                             ; preds = %2278, %2276
  %2285 = landingpad { ptr, i32 }
          cleanup
  %2286 = extractvalue { ptr, i32 } %2285, 0
  store ptr %2286, ptr %10, align 8
  %2287 = extractvalue { ptr, i32 } %2285, 1
  store i32 %2287, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %131) #6
  br label %2459

2288:                                             ; preds = %2273
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2289

2289:                                             ; preds = %2310, %2288
  %2290 = load i32, ptr %129, align 4, !tbaa !9
  %2291 = icmp slt i32 %2290, 5
  br i1 %2291, label %2292, label %2313

2292:                                             ; preds = %2289
  call void @llvm.lifetime.start.p0(i64 16, ptr %132) #6
  %2293 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %132, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2293)
          to label %2294 unwind label %2301

2294:                                             ; preds = %2292
  %2295 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %132)
          to label %2296 unwind label %2301

2296:                                             ; preds = %2294
  call void @llvm.lifetime.end.p0(i64 16, ptr %132) #6
  br i1 %2295, label %2297, label %2305

2297:                                             ; preds = %2296
  %2298 = load ptr, ptr %4, align 8, !tbaa !5
  %2299 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2298, ptr noundef @.str.4)
          to label %2300 unwind label %2257

2300:                                             ; preds = %2297
  br label %2309

2301:                                             ; preds = %2294, %2292
  %2302 = landingpad { ptr, i32 }
          cleanup
  %2303 = extractvalue { ptr, i32 } %2302, 0
  store ptr %2303, ptr %10, align 8
  %2304 = extractvalue { ptr, i32 } %2302, 1
  store i32 %2304, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %132) #6
  br label %2459

2305:                                             ; preds = %2296
  %2306 = load ptr, ptr %4, align 8, !tbaa !5
  %2307 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2306, ptr noundef @.str.5)
          to label %2308 unwind label %2257

2308:                                             ; preds = %2305
  br label %2309

2309:                                             ; preds = %2308, %2300
  br label %2310

2310:                                             ; preds = %2309
  %2311 = load i32, ptr %129, align 4, !tbaa !9
  %2312 = add nsw i32 %2311, 1
  store i32 %2312, ptr %129, align 4, !tbaa !9
  br label %2289, !llvm.loop !68

2313:                                             ; preds = %2289
  %2314 = load ptr, ptr %4, align 8, !tbaa !5
  %2315 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2314, ptr noundef @.str.3)
          to label %2316 unwind label %2257

2316:                                             ; preds = %2313
  %2317 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef 0)
          to label %2318 unwind label %2257

2318:                                             ; preds = %2316
  call void @llvm.lifetime.start.p0(i64 48, ptr %133) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %128)
          to label %2319 unwind label %2334

2319:                                             ; preds = %2318
  %2320 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %128, ptr noundef nonnull align 8 dereferenceable(48) %133)
          to label %2321 unwind label %2338

2321:                                             ; preds = %2319
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %133) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %133) #6
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2322

2322:                                             ; preds = %2352, %2321
  %2323 = load i32, ptr %129, align 4, !tbaa !9
  %2324 = icmp slt i32 %2323, 5
  br i1 %2324, label %2325, label %2355

2325:                                             ; preds = %2322
  call void @llvm.lifetime.start.p0(i64 16, ptr %134) #6
  %2326 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %134, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2326)
          to label %2327 unwind label %2343

2327:                                             ; preds = %2325
  %2328 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %134)
          to label %2329 unwind label %2343

2329:                                             ; preds = %2327
  call void @llvm.lifetime.end.p0(i64 16, ptr %134) #6
  br i1 %2328, label %2330, label %2347

2330:                                             ; preds = %2329
  %2331 = load ptr, ptr %4, align 8, !tbaa !5
  %2332 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2331, ptr noundef @.str.4)
          to label %2333 unwind label %2257

2333:                                             ; preds = %2330
  br label %2351

2334:                                             ; preds = %2318
  %2335 = landingpad { ptr, i32 }
          cleanup
  %2336 = extractvalue { ptr, i32 } %2335, 0
  store ptr %2336, ptr %10, align 8
  %2337 = extractvalue { ptr, i32 } %2335, 1
  store i32 %2337, ptr %11, align 4
  br label %2342

2338:                                             ; preds = %2319
  %2339 = landingpad { ptr, i32 }
          cleanup
  %2340 = extractvalue { ptr, i32 } %2339, 0
  store ptr %2340, ptr %10, align 8
  %2341 = extractvalue { ptr, i32 } %2339, 1
  store i32 %2341, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %133) #6
  br label %2342

2342:                                             ; preds = %2338, %2334
  call void @llvm.lifetime.end.p0(i64 48, ptr %133) #6
  br label %2459

2343:                                             ; preds = %2327, %2325
  %2344 = landingpad { ptr, i32 }
          cleanup
  %2345 = extractvalue { ptr, i32 } %2344, 0
  store ptr %2345, ptr %10, align 8
  %2346 = extractvalue { ptr, i32 } %2344, 1
  store i32 %2346, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %134) #6
  br label %2459

2347:                                             ; preds = %2329
  %2348 = load ptr, ptr %4, align 8, !tbaa !5
  %2349 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2348, ptr noundef @.str.5)
          to label %2350 unwind label %2257

2350:                                             ; preds = %2347
  br label %2351

2351:                                             ; preds = %2350, %2333
  br label %2352

2352:                                             ; preds = %2351
  %2353 = load i32, ptr %129, align 4, !tbaa !9
  %2354 = add nsw i32 %2353, 1
  store i32 %2354, ptr %129, align 4, !tbaa !9
  br label %2322, !llvm.loop !69

2355:                                             ; preds = %2322
  %2356 = load ptr, ptr %4, align 8, !tbaa !5
  %2357 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2356, ptr noundef @.str.6)
          to label %2358 unwind label %2257

2358:                                             ; preds = %2355
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2359

2359:                                             ; preds = %2367, %2358
  %2360 = load i32, ptr %129, align 4, !tbaa !9
  %2361 = icmp slt i32 %2360, 5
  br i1 %2361, label %2362, label %2374

2362:                                             ; preds = %2359
  call void @llvm.lifetime.start.p0(i64 16, ptr %135) #6
  %2363 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %135, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2363)
          to label %2364 unwind label %2370

2364:                                             ; preds = %2362
  %2365 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %135, i1 noundef zeroext false)
          to label %2366 unwind label %2370

2366:                                             ; preds = %2364
  call void @llvm.lifetime.end.p0(i64 16, ptr %135) #6
  br label %2367

2367:                                             ; preds = %2366
  %2368 = load i32, ptr %129, align 4, !tbaa !9
  %2369 = add nsw i32 %2368, 3
  store i32 %2369, ptr %129, align 4, !tbaa !9
  br label %2359, !llvm.loop !70

2370:                                             ; preds = %2364, %2362
  %2371 = landingpad { ptr, i32 }
          cleanup
  %2372 = extractvalue { ptr, i32 } %2371, 0
  store ptr %2372, ptr %10, align 8
  %2373 = extractvalue { ptr, i32 } %2371, 1
  store i32 %2373, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %135) #6
  br label %2459

2374:                                             ; preds = %2359
  store i32 0, ptr %129, align 4, !tbaa !9
  br label %2375

2375:                                             ; preds = %2396, %2374
  %2376 = load i32, ptr %129, align 4, !tbaa !9
  %2377 = icmp slt i32 %2376, 5
  br i1 %2377, label %2378, label %2399

2378:                                             ; preds = %2375
  call void @llvm.lifetime.start.p0(i64 16, ptr %136) #6
  %2379 = load i32, ptr %129, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %136, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef %2379)
          to label %2380 unwind label %2387

2380:                                             ; preds = %2378
  %2381 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %136)
          to label %2382 unwind label %2387

2382:                                             ; preds = %2380
  call void @llvm.lifetime.end.p0(i64 16, ptr %136) #6
  br i1 %2381, label %2383, label %2391

2383:                                             ; preds = %2382
  %2384 = load ptr, ptr %4, align 8, !tbaa !5
  %2385 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2384, ptr noundef @.str.4)
          to label %2386 unwind label %2257

2386:                                             ; preds = %2383
  br label %2395

2387:                                             ; preds = %2380, %2378
  %2388 = landingpad { ptr, i32 }
          cleanup
  %2389 = extractvalue { ptr, i32 } %2388, 0
  store ptr %2389, ptr %10, align 8
  %2390 = extractvalue { ptr, i32 } %2388, 1
  store i32 %2390, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %136) #6
  br label %2459

2391:                                             ; preds = %2382
  %2392 = load ptr, ptr %4, align 8, !tbaa !5
  %2393 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2392, ptr noundef @.str.5)
          to label %2394 unwind label %2257

2394:                                             ; preds = %2391
  br label %2395

2395:                                             ; preds = %2394, %2386
  br label %2396

2396:                                             ; preds = %2395
  %2397 = load i32, ptr %129, align 4, !tbaa !9
  %2398 = add nsw i32 %2397, 1
  store i32 %2398, ptr %129, align 4, !tbaa !9
  br label %2375, !llvm.loop !71

2399:                                             ; preds = %2375
  %2400 = load ptr, ptr %4, align 8, !tbaa !5
  %2401 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2400, ptr noundef @.str.3)
          to label %2402 unwind label %2257

2402:                                             ; preds = %2399
  %2403 = load ptr, ptr %4, align 8, !tbaa !5
  %2404 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2403, ptr noundef @.str.7)
          to label %2405 unwind label %2257

2405:                                             ; preds = %2402
  call void @llvm.lifetime.start.p0(i64 32, ptr %137) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %137, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef 2)
          to label %2406 unwind label %2441

2406:                                             ; preds = %2405
  %2407 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2404, ptr noundef nonnull align 8 dereferenceable(32) %137)
          to label %2408 unwind label %2445

2408:                                             ; preds = %2406
  %2409 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2407, ptr noundef @.str.3)
          to label %2410 unwind label %2445

2410:                                             ; preds = %2408
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %137) #6
  %2411 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %128, ptr noundef @.str.8)
          to label %2412 unwind label %2257

2412:                                             ; preds = %2410
  %2413 = load ptr, ptr %4, align 8, !tbaa !5
  %2414 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2413, ptr noundef @.str.7)
          to label %2415 unwind label %2257

2415:                                             ; preds = %2412
  call void @llvm.lifetime.start.p0(i64 32, ptr %138) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %138, ptr noundef nonnull align 8 dereferenceable(48) %128, i32 noundef 2)
          to label %2416 unwind label %2450

2416:                                             ; preds = %2415
  %2417 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2414, ptr noundef nonnull align 8 dereferenceable(32) %138)
          to label %2418 unwind label %2454

2418:                                             ; preds = %2416
  %2419 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2417, ptr noundef @.str.3)
          to label %2420 unwind label %2454

2420:                                             ; preds = %2418
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %138) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %138) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %128) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %128) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %126) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %126) #6
  %2421 = load ptr, ptr %4, align 8, !tbaa !5
  %2422 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2421, ptr noundef @.str.10)
  %2423 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2422, ptr noundef @.str.2)
  %2424 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2423, i32 noundef 5)
  %2425 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2424, ptr noundef @.str.2)
  %2426 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2425, i32 noundef 13)
  %2427 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2426, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %139) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %140) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %140, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %139, ptr noundef nonnull align 4 dereferenceable(20) %140, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %140) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %141) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef 0, ptr noundef null)
          to label %2428 unwind label %2461

2428:                                             ; preds = %2420
  call void @llvm.lifetime.start.p0(i64 4, ptr %142) #6
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2429

2429:                                             ; preds = %2478, %2428
  %2430 = load i32, ptr %142, align 4, !tbaa !9
  %2431 = icmp slt i32 %2430, 5
  br i1 %2431, label %2432, label %2481

2432:                                             ; preds = %2429
  call void @llvm.lifetime.start.p0(i64 16, ptr %143) #6
  %2433 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2433)
          to label %2434 unwind label %2465

2434:                                             ; preds = %2432
  %2435 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %2436 unwind label %2465

2436:                                             ; preds = %2434
  call void @llvm.lifetime.end.p0(i64 16, ptr %143) #6
  br i1 %2435, label %2437, label %2473

2437:                                             ; preds = %2436
  %2438 = load ptr, ptr %4, align 8, !tbaa !5
  %2439 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2438, ptr noundef @.str.4)
          to label %2440 unwind label %2469

2440:                                             ; preds = %2437
  br label %2477

2441:                                             ; preds = %2405
  %2442 = landingpad { ptr, i32 }
          cleanup
  %2443 = extractvalue { ptr, i32 } %2442, 0
  store ptr %2443, ptr %10, align 8
  %2444 = extractvalue { ptr, i32 } %2442, 1
  store i32 %2444, ptr %11, align 4
  br label %2449

2445:                                             ; preds = %2408, %2406
  %2446 = landingpad { ptr, i32 }
          cleanup
  %2447 = extractvalue { ptr, i32 } %2446, 0
  store ptr %2447, ptr %10, align 8
  %2448 = extractvalue { ptr, i32 } %2446, 1
  store i32 %2448, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #6
  br label %2449

2449:                                             ; preds = %2445, %2441
  call void @llvm.lifetime.end.p0(i64 32, ptr %137) #6
  br label %2459

2450:                                             ; preds = %2415
  %2451 = landingpad { ptr, i32 }
          cleanup
  %2452 = extractvalue { ptr, i32 } %2451, 0
  store ptr %2452, ptr %10, align 8
  %2453 = extractvalue { ptr, i32 } %2451, 1
  store i32 %2453, ptr %11, align 4
  br label %2458

2454:                                             ; preds = %2418, %2416
  %2455 = landingpad { ptr, i32 }
          cleanup
  %2456 = extractvalue { ptr, i32 } %2455, 0
  store ptr %2456, ptr %10, align 8
  %2457 = extractvalue { ptr, i32 } %2455, 1
  store i32 %2457, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %138) #6
  br label %2458

2458:                                             ; preds = %2454, %2450
  call void @llvm.lifetime.end.p0(i64 32, ptr %138) #6
  br label %2459

2459:                                             ; preds = %2458, %2449, %2387, %2370, %2343, %2342, %2301, %2284, %2257, %2253
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %128) #6
  br label %2460

2460:                                             ; preds = %2459, %2249
  call void @llvm.lifetime.end.p0(i64 48, ptr %128) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %126) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %126) #6
  br label %5409

2461:                                             ; preds = %2420
  %2462 = landingpad { ptr, i32 }
          cleanup
  %2463 = extractvalue { ptr, i32 } %2462, 0
  store ptr %2463, ptr %10, align 8
  %2464 = extractvalue { ptr, i32 } %2462, 1
  store i32 %2464, ptr %11, align 4
  br label %2672

2465:                                             ; preds = %2434, %2432
  %2466 = landingpad { ptr, i32 }
          cleanup
  %2467 = extractvalue { ptr, i32 } %2466, 0
  store ptr %2467, ptr %10, align 8
  %2468 = extractvalue { ptr, i32 } %2466, 1
  store i32 %2468, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %143) #6
  br label %2671

2469:                                             ; preds = %2624, %2622, %2614, %2611, %2603, %2595, %2567, %2559, %2542, %2528, %2525, %2517, %2509, %2481, %2473, %2437
  %2470 = landingpad { ptr, i32 }
          cleanup
  %2471 = extractvalue { ptr, i32 } %2470, 0
  store ptr %2471, ptr %10, align 8
  %2472 = extractvalue { ptr, i32 } %2470, 1
  store i32 %2472, ptr %11, align 4
  br label %2671

2473:                                             ; preds = %2436
  %2474 = load ptr, ptr %4, align 8, !tbaa !5
  %2475 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2474, ptr noundef @.str.5)
          to label %2476 unwind label %2469

2476:                                             ; preds = %2473
  br label %2477

2477:                                             ; preds = %2476, %2440
  br label %2478

2478:                                             ; preds = %2477
  %2479 = load i32, ptr %142, align 4, !tbaa !9
  %2480 = add nsw i32 %2479, 1
  store i32 %2480, ptr %142, align 4, !tbaa !9
  br label %2429, !llvm.loop !72

2481:                                             ; preds = %2429
  %2482 = load ptr, ptr %4, align 8, !tbaa !5
  %2483 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2482, ptr noundef @.str.6)
          to label %2484 unwind label %2469

2484:                                             ; preds = %2481
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2485

2485:                                             ; preds = %2493, %2484
  %2486 = load i32, ptr %142, align 4, !tbaa !9
  %2487 = icmp slt i32 %2486, 5
  br i1 %2487, label %2488, label %2500

2488:                                             ; preds = %2485
  call void @llvm.lifetime.start.p0(i64 16, ptr %144) #6
  %2489 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %144, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2489)
          to label %2490 unwind label %2496

2490:                                             ; preds = %2488
  %2491 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %144, i1 noundef zeroext true)
          to label %2492 unwind label %2496

2492:                                             ; preds = %2490
  call void @llvm.lifetime.end.p0(i64 16, ptr %144) #6
  br label %2493

2493:                                             ; preds = %2492
  %2494 = load i32, ptr %142, align 4, !tbaa !9
  %2495 = add nsw i32 %2494, 3
  store i32 %2495, ptr %142, align 4, !tbaa !9
  br label %2485, !llvm.loop !73

2496:                                             ; preds = %2490, %2488
  %2497 = landingpad { ptr, i32 }
          cleanup
  %2498 = extractvalue { ptr, i32 } %2497, 0
  store ptr %2498, ptr %10, align 8
  %2499 = extractvalue { ptr, i32 } %2497, 1
  store i32 %2499, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %144) #6
  br label %2671

2500:                                             ; preds = %2485
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2501

2501:                                             ; preds = %2522, %2500
  %2502 = load i32, ptr %142, align 4, !tbaa !9
  %2503 = icmp slt i32 %2502, 5
  br i1 %2503, label %2504, label %2525

2504:                                             ; preds = %2501
  call void @llvm.lifetime.start.p0(i64 16, ptr %145) #6
  %2505 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2505)
          to label %2506 unwind label %2513

2506:                                             ; preds = %2504
  %2507 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %2508 unwind label %2513

2508:                                             ; preds = %2506
  call void @llvm.lifetime.end.p0(i64 16, ptr %145) #6
  br i1 %2507, label %2509, label %2517

2509:                                             ; preds = %2508
  %2510 = load ptr, ptr %4, align 8, !tbaa !5
  %2511 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2510, ptr noundef @.str.4)
          to label %2512 unwind label %2469

2512:                                             ; preds = %2509
  br label %2521

2513:                                             ; preds = %2506, %2504
  %2514 = landingpad { ptr, i32 }
          cleanup
  %2515 = extractvalue { ptr, i32 } %2514, 0
  store ptr %2515, ptr %10, align 8
  %2516 = extractvalue { ptr, i32 } %2514, 1
  store i32 %2516, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %145) #6
  br label %2671

2517:                                             ; preds = %2508
  %2518 = load ptr, ptr %4, align 8, !tbaa !5
  %2519 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2518, ptr noundef @.str.5)
          to label %2520 unwind label %2469

2520:                                             ; preds = %2517
  br label %2521

2521:                                             ; preds = %2520, %2512
  br label %2522

2522:                                             ; preds = %2521
  %2523 = load i32, ptr %142, align 4, !tbaa !9
  %2524 = add nsw i32 %2523, 1
  store i32 %2524, ptr %142, align 4, !tbaa !9
  br label %2501, !llvm.loop !74

2525:                                             ; preds = %2501
  %2526 = load ptr, ptr %4, align 8, !tbaa !5
  %2527 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2526, ptr noundef @.str.3)
          to label %2528 unwind label %2469

2528:                                             ; preds = %2525
  %2529 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef 0)
          to label %2530 unwind label %2469

2530:                                             ; preds = %2528
  call void @llvm.lifetime.start.p0(i64 48, ptr %146) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %146, ptr noundef nonnull align 8 dereferenceable(48) %141)
          to label %2531 unwind label %2546

2531:                                             ; preds = %2530
  %2532 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %141, ptr noundef nonnull align 8 dereferenceable(48) %146)
          to label %2533 unwind label %2550

2533:                                             ; preds = %2531
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %146) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %146) #6
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2534

2534:                                             ; preds = %2564, %2533
  %2535 = load i32, ptr %142, align 4, !tbaa !9
  %2536 = icmp slt i32 %2535, 5
  br i1 %2536, label %2537, label %2567

2537:                                             ; preds = %2534
  call void @llvm.lifetime.start.p0(i64 16, ptr %147) #6
  %2538 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %147, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2538)
          to label %2539 unwind label %2555

2539:                                             ; preds = %2537
  %2540 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %147)
          to label %2541 unwind label %2555

2541:                                             ; preds = %2539
  call void @llvm.lifetime.end.p0(i64 16, ptr %147) #6
  br i1 %2540, label %2542, label %2559

2542:                                             ; preds = %2541
  %2543 = load ptr, ptr %4, align 8, !tbaa !5
  %2544 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2543, ptr noundef @.str.4)
          to label %2545 unwind label %2469

2545:                                             ; preds = %2542
  br label %2563

2546:                                             ; preds = %2530
  %2547 = landingpad { ptr, i32 }
          cleanup
  %2548 = extractvalue { ptr, i32 } %2547, 0
  store ptr %2548, ptr %10, align 8
  %2549 = extractvalue { ptr, i32 } %2547, 1
  store i32 %2549, ptr %11, align 4
  br label %2554

2550:                                             ; preds = %2531
  %2551 = landingpad { ptr, i32 }
          cleanup
  %2552 = extractvalue { ptr, i32 } %2551, 0
  store ptr %2552, ptr %10, align 8
  %2553 = extractvalue { ptr, i32 } %2551, 1
  store i32 %2553, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %146) #6
  br label %2554

2554:                                             ; preds = %2550, %2546
  call void @llvm.lifetime.end.p0(i64 48, ptr %146) #6
  br label %2671

2555:                                             ; preds = %2539, %2537
  %2556 = landingpad { ptr, i32 }
          cleanup
  %2557 = extractvalue { ptr, i32 } %2556, 0
  store ptr %2557, ptr %10, align 8
  %2558 = extractvalue { ptr, i32 } %2556, 1
  store i32 %2558, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %147) #6
  br label %2671

2559:                                             ; preds = %2541
  %2560 = load ptr, ptr %4, align 8, !tbaa !5
  %2561 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2560, ptr noundef @.str.5)
          to label %2562 unwind label %2469

2562:                                             ; preds = %2559
  br label %2563

2563:                                             ; preds = %2562, %2545
  br label %2564

2564:                                             ; preds = %2563
  %2565 = load i32, ptr %142, align 4, !tbaa !9
  %2566 = add nsw i32 %2565, 1
  store i32 %2566, ptr %142, align 4, !tbaa !9
  br label %2534, !llvm.loop !75

2567:                                             ; preds = %2534
  %2568 = load ptr, ptr %4, align 8, !tbaa !5
  %2569 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2568, ptr noundef @.str.6)
          to label %2570 unwind label %2469

2570:                                             ; preds = %2567
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2571

2571:                                             ; preds = %2579, %2570
  %2572 = load i32, ptr %142, align 4, !tbaa !9
  %2573 = icmp slt i32 %2572, 5
  br i1 %2573, label %2574, label %2586

2574:                                             ; preds = %2571
  call void @llvm.lifetime.start.p0(i64 16, ptr %148) #6
  %2575 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %148, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2575)
          to label %2576 unwind label %2582

2576:                                             ; preds = %2574
  %2577 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %148, i1 noundef zeroext false)
          to label %2578 unwind label %2582

2578:                                             ; preds = %2576
  call void @llvm.lifetime.end.p0(i64 16, ptr %148) #6
  br label %2579

2579:                                             ; preds = %2578
  %2580 = load i32, ptr %142, align 4, !tbaa !9
  %2581 = add nsw i32 %2580, 3
  store i32 %2581, ptr %142, align 4, !tbaa !9
  br label %2571, !llvm.loop !76

2582:                                             ; preds = %2576, %2574
  %2583 = landingpad { ptr, i32 }
          cleanup
  %2584 = extractvalue { ptr, i32 } %2583, 0
  store ptr %2584, ptr %10, align 8
  %2585 = extractvalue { ptr, i32 } %2583, 1
  store i32 %2585, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %148) #6
  br label %2671

2586:                                             ; preds = %2571
  store i32 0, ptr %142, align 4, !tbaa !9
  br label %2587

2587:                                             ; preds = %2608, %2586
  %2588 = load i32, ptr %142, align 4, !tbaa !9
  %2589 = icmp slt i32 %2588, 5
  br i1 %2589, label %2590, label %2611

2590:                                             ; preds = %2587
  call void @llvm.lifetime.start.p0(i64 16, ptr %149) #6
  %2591 = load i32, ptr %142, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %149, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef %2591)
          to label %2592 unwind label %2599

2592:                                             ; preds = %2590
  %2593 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %149)
          to label %2594 unwind label %2599

2594:                                             ; preds = %2592
  call void @llvm.lifetime.end.p0(i64 16, ptr %149) #6
  br i1 %2593, label %2595, label %2603

2595:                                             ; preds = %2594
  %2596 = load ptr, ptr %4, align 8, !tbaa !5
  %2597 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2596, ptr noundef @.str.4)
          to label %2598 unwind label %2469

2598:                                             ; preds = %2595
  br label %2607

2599:                                             ; preds = %2592, %2590
  %2600 = landingpad { ptr, i32 }
          cleanup
  %2601 = extractvalue { ptr, i32 } %2600, 0
  store ptr %2601, ptr %10, align 8
  %2602 = extractvalue { ptr, i32 } %2600, 1
  store i32 %2602, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %149) #6
  br label %2671

2603:                                             ; preds = %2594
  %2604 = load ptr, ptr %4, align 8, !tbaa !5
  %2605 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2604, ptr noundef @.str.5)
          to label %2606 unwind label %2469

2606:                                             ; preds = %2603
  br label %2607

2607:                                             ; preds = %2606, %2598
  br label %2608

2608:                                             ; preds = %2607
  %2609 = load i32, ptr %142, align 4, !tbaa !9
  %2610 = add nsw i32 %2609, 1
  store i32 %2610, ptr %142, align 4, !tbaa !9
  br label %2587, !llvm.loop !77

2611:                                             ; preds = %2587
  %2612 = load ptr, ptr %4, align 8, !tbaa !5
  %2613 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2612, ptr noundef @.str.3)
          to label %2614 unwind label %2469

2614:                                             ; preds = %2611
  %2615 = load ptr, ptr %4, align 8, !tbaa !5
  %2616 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2615, ptr noundef @.str.7)
          to label %2617 unwind label %2469

2617:                                             ; preds = %2614
  call void @llvm.lifetime.start.p0(i64 32, ptr %150) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %150, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef 2)
          to label %2618 unwind label %2653

2618:                                             ; preds = %2617
  %2619 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2616, ptr noundef nonnull align 8 dereferenceable(32) %150)
          to label %2620 unwind label %2657

2620:                                             ; preds = %2618
  %2621 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2619, ptr noundef @.str.3)
          to label %2622 unwind label %2657

2622:                                             ; preds = %2620
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %150) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %150) #6
  %2623 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %141, ptr noundef @.str.8)
          to label %2624 unwind label %2469

2624:                                             ; preds = %2622
  %2625 = load ptr, ptr %4, align 8, !tbaa !5
  %2626 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2625, ptr noundef @.str.7)
          to label %2627 unwind label %2469

2627:                                             ; preds = %2624
  call void @llvm.lifetime.start.p0(i64 32, ptr %151) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %151, ptr noundef nonnull align 8 dereferenceable(48) %141, i32 noundef 2)
          to label %2628 unwind label %2662

2628:                                             ; preds = %2627
  %2629 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2626, ptr noundef nonnull align 8 dereferenceable(32) %151)
          to label %2630 unwind label %2666

2630:                                             ; preds = %2628
  %2631 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2629, ptr noundef @.str.3)
          to label %2632 unwind label %2666

2632:                                             ; preds = %2630
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %151) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %151) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %141) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %141) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %139) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %139) #6
  %2633 = load ptr, ptr %4, align 8, !tbaa !5
  %2634 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2633, ptr noundef @.str.11)
  %2635 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2634, ptr noundef @.str.2)
  %2636 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2635, i32 noundef 5)
  %2637 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2636, ptr noundef @.str.2)
  %2638 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2637, i32 noundef 13)
  %2639 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2638, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %152) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %153) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %153, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %152, ptr noundef nonnull align 4 dereferenceable(20) %153, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %153) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %154) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef 0, ptr noundef null)
          to label %2640 unwind label %2673

2640:                                             ; preds = %2632
  call void @llvm.lifetime.start.p0(i64 4, ptr %155) #6
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2641

2641:                                             ; preds = %2690, %2640
  %2642 = load i32, ptr %155, align 4, !tbaa !9
  %2643 = icmp slt i32 %2642, 5
  br i1 %2643, label %2644, label %2693

2644:                                             ; preds = %2641
  call void @llvm.lifetime.start.p0(i64 16, ptr %156) #6
  %2645 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2645)
          to label %2646 unwind label %2677

2646:                                             ; preds = %2644
  %2647 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %156)
          to label %2648 unwind label %2677

2648:                                             ; preds = %2646
  call void @llvm.lifetime.end.p0(i64 16, ptr %156) #6
  br i1 %2647, label %2649, label %2685

2649:                                             ; preds = %2648
  %2650 = load ptr, ptr %4, align 8, !tbaa !5
  %2651 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2650, ptr noundef @.str.4)
          to label %2652 unwind label %2681

2652:                                             ; preds = %2649
  br label %2689

2653:                                             ; preds = %2617
  %2654 = landingpad { ptr, i32 }
          cleanup
  %2655 = extractvalue { ptr, i32 } %2654, 0
  store ptr %2655, ptr %10, align 8
  %2656 = extractvalue { ptr, i32 } %2654, 1
  store i32 %2656, ptr %11, align 4
  br label %2661

2657:                                             ; preds = %2620, %2618
  %2658 = landingpad { ptr, i32 }
          cleanup
  %2659 = extractvalue { ptr, i32 } %2658, 0
  store ptr %2659, ptr %10, align 8
  %2660 = extractvalue { ptr, i32 } %2658, 1
  store i32 %2660, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %150) #6
  br label %2661

2661:                                             ; preds = %2657, %2653
  call void @llvm.lifetime.end.p0(i64 32, ptr %150) #6
  br label %2671

2662:                                             ; preds = %2627
  %2663 = landingpad { ptr, i32 }
          cleanup
  %2664 = extractvalue { ptr, i32 } %2663, 0
  store ptr %2664, ptr %10, align 8
  %2665 = extractvalue { ptr, i32 } %2663, 1
  store i32 %2665, ptr %11, align 4
  br label %2670

2666:                                             ; preds = %2630, %2628
  %2667 = landingpad { ptr, i32 }
          cleanup
  %2668 = extractvalue { ptr, i32 } %2667, 0
  store ptr %2668, ptr %10, align 8
  %2669 = extractvalue { ptr, i32 } %2667, 1
  store i32 %2669, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %151) #6
  br label %2670

2670:                                             ; preds = %2666, %2662
  call void @llvm.lifetime.end.p0(i64 32, ptr %151) #6
  br label %2671

2671:                                             ; preds = %2670, %2661, %2599, %2582, %2555, %2554, %2513, %2496, %2469, %2465
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %141) #6
  br label %2672

2672:                                             ; preds = %2671, %2461
  call void @llvm.lifetime.end.p0(i64 48, ptr %141) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %139) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %139) #6
  br label %5409

2673:                                             ; preds = %2632
  %2674 = landingpad { ptr, i32 }
          cleanup
  %2675 = extractvalue { ptr, i32 } %2674, 0
  store ptr %2675, ptr %10, align 8
  %2676 = extractvalue { ptr, i32 } %2674, 1
  store i32 %2676, ptr %11, align 4
  br label %2884

2677:                                             ; preds = %2646, %2644
  %2678 = landingpad { ptr, i32 }
          cleanup
  %2679 = extractvalue { ptr, i32 } %2678, 0
  store ptr %2679, ptr %10, align 8
  %2680 = extractvalue { ptr, i32 } %2678, 1
  store i32 %2680, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %156) #6
  br label %2883

2681:                                             ; preds = %2836, %2834, %2826, %2823, %2815, %2807, %2779, %2771, %2754, %2740, %2737, %2729, %2721, %2693, %2685, %2649
  %2682 = landingpad { ptr, i32 }
          cleanup
  %2683 = extractvalue { ptr, i32 } %2682, 0
  store ptr %2683, ptr %10, align 8
  %2684 = extractvalue { ptr, i32 } %2682, 1
  store i32 %2684, ptr %11, align 4
  br label %2883

2685:                                             ; preds = %2648
  %2686 = load ptr, ptr %4, align 8, !tbaa !5
  %2687 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2686, ptr noundef @.str.5)
          to label %2688 unwind label %2681

2688:                                             ; preds = %2685
  br label %2689

2689:                                             ; preds = %2688, %2652
  br label %2690

2690:                                             ; preds = %2689
  %2691 = load i32, ptr %155, align 4, !tbaa !9
  %2692 = add nsw i32 %2691, 1
  store i32 %2692, ptr %155, align 4, !tbaa !9
  br label %2641, !llvm.loop !78

2693:                                             ; preds = %2641
  %2694 = load ptr, ptr %4, align 8, !tbaa !5
  %2695 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2694, ptr noundef @.str.6)
          to label %2696 unwind label %2681

2696:                                             ; preds = %2693
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2697

2697:                                             ; preds = %2705, %2696
  %2698 = load i32, ptr %155, align 4, !tbaa !9
  %2699 = icmp slt i32 %2698, 5
  br i1 %2699, label %2700, label %2712

2700:                                             ; preds = %2697
  call void @llvm.lifetime.start.p0(i64 16, ptr %157) #6
  %2701 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %157, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2701)
          to label %2702 unwind label %2708

2702:                                             ; preds = %2700
  %2703 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %157, i1 noundef zeroext true)
          to label %2704 unwind label %2708

2704:                                             ; preds = %2702
  call void @llvm.lifetime.end.p0(i64 16, ptr %157) #6
  br label %2705

2705:                                             ; preds = %2704
  %2706 = load i32, ptr %155, align 4, !tbaa !9
  %2707 = add nsw i32 %2706, 3
  store i32 %2707, ptr %155, align 4, !tbaa !9
  br label %2697, !llvm.loop !79

2708:                                             ; preds = %2702, %2700
  %2709 = landingpad { ptr, i32 }
          cleanup
  %2710 = extractvalue { ptr, i32 } %2709, 0
  store ptr %2710, ptr %10, align 8
  %2711 = extractvalue { ptr, i32 } %2709, 1
  store i32 %2711, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %157) #6
  br label %2883

2712:                                             ; preds = %2697
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2713

2713:                                             ; preds = %2734, %2712
  %2714 = load i32, ptr %155, align 4, !tbaa !9
  %2715 = icmp slt i32 %2714, 5
  br i1 %2715, label %2716, label %2737

2716:                                             ; preds = %2713
  call void @llvm.lifetime.start.p0(i64 16, ptr %158) #6
  %2717 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %158, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2717)
          to label %2718 unwind label %2725

2718:                                             ; preds = %2716
  %2719 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %158)
          to label %2720 unwind label %2725

2720:                                             ; preds = %2718
  call void @llvm.lifetime.end.p0(i64 16, ptr %158) #6
  br i1 %2719, label %2721, label %2729

2721:                                             ; preds = %2720
  %2722 = load ptr, ptr %4, align 8, !tbaa !5
  %2723 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2722, ptr noundef @.str.4)
          to label %2724 unwind label %2681

2724:                                             ; preds = %2721
  br label %2733

2725:                                             ; preds = %2718, %2716
  %2726 = landingpad { ptr, i32 }
          cleanup
  %2727 = extractvalue { ptr, i32 } %2726, 0
  store ptr %2727, ptr %10, align 8
  %2728 = extractvalue { ptr, i32 } %2726, 1
  store i32 %2728, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %158) #6
  br label %2883

2729:                                             ; preds = %2720
  %2730 = load ptr, ptr %4, align 8, !tbaa !5
  %2731 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2730, ptr noundef @.str.5)
          to label %2732 unwind label %2681

2732:                                             ; preds = %2729
  br label %2733

2733:                                             ; preds = %2732, %2724
  br label %2734

2734:                                             ; preds = %2733
  %2735 = load i32, ptr %155, align 4, !tbaa !9
  %2736 = add nsw i32 %2735, 1
  store i32 %2736, ptr %155, align 4, !tbaa !9
  br label %2713, !llvm.loop !80

2737:                                             ; preds = %2713
  %2738 = load ptr, ptr %4, align 8, !tbaa !5
  %2739 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2738, ptr noundef @.str.3)
          to label %2740 unwind label %2681

2740:                                             ; preds = %2737
  %2741 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef 0)
          to label %2742 unwind label %2681

2742:                                             ; preds = %2740
  call void @llvm.lifetime.start.p0(i64 48, ptr %159) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %159, ptr noundef nonnull align 8 dereferenceable(48) %154)
          to label %2743 unwind label %2758

2743:                                             ; preds = %2742
  %2744 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %154, ptr noundef nonnull align 8 dereferenceable(48) %159)
          to label %2745 unwind label %2762

2745:                                             ; preds = %2743
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %159) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %159) #6
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2746

2746:                                             ; preds = %2776, %2745
  %2747 = load i32, ptr %155, align 4, !tbaa !9
  %2748 = icmp slt i32 %2747, 5
  br i1 %2748, label %2749, label %2779

2749:                                             ; preds = %2746
  call void @llvm.lifetime.start.p0(i64 16, ptr %160) #6
  %2750 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %160, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2750)
          to label %2751 unwind label %2767

2751:                                             ; preds = %2749
  %2752 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %160)
          to label %2753 unwind label %2767

2753:                                             ; preds = %2751
  call void @llvm.lifetime.end.p0(i64 16, ptr %160) #6
  br i1 %2752, label %2754, label %2771

2754:                                             ; preds = %2753
  %2755 = load ptr, ptr %4, align 8, !tbaa !5
  %2756 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2755, ptr noundef @.str.4)
          to label %2757 unwind label %2681

2757:                                             ; preds = %2754
  br label %2775

2758:                                             ; preds = %2742
  %2759 = landingpad { ptr, i32 }
          cleanup
  %2760 = extractvalue { ptr, i32 } %2759, 0
  store ptr %2760, ptr %10, align 8
  %2761 = extractvalue { ptr, i32 } %2759, 1
  store i32 %2761, ptr %11, align 4
  br label %2766

2762:                                             ; preds = %2743
  %2763 = landingpad { ptr, i32 }
          cleanup
  %2764 = extractvalue { ptr, i32 } %2763, 0
  store ptr %2764, ptr %10, align 8
  %2765 = extractvalue { ptr, i32 } %2763, 1
  store i32 %2765, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %159) #6
  br label %2766

2766:                                             ; preds = %2762, %2758
  call void @llvm.lifetime.end.p0(i64 48, ptr %159) #6
  br label %2883

2767:                                             ; preds = %2751, %2749
  %2768 = landingpad { ptr, i32 }
          cleanup
  %2769 = extractvalue { ptr, i32 } %2768, 0
  store ptr %2769, ptr %10, align 8
  %2770 = extractvalue { ptr, i32 } %2768, 1
  store i32 %2770, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %160) #6
  br label %2883

2771:                                             ; preds = %2753
  %2772 = load ptr, ptr %4, align 8, !tbaa !5
  %2773 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2772, ptr noundef @.str.5)
          to label %2774 unwind label %2681

2774:                                             ; preds = %2771
  br label %2775

2775:                                             ; preds = %2774, %2757
  br label %2776

2776:                                             ; preds = %2775
  %2777 = load i32, ptr %155, align 4, !tbaa !9
  %2778 = add nsw i32 %2777, 1
  store i32 %2778, ptr %155, align 4, !tbaa !9
  br label %2746, !llvm.loop !81

2779:                                             ; preds = %2746
  %2780 = load ptr, ptr %4, align 8, !tbaa !5
  %2781 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2780, ptr noundef @.str.6)
          to label %2782 unwind label %2681

2782:                                             ; preds = %2779
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2783

2783:                                             ; preds = %2791, %2782
  %2784 = load i32, ptr %155, align 4, !tbaa !9
  %2785 = icmp slt i32 %2784, 5
  br i1 %2785, label %2786, label %2798

2786:                                             ; preds = %2783
  call void @llvm.lifetime.start.p0(i64 16, ptr %161) #6
  %2787 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %161, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2787)
          to label %2788 unwind label %2794

2788:                                             ; preds = %2786
  %2789 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %161, i1 noundef zeroext false)
          to label %2790 unwind label %2794

2790:                                             ; preds = %2788
  call void @llvm.lifetime.end.p0(i64 16, ptr %161) #6
  br label %2791

2791:                                             ; preds = %2790
  %2792 = load i32, ptr %155, align 4, !tbaa !9
  %2793 = add nsw i32 %2792, 3
  store i32 %2793, ptr %155, align 4, !tbaa !9
  br label %2783, !llvm.loop !82

2794:                                             ; preds = %2788, %2786
  %2795 = landingpad { ptr, i32 }
          cleanup
  %2796 = extractvalue { ptr, i32 } %2795, 0
  store ptr %2796, ptr %10, align 8
  %2797 = extractvalue { ptr, i32 } %2795, 1
  store i32 %2797, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %161) #6
  br label %2883

2798:                                             ; preds = %2783
  store i32 0, ptr %155, align 4, !tbaa !9
  br label %2799

2799:                                             ; preds = %2820, %2798
  %2800 = load i32, ptr %155, align 4, !tbaa !9
  %2801 = icmp slt i32 %2800, 5
  br i1 %2801, label %2802, label %2823

2802:                                             ; preds = %2799
  call void @llvm.lifetime.start.p0(i64 16, ptr %162) #6
  %2803 = load i32, ptr %155, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %162, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef %2803)
          to label %2804 unwind label %2811

2804:                                             ; preds = %2802
  %2805 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %162)
          to label %2806 unwind label %2811

2806:                                             ; preds = %2804
  call void @llvm.lifetime.end.p0(i64 16, ptr %162) #6
  br i1 %2805, label %2807, label %2815

2807:                                             ; preds = %2806
  %2808 = load ptr, ptr %4, align 8, !tbaa !5
  %2809 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2808, ptr noundef @.str.4)
          to label %2810 unwind label %2681

2810:                                             ; preds = %2807
  br label %2819

2811:                                             ; preds = %2804, %2802
  %2812 = landingpad { ptr, i32 }
          cleanup
  %2813 = extractvalue { ptr, i32 } %2812, 0
  store ptr %2813, ptr %10, align 8
  %2814 = extractvalue { ptr, i32 } %2812, 1
  store i32 %2814, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %162) #6
  br label %2883

2815:                                             ; preds = %2806
  %2816 = load ptr, ptr %4, align 8, !tbaa !5
  %2817 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2816, ptr noundef @.str.5)
          to label %2818 unwind label %2681

2818:                                             ; preds = %2815
  br label %2819

2819:                                             ; preds = %2818, %2810
  br label %2820

2820:                                             ; preds = %2819
  %2821 = load i32, ptr %155, align 4, !tbaa !9
  %2822 = add nsw i32 %2821, 1
  store i32 %2822, ptr %155, align 4, !tbaa !9
  br label %2799, !llvm.loop !83

2823:                                             ; preds = %2799
  %2824 = load ptr, ptr %4, align 8, !tbaa !5
  %2825 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2824, ptr noundef @.str.3)
          to label %2826 unwind label %2681

2826:                                             ; preds = %2823
  %2827 = load ptr, ptr %4, align 8, !tbaa !5
  %2828 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2827, ptr noundef @.str.7)
          to label %2829 unwind label %2681

2829:                                             ; preds = %2826
  call void @llvm.lifetime.start.p0(i64 32, ptr %163) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %163, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef 2)
          to label %2830 unwind label %2865

2830:                                             ; preds = %2829
  %2831 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2828, ptr noundef nonnull align 8 dereferenceable(32) %163)
          to label %2832 unwind label %2869

2832:                                             ; preds = %2830
  %2833 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2831, ptr noundef @.str.3)
          to label %2834 unwind label %2869

2834:                                             ; preds = %2832
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %163) #6
  %2835 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %154, ptr noundef @.str.8)
          to label %2836 unwind label %2681

2836:                                             ; preds = %2834
  %2837 = load ptr, ptr %4, align 8, !tbaa !5
  %2838 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2837, ptr noundef @.str.7)
          to label %2839 unwind label %2681

2839:                                             ; preds = %2836
  call void @llvm.lifetime.start.p0(i64 32, ptr %164) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %154, i32 noundef 2)
          to label %2840 unwind label %2874

2840:                                             ; preds = %2839
  %2841 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2838, ptr noundef nonnull align 8 dereferenceable(32) %164)
          to label %2842 unwind label %2878

2842:                                             ; preds = %2840
  %2843 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2841, ptr noundef @.str.3)
          to label %2844 unwind label %2878

2844:                                             ; preds = %2842
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %164) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %164) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %155) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %154) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %154) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %152) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %152) #6
  %2845 = load ptr, ptr %4, align 8, !tbaa !5
  %2846 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2845, ptr noundef @.str)
  %2847 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2846, ptr noundef @.str.2)
  %2848 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2847, i32 noundef 65)
  %2849 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2848, ptr noundef @.str.2)
  %2850 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2849, i32 noundef 65)
  %2851 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2850, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %165) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %166) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %166, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %165, ptr noundef nonnull align 4 dereferenceable(20) %166, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %166) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %167) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef 0, ptr noundef null)
          to label %2852 unwind label %2885

2852:                                             ; preds = %2844
  call void @llvm.lifetime.start.p0(i64 4, ptr %168) #6
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %2853

2853:                                             ; preds = %2902, %2852
  %2854 = load i32, ptr %168, align 4, !tbaa !9
  %2855 = icmp slt i32 %2854, 65
  br i1 %2855, label %2856, label %2905

2856:                                             ; preds = %2853
  call void @llvm.lifetime.start.p0(i64 16, ptr %169) #6
  %2857 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %169, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %2857)
          to label %2858 unwind label %2889

2858:                                             ; preds = %2856
  %2859 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %169)
          to label %2860 unwind label %2889

2860:                                             ; preds = %2858
  call void @llvm.lifetime.end.p0(i64 16, ptr %169) #6
  br i1 %2859, label %2861, label %2897

2861:                                             ; preds = %2860
  %2862 = load ptr, ptr %4, align 8, !tbaa !5
  %2863 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2862, ptr noundef @.str.4)
          to label %2864 unwind label %2893

2864:                                             ; preds = %2861
  br label %2901

2865:                                             ; preds = %2829
  %2866 = landingpad { ptr, i32 }
          cleanup
  %2867 = extractvalue { ptr, i32 } %2866, 0
  store ptr %2867, ptr %10, align 8
  %2868 = extractvalue { ptr, i32 } %2866, 1
  store i32 %2868, ptr %11, align 4
  br label %2873

2869:                                             ; preds = %2832, %2830
  %2870 = landingpad { ptr, i32 }
          cleanup
  %2871 = extractvalue { ptr, i32 } %2870, 0
  store ptr %2871, ptr %10, align 8
  %2872 = extractvalue { ptr, i32 } %2870, 1
  store i32 %2872, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #6
  br label %2873

2873:                                             ; preds = %2869, %2865
  call void @llvm.lifetime.end.p0(i64 32, ptr %163) #6
  br label %2883

2874:                                             ; preds = %2839
  %2875 = landingpad { ptr, i32 }
          cleanup
  %2876 = extractvalue { ptr, i32 } %2875, 0
  store ptr %2876, ptr %10, align 8
  %2877 = extractvalue { ptr, i32 } %2875, 1
  store i32 %2877, ptr %11, align 4
  br label %2882

2878:                                             ; preds = %2842, %2840
  %2879 = landingpad { ptr, i32 }
          cleanup
  %2880 = extractvalue { ptr, i32 } %2879, 0
  store ptr %2880, ptr %10, align 8
  %2881 = extractvalue { ptr, i32 } %2879, 1
  store i32 %2881, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %164) #6
  br label %2882

2882:                                             ; preds = %2878, %2874
  call void @llvm.lifetime.end.p0(i64 32, ptr %164) #6
  br label %2883

2883:                                             ; preds = %2882, %2873, %2811, %2794, %2767, %2766, %2725, %2708, %2681, %2677
  call void @llvm.lifetime.end.p0(i64 4, ptr %155) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %154) #6
  br label %2884

2884:                                             ; preds = %2883, %2673
  call void @llvm.lifetime.end.p0(i64 48, ptr %154) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %152) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %152) #6
  br label %5409

2885:                                             ; preds = %2844
  %2886 = landingpad { ptr, i32 }
          cleanup
  %2887 = extractvalue { ptr, i32 } %2886, 0
  store ptr %2887, ptr %10, align 8
  %2888 = extractvalue { ptr, i32 } %2886, 1
  store i32 %2888, ptr %11, align 4
  br label %3096

2889:                                             ; preds = %2858, %2856
  %2890 = landingpad { ptr, i32 }
          cleanup
  %2891 = extractvalue { ptr, i32 } %2890, 0
  store ptr %2891, ptr %10, align 8
  %2892 = extractvalue { ptr, i32 } %2890, 1
  store i32 %2892, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %169) #6
  br label %3095

2893:                                             ; preds = %3048, %3046, %3038, %3035, %3027, %3019, %2991, %2983, %2966, %2952, %2949, %2941, %2933, %2905, %2897, %2861
  %2894 = landingpad { ptr, i32 }
          cleanup
  %2895 = extractvalue { ptr, i32 } %2894, 0
  store ptr %2895, ptr %10, align 8
  %2896 = extractvalue { ptr, i32 } %2894, 1
  store i32 %2896, ptr %11, align 4
  br label %3095

2897:                                             ; preds = %2860
  %2898 = load ptr, ptr %4, align 8, !tbaa !5
  %2899 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2898, ptr noundef @.str.5)
          to label %2900 unwind label %2893

2900:                                             ; preds = %2897
  br label %2901

2901:                                             ; preds = %2900, %2864
  br label %2902

2902:                                             ; preds = %2901
  %2903 = load i32, ptr %168, align 4, !tbaa !9
  %2904 = add nsw i32 %2903, 1
  store i32 %2904, ptr %168, align 4, !tbaa !9
  br label %2853, !llvm.loop !84

2905:                                             ; preds = %2853
  %2906 = load ptr, ptr %4, align 8, !tbaa !5
  %2907 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2906, ptr noundef @.str.6)
          to label %2908 unwind label %2893

2908:                                             ; preds = %2905
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %2909

2909:                                             ; preds = %2917, %2908
  %2910 = load i32, ptr %168, align 4, !tbaa !9
  %2911 = icmp slt i32 %2910, 65
  br i1 %2911, label %2912, label %2924

2912:                                             ; preds = %2909
  call void @llvm.lifetime.start.p0(i64 16, ptr %170) #6
  %2913 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %170, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %2913)
          to label %2914 unwind label %2920

2914:                                             ; preds = %2912
  %2915 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %170, i1 noundef zeroext true)
          to label %2916 unwind label %2920

2916:                                             ; preds = %2914
  call void @llvm.lifetime.end.p0(i64 16, ptr %170) #6
  br label %2917

2917:                                             ; preds = %2916
  %2918 = load i32, ptr %168, align 4, !tbaa !9
  %2919 = add nsw i32 %2918, 3
  store i32 %2919, ptr %168, align 4, !tbaa !9
  br label %2909, !llvm.loop !85

2920:                                             ; preds = %2914, %2912
  %2921 = landingpad { ptr, i32 }
          cleanup
  %2922 = extractvalue { ptr, i32 } %2921, 0
  store ptr %2922, ptr %10, align 8
  %2923 = extractvalue { ptr, i32 } %2921, 1
  store i32 %2923, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %170) #6
  br label %3095

2924:                                             ; preds = %2909
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %2925

2925:                                             ; preds = %2946, %2924
  %2926 = load i32, ptr %168, align 4, !tbaa !9
  %2927 = icmp slt i32 %2926, 65
  br i1 %2927, label %2928, label %2949

2928:                                             ; preds = %2925
  call void @llvm.lifetime.start.p0(i64 16, ptr %171) #6
  %2929 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %171, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %2929)
          to label %2930 unwind label %2937

2930:                                             ; preds = %2928
  %2931 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %171)
          to label %2932 unwind label %2937

2932:                                             ; preds = %2930
  call void @llvm.lifetime.end.p0(i64 16, ptr %171) #6
  br i1 %2931, label %2933, label %2941

2933:                                             ; preds = %2932
  %2934 = load ptr, ptr %4, align 8, !tbaa !5
  %2935 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2934, ptr noundef @.str.4)
          to label %2936 unwind label %2893

2936:                                             ; preds = %2933
  br label %2945

2937:                                             ; preds = %2930, %2928
  %2938 = landingpad { ptr, i32 }
          cleanup
  %2939 = extractvalue { ptr, i32 } %2938, 0
  store ptr %2939, ptr %10, align 8
  %2940 = extractvalue { ptr, i32 } %2938, 1
  store i32 %2940, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %171) #6
  br label %3095

2941:                                             ; preds = %2932
  %2942 = load ptr, ptr %4, align 8, !tbaa !5
  %2943 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2942, ptr noundef @.str.5)
          to label %2944 unwind label %2893

2944:                                             ; preds = %2941
  br label %2945

2945:                                             ; preds = %2944, %2936
  br label %2946

2946:                                             ; preds = %2945
  %2947 = load i32, ptr %168, align 4, !tbaa !9
  %2948 = add nsw i32 %2947, 1
  store i32 %2948, ptr %168, align 4, !tbaa !9
  br label %2925, !llvm.loop !86

2949:                                             ; preds = %2925
  %2950 = load ptr, ptr %4, align 8, !tbaa !5
  %2951 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2950, ptr noundef @.str.3)
          to label %2952 unwind label %2893

2952:                                             ; preds = %2949
  %2953 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef 0)
          to label %2954 unwind label %2893

2954:                                             ; preds = %2952
  call void @llvm.lifetime.start.p0(i64 48, ptr %172) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %172, ptr noundef nonnull align 8 dereferenceable(48) %167)
          to label %2955 unwind label %2970

2955:                                             ; preds = %2954
  %2956 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %167, ptr noundef nonnull align 8 dereferenceable(48) %172)
          to label %2957 unwind label %2974

2957:                                             ; preds = %2955
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %172) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %172) #6
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %2958

2958:                                             ; preds = %2988, %2957
  %2959 = load i32, ptr %168, align 4, !tbaa !9
  %2960 = icmp slt i32 %2959, 65
  br i1 %2960, label %2961, label %2991

2961:                                             ; preds = %2958
  call void @llvm.lifetime.start.p0(i64 16, ptr %173) #6
  %2962 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %173, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %2962)
          to label %2963 unwind label %2979

2963:                                             ; preds = %2961
  %2964 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %173)
          to label %2965 unwind label %2979

2965:                                             ; preds = %2963
  call void @llvm.lifetime.end.p0(i64 16, ptr %173) #6
  br i1 %2964, label %2966, label %2983

2966:                                             ; preds = %2965
  %2967 = load ptr, ptr %4, align 8, !tbaa !5
  %2968 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2967, ptr noundef @.str.4)
          to label %2969 unwind label %2893

2969:                                             ; preds = %2966
  br label %2987

2970:                                             ; preds = %2954
  %2971 = landingpad { ptr, i32 }
          cleanup
  %2972 = extractvalue { ptr, i32 } %2971, 0
  store ptr %2972, ptr %10, align 8
  %2973 = extractvalue { ptr, i32 } %2971, 1
  store i32 %2973, ptr %11, align 4
  br label %2978

2974:                                             ; preds = %2955
  %2975 = landingpad { ptr, i32 }
          cleanup
  %2976 = extractvalue { ptr, i32 } %2975, 0
  store ptr %2976, ptr %10, align 8
  %2977 = extractvalue { ptr, i32 } %2975, 1
  store i32 %2977, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %172) #6
  br label %2978

2978:                                             ; preds = %2974, %2970
  call void @llvm.lifetime.end.p0(i64 48, ptr %172) #6
  br label %3095

2979:                                             ; preds = %2963, %2961
  %2980 = landingpad { ptr, i32 }
          cleanup
  %2981 = extractvalue { ptr, i32 } %2980, 0
  store ptr %2981, ptr %10, align 8
  %2982 = extractvalue { ptr, i32 } %2980, 1
  store i32 %2982, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %173) #6
  br label %3095

2983:                                             ; preds = %2965
  %2984 = load ptr, ptr %4, align 8, !tbaa !5
  %2985 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2984, ptr noundef @.str.5)
          to label %2986 unwind label %2893

2986:                                             ; preds = %2983
  br label %2987

2987:                                             ; preds = %2986, %2969
  br label %2988

2988:                                             ; preds = %2987
  %2989 = load i32, ptr %168, align 4, !tbaa !9
  %2990 = add nsw i32 %2989, 1
  store i32 %2990, ptr %168, align 4, !tbaa !9
  br label %2958, !llvm.loop !87

2991:                                             ; preds = %2958
  %2992 = load ptr, ptr %4, align 8, !tbaa !5
  %2993 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2992, ptr noundef @.str.6)
          to label %2994 unwind label %2893

2994:                                             ; preds = %2991
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %2995

2995:                                             ; preds = %3003, %2994
  %2996 = load i32, ptr %168, align 4, !tbaa !9
  %2997 = icmp slt i32 %2996, 65
  br i1 %2997, label %2998, label %3010

2998:                                             ; preds = %2995
  call void @llvm.lifetime.start.p0(i64 16, ptr %174) #6
  %2999 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %174, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %2999)
          to label %3000 unwind label %3006

3000:                                             ; preds = %2998
  %3001 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %174, i1 noundef zeroext false)
          to label %3002 unwind label %3006

3002:                                             ; preds = %3000
  call void @llvm.lifetime.end.p0(i64 16, ptr %174) #6
  br label %3003

3003:                                             ; preds = %3002
  %3004 = load i32, ptr %168, align 4, !tbaa !9
  %3005 = add nsw i32 %3004, 3
  store i32 %3005, ptr %168, align 4, !tbaa !9
  br label %2995, !llvm.loop !88

3006:                                             ; preds = %3000, %2998
  %3007 = landingpad { ptr, i32 }
          cleanup
  %3008 = extractvalue { ptr, i32 } %3007, 0
  store ptr %3008, ptr %10, align 8
  %3009 = extractvalue { ptr, i32 } %3007, 1
  store i32 %3009, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %174) #6
  br label %3095

3010:                                             ; preds = %2995
  store i32 0, ptr %168, align 4, !tbaa !9
  br label %3011

3011:                                             ; preds = %3032, %3010
  %3012 = load i32, ptr %168, align 4, !tbaa !9
  %3013 = icmp slt i32 %3012, 65
  br i1 %3013, label %3014, label %3035

3014:                                             ; preds = %3011
  call void @llvm.lifetime.start.p0(i64 16, ptr %175) #6
  %3015 = load i32, ptr %168, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %175, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef %3015)
          to label %3016 unwind label %3023

3016:                                             ; preds = %3014
  %3017 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %175)
          to label %3018 unwind label %3023

3018:                                             ; preds = %3016
  call void @llvm.lifetime.end.p0(i64 16, ptr %175) #6
  br i1 %3017, label %3019, label %3027

3019:                                             ; preds = %3018
  %3020 = load ptr, ptr %4, align 8, !tbaa !5
  %3021 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3020, ptr noundef @.str.4)
          to label %3022 unwind label %2893

3022:                                             ; preds = %3019
  br label %3031

3023:                                             ; preds = %3016, %3014
  %3024 = landingpad { ptr, i32 }
          cleanup
  %3025 = extractvalue { ptr, i32 } %3024, 0
  store ptr %3025, ptr %10, align 8
  %3026 = extractvalue { ptr, i32 } %3024, 1
  store i32 %3026, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %175) #6
  br label %3095

3027:                                             ; preds = %3018
  %3028 = load ptr, ptr %4, align 8, !tbaa !5
  %3029 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3028, ptr noundef @.str.5)
          to label %3030 unwind label %2893

3030:                                             ; preds = %3027
  br label %3031

3031:                                             ; preds = %3030, %3022
  br label %3032

3032:                                             ; preds = %3031
  %3033 = load i32, ptr %168, align 4, !tbaa !9
  %3034 = add nsw i32 %3033, 1
  store i32 %3034, ptr %168, align 4, !tbaa !9
  br label %3011, !llvm.loop !89

3035:                                             ; preds = %3011
  %3036 = load ptr, ptr %4, align 8, !tbaa !5
  %3037 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3036, ptr noundef @.str.3)
          to label %3038 unwind label %2893

3038:                                             ; preds = %3035
  %3039 = load ptr, ptr %4, align 8, !tbaa !5
  %3040 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3039, ptr noundef @.str.7)
          to label %3041 unwind label %2893

3041:                                             ; preds = %3038
  call void @llvm.lifetime.start.p0(i64 32, ptr %176) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef 2)
          to label %3042 unwind label %3077

3042:                                             ; preds = %3041
  %3043 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3040, ptr noundef nonnull align 8 dereferenceable(32) %176)
          to label %3044 unwind label %3081

3044:                                             ; preds = %3042
  %3045 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3043, ptr noundef @.str.3)
          to label %3046 unwind label %3081

3046:                                             ; preds = %3044
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %176) #6
  %3047 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %167, ptr noundef @.str.8)
          to label %3048 unwind label %2893

3048:                                             ; preds = %3046
  %3049 = load ptr, ptr %4, align 8, !tbaa !5
  %3050 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3049, ptr noundef @.str.7)
          to label %3051 unwind label %2893

3051:                                             ; preds = %3048
  call void @llvm.lifetime.start.p0(i64 32, ptr %177) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %177, ptr noundef nonnull align 8 dereferenceable(48) %167, i32 noundef 2)
          to label %3052 unwind label %3086

3052:                                             ; preds = %3051
  %3053 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3050, ptr noundef nonnull align 8 dereferenceable(32) %177)
          to label %3054 unwind label %3090

3054:                                             ; preds = %3052
  %3055 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3053, ptr noundef @.str.3)
          to label %3056 unwind label %3090

3056:                                             ; preds = %3054
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %177) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %177) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %168) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %167) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %167) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %165) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %165) #6
  %3057 = load ptr, ptr %4, align 8, !tbaa !5
  %3058 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3057, ptr noundef @.str.9)
  %3059 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3058, ptr noundef @.str.2)
  %3060 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3059, i32 noundef 65)
  %3061 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3060, ptr noundef @.str.2)
  %3062 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3061, i32 noundef 65)
  %3063 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3062, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %178) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %179) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %179, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %178, ptr noundef nonnull align 4 dereferenceable(20) %179, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %179) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %180) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef 0, ptr noundef null)
          to label %3064 unwind label %3097

3064:                                             ; preds = %3056
  call void @llvm.lifetime.start.p0(i64 4, ptr %181) #6
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3065

3065:                                             ; preds = %3114, %3064
  %3066 = load i32, ptr %181, align 4, !tbaa !9
  %3067 = icmp slt i32 %3066, 65
  br i1 %3067, label %3068, label %3117

3068:                                             ; preds = %3065
  call void @llvm.lifetime.start.p0(i64 16, ptr %182) #6
  %3069 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %182, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3069)
          to label %3070 unwind label %3101

3070:                                             ; preds = %3068
  %3071 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %182)
          to label %3072 unwind label %3101

3072:                                             ; preds = %3070
  call void @llvm.lifetime.end.p0(i64 16, ptr %182) #6
  br i1 %3071, label %3073, label %3109

3073:                                             ; preds = %3072
  %3074 = load ptr, ptr %4, align 8, !tbaa !5
  %3075 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3074, ptr noundef @.str.4)
          to label %3076 unwind label %3105

3076:                                             ; preds = %3073
  br label %3113

3077:                                             ; preds = %3041
  %3078 = landingpad { ptr, i32 }
          cleanup
  %3079 = extractvalue { ptr, i32 } %3078, 0
  store ptr %3079, ptr %10, align 8
  %3080 = extractvalue { ptr, i32 } %3078, 1
  store i32 %3080, ptr %11, align 4
  br label %3085

3081:                                             ; preds = %3044, %3042
  %3082 = landingpad { ptr, i32 }
          cleanup
  %3083 = extractvalue { ptr, i32 } %3082, 0
  store ptr %3083, ptr %10, align 8
  %3084 = extractvalue { ptr, i32 } %3082, 1
  store i32 %3084, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #6
  br label %3085

3085:                                             ; preds = %3081, %3077
  call void @llvm.lifetime.end.p0(i64 32, ptr %176) #6
  br label %3095

3086:                                             ; preds = %3051
  %3087 = landingpad { ptr, i32 }
          cleanup
  %3088 = extractvalue { ptr, i32 } %3087, 0
  store ptr %3088, ptr %10, align 8
  %3089 = extractvalue { ptr, i32 } %3087, 1
  store i32 %3089, ptr %11, align 4
  br label %3094

3090:                                             ; preds = %3054, %3052
  %3091 = landingpad { ptr, i32 }
          cleanup
  %3092 = extractvalue { ptr, i32 } %3091, 0
  store ptr %3092, ptr %10, align 8
  %3093 = extractvalue { ptr, i32 } %3091, 1
  store i32 %3093, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %177) #6
  br label %3094

3094:                                             ; preds = %3090, %3086
  call void @llvm.lifetime.end.p0(i64 32, ptr %177) #6
  br label %3095

3095:                                             ; preds = %3094, %3085, %3023, %3006, %2979, %2978, %2937, %2920, %2893, %2889
  call void @llvm.lifetime.end.p0(i64 4, ptr %168) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %167) #6
  br label %3096

3096:                                             ; preds = %3095, %2885
  call void @llvm.lifetime.end.p0(i64 48, ptr %167) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %165) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %165) #6
  br label %5409

3097:                                             ; preds = %3056
  %3098 = landingpad { ptr, i32 }
          cleanup
  %3099 = extractvalue { ptr, i32 } %3098, 0
  store ptr %3099, ptr %10, align 8
  %3100 = extractvalue { ptr, i32 } %3098, 1
  store i32 %3100, ptr %11, align 4
  br label %3308

3101:                                             ; preds = %3070, %3068
  %3102 = landingpad { ptr, i32 }
          cleanup
  %3103 = extractvalue { ptr, i32 } %3102, 0
  store ptr %3103, ptr %10, align 8
  %3104 = extractvalue { ptr, i32 } %3102, 1
  store i32 %3104, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %182) #6
  br label %3307

3105:                                             ; preds = %3260, %3258, %3250, %3247, %3239, %3231, %3203, %3195, %3178, %3164, %3161, %3153, %3145, %3117, %3109, %3073
  %3106 = landingpad { ptr, i32 }
          cleanup
  %3107 = extractvalue { ptr, i32 } %3106, 0
  store ptr %3107, ptr %10, align 8
  %3108 = extractvalue { ptr, i32 } %3106, 1
  store i32 %3108, ptr %11, align 4
  br label %3307

3109:                                             ; preds = %3072
  %3110 = load ptr, ptr %4, align 8, !tbaa !5
  %3111 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3110, ptr noundef @.str.5)
          to label %3112 unwind label %3105

3112:                                             ; preds = %3109
  br label %3113

3113:                                             ; preds = %3112, %3076
  br label %3114

3114:                                             ; preds = %3113
  %3115 = load i32, ptr %181, align 4, !tbaa !9
  %3116 = add nsw i32 %3115, 1
  store i32 %3116, ptr %181, align 4, !tbaa !9
  br label %3065, !llvm.loop !90

3117:                                             ; preds = %3065
  %3118 = load ptr, ptr %4, align 8, !tbaa !5
  %3119 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3118, ptr noundef @.str.6)
          to label %3120 unwind label %3105

3120:                                             ; preds = %3117
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3121

3121:                                             ; preds = %3129, %3120
  %3122 = load i32, ptr %181, align 4, !tbaa !9
  %3123 = icmp slt i32 %3122, 65
  br i1 %3123, label %3124, label %3136

3124:                                             ; preds = %3121
  call void @llvm.lifetime.start.p0(i64 16, ptr %183) #6
  %3125 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %183, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3125)
          to label %3126 unwind label %3132

3126:                                             ; preds = %3124
  %3127 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %183, i1 noundef zeroext true)
          to label %3128 unwind label %3132

3128:                                             ; preds = %3126
  call void @llvm.lifetime.end.p0(i64 16, ptr %183) #6
  br label %3129

3129:                                             ; preds = %3128
  %3130 = load i32, ptr %181, align 4, !tbaa !9
  %3131 = add nsw i32 %3130, 3
  store i32 %3131, ptr %181, align 4, !tbaa !9
  br label %3121, !llvm.loop !91

3132:                                             ; preds = %3126, %3124
  %3133 = landingpad { ptr, i32 }
          cleanup
  %3134 = extractvalue { ptr, i32 } %3133, 0
  store ptr %3134, ptr %10, align 8
  %3135 = extractvalue { ptr, i32 } %3133, 1
  store i32 %3135, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %183) #6
  br label %3307

3136:                                             ; preds = %3121
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3137

3137:                                             ; preds = %3158, %3136
  %3138 = load i32, ptr %181, align 4, !tbaa !9
  %3139 = icmp slt i32 %3138, 65
  br i1 %3139, label %3140, label %3161

3140:                                             ; preds = %3137
  call void @llvm.lifetime.start.p0(i64 16, ptr %184) #6
  %3141 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %184, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3141)
          to label %3142 unwind label %3149

3142:                                             ; preds = %3140
  %3143 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %184)
          to label %3144 unwind label %3149

3144:                                             ; preds = %3142
  call void @llvm.lifetime.end.p0(i64 16, ptr %184) #6
  br i1 %3143, label %3145, label %3153

3145:                                             ; preds = %3144
  %3146 = load ptr, ptr %4, align 8, !tbaa !5
  %3147 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3146, ptr noundef @.str.4)
          to label %3148 unwind label %3105

3148:                                             ; preds = %3145
  br label %3157

3149:                                             ; preds = %3142, %3140
  %3150 = landingpad { ptr, i32 }
          cleanup
  %3151 = extractvalue { ptr, i32 } %3150, 0
  store ptr %3151, ptr %10, align 8
  %3152 = extractvalue { ptr, i32 } %3150, 1
  store i32 %3152, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %184) #6
  br label %3307

3153:                                             ; preds = %3144
  %3154 = load ptr, ptr %4, align 8, !tbaa !5
  %3155 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3154, ptr noundef @.str.5)
          to label %3156 unwind label %3105

3156:                                             ; preds = %3153
  br label %3157

3157:                                             ; preds = %3156, %3148
  br label %3158

3158:                                             ; preds = %3157
  %3159 = load i32, ptr %181, align 4, !tbaa !9
  %3160 = add nsw i32 %3159, 1
  store i32 %3160, ptr %181, align 4, !tbaa !9
  br label %3137, !llvm.loop !92

3161:                                             ; preds = %3137
  %3162 = load ptr, ptr %4, align 8, !tbaa !5
  %3163 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3162, ptr noundef @.str.3)
          to label %3164 unwind label %3105

3164:                                             ; preds = %3161
  %3165 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef 0)
          to label %3166 unwind label %3105

3166:                                             ; preds = %3164
  call void @llvm.lifetime.start.p0(i64 48, ptr %185) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %185, ptr noundef nonnull align 8 dereferenceable(48) %180)
          to label %3167 unwind label %3182

3167:                                             ; preds = %3166
  %3168 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %180, ptr noundef nonnull align 8 dereferenceable(48) %185)
          to label %3169 unwind label %3186

3169:                                             ; preds = %3167
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %185) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %185) #6
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3170

3170:                                             ; preds = %3200, %3169
  %3171 = load i32, ptr %181, align 4, !tbaa !9
  %3172 = icmp slt i32 %3171, 65
  br i1 %3172, label %3173, label %3203

3173:                                             ; preds = %3170
  call void @llvm.lifetime.start.p0(i64 16, ptr %186) #6
  %3174 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %186, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3174)
          to label %3175 unwind label %3191

3175:                                             ; preds = %3173
  %3176 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %186)
          to label %3177 unwind label %3191

3177:                                             ; preds = %3175
  call void @llvm.lifetime.end.p0(i64 16, ptr %186) #6
  br i1 %3176, label %3178, label %3195

3178:                                             ; preds = %3177
  %3179 = load ptr, ptr %4, align 8, !tbaa !5
  %3180 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3179, ptr noundef @.str.4)
          to label %3181 unwind label %3105

3181:                                             ; preds = %3178
  br label %3199

3182:                                             ; preds = %3166
  %3183 = landingpad { ptr, i32 }
          cleanup
  %3184 = extractvalue { ptr, i32 } %3183, 0
  store ptr %3184, ptr %10, align 8
  %3185 = extractvalue { ptr, i32 } %3183, 1
  store i32 %3185, ptr %11, align 4
  br label %3190

3186:                                             ; preds = %3167
  %3187 = landingpad { ptr, i32 }
          cleanup
  %3188 = extractvalue { ptr, i32 } %3187, 0
  store ptr %3188, ptr %10, align 8
  %3189 = extractvalue { ptr, i32 } %3187, 1
  store i32 %3189, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %185) #6
  br label %3190

3190:                                             ; preds = %3186, %3182
  call void @llvm.lifetime.end.p0(i64 48, ptr %185) #6
  br label %3307

3191:                                             ; preds = %3175, %3173
  %3192 = landingpad { ptr, i32 }
          cleanup
  %3193 = extractvalue { ptr, i32 } %3192, 0
  store ptr %3193, ptr %10, align 8
  %3194 = extractvalue { ptr, i32 } %3192, 1
  store i32 %3194, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %186) #6
  br label %3307

3195:                                             ; preds = %3177
  %3196 = load ptr, ptr %4, align 8, !tbaa !5
  %3197 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3196, ptr noundef @.str.5)
          to label %3198 unwind label %3105

3198:                                             ; preds = %3195
  br label %3199

3199:                                             ; preds = %3198, %3181
  br label %3200

3200:                                             ; preds = %3199
  %3201 = load i32, ptr %181, align 4, !tbaa !9
  %3202 = add nsw i32 %3201, 1
  store i32 %3202, ptr %181, align 4, !tbaa !9
  br label %3170, !llvm.loop !93

3203:                                             ; preds = %3170
  %3204 = load ptr, ptr %4, align 8, !tbaa !5
  %3205 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3204, ptr noundef @.str.6)
          to label %3206 unwind label %3105

3206:                                             ; preds = %3203
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3207

3207:                                             ; preds = %3215, %3206
  %3208 = load i32, ptr %181, align 4, !tbaa !9
  %3209 = icmp slt i32 %3208, 65
  br i1 %3209, label %3210, label %3222

3210:                                             ; preds = %3207
  call void @llvm.lifetime.start.p0(i64 16, ptr %187) #6
  %3211 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %187, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3211)
          to label %3212 unwind label %3218

3212:                                             ; preds = %3210
  %3213 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %187, i1 noundef zeroext false)
          to label %3214 unwind label %3218

3214:                                             ; preds = %3212
  call void @llvm.lifetime.end.p0(i64 16, ptr %187) #6
  br label %3215

3215:                                             ; preds = %3214
  %3216 = load i32, ptr %181, align 4, !tbaa !9
  %3217 = add nsw i32 %3216, 3
  store i32 %3217, ptr %181, align 4, !tbaa !9
  br label %3207, !llvm.loop !94

3218:                                             ; preds = %3212, %3210
  %3219 = landingpad { ptr, i32 }
          cleanup
  %3220 = extractvalue { ptr, i32 } %3219, 0
  store ptr %3220, ptr %10, align 8
  %3221 = extractvalue { ptr, i32 } %3219, 1
  store i32 %3221, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %187) #6
  br label %3307

3222:                                             ; preds = %3207
  store i32 0, ptr %181, align 4, !tbaa !9
  br label %3223

3223:                                             ; preds = %3244, %3222
  %3224 = load i32, ptr %181, align 4, !tbaa !9
  %3225 = icmp slt i32 %3224, 65
  br i1 %3225, label %3226, label %3247

3226:                                             ; preds = %3223
  call void @llvm.lifetime.start.p0(i64 16, ptr %188) #6
  %3227 = load i32, ptr %181, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef %3227)
          to label %3228 unwind label %3235

3228:                                             ; preds = %3226
  %3229 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %188)
          to label %3230 unwind label %3235

3230:                                             ; preds = %3228
  call void @llvm.lifetime.end.p0(i64 16, ptr %188) #6
  br i1 %3229, label %3231, label %3239

3231:                                             ; preds = %3230
  %3232 = load ptr, ptr %4, align 8, !tbaa !5
  %3233 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3232, ptr noundef @.str.4)
          to label %3234 unwind label %3105

3234:                                             ; preds = %3231
  br label %3243

3235:                                             ; preds = %3228, %3226
  %3236 = landingpad { ptr, i32 }
          cleanup
  %3237 = extractvalue { ptr, i32 } %3236, 0
  store ptr %3237, ptr %10, align 8
  %3238 = extractvalue { ptr, i32 } %3236, 1
  store i32 %3238, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %188) #6
  br label %3307

3239:                                             ; preds = %3230
  %3240 = load ptr, ptr %4, align 8, !tbaa !5
  %3241 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3240, ptr noundef @.str.5)
          to label %3242 unwind label %3105

3242:                                             ; preds = %3239
  br label %3243

3243:                                             ; preds = %3242, %3234
  br label %3244

3244:                                             ; preds = %3243
  %3245 = load i32, ptr %181, align 4, !tbaa !9
  %3246 = add nsw i32 %3245, 1
  store i32 %3246, ptr %181, align 4, !tbaa !9
  br label %3223, !llvm.loop !95

3247:                                             ; preds = %3223
  %3248 = load ptr, ptr %4, align 8, !tbaa !5
  %3249 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3248, ptr noundef @.str.3)
          to label %3250 unwind label %3105

3250:                                             ; preds = %3247
  %3251 = load ptr, ptr %4, align 8, !tbaa !5
  %3252 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3251, ptr noundef @.str.7)
          to label %3253 unwind label %3105

3253:                                             ; preds = %3250
  call void @llvm.lifetime.start.p0(i64 32, ptr %189) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %189, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef 2)
          to label %3254 unwind label %3289

3254:                                             ; preds = %3253
  %3255 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3252, ptr noundef nonnull align 8 dereferenceable(32) %189)
          to label %3256 unwind label %3293

3256:                                             ; preds = %3254
  %3257 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3255, ptr noundef @.str.3)
          to label %3258 unwind label %3293

3258:                                             ; preds = %3256
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %189) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %189) #6
  %3259 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %180, ptr noundef @.str.8)
          to label %3260 unwind label %3105

3260:                                             ; preds = %3258
  %3261 = load ptr, ptr %4, align 8, !tbaa !5
  %3262 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3261, ptr noundef @.str.7)
          to label %3263 unwind label %3105

3263:                                             ; preds = %3260
  call void @llvm.lifetime.start.p0(i64 32, ptr %190) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %190, ptr noundef nonnull align 8 dereferenceable(48) %180, i32 noundef 2)
          to label %3264 unwind label %3298

3264:                                             ; preds = %3263
  %3265 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3262, ptr noundef nonnull align 8 dereferenceable(32) %190)
          to label %3266 unwind label %3302

3266:                                             ; preds = %3264
  %3267 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3265, ptr noundef @.str.3)
          to label %3268 unwind label %3302

3268:                                             ; preds = %3266
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %190) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %190) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %181) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %180) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %180) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %178) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %178) #6
  %3269 = load ptr, ptr %4, align 8, !tbaa !5
  %3270 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3269, ptr noundef @.str.10)
  %3271 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3270, ptr noundef @.str.2)
  %3272 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3271, i32 noundef 65)
  %3273 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3272, ptr noundef @.str.2)
  %3274 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3273, i32 noundef 65)
  %3275 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3274, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %191) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %192) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %192, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %191, ptr noundef nonnull align 4 dereferenceable(20) %192, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %192) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %193) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef 0, ptr noundef null)
          to label %3276 unwind label %3309

3276:                                             ; preds = %3268
  call void @llvm.lifetime.start.p0(i64 4, ptr %194) #6
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3277

3277:                                             ; preds = %3326, %3276
  %3278 = load i32, ptr %194, align 4, !tbaa !9
  %3279 = icmp slt i32 %3278, 65
  br i1 %3279, label %3280, label %3329

3280:                                             ; preds = %3277
  call void @llvm.lifetime.start.p0(i64 16, ptr %195) #6
  %3281 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %195, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3281)
          to label %3282 unwind label %3313

3282:                                             ; preds = %3280
  %3283 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %195)
          to label %3284 unwind label %3313

3284:                                             ; preds = %3282
  call void @llvm.lifetime.end.p0(i64 16, ptr %195) #6
  br i1 %3283, label %3285, label %3321

3285:                                             ; preds = %3284
  %3286 = load ptr, ptr %4, align 8, !tbaa !5
  %3287 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3286, ptr noundef @.str.4)
          to label %3288 unwind label %3317

3288:                                             ; preds = %3285
  br label %3325

3289:                                             ; preds = %3253
  %3290 = landingpad { ptr, i32 }
          cleanup
  %3291 = extractvalue { ptr, i32 } %3290, 0
  store ptr %3291, ptr %10, align 8
  %3292 = extractvalue { ptr, i32 } %3290, 1
  store i32 %3292, ptr %11, align 4
  br label %3297

3293:                                             ; preds = %3256, %3254
  %3294 = landingpad { ptr, i32 }
          cleanup
  %3295 = extractvalue { ptr, i32 } %3294, 0
  store ptr %3295, ptr %10, align 8
  %3296 = extractvalue { ptr, i32 } %3294, 1
  store i32 %3296, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %189) #6
  br label %3297

3297:                                             ; preds = %3293, %3289
  call void @llvm.lifetime.end.p0(i64 32, ptr %189) #6
  br label %3307

3298:                                             ; preds = %3263
  %3299 = landingpad { ptr, i32 }
          cleanup
  %3300 = extractvalue { ptr, i32 } %3299, 0
  store ptr %3300, ptr %10, align 8
  %3301 = extractvalue { ptr, i32 } %3299, 1
  store i32 %3301, ptr %11, align 4
  br label %3306

3302:                                             ; preds = %3266, %3264
  %3303 = landingpad { ptr, i32 }
          cleanup
  %3304 = extractvalue { ptr, i32 } %3303, 0
  store ptr %3304, ptr %10, align 8
  %3305 = extractvalue { ptr, i32 } %3303, 1
  store i32 %3305, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %190) #6
  br label %3306

3306:                                             ; preds = %3302, %3298
  call void @llvm.lifetime.end.p0(i64 32, ptr %190) #6
  br label %3307

3307:                                             ; preds = %3306, %3297, %3235, %3218, %3191, %3190, %3149, %3132, %3105, %3101
  call void @llvm.lifetime.end.p0(i64 4, ptr %181) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %180) #6
  br label %3308

3308:                                             ; preds = %3307, %3097
  call void @llvm.lifetime.end.p0(i64 48, ptr %180) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %178) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %178) #6
  br label %5409

3309:                                             ; preds = %3268
  %3310 = landingpad { ptr, i32 }
          cleanup
  %3311 = extractvalue { ptr, i32 } %3310, 0
  store ptr %3311, ptr %10, align 8
  %3312 = extractvalue { ptr, i32 } %3310, 1
  store i32 %3312, ptr %11, align 4
  br label %3520

3313:                                             ; preds = %3282, %3280
  %3314 = landingpad { ptr, i32 }
          cleanup
  %3315 = extractvalue { ptr, i32 } %3314, 0
  store ptr %3315, ptr %10, align 8
  %3316 = extractvalue { ptr, i32 } %3314, 1
  store i32 %3316, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %195) #6
  br label %3519

3317:                                             ; preds = %3472, %3470, %3462, %3459, %3451, %3443, %3415, %3407, %3390, %3376, %3373, %3365, %3357, %3329, %3321, %3285
  %3318 = landingpad { ptr, i32 }
          cleanup
  %3319 = extractvalue { ptr, i32 } %3318, 0
  store ptr %3319, ptr %10, align 8
  %3320 = extractvalue { ptr, i32 } %3318, 1
  store i32 %3320, ptr %11, align 4
  br label %3519

3321:                                             ; preds = %3284
  %3322 = load ptr, ptr %4, align 8, !tbaa !5
  %3323 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3322, ptr noundef @.str.5)
          to label %3324 unwind label %3317

3324:                                             ; preds = %3321
  br label %3325

3325:                                             ; preds = %3324, %3288
  br label %3326

3326:                                             ; preds = %3325
  %3327 = load i32, ptr %194, align 4, !tbaa !9
  %3328 = add nsw i32 %3327, 1
  store i32 %3328, ptr %194, align 4, !tbaa !9
  br label %3277, !llvm.loop !96

3329:                                             ; preds = %3277
  %3330 = load ptr, ptr %4, align 8, !tbaa !5
  %3331 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3330, ptr noundef @.str.6)
          to label %3332 unwind label %3317

3332:                                             ; preds = %3329
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3333

3333:                                             ; preds = %3341, %3332
  %3334 = load i32, ptr %194, align 4, !tbaa !9
  %3335 = icmp slt i32 %3334, 65
  br i1 %3335, label %3336, label %3348

3336:                                             ; preds = %3333
  call void @llvm.lifetime.start.p0(i64 16, ptr %196) #6
  %3337 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %196, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3337)
          to label %3338 unwind label %3344

3338:                                             ; preds = %3336
  %3339 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %196, i1 noundef zeroext true)
          to label %3340 unwind label %3344

3340:                                             ; preds = %3338
  call void @llvm.lifetime.end.p0(i64 16, ptr %196) #6
  br label %3341

3341:                                             ; preds = %3340
  %3342 = load i32, ptr %194, align 4, !tbaa !9
  %3343 = add nsw i32 %3342, 3
  store i32 %3343, ptr %194, align 4, !tbaa !9
  br label %3333, !llvm.loop !97

3344:                                             ; preds = %3338, %3336
  %3345 = landingpad { ptr, i32 }
          cleanup
  %3346 = extractvalue { ptr, i32 } %3345, 0
  store ptr %3346, ptr %10, align 8
  %3347 = extractvalue { ptr, i32 } %3345, 1
  store i32 %3347, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %196) #6
  br label %3519

3348:                                             ; preds = %3333
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3349

3349:                                             ; preds = %3370, %3348
  %3350 = load i32, ptr %194, align 4, !tbaa !9
  %3351 = icmp slt i32 %3350, 65
  br i1 %3351, label %3352, label %3373

3352:                                             ; preds = %3349
  call void @llvm.lifetime.start.p0(i64 16, ptr %197) #6
  %3353 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %197, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3353)
          to label %3354 unwind label %3361

3354:                                             ; preds = %3352
  %3355 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %197)
          to label %3356 unwind label %3361

3356:                                             ; preds = %3354
  call void @llvm.lifetime.end.p0(i64 16, ptr %197) #6
  br i1 %3355, label %3357, label %3365

3357:                                             ; preds = %3356
  %3358 = load ptr, ptr %4, align 8, !tbaa !5
  %3359 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3358, ptr noundef @.str.4)
          to label %3360 unwind label %3317

3360:                                             ; preds = %3357
  br label %3369

3361:                                             ; preds = %3354, %3352
  %3362 = landingpad { ptr, i32 }
          cleanup
  %3363 = extractvalue { ptr, i32 } %3362, 0
  store ptr %3363, ptr %10, align 8
  %3364 = extractvalue { ptr, i32 } %3362, 1
  store i32 %3364, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %197) #6
  br label %3519

3365:                                             ; preds = %3356
  %3366 = load ptr, ptr %4, align 8, !tbaa !5
  %3367 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3366, ptr noundef @.str.5)
          to label %3368 unwind label %3317

3368:                                             ; preds = %3365
  br label %3369

3369:                                             ; preds = %3368, %3360
  br label %3370

3370:                                             ; preds = %3369
  %3371 = load i32, ptr %194, align 4, !tbaa !9
  %3372 = add nsw i32 %3371, 1
  store i32 %3372, ptr %194, align 4, !tbaa !9
  br label %3349, !llvm.loop !98

3373:                                             ; preds = %3349
  %3374 = load ptr, ptr %4, align 8, !tbaa !5
  %3375 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3374, ptr noundef @.str.3)
          to label %3376 unwind label %3317

3376:                                             ; preds = %3373
  %3377 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef 0)
          to label %3378 unwind label %3317

3378:                                             ; preds = %3376
  call void @llvm.lifetime.start.p0(i64 48, ptr %198) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %198, ptr noundef nonnull align 8 dereferenceable(48) %193)
          to label %3379 unwind label %3394

3379:                                             ; preds = %3378
  %3380 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %193, ptr noundef nonnull align 8 dereferenceable(48) %198)
          to label %3381 unwind label %3398

3381:                                             ; preds = %3379
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %198) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %198) #6
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3382

3382:                                             ; preds = %3412, %3381
  %3383 = load i32, ptr %194, align 4, !tbaa !9
  %3384 = icmp slt i32 %3383, 65
  br i1 %3384, label %3385, label %3415

3385:                                             ; preds = %3382
  call void @llvm.lifetime.start.p0(i64 16, ptr %199) #6
  %3386 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %199, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3386)
          to label %3387 unwind label %3403

3387:                                             ; preds = %3385
  %3388 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %199)
          to label %3389 unwind label %3403

3389:                                             ; preds = %3387
  call void @llvm.lifetime.end.p0(i64 16, ptr %199) #6
  br i1 %3388, label %3390, label %3407

3390:                                             ; preds = %3389
  %3391 = load ptr, ptr %4, align 8, !tbaa !5
  %3392 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3391, ptr noundef @.str.4)
          to label %3393 unwind label %3317

3393:                                             ; preds = %3390
  br label %3411

3394:                                             ; preds = %3378
  %3395 = landingpad { ptr, i32 }
          cleanup
  %3396 = extractvalue { ptr, i32 } %3395, 0
  store ptr %3396, ptr %10, align 8
  %3397 = extractvalue { ptr, i32 } %3395, 1
  store i32 %3397, ptr %11, align 4
  br label %3402

3398:                                             ; preds = %3379
  %3399 = landingpad { ptr, i32 }
          cleanup
  %3400 = extractvalue { ptr, i32 } %3399, 0
  store ptr %3400, ptr %10, align 8
  %3401 = extractvalue { ptr, i32 } %3399, 1
  store i32 %3401, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %198) #6
  br label %3402

3402:                                             ; preds = %3398, %3394
  call void @llvm.lifetime.end.p0(i64 48, ptr %198) #6
  br label %3519

3403:                                             ; preds = %3387, %3385
  %3404 = landingpad { ptr, i32 }
          cleanup
  %3405 = extractvalue { ptr, i32 } %3404, 0
  store ptr %3405, ptr %10, align 8
  %3406 = extractvalue { ptr, i32 } %3404, 1
  store i32 %3406, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %199) #6
  br label %3519

3407:                                             ; preds = %3389
  %3408 = load ptr, ptr %4, align 8, !tbaa !5
  %3409 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3408, ptr noundef @.str.5)
          to label %3410 unwind label %3317

3410:                                             ; preds = %3407
  br label %3411

3411:                                             ; preds = %3410, %3393
  br label %3412

3412:                                             ; preds = %3411
  %3413 = load i32, ptr %194, align 4, !tbaa !9
  %3414 = add nsw i32 %3413, 1
  store i32 %3414, ptr %194, align 4, !tbaa !9
  br label %3382, !llvm.loop !99

3415:                                             ; preds = %3382
  %3416 = load ptr, ptr %4, align 8, !tbaa !5
  %3417 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3416, ptr noundef @.str.6)
          to label %3418 unwind label %3317

3418:                                             ; preds = %3415
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3419

3419:                                             ; preds = %3427, %3418
  %3420 = load i32, ptr %194, align 4, !tbaa !9
  %3421 = icmp slt i32 %3420, 65
  br i1 %3421, label %3422, label %3434

3422:                                             ; preds = %3419
  call void @llvm.lifetime.start.p0(i64 16, ptr %200) #6
  %3423 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3423)
          to label %3424 unwind label %3430

3424:                                             ; preds = %3422
  %3425 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext false)
          to label %3426 unwind label %3430

3426:                                             ; preds = %3424
  call void @llvm.lifetime.end.p0(i64 16, ptr %200) #6
  br label %3427

3427:                                             ; preds = %3426
  %3428 = load i32, ptr %194, align 4, !tbaa !9
  %3429 = add nsw i32 %3428, 3
  store i32 %3429, ptr %194, align 4, !tbaa !9
  br label %3419, !llvm.loop !100

3430:                                             ; preds = %3424, %3422
  %3431 = landingpad { ptr, i32 }
          cleanup
  %3432 = extractvalue { ptr, i32 } %3431, 0
  store ptr %3432, ptr %10, align 8
  %3433 = extractvalue { ptr, i32 } %3431, 1
  store i32 %3433, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %200) #6
  br label %3519

3434:                                             ; preds = %3419
  store i32 0, ptr %194, align 4, !tbaa !9
  br label %3435

3435:                                             ; preds = %3456, %3434
  %3436 = load i32, ptr %194, align 4, !tbaa !9
  %3437 = icmp slt i32 %3436, 65
  br i1 %3437, label %3438, label %3459

3438:                                             ; preds = %3435
  call void @llvm.lifetime.start.p0(i64 16, ptr %201) #6
  %3439 = load i32, ptr %194, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %201, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef %3439)
          to label %3440 unwind label %3447

3440:                                             ; preds = %3438
  %3441 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %201)
          to label %3442 unwind label %3447

3442:                                             ; preds = %3440
  call void @llvm.lifetime.end.p0(i64 16, ptr %201) #6
  br i1 %3441, label %3443, label %3451

3443:                                             ; preds = %3442
  %3444 = load ptr, ptr %4, align 8, !tbaa !5
  %3445 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3444, ptr noundef @.str.4)
          to label %3446 unwind label %3317

3446:                                             ; preds = %3443
  br label %3455

3447:                                             ; preds = %3440, %3438
  %3448 = landingpad { ptr, i32 }
          cleanup
  %3449 = extractvalue { ptr, i32 } %3448, 0
  store ptr %3449, ptr %10, align 8
  %3450 = extractvalue { ptr, i32 } %3448, 1
  store i32 %3450, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %201) #6
  br label %3519

3451:                                             ; preds = %3442
  %3452 = load ptr, ptr %4, align 8, !tbaa !5
  %3453 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3452, ptr noundef @.str.5)
          to label %3454 unwind label %3317

3454:                                             ; preds = %3451
  br label %3455

3455:                                             ; preds = %3454, %3446
  br label %3456

3456:                                             ; preds = %3455
  %3457 = load i32, ptr %194, align 4, !tbaa !9
  %3458 = add nsw i32 %3457, 1
  store i32 %3458, ptr %194, align 4, !tbaa !9
  br label %3435, !llvm.loop !101

3459:                                             ; preds = %3435
  %3460 = load ptr, ptr %4, align 8, !tbaa !5
  %3461 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3460, ptr noundef @.str.3)
          to label %3462 unwind label %3317

3462:                                             ; preds = %3459
  %3463 = load ptr, ptr %4, align 8, !tbaa !5
  %3464 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3463, ptr noundef @.str.7)
          to label %3465 unwind label %3317

3465:                                             ; preds = %3462
  call void @llvm.lifetime.start.p0(i64 32, ptr %202) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %202, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef 2)
          to label %3466 unwind label %3501

3466:                                             ; preds = %3465
  %3467 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3464, ptr noundef nonnull align 8 dereferenceable(32) %202)
          to label %3468 unwind label %3505

3468:                                             ; preds = %3466
  %3469 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3467, ptr noundef @.str.3)
          to label %3470 unwind label %3505

3470:                                             ; preds = %3468
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %202) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %202) #6
  %3471 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %193, ptr noundef @.str.8)
          to label %3472 unwind label %3317

3472:                                             ; preds = %3470
  %3473 = load ptr, ptr %4, align 8, !tbaa !5
  %3474 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3473, ptr noundef @.str.7)
          to label %3475 unwind label %3317

3475:                                             ; preds = %3472
  call void @llvm.lifetime.start.p0(i64 32, ptr %203) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %203, ptr noundef nonnull align 8 dereferenceable(48) %193, i32 noundef 2)
          to label %3476 unwind label %3510

3476:                                             ; preds = %3475
  %3477 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3474, ptr noundef nonnull align 8 dereferenceable(32) %203)
          to label %3478 unwind label %3514

3478:                                             ; preds = %3476
  %3479 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3477, ptr noundef @.str.3)
          to label %3480 unwind label %3514

3480:                                             ; preds = %3478
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %203) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %203) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %193) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %193) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %191) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %191) #6
  %3481 = load ptr, ptr %4, align 8, !tbaa !5
  %3482 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3481, ptr noundef @.str.11)
  %3483 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3482, ptr noundef @.str.2)
  %3484 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3483, i32 noundef 65)
  %3485 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3484, ptr noundef @.str.2)
  %3486 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3485, i32 noundef 65)
  %3487 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3486, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %204) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %205) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %205, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %204, ptr noundef nonnull align 4 dereferenceable(20) %205, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %205) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %206) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef 0, ptr noundef null)
          to label %3488 unwind label %3521

3488:                                             ; preds = %3480
  call void @llvm.lifetime.start.p0(i64 4, ptr %207) #6
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3489

3489:                                             ; preds = %3538, %3488
  %3490 = load i32, ptr %207, align 4, !tbaa !9
  %3491 = icmp slt i32 %3490, 65
  br i1 %3491, label %3492, label %3541

3492:                                             ; preds = %3489
  call void @llvm.lifetime.start.p0(i64 16, ptr %208) #6
  %3493 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %208, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3493)
          to label %3494 unwind label %3525

3494:                                             ; preds = %3492
  %3495 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %208)
          to label %3496 unwind label %3525

3496:                                             ; preds = %3494
  call void @llvm.lifetime.end.p0(i64 16, ptr %208) #6
  br i1 %3495, label %3497, label %3533

3497:                                             ; preds = %3496
  %3498 = load ptr, ptr %4, align 8, !tbaa !5
  %3499 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3498, ptr noundef @.str.4)
          to label %3500 unwind label %3529

3500:                                             ; preds = %3497
  br label %3537

3501:                                             ; preds = %3465
  %3502 = landingpad { ptr, i32 }
          cleanup
  %3503 = extractvalue { ptr, i32 } %3502, 0
  store ptr %3503, ptr %10, align 8
  %3504 = extractvalue { ptr, i32 } %3502, 1
  store i32 %3504, ptr %11, align 4
  br label %3509

3505:                                             ; preds = %3468, %3466
  %3506 = landingpad { ptr, i32 }
          cleanup
  %3507 = extractvalue { ptr, i32 } %3506, 0
  store ptr %3507, ptr %10, align 8
  %3508 = extractvalue { ptr, i32 } %3506, 1
  store i32 %3508, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %202) #6
  br label %3509

3509:                                             ; preds = %3505, %3501
  call void @llvm.lifetime.end.p0(i64 32, ptr %202) #6
  br label %3519

3510:                                             ; preds = %3475
  %3511 = landingpad { ptr, i32 }
          cleanup
  %3512 = extractvalue { ptr, i32 } %3511, 0
  store ptr %3512, ptr %10, align 8
  %3513 = extractvalue { ptr, i32 } %3511, 1
  store i32 %3513, ptr %11, align 4
  br label %3518

3514:                                             ; preds = %3478, %3476
  %3515 = landingpad { ptr, i32 }
          cleanup
  %3516 = extractvalue { ptr, i32 } %3515, 0
  store ptr %3516, ptr %10, align 8
  %3517 = extractvalue { ptr, i32 } %3515, 1
  store i32 %3517, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %203) #6
  br label %3518

3518:                                             ; preds = %3514, %3510
  call void @llvm.lifetime.end.p0(i64 32, ptr %203) #6
  br label %3519

3519:                                             ; preds = %3518, %3509, %3447, %3430, %3403, %3402, %3361, %3344, %3317, %3313
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %193) #6
  br label %3520

3520:                                             ; preds = %3519, %3309
  call void @llvm.lifetime.end.p0(i64 48, ptr %193) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %191) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %191) #6
  br label %5409

3521:                                             ; preds = %3480
  %3522 = landingpad { ptr, i32 }
          cleanup
  %3523 = extractvalue { ptr, i32 } %3522, 0
  store ptr %3523, ptr %10, align 8
  %3524 = extractvalue { ptr, i32 } %3522, 1
  store i32 %3524, ptr %11, align 4
  br label %3732

3525:                                             ; preds = %3494, %3492
  %3526 = landingpad { ptr, i32 }
          cleanup
  %3527 = extractvalue { ptr, i32 } %3526, 0
  store ptr %3527, ptr %10, align 8
  %3528 = extractvalue { ptr, i32 } %3526, 1
  store i32 %3528, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %208) #6
  br label %3731

3529:                                             ; preds = %3684, %3682, %3674, %3671, %3663, %3655, %3627, %3619, %3602, %3588, %3585, %3577, %3569, %3541, %3533, %3497
  %3530 = landingpad { ptr, i32 }
          cleanup
  %3531 = extractvalue { ptr, i32 } %3530, 0
  store ptr %3531, ptr %10, align 8
  %3532 = extractvalue { ptr, i32 } %3530, 1
  store i32 %3532, ptr %11, align 4
  br label %3731

3533:                                             ; preds = %3496
  %3534 = load ptr, ptr %4, align 8, !tbaa !5
  %3535 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3534, ptr noundef @.str.5)
          to label %3536 unwind label %3529

3536:                                             ; preds = %3533
  br label %3537

3537:                                             ; preds = %3536, %3500
  br label %3538

3538:                                             ; preds = %3537
  %3539 = load i32, ptr %207, align 4, !tbaa !9
  %3540 = add nsw i32 %3539, 1
  store i32 %3540, ptr %207, align 4, !tbaa !9
  br label %3489, !llvm.loop !102

3541:                                             ; preds = %3489
  %3542 = load ptr, ptr %4, align 8, !tbaa !5
  %3543 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3542, ptr noundef @.str.6)
          to label %3544 unwind label %3529

3544:                                             ; preds = %3541
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3545

3545:                                             ; preds = %3553, %3544
  %3546 = load i32, ptr %207, align 4, !tbaa !9
  %3547 = icmp slt i32 %3546, 65
  br i1 %3547, label %3548, label %3560

3548:                                             ; preds = %3545
  call void @llvm.lifetime.start.p0(i64 16, ptr %209) #6
  %3549 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %209, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3549)
          to label %3550 unwind label %3556

3550:                                             ; preds = %3548
  %3551 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %209, i1 noundef zeroext true)
          to label %3552 unwind label %3556

3552:                                             ; preds = %3550
  call void @llvm.lifetime.end.p0(i64 16, ptr %209) #6
  br label %3553

3553:                                             ; preds = %3552
  %3554 = load i32, ptr %207, align 4, !tbaa !9
  %3555 = add nsw i32 %3554, 3
  store i32 %3555, ptr %207, align 4, !tbaa !9
  br label %3545, !llvm.loop !103

3556:                                             ; preds = %3550, %3548
  %3557 = landingpad { ptr, i32 }
          cleanup
  %3558 = extractvalue { ptr, i32 } %3557, 0
  store ptr %3558, ptr %10, align 8
  %3559 = extractvalue { ptr, i32 } %3557, 1
  store i32 %3559, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %209) #6
  br label %3731

3560:                                             ; preds = %3545
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3561

3561:                                             ; preds = %3582, %3560
  %3562 = load i32, ptr %207, align 4, !tbaa !9
  %3563 = icmp slt i32 %3562, 65
  br i1 %3563, label %3564, label %3585

3564:                                             ; preds = %3561
  call void @llvm.lifetime.start.p0(i64 16, ptr %210) #6
  %3565 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %210, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3565)
          to label %3566 unwind label %3573

3566:                                             ; preds = %3564
  %3567 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %210)
          to label %3568 unwind label %3573

3568:                                             ; preds = %3566
  call void @llvm.lifetime.end.p0(i64 16, ptr %210) #6
  br i1 %3567, label %3569, label %3577

3569:                                             ; preds = %3568
  %3570 = load ptr, ptr %4, align 8, !tbaa !5
  %3571 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3570, ptr noundef @.str.4)
          to label %3572 unwind label %3529

3572:                                             ; preds = %3569
  br label %3581

3573:                                             ; preds = %3566, %3564
  %3574 = landingpad { ptr, i32 }
          cleanup
  %3575 = extractvalue { ptr, i32 } %3574, 0
  store ptr %3575, ptr %10, align 8
  %3576 = extractvalue { ptr, i32 } %3574, 1
  store i32 %3576, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %210) #6
  br label %3731

3577:                                             ; preds = %3568
  %3578 = load ptr, ptr %4, align 8, !tbaa !5
  %3579 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3578, ptr noundef @.str.5)
          to label %3580 unwind label %3529

3580:                                             ; preds = %3577
  br label %3581

3581:                                             ; preds = %3580, %3572
  br label %3582

3582:                                             ; preds = %3581
  %3583 = load i32, ptr %207, align 4, !tbaa !9
  %3584 = add nsw i32 %3583, 1
  store i32 %3584, ptr %207, align 4, !tbaa !9
  br label %3561, !llvm.loop !104

3585:                                             ; preds = %3561
  %3586 = load ptr, ptr %4, align 8, !tbaa !5
  %3587 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3586, ptr noundef @.str.3)
          to label %3588 unwind label %3529

3588:                                             ; preds = %3585
  %3589 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef 0)
          to label %3590 unwind label %3529

3590:                                             ; preds = %3588
  call void @llvm.lifetime.start.p0(i64 48, ptr %211) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %211, ptr noundef nonnull align 8 dereferenceable(48) %206)
          to label %3591 unwind label %3606

3591:                                             ; preds = %3590
  %3592 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %206, ptr noundef nonnull align 8 dereferenceable(48) %211)
          to label %3593 unwind label %3610

3593:                                             ; preds = %3591
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %211) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %211) #6
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3594

3594:                                             ; preds = %3624, %3593
  %3595 = load i32, ptr %207, align 4, !tbaa !9
  %3596 = icmp slt i32 %3595, 65
  br i1 %3596, label %3597, label %3627

3597:                                             ; preds = %3594
  call void @llvm.lifetime.start.p0(i64 16, ptr %212) #6
  %3598 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3598)
          to label %3599 unwind label %3615

3599:                                             ; preds = %3597
  %3600 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %212)
          to label %3601 unwind label %3615

3601:                                             ; preds = %3599
  call void @llvm.lifetime.end.p0(i64 16, ptr %212) #6
  br i1 %3600, label %3602, label %3619

3602:                                             ; preds = %3601
  %3603 = load ptr, ptr %4, align 8, !tbaa !5
  %3604 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3603, ptr noundef @.str.4)
          to label %3605 unwind label %3529

3605:                                             ; preds = %3602
  br label %3623

3606:                                             ; preds = %3590
  %3607 = landingpad { ptr, i32 }
          cleanup
  %3608 = extractvalue { ptr, i32 } %3607, 0
  store ptr %3608, ptr %10, align 8
  %3609 = extractvalue { ptr, i32 } %3607, 1
  store i32 %3609, ptr %11, align 4
  br label %3614

3610:                                             ; preds = %3591
  %3611 = landingpad { ptr, i32 }
          cleanup
  %3612 = extractvalue { ptr, i32 } %3611, 0
  store ptr %3612, ptr %10, align 8
  %3613 = extractvalue { ptr, i32 } %3611, 1
  store i32 %3613, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %211) #6
  br label %3614

3614:                                             ; preds = %3610, %3606
  call void @llvm.lifetime.end.p0(i64 48, ptr %211) #6
  br label %3731

3615:                                             ; preds = %3599, %3597
  %3616 = landingpad { ptr, i32 }
          cleanup
  %3617 = extractvalue { ptr, i32 } %3616, 0
  store ptr %3617, ptr %10, align 8
  %3618 = extractvalue { ptr, i32 } %3616, 1
  store i32 %3618, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %212) #6
  br label %3731

3619:                                             ; preds = %3601
  %3620 = load ptr, ptr %4, align 8, !tbaa !5
  %3621 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3620, ptr noundef @.str.5)
          to label %3622 unwind label %3529

3622:                                             ; preds = %3619
  br label %3623

3623:                                             ; preds = %3622, %3605
  br label %3624

3624:                                             ; preds = %3623
  %3625 = load i32, ptr %207, align 4, !tbaa !9
  %3626 = add nsw i32 %3625, 1
  store i32 %3626, ptr %207, align 4, !tbaa !9
  br label %3594, !llvm.loop !105

3627:                                             ; preds = %3594
  %3628 = load ptr, ptr %4, align 8, !tbaa !5
  %3629 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3628, ptr noundef @.str.6)
          to label %3630 unwind label %3529

3630:                                             ; preds = %3627
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3631

3631:                                             ; preds = %3639, %3630
  %3632 = load i32, ptr %207, align 4, !tbaa !9
  %3633 = icmp slt i32 %3632, 65
  br i1 %3633, label %3634, label %3646

3634:                                             ; preds = %3631
  call void @llvm.lifetime.start.p0(i64 16, ptr %213) #6
  %3635 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %213, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3635)
          to label %3636 unwind label %3642

3636:                                             ; preds = %3634
  %3637 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %213, i1 noundef zeroext false)
          to label %3638 unwind label %3642

3638:                                             ; preds = %3636
  call void @llvm.lifetime.end.p0(i64 16, ptr %213) #6
  br label %3639

3639:                                             ; preds = %3638
  %3640 = load i32, ptr %207, align 4, !tbaa !9
  %3641 = add nsw i32 %3640, 3
  store i32 %3641, ptr %207, align 4, !tbaa !9
  br label %3631, !llvm.loop !106

3642:                                             ; preds = %3636, %3634
  %3643 = landingpad { ptr, i32 }
          cleanup
  %3644 = extractvalue { ptr, i32 } %3643, 0
  store ptr %3644, ptr %10, align 8
  %3645 = extractvalue { ptr, i32 } %3643, 1
  store i32 %3645, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %213) #6
  br label %3731

3646:                                             ; preds = %3631
  store i32 0, ptr %207, align 4, !tbaa !9
  br label %3647

3647:                                             ; preds = %3668, %3646
  %3648 = load i32, ptr %207, align 4, !tbaa !9
  %3649 = icmp slt i32 %3648, 65
  br i1 %3649, label %3650, label %3671

3650:                                             ; preds = %3647
  call void @llvm.lifetime.start.p0(i64 16, ptr %214) #6
  %3651 = load i32, ptr %207, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %214, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef %3651)
          to label %3652 unwind label %3659

3652:                                             ; preds = %3650
  %3653 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %214)
          to label %3654 unwind label %3659

3654:                                             ; preds = %3652
  call void @llvm.lifetime.end.p0(i64 16, ptr %214) #6
  br i1 %3653, label %3655, label %3663

3655:                                             ; preds = %3654
  %3656 = load ptr, ptr %4, align 8, !tbaa !5
  %3657 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3656, ptr noundef @.str.4)
          to label %3658 unwind label %3529

3658:                                             ; preds = %3655
  br label %3667

3659:                                             ; preds = %3652, %3650
  %3660 = landingpad { ptr, i32 }
          cleanup
  %3661 = extractvalue { ptr, i32 } %3660, 0
  store ptr %3661, ptr %10, align 8
  %3662 = extractvalue { ptr, i32 } %3660, 1
  store i32 %3662, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %214) #6
  br label %3731

3663:                                             ; preds = %3654
  %3664 = load ptr, ptr %4, align 8, !tbaa !5
  %3665 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3664, ptr noundef @.str.5)
          to label %3666 unwind label %3529

3666:                                             ; preds = %3663
  br label %3667

3667:                                             ; preds = %3666, %3658
  br label %3668

3668:                                             ; preds = %3667
  %3669 = load i32, ptr %207, align 4, !tbaa !9
  %3670 = add nsw i32 %3669, 1
  store i32 %3670, ptr %207, align 4, !tbaa !9
  br label %3647, !llvm.loop !107

3671:                                             ; preds = %3647
  %3672 = load ptr, ptr %4, align 8, !tbaa !5
  %3673 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3672, ptr noundef @.str.3)
          to label %3674 unwind label %3529

3674:                                             ; preds = %3671
  %3675 = load ptr, ptr %4, align 8, !tbaa !5
  %3676 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3675, ptr noundef @.str.7)
          to label %3677 unwind label %3529

3677:                                             ; preds = %3674
  call void @llvm.lifetime.start.p0(i64 32, ptr %215) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %215, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef 2)
          to label %3678 unwind label %3713

3678:                                             ; preds = %3677
  %3679 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3676, ptr noundef nonnull align 8 dereferenceable(32) %215)
          to label %3680 unwind label %3717

3680:                                             ; preds = %3678
  %3681 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3679, ptr noundef @.str.3)
          to label %3682 unwind label %3717

3682:                                             ; preds = %3680
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %215) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %215) #6
  %3683 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %206, ptr noundef @.str.8)
          to label %3684 unwind label %3529

3684:                                             ; preds = %3682
  %3685 = load ptr, ptr %4, align 8, !tbaa !5
  %3686 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3685, ptr noundef @.str.7)
          to label %3687 unwind label %3529

3687:                                             ; preds = %3684
  call void @llvm.lifetime.start.p0(i64 32, ptr %216) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %206, i32 noundef 2)
          to label %3688 unwind label %3722

3688:                                             ; preds = %3687
  %3689 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3686, ptr noundef nonnull align 8 dereferenceable(32) %216)
          to label %3690 unwind label %3726

3690:                                             ; preds = %3688
  %3691 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3689, ptr noundef @.str.3)
          to label %3692 unwind label %3726

3692:                                             ; preds = %3690
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %216) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %216) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %206) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %206) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %204) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %204) #6
  %3693 = load ptr, ptr %4, align 8, !tbaa !5
  %3694 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3693, ptr noundef @.str)
  %3695 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3694, ptr noundef @.str.2)
  %3696 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3695, i32 noundef 65)
  %3697 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3696, ptr noundef @.str.2)
  %3698 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3697, i32 noundef 33)
  %3699 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3698, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %217) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %218) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %218, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %217, ptr noundef nonnull align 4 dereferenceable(20) %218, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %218) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %219) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef 0, ptr noundef null)
          to label %3700 unwind label %3733

3700:                                             ; preds = %3692
  call void @llvm.lifetime.start.p0(i64 4, ptr %220) #6
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3701

3701:                                             ; preds = %3750, %3700
  %3702 = load i32, ptr %220, align 4, !tbaa !9
  %3703 = icmp slt i32 %3702, 65
  br i1 %3703, label %3704, label %3753

3704:                                             ; preds = %3701
  call void @llvm.lifetime.start.p0(i64 16, ptr %221) #6
  %3705 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %221, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3705)
          to label %3706 unwind label %3737

3706:                                             ; preds = %3704
  %3707 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %221)
          to label %3708 unwind label %3737

3708:                                             ; preds = %3706
  call void @llvm.lifetime.end.p0(i64 16, ptr %221) #6
  br i1 %3707, label %3709, label %3745

3709:                                             ; preds = %3708
  %3710 = load ptr, ptr %4, align 8, !tbaa !5
  %3711 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3710, ptr noundef @.str.4)
          to label %3712 unwind label %3741

3712:                                             ; preds = %3709
  br label %3749

3713:                                             ; preds = %3677
  %3714 = landingpad { ptr, i32 }
          cleanup
  %3715 = extractvalue { ptr, i32 } %3714, 0
  store ptr %3715, ptr %10, align 8
  %3716 = extractvalue { ptr, i32 } %3714, 1
  store i32 %3716, ptr %11, align 4
  br label %3721

3717:                                             ; preds = %3680, %3678
  %3718 = landingpad { ptr, i32 }
          cleanup
  %3719 = extractvalue { ptr, i32 } %3718, 0
  store ptr %3719, ptr %10, align 8
  %3720 = extractvalue { ptr, i32 } %3718, 1
  store i32 %3720, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %215) #6
  br label %3721

3721:                                             ; preds = %3717, %3713
  call void @llvm.lifetime.end.p0(i64 32, ptr %215) #6
  br label %3731

3722:                                             ; preds = %3687
  %3723 = landingpad { ptr, i32 }
          cleanup
  %3724 = extractvalue { ptr, i32 } %3723, 0
  store ptr %3724, ptr %10, align 8
  %3725 = extractvalue { ptr, i32 } %3723, 1
  store i32 %3725, ptr %11, align 4
  br label %3730

3726:                                             ; preds = %3690, %3688
  %3727 = landingpad { ptr, i32 }
          cleanup
  %3728 = extractvalue { ptr, i32 } %3727, 0
  store ptr %3728, ptr %10, align 8
  %3729 = extractvalue { ptr, i32 } %3727, 1
  store i32 %3729, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %216) #6
  br label %3730

3730:                                             ; preds = %3726, %3722
  call void @llvm.lifetime.end.p0(i64 32, ptr %216) #6
  br label %3731

3731:                                             ; preds = %3730, %3721, %3659, %3642, %3615, %3614, %3573, %3556, %3529, %3525
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %206) #6
  br label %3732

3732:                                             ; preds = %3731, %3521
  call void @llvm.lifetime.end.p0(i64 48, ptr %206) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %204) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %204) #6
  br label %5409

3733:                                             ; preds = %3692
  %3734 = landingpad { ptr, i32 }
          cleanup
  %3735 = extractvalue { ptr, i32 } %3734, 0
  store ptr %3735, ptr %10, align 8
  %3736 = extractvalue { ptr, i32 } %3734, 1
  store i32 %3736, ptr %11, align 4
  br label %3944

3737:                                             ; preds = %3706, %3704
  %3738 = landingpad { ptr, i32 }
          cleanup
  %3739 = extractvalue { ptr, i32 } %3738, 0
  store ptr %3739, ptr %10, align 8
  %3740 = extractvalue { ptr, i32 } %3738, 1
  store i32 %3740, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %221) #6
  br label %3943

3741:                                             ; preds = %3896, %3894, %3886, %3883, %3875, %3867, %3839, %3831, %3814, %3800, %3797, %3789, %3781, %3753, %3745, %3709
  %3742 = landingpad { ptr, i32 }
          cleanup
  %3743 = extractvalue { ptr, i32 } %3742, 0
  store ptr %3743, ptr %10, align 8
  %3744 = extractvalue { ptr, i32 } %3742, 1
  store i32 %3744, ptr %11, align 4
  br label %3943

3745:                                             ; preds = %3708
  %3746 = load ptr, ptr %4, align 8, !tbaa !5
  %3747 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3746, ptr noundef @.str.5)
          to label %3748 unwind label %3741

3748:                                             ; preds = %3745
  br label %3749

3749:                                             ; preds = %3748, %3712
  br label %3750

3750:                                             ; preds = %3749
  %3751 = load i32, ptr %220, align 4, !tbaa !9
  %3752 = add nsw i32 %3751, 1
  store i32 %3752, ptr %220, align 4, !tbaa !9
  br label %3701, !llvm.loop !108

3753:                                             ; preds = %3701
  %3754 = load ptr, ptr %4, align 8, !tbaa !5
  %3755 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3754, ptr noundef @.str.6)
          to label %3756 unwind label %3741

3756:                                             ; preds = %3753
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3757

3757:                                             ; preds = %3765, %3756
  %3758 = load i32, ptr %220, align 4, !tbaa !9
  %3759 = icmp slt i32 %3758, 65
  br i1 %3759, label %3760, label %3772

3760:                                             ; preds = %3757
  call void @llvm.lifetime.start.p0(i64 16, ptr %222) #6
  %3761 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %222, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3761)
          to label %3762 unwind label %3768

3762:                                             ; preds = %3760
  %3763 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %222, i1 noundef zeroext true)
          to label %3764 unwind label %3768

3764:                                             ; preds = %3762
  call void @llvm.lifetime.end.p0(i64 16, ptr %222) #6
  br label %3765

3765:                                             ; preds = %3764
  %3766 = load i32, ptr %220, align 4, !tbaa !9
  %3767 = add nsw i32 %3766, 3
  store i32 %3767, ptr %220, align 4, !tbaa !9
  br label %3757, !llvm.loop !109

3768:                                             ; preds = %3762, %3760
  %3769 = landingpad { ptr, i32 }
          cleanup
  %3770 = extractvalue { ptr, i32 } %3769, 0
  store ptr %3770, ptr %10, align 8
  %3771 = extractvalue { ptr, i32 } %3769, 1
  store i32 %3771, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %222) #6
  br label %3943

3772:                                             ; preds = %3757
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3773

3773:                                             ; preds = %3794, %3772
  %3774 = load i32, ptr %220, align 4, !tbaa !9
  %3775 = icmp slt i32 %3774, 65
  br i1 %3775, label %3776, label %3797

3776:                                             ; preds = %3773
  call void @llvm.lifetime.start.p0(i64 16, ptr %223) #6
  %3777 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %223, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3777)
          to label %3778 unwind label %3785

3778:                                             ; preds = %3776
  %3779 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %223)
          to label %3780 unwind label %3785

3780:                                             ; preds = %3778
  call void @llvm.lifetime.end.p0(i64 16, ptr %223) #6
  br i1 %3779, label %3781, label %3789

3781:                                             ; preds = %3780
  %3782 = load ptr, ptr %4, align 8, !tbaa !5
  %3783 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3782, ptr noundef @.str.4)
          to label %3784 unwind label %3741

3784:                                             ; preds = %3781
  br label %3793

3785:                                             ; preds = %3778, %3776
  %3786 = landingpad { ptr, i32 }
          cleanup
  %3787 = extractvalue { ptr, i32 } %3786, 0
  store ptr %3787, ptr %10, align 8
  %3788 = extractvalue { ptr, i32 } %3786, 1
  store i32 %3788, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %223) #6
  br label %3943

3789:                                             ; preds = %3780
  %3790 = load ptr, ptr %4, align 8, !tbaa !5
  %3791 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3790, ptr noundef @.str.5)
          to label %3792 unwind label %3741

3792:                                             ; preds = %3789
  br label %3793

3793:                                             ; preds = %3792, %3784
  br label %3794

3794:                                             ; preds = %3793
  %3795 = load i32, ptr %220, align 4, !tbaa !9
  %3796 = add nsw i32 %3795, 1
  store i32 %3796, ptr %220, align 4, !tbaa !9
  br label %3773, !llvm.loop !110

3797:                                             ; preds = %3773
  %3798 = load ptr, ptr %4, align 8, !tbaa !5
  %3799 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3798, ptr noundef @.str.3)
          to label %3800 unwind label %3741

3800:                                             ; preds = %3797
  %3801 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef 0)
          to label %3802 unwind label %3741

3802:                                             ; preds = %3800
  call void @llvm.lifetime.start.p0(i64 48, ptr %224) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %219)
          to label %3803 unwind label %3818

3803:                                             ; preds = %3802
  %3804 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %219, ptr noundef nonnull align 8 dereferenceable(48) %224)
          to label %3805 unwind label %3822

3805:                                             ; preds = %3803
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %224) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %224) #6
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3806

3806:                                             ; preds = %3836, %3805
  %3807 = load i32, ptr %220, align 4, !tbaa !9
  %3808 = icmp slt i32 %3807, 65
  br i1 %3808, label %3809, label %3839

3809:                                             ; preds = %3806
  call void @llvm.lifetime.start.p0(i64 16, ptr %225) #6
  %3810 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %225, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3810)
          to label %3811 unwind label %3827

3811:                                             ; preds = %3809
  %3812 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %225)
          to label %3813 unwind label %3827

3813:                                             ; preds = %3811
  call void @llvm.lifetime.end.p0(i64 16, ptr %225) #6
  br i1 %3812, label %3814, label %3831

3814:                                             ; preds = %3813
  %3815 = load ptr, ptr %4, align 8, !tbaa !5
  %3816 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3815, ptr noundef @.str.4)
          to label %3817 unwind label %3741

3817:                                             ; preds = %3814
  br label %3835

3818:                                             ; preds = %3802
  %3819 = landingpad { ptr, i32 }
          cleanup
  %3820 = extractvalue { ptr, i32 } %3819, 0
  store ptr %3820, ptr %10, align 8
  %3821 = extractvalue { ptr, i32 } %3819, 1
  store i32 %3821, ptr %11, align 4
  br label %3826

3822:                                             ; preds = %3803
  %3823 = landingpad { ptr, i32 }
          cleanup
  %3824 = extractvalue { ptr, i32 } %3823, 0
  store ptr %3824, ptr %10, align 8
  %3825 = extractvalue { ptr, i32 } %3823, 1
  store i32 %3825, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %224) #6
  br label %3826

3826:                                             ; preds = %3822, %3818
  call void @llvm.lifetime.end.p0(i64 48, ptr %224) #6
  br label %3943

3827:                                             ; preds = %3811, %3809
  %3828 = landingpad { ptr, i32 }
          cleanup
  %3829 = extractvalue { ptr, i32 } %3828, 0
  store ptr %3829, ptr %10, align 8
  %3830 = extractvalue { ptr, i32 } %3828, 1
  store i32 %3830, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %225) #6
  br label %3943

3831:                                             ; preds = %3813
  %3832 = load ptr, ptr %4, align 8, !tbaa !5
  %3833 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3832, ptr noundef @.str.5)
          to label %3834 unwind label %3741

3834:                                             ; preds = %3831
  br label %3835

3835:                                             ; preds = %3834, %3817
  br label %3836

3836:                                             ; preds = %3835
  %3837 = load i32, ptr %220, align 4, !tbaa !9
  %3838 = add nsw i32 %3837, 1
  store i32 %3838, ptr %220, align 4, !tbaa !9
  br label %3806, !llvm.loop !111

3839:                                             ; preds = %3806
  %3840 = load ptr, ptr %4, align 8, !tbaa !5
  %3841 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3840, ptr noundef @.str.6)
          to label %3842 unwind label %3741

3842:                                             ; preds = %3839
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3843

3843:                                             ; preds = %3851, %3842
  %3844 = load i32, ptr %220, align 4, !tbaa !9
  %3845 = icmp slt i32 %3844, 65
  br i1 %3845, label %3846, label %3858

3846:                                             ; preds = %3843
  call void @llvm.lifetime.start.p0(i64 16, ptr %226) #6
  %3847 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %226, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3847)
          to label %3848 unwind label %3854

3848:                                             ; preds = %3846
  %3849 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %226, i1 noundef zeroext false)
          to label %3850 unwind label %3854

3850:                                             ; preds = %3848
  call void @llvm.lifetime.end.p0(i64 16, ptr %226) #6
  br label %3851

3851:                                             ; preds = %3850
  %3852 = load i32, ptr %220, align 4, !tbaa !9
  %3853 = add nsw i32 %3852, 3
  store i32 %3853, ptr %220, align 4, !tbaa !9
  br label %3843, !llvm.loop !112

3854:                                             ; preds = %3848, %3846
  %3855 = landingpad { ptr, i32 }
          cleanup
  %3856 = extractvalue { ptr, i32 } %3855, 0
  store ptr %3856, ptr %10, align 8
  %3857 = extractvalue { ptr, i32 } %3855, 1
  store i32 %3857, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %226) #6
  br label %3943

3858:                                             ; preds = %3843
  store i32 0, ptr %220, align 4, !tbaa !9
  br label %3859

3859:                                             ; preds = %3880, %3858
  %3860 = load i32, ptr %220, align 4, !tbaa !9
  %3861 = icmp slt i32 %3860, 65
  br i1 %3861, label %3862, label %3883

3862:                                             ; preds = %3859
  call void @llvm.lifetime.start.p0(i64 16, ptr %227) #6
  %3863 = load i32, ptr %220, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %227, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef %3863)
          to label %3864 unwind label %3871

3864:                                             ; preds = %3862
  %3865 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %227)
          to label %3866 unwind label %3871

3866:                                             ; preds = %3864
  call void @llvm.lifetime.end.p0(i64 16, ptr %227) #6
  br i1 %3865, label %3867, label %3875

3867:                                             ; preds = %3866
  %3868 = load ptr, ptr %4, align 8, !tbaa !5
  %3869 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3868, ptr noundef @.str.4)
          to label %3870 unwind label %3741

3870:                                             ; preds = %3867
  br label %3879

3871:                                             ; preds = %3864, %3862
  %3872 = landingpad { ptr, i32 }
          cleanup
  %3873 = extractvalue { ptr, i32 } %3872, 0
  store ptr %3873, ptr %10, align 8
  %3874 = extractvalue { ptr, i32 } %3872, 1
  store i32 %3874, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %227) #6
  br label %3943

3875:                                             ; preds = %3866
  %3876 = load ptr, ptr %4, align 8, !tbaa !5
  %3877 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3876, ptr noundef @.str.5)
          to label %3878 unwind label %3741

3878:                                             ; preds = %3875
  br label %3879

3879:                                             ; preds = %3878, %3870
  br label %3880

3880:                                             ; preds = %3879
  %3881 = load i32, ptr %220, align 4, !tbaa !9
  %3882 = add nsw i32 %3881, 1
  store i32 %3882, ptr %220, align 4, !tbaa !9
  br label %3859, !llvm.loop !113

3883:                                             ; preds = %3859
  %3884 = load ptr, ptr %4, align 8, !tbaa !5
  %3885 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3884, ptr noundef @.str.3)
          to label %3886 unwind label %3741

3886:                                             ; preds = %3883
  %3887 = load ptr, ptr %4, align 8, !tbaa !5
  %3888 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3887, ptr noundef @.str.7)
          to label %3889 unwind label %3741

3889:                                             ; preds = %3886
  call void @llvm.lifetime.start.p0(i64 32, ptr %228) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef 2)
          to label %3890 unwind label %3925

3890:                                             ; preds = %3889
  %3891 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3888, ptr noundef nonnull align 8 dereferenceable(32) %228)
          to label %3892 unwind label %3929

3892:                                             ; preds = %3890
  %3893 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3891, ptr noundef @.str.3)
          to label %3894 unwind label %3929

3894:                                             ; preds = %3892
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %228) #6
  %3895 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %219, ptr noundef @.str.8)
          to label %3896 unwind label %3741

3896:                                             ; preds = %3894
  %3897 = load ptr, ptr %4, align 8, !tbaa !5
  %3898 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3897, ptr noundef @.str.7)
          to label %3899 unwind label %3741

3899:                                             ; preds = %3896
  call void @llvm.lifetime.start.p0(i64 32, ptr %229) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %229, ptr noundef nonnull align 8 dereferenceable(48) %219, i32 noundef 2)
          to label %3900 unwind label %3934

3900:                                             ; preds = %3899
  %3901 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3898, ptr noundef nonnull align 8 dereferenceable(32) %229)
          to label %3902 unwind label %3938

3902:                                             ; preds = %3900
  %3903 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3901, ptr noundef @.str.3)
          to label %3904 unwind label %3938

3904:                                             ; preds = %3902
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %229) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %229) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %220) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %219) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %219) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %217) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %217) #6
  %3905 = load ptr, ptr %4, align 8, !tbaa !5
  %3906 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3905, ptr noundef @.str.9)
  %3907 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3906, ptr noundef @.str.2)
  %3908 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3907, i32 noundef 65)
  %3909 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3908, ptr noundef @.str.2)
  %3910 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3909, i32 noundef 33)
  %3911 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3910, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %230) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %231) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %231, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %230, ptr noundef nonnull align 4 dereferenceable(20) %231, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %231) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %232) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef 0, ptr noundef null)
          to label %3912 unwind label %3945

3912:                                             ; preds = %3904
  call void @llvm.lifetime.start.p0(i64 4, ptr %233) #6
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %3913

3913:                                             ; preds = %3962, %3912
  %3914 = load i32, ptr %233, align 4, !tbaa !9
  %3915 = icmp slt i32 %3914, 65
  br i1 %3915, label %3916, label %3965

3916:                                             ; preds = %3913
  call void @llvm.lifetime.start.p0(i64 16, ptr %234) #6
  %3917 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %234, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %3917)
          to label %3918 unwind label %3949

3918:                                             ; preds = %3916
  %3919 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %234)
          to label %3920 unwind label %3949

3920:                                             ; preds = %3918
  call void @llvm.lifetime.end.p0(i64 16, ptr %234) #6
  br i1 %3919, label %3921, label %3957

3921:                                             ; preds = %3920
  %3922 = load ptr, ptr %4, align 8, !tbaa !5
  %3923 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3922, ptr noundef @.str.4)
          to label %3924 unwind label %3953

3924:                                             ; preds = %3921
  br label %3961

3925:                                             ; preds = %3889
  %3926 = landingpad { ptr, i32 }
          cleanup
  %3927 = extractvalue { ptr, i32 } %3926, 0
  store ptr %3927, ptr %10, align 8
  %3928 = extractvalue { ptr, i32 } %3926, 1
  store i32 %3928, ptr %11, align 4
  br label %3933

3929:                                             ; preds = %3892, %3890
  %3930 = landingpad { ptr, i32 }
          cleanup
  %3931 = extractvalue { ptr, i32 } %3930, 0
  store ptr %3931, ptr %10, align 8
  %3932 = extractvalue { ptr, i32 } %3930, 1
  store i32 %3932, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %228) #6
  br label %3933

3933:                                             ; preds = %3929, %3925
  call void @llvm.lifetime.end.p0(i64 32, ptr %228) #6
  br label %3943

3934:                                             ; preds = %3899
  %3935 = landingpad { ptr, i32 }
          cleanup
  %3936 = extractvalue { ptr, i32 } %3935, 0
  store ptr %3936, ptr %10, align 8
  %3937 = extractvalue { ptr, i32 } %3935, 1
  store i32 %3937, ptr %11, align 4
  br label %3942

3938:                                             ; preds = %3902, %3900
  %3939 = landingpad { ptr, i32 }
          cleanup
  %3940 = extractvalue { ptr, i32 } %3939, 0
  store ptr %3940, ptr %10, align 8
  %3941 = extractvalue { ptr, i32 } %3939, 1
  store i32 %3941, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %229) #6
  br label %3942

3942:                                             ; preds = %3938, %3934
  call void @llvm.lifetime.end.p0(i64 32, ptr %229) #6
  br label %3943

3943:                                             ; preds = %3942, %3933, %3871, %3854, %3827, %3826, %3785, %3768, %3741, %3737
  call void @llvm.lifetime.end.p0(i64 4, ptr %220) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %219) #6
  br label %3944

3944:                                             ; preds = %3943, %3733
  call void @llvm.lifetime.end.p0(i64 48, ptr %219) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %217) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %217) #6
  br label %5409

3945:                                             ; preds = %3904
  %3946 = landingpad { ptr, i32 }
          cleanup
  %3947 = extractvalue { ptr, i32 } %3946, 0
  store ptr %3947, ptr %10, align 8
  %3948 = extractvalue { ptr, i32 } %3946, 1
  store i32 %3948, ptr %11, align 4
  br label %4156

3949:                                             ; preds = %3918, %3916
  %3950 = landingpad { ptr, i32 }
          cleanup
  %3951 = extractvalue { ptr, i32 } %3950, 0
  store ptr %3951, ptr %10, align 8
  %3952 = extractvalue { ptr, i32 } %3950, 1
  store i32 %3952, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %234) #6
  br label %4155

3953:                                             ; preds = %4108, %4106, %4098, %4095, %4087, %4079, %4051, %4043, %4026, %4012, %4009, %4001, %3993, %3965, %3957, %3921
  %3954 = landingpad { ptr, i32 }
          cleanup
  %3955 = extractvalue { ptr, i32 } %3954, 0
  store ptr %3955, ptr %10, align 8
  %3956 = extractvalue { ptr, i32 } %3954, 1
  store i32 %3956, ptr %11, align 4
  br label %4155

3957:                                             ; preds = %3920
  %3958 = load ptr, ptr %4, align 8, !tbaa !5
  %3959 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3958, ptr noundef @.str.5)
          to label %3960 unwind label %3953

3960:                                             ; preds = %3957
  br label %3961

3961:                                             ; preds = %3960, %3924
  br label %3962

3962:                                             ; preds = %3961
  %3963 = load i32, ptr %233, align 4, !tbaa !9
  %3964 = add nsw i32 %3963, 1
  store i32 %3964, ptr %233, align 4, !tbaa !9
  br label %3913, !llvm.loop !114

3965:                                             ; preds = %3913
  %3966 = load ptr, ptr %4, align 8, !tbaa !5
  %3967 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3966, ptr noundef @.str.6)
          to label %3968 unwind label %3953

3968:                                             ; preds = %3965
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %3969

3969:                                             ; preds = %3977, %3968
  %3970 = load i32, ptr %233, align 4, !tbaa !9
  %3971 = icmp slt i32 %3970, 65
  br i1 %3971, label %3972, label %3984

3972:                                             ; preds = %3969
  call void @llvm.lifetime.start.p0(i64 16, ptr %235) #6
  %3973 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %235, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %3973)
          to label %3974 unwind label %3980

3974:                                             ; preds = %3972
  %3975 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %235, i1 noundef zeroext true)
          to label %3976 unwind label %3980

3976:                                             ; preds = %3974
  call void @llvm.lifetime.end.p0(i64 16, ptr %235) #6
  br label %3977

3977:                                             ; preds = %3976
  %3978 = load i32, ptr %233, align 4, !tbaa !9
  %3979 = add nsw i32 %3978, 3
  store i32 %3979, ptr %233, align 4, !tbaa !9
  br label %3969, !llvm.loop !115

3980:                                             ; preds = %3974, %3972
  %3981 = landingpad { ptr, i32 }
          cleanup
  %3982 = extractvalue { ptr, i32 } %3981, 0
  store ptr %3982, ptr %10, align 8
  %3983 = extractvalue { ptr, i32 } %3981, 1
  store i32 %3983, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %235) #6
  br label %4155

3984:                                             ; preds = %3969
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %3985

3985:                                             ; preds = %4006, %3984
  %3986 = load i32, ptr %233, align 4, !tbaa !9
  %3987 = icmp slt i32 %3986, 65
  br i1 %3987, label %3988, label %4009

3988:                                             ; preds = %3985
  call void @llvm.lifetime.start.p0(i64 16, ptr %236) #6
  %3989 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %3989)
          to label %3990 unwind label %3997

3990:                                             ; preds = %3988
  %3991 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %236)
          to label %3992 unwind label %3997

3992:                                             ; preds = %3990
  call void @llvm.lifetime.end.p0(i64 16, ptr %236) #6
  br i1 %3991, label %3993, label %4001

3993:                                             ; preds = %3992
  %3994 = load ptr, ptr %4, align 8, !tbaa !5
  %3995 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3994, ptr noundef @.str.4)
          to label %3996 unwind label %3953

3996:                                             ; preds = %3993
  br label %4005

3997:                                             ; preds = %3990, %3988
  %3998 = landingpad { ptr, i32 }
          cleanup
  %3999 = extractvalue { ptr, i32 } %3998, 0
  store ptr %3999, ptr %10, align 8
  %4000 = extractvalue { ptr, i32 } %3998, 1
  store i32 %4000, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %236) #6
  br label %4155

4001:                                             ; preds = %3992
  %4002 = load ptr, ptr %4, align 8, !tbaa !5
  %4003 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4002, ptr noundef @.str.5)
          to label %4004 unwind label %3953

4004:                                             ; preds = %4001
  br label %4005

4005:                                             ; preds = %4004, %3996
  br label %4006

4006:                                             ; preds = %4005
  %4007 = load i32, ptr %233, align 4, !tbaa !9
  %4008 = add nsw i32 %4007, 1
  store i32 %4008, ptr %233, align 4, !tbaa !9
  br label %3985, !llvm.loop !116

4009:                                             ; preds = %3985
  %4010 = load ptr, ptr %4, align 8, !tbaa !5
  %4011 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4010, ptr noundef @.str.3)
          to label %4012 unwind label %3953

4012:                                             ; preds = %4009
  %4013 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef 0)
          to label %4014 unwind label %3953

4014:                                             ; preds = %4012
  call void @llvm.lifetime.start.p0(i64 48, ptr %237) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %237, ptr noundef nonnull align 8 dereferenceable(48) %232)
          to label %4015 unwind label %4030

4015:                                             ; preds = %4014
  %4016 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %232, ptr noundef nonnull align 8 dereferenceable(48) %237)
          to label %4017 unwind label %4034

4017:                                             ; preds = %4015
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %237) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %237) #6
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %4018

4018:                                             ; preds = %4048, %4017
  %4019 = load i32, ptr %233, align 4, !tbaa !9
  %4020 = icmp slt i32 %4019, 65
  br i1 %4020, label %4021, label %4051

4021:                                             ; preds = %4018
  call void @llvm.lifetime.start.p0(i64 16, ptr %238) #6
  %4022 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %238, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %4022)
          to label %4023 unwind label %4039

4023:                                             ; preds = %4021
  %4024 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %238)
          to label %4025 unwind label %4039

4025:                                             ; preds = %4023
  call void @llvm.lifetime.end.p0(i64 16, ptr %238) #6
  br i1 %4024, label %4026, label %4043

4026:                                             ; preds = %4025
  %4027 = load ptr, ptr %4, align 8, !tbaa !5
  %4028 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4027, ptr noundef @.str.4)
          to label %4029 unwind label %3953

4029:                                             ; preds = %4026
  br label %4047

4030:                                             ; preds = %4014
  %4031 = landingpad { ptr, i32 }
          cleanup
  %4032 = extractvalue { ptr, i32 } %4031, 0
  store ptr %4032, ptr %10, align 8
  %4033 = extractvalue { ptr, i32 } %4031, 1
  store i32 %4033, ptr %11, align 4
  br label %4038

4034:                                             ; preds = %4015
  %4035 = landingpad { ptr, i32 }
          cleanup
  %4036 = extractvalue { ptr, i32 } %4035, 0
  store ptr %4036, ptr %10, align 8
  %4037 = extractvalue { ptr, i32 } %4035, 1
  store i32 %4037, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %237) #6
  br label %4038

4038:                                             ; preds = %4034, %4030
  call void @llvm.lifetime.end.p0(i64 48, ptr %237) #6
  br label %4155

4039:                                             ; preds = %4023, %4021
  %4040 = landingpad { ptr, i32 }
          cleanup
  %4041 = extractvalue { ptr, i32 } %4040, 0
  store ptr %4041, ptr %10, align 8
  %4042 = extractvalue { ptr, i32 } %4040, 1
  store i32 %4042, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %238) #6
  br label %4155

4043:                                             ; preds = %4025
  %4044 = load ptr, ptr %4, align 8, !tbaa !5
  %4045 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4044, ptr noundef @.str.5)
          to label %4046 unwind label %3953

4046:                                             ; preds = %4043
  br label %4047

4047:                                             ; preds = %4046, %4029
  br label %4048

4048:                                             ; preds = %4047
  %4049 = load i32, ptr %233, align 4, !tbaa !9
  %4050 = add nsw i32 %4049, 1
  store i32 %4050, ptr %233, align 4, !tbaa !9
  br label %4018, !llvm.loop !117

4051:                                             ; preds = %4018
  %4052 = load ptr, ptr %4, align 8, !tbaa !5
  %4053 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4052, ptr noundef @.str.6)
          to label %4054 unwind label %3953

4054:                                             ; preds = %4051
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %4055

4055:                                             ; preds = %4063, %4054
  %4056 = load i32, ptr %233, align 4, !tbaa !9
  %4057 = icmp slt i32 %4056, 65
  br i1 %4057, label %4058, label %4070

4058:                                             ; preds = %4055
  call void @llvm.lifetime.start.p0(i64 16, ptr %239) #6
  %4059 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %239, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %4059)
          to label %4060 unwind label %4066

4060:                                             ; preds = %4058
  %4061 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %239, i1 noundef zeroext false)
          to label %4062 unwind label %4066

4062:                                             ; preds = %4060
  call void @llvm.lifetime.end.p0(i64 16, ptr %239) #6
  br label %4063

4063:                                             ; preds = %4062
  %4064 = load i32, ptr %233, align 4, !tbaa !9
  %4065 = add nsw i32 %4064, 3
  store i32 %4065, ptr %233, align 4, !tbaa !9
  br label %4055, !llvm.loop !118

4066:                                             ; preds = %4060, %4058
  %4067 = landingpad { ptr, i32 }
          cleanup
  %4068 = extractvalue { ptr, i32 } %4067, 0
  store ptr %4068, ptr %10, align 8
  %4069 = extractvalue { ptr, i32 } %4067, 1
  store i32 %4069, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %239) #6
  br label %4155

4070:                                             ; preds = %4055
  store i32 0, ptr %233, align 4, !tbaa !9
  br label %4071

4071:                                             ; preds = %4092, %4070
  %4072 = load i32, ptr %233, align 4, !tbaa !9
  %4073 = icmp slt i32 %4072, 65
  br i1 %4073, label %4074, label %4095

4074:                                             ; preds = %4071
  call void @llvm.lifetime.start.p0(i64 16, ptr %240) #6
  %4075 = load i32, ptr %233, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef %4075)
          to label %4076 unwind label %4083

4076:                                             ; preds = %4074
  %4077 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %240)
          to label %4078 unwind label %4083

4078:                                             ; preds = %4076
  call void @llvm.lifetime.end.p0(i64 16, ptr %240) #6
  br i1 %4077, label %4079, label %4087

4079:                                             ; preds = %4078
  %4080 = load ptr, ptr %4, align 8, !tbaa !5
  %4081 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4080, ptr noundef @.str.4)
          to label %4082 unwind label %3953

4082:                                             ; preds = %4079
  br label %4091

4083:                                             ; preds = %4076, %4074
  %4084 = landingpad { ptr, i32 }
          cleanup
  %4085 = extractvalue { ptr, i32 } %4084, 0
  store ptr %4085, ptr %10, align 8
  %4086 = extractvalue { ptr, i32 } %4084, 1
  store i32 %4086, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %240) #6
  br label %4155

4087:                                             ; preds = %4078
  %4088 = load ptr, ptr %4, align 8, !tbaa !5
  %4089 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4088, ptr noundef @.str.5)
          to label %4090 unwind label %3953

4090:                                             ; preds = %4087
  br label %4091

4091:                                             ; preds = %4090, %4082
  br label %4092

4092:                                             ; preds = %4091
  %4093 = load i32, ptr %233, align 4, !tbaa !9
  %4094 = add nsw i32 %4093, 1
  store i32 %4094, ptr %233, align 4, !tbaa !9
  br label %4071, !llvm.loop !119

4095:                                             ; preds = %4071
  %4096 = load ptr, ptr %4, align 8, !tbaa !5
  %4097 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4096, ptr noundef @.str.3)
          to label %4098 unwind label %3953

4098:                                             ; preds = %4095
  %4099 = load ptr, ptr %4, align 8, !tbaa !5
  %4100 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4099, ptr noundef @.str.7)
          to label %4101 unwind label %3953

4101:                                             ; preds = %4098
  call void @llvm.lifetime.start.p0(i64 32, ptr %241) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %241, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef 2)
          to label %4102 unwind label %4137

4102:                                             ; preds = %4101
  %4103 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4100, ptr noundef nonnull align 8 dereferenceable(32) %241)
          to label %4104 unwind label %4141

4104:                                             ; preds = %4102
  %4105 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4103, ptr noundef @.str.3)
          to label %4106 unwind label %4141

4106:                                             ; preds = %4104
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %241) #6
  %4107 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %232, ptr noundef @.str.8)
          to label %4108 unwind label %3953

4108:                                             ; preds = %4106
  %4109 = load ptr, ptr %4, align 8, !tbaa !5
  %4110 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4109, ptr noundef @.str.7)
          to label %4111 unwind label %3953

4111:                                             ; preds = %4108
  call void @llvm.lifetime.start.p0(i64 32, ptr %242) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %242, ptr noundef nonnull align 8 dereferenceable(48) %232, i32 noundef 2)
          to label %4112 unwind label %4146

4112:                                             ; preds = %4111
  %4113 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4110, ptr noundef nonnull align 8 dereferenceable(32) %242)
          to label %4114 unwind label %4150

4114:                                             ; preds = %4112
  %4115 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4113, ptr noundef @.str.3)
          to label %4116 unwind label %4150

4116:                                             ; preds = %4114
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %242) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %242) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %233) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %232) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %232) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %230) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %230) #6
  %4117 = load ptr, ptr %4, align 8, !tbaa !5
  %4118 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4117, ptr noundef @.str.10)
  %4119 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4118, ptr noundef @.str.2)
  %4120 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4119, i32 noundef 65)
  %4121 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4120, ptr noundef @.str.2)
  %4122 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4121, i32 noundef 33)
  %4123 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4122, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %243) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %244) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %244, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %243, ptr noundef nonnull align 4 dereferenceable(20) %244, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %244) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %245) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef 0, ptr noundef null)
          to label %4124 unwind label %4157

4124:                                             ; preds = %4116
  call void @llvm.lifetime.start.p0(i64 4, ptr %246) #6
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4125

4125:                                             ; preds = %4174, %4124
  %4126 = load i32, ptr %246, align 4, !tbaa !9
  %4127 = icmp slt i32 %4126, 65
  br i1 %4127, label %4128, label %4177

4128:                                             ; preds = %4125
  call void @llvm.lifetime.start.p0(i64 16, ptr %247) #6
  %4129 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %247, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4129)
          to label %4130 unwind label %4161

4130:                                             ; preds = %4128
  %4131 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %247)
          to label %4132 unwind label %4161

4132:                                             ; preds = %4130
  call void @llvm.lifetime.end.p0(i64 16, ptr %247) #6
  br i1 %4131, label %4133, label %4169

4133:                                             ; preds = %4132
  %4134 = load ptr, ptr %4, align 8, !tbaa !5
  %4135 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4134, ptr noundef @.str.4)
          to label %4136 unwind label %4165

4136:                                             ; preds = %4133
  br label %4173

4137:                                             ; preds = %4101
  %4138 = landingpad { ptr, i32 }
          cleanup
  %4139 = extractvalue { ptr, i32 } %4138, 0
  store ptr %4139, ptr %10, align 8
  %4140 = extractvalue { ptr, i32 } %4138, 1
  store i32 %4140, ptr %11, align 4
  br label %4145

4141:                                             ; preds = %4104, %4102
  %4142 = landingpad { ptr, i32 }
          cleanup
  %4143 = extractvalue { ptr, i32 } %4142, 0
  store ptr %4143, ptr %10, align 8
  %4144 = extractvalue { ptr, i32 } %4142, 1
  store i32 %4144, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #6
  br label %4145

4145:                                             ; preds = %4141, %4137
  call void @llvm.lifetime.end.p0(i64 32, ptr %241) #6
  br label %4155

4146:                                             ; preds = %4111
  %4147 = landingpad { ptr, i32 }
          cleanup
  %4148 = extractvalue { ptr, i32 } %4147, 0
  store ptr %4148, ptr %10, align 8
  %4149 = extractvalue { ptr, i32 } %4147, 1
  store i32 %4149, ptr %11, align 4
  br label %4154

4150:                                             ; preds = %4114, %4112
  %4151 = landingpad { ptr, i32 }
          cleanup
  %4152 = extractvalue { ptr, i32 } %4151, 0
  store ptr %4152, ptr %10, align 8
  %4153 = extractvalue { ptr, i32 } %4151, 1
  store i32 %4153, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %242) #6
  br label %4154

4154:                                             ; preds = %4150, %4146
  call void @llvm.lifetime.end.p0(i64 32, ptr %242) #6
  br label %4155

4155:                                             ; preds = %4154, %4145, %4083, %4066, %4039, %4038, %3997, %3980, %3953, %3949
  call void @llvm.lifetime.end.p0(i64 4, ptr %233) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %232) #6
  br label %4156

4156:                                             ; preds = %4155, %3945
  call void @llvm.lifetime.end.p0(i64 48, ptr %232) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %230) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %230) #6
  br label %5409

4157:                                             ; preds = %4116
  %4158 = landingpad { ptr, i32 }
          cleanup
  %4159 = extractvalue { ptr, i32 } %4158, 0
  store ptr %4159, ptr %10, align 8
  %4160 = extractvalue { ptr, i32 } %4158, 1
  store i32 %4160, ptr %11, align 4
  br label %4368

4161:                                             ; preds = %4130, %4128
  %4162 = landingpad { ptr, i32 }
          cleanup
  %4163 = extractvalue { ptr, i32 } %4162, 0
  store ptr %4163, ptr %10, align 8
  %4164 = extractvalue { ptr, i32 } %4162, 1
  store i32 %4164, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %247) #6
  br label %4367

4165:                                             ; preds = %4320, %4318, %4310, %4307, %4299, %4291, %4263, %4255, %4238, %4224, %4221, %4213, %4205, %4177, %4169, %4133
  %4166 = landingpad { ptr, i32 }
          cleanup
  %4167 = extractvalue { ptr, i32 } %4166, 0
  store ptr %4167, ptr %10, align 8
  %4168 = extractvalue { ptr, i32 } %4166, 1
  store i32 %4168, ptr %11, align 4
  br label %4367

4169:                                             ; preds = %4132
  %4170 = load ptr, ptr %4, align 8, !tbaa !5
  %4171 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4170, ptr noundef @.str.5)
          to label %4172 unwind label %4165

4172:                                             ; preds = %4169
  br label %4173

4173:                                             ; preds = %4172, %4136
  br label %4174

4174:                                             ; preds = %4173
  %4175 = load i32, ptr %246, align 4, !tbaa !9
  %4176 = add nsw i32 %4175, 1
  store i32 %4176, ptr %246, align 4, !tbaa !9
  br label %4125, !llvm.loop !120

4177:                                             ; preds = %4125
  %4178 = load ptr, ptr %4, align 8, !tbaa !5
  %4179 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4178, ptr noundef @.str.6)
          to label %4180 unwind label %4165

4180:                                             ; preds = %4177
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4181

4181:                                             ; preds = %4189, %4180
  %4182 = load i32, ptr %246, align 4, !tbaa !9
  %4183 = icmp slt i32 %4182, 65
  br i1 %4183, label %4184, label %4196

4184:                                             ; preds = %4181
  call void @llvm.lifetime.start.p0(i64 16, ptr %248) #6
  %4185 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4185)
          to label %4186 unwind label %4192

4186:                                             ; preds = %4184
  %4187 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %4188 unwind label %4192

4188:                                             ; preds = %4186
  call void @llvm.lifetime.end.p0(i64 16, ptr %248) #6
  br label %4189

4189:                                             ; preds = %4188
  %4190 = load i32, ptr %246, align 4, !tbaa !9
  %4191 = add nsw i32 %4190, 3
  store i32 %4191, ptr %246, align 4, !tbaa !9
  br label %4181, !llvm.loop !121

4192:                                             ; preds = %4186, %4184
  %4193 = landingpad { ptr, i32 }
          cleanup
  %4194 = extractvalue { ptr, i32 } %4193, 0
  store ptr %4194, ptr %10, align 8
  %4195 = extractvalue { ptr, i32 } %4193, 1
  store i32 %4195, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %248) #6
  br label %4367

4196:                                             ; preds = %4181
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4197

4197:                                             ; preds = %4218, %4196
  %4198 = load i32, ptr %246, align 4, !tbaa !9
  %4199 = icmp slt i32 %4198, 65
  br i1 %4199, label %4200, label %4221

4200:                                             ; preds = %4197
  call void @llvm.lifetime.start.p0(i64 16, ptr %249) #6
  %4201 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %249, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4201)
          to label %4202 unwind label %4209

4202:                                             ; preds = %4200
  %4203 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %249)
          to label %4204 unwind label %4209

4204:                                             ; preds = %4202
  call void @llvm.lifetime.end.p0(i64 16, ptr %249) #6
  br i1 %4203, label %4205, label %4213

4205:                                             ; preds = %4204
  %4206 = load ptr, ptr %4, align 8, !tbaa !5
  %4207 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4206, ptr noundef @.str.4)
          to label %4208 unwind label %4165

4208:                                             ; preds = %4205
  br label %4217

4209:                                             ; preds = %4202, %4200
  %4210 = landingpad { ptr, i32 }
          cleanup
  %4211 = extractvalue { ptr, i32 } %4210, 0
  store ptr %4211, ptr %10, align 8
  %4212 = extractvalue { ptr, i32 } %4210, 1
  store i32 %4212, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %249) #6
  br label %4367

4213:                                             ; preds = %4204
  %4214 = load ptr, ptr %4, align 8, !tbaa !5
  %4215 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4214, ptr noundef @.str.5)
          to label %4216 unwind label %4165

4216:                                             ; preds = %4213
  br label %4217

4217:                                             ; preds = %4216, %4208
  br label %4218

4218:                                             ; preds = %4217
  %4219 = load i32, ptr %246, align 4, !tbaa !9
  %4220 = add nsw i32 %4219, 1
  store i32 %4220, ptr %246, align 4, !tbaa !9
  br label %4197, !llvm.loop !122

4221:                                             ; preds = %4197
  %4222 = load ptr, ptr %4, align 8, !tbaa !5
  %4223 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4222, ptr noundef @.str.3)
          to label %4224 unwind label %4165

4224:                                             ; preds = %4221
  %4225 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef 0)
          to label %4226 unwind label %4165

4226:                                             ; preds = %4224
  call void @llvm.lifetime.start.p0(i64 48, ptr %250) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %250, ptr noundef nonnull align 8 dereferenceable(48) %245)
          to label %4227 unwind label %4242

4227:                                             ; preds = %4226
  %4228 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %245, ptr noundef nonnull align 8 dereferenceable(48) %250)
          to label %4229 unwind label %4246

4229:                                             ; preds = %4227
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %250) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %250) #6
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4230

4230:                                             ; preds = %4260, %4229
  %4231 = load i32, ptr %246, align 4, !tbaa !9
  %4232 = icmp slt i32 %4231, 65
  br i1 %4232, label %4233, label %4263

4233:                                             ; preds = %4230
  call void @llvm.lifetime.start.p0(i64 16, ptr %251) #6
  %4234 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %251, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4234)
          to label %4235 unwind label %4251

4235:                                             ; preds = %4233
  %4236 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %251)
          to label %4237 unwind label %4251

4237:                                             ; preds = %4235
  call void @llvm.lifetime.end.p0(i64 16, ptr %251) #6
  br i1 %4236, label %4238, label %4255

4238:                                             ; preds = %4237
  %4239 = load ptr, ptr %4, align 8, !tbaa !5
  %4240 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4239, ptr noundef @.str.4)
          to label %4241 unwind label %4165

4241:                                             ; preds = %4238
  br label %4259

4242:                                             ; preds = %4226
  %4243 = landingpad { ptr, i32 }
          cleanup
  %4244 = extractvalue { ptr, i32 } %4243, 0
  store ptr %4244, ptr %10, align 8
  %4245 = extractvalue { ptr, i32 } %4243, 1
  store i32 %4245, ptr %11, align 4
  br label %4250

4246:                                             ; preds = %4227
  %4247 = landingpad { ptr, i32 }
          cleanup
  %4248 = extractvalue { ptr, i32 } %4247, 0
  store ptr %4248, ptr %10, align 8
  %4249 = extractvalue { ptr, i32 } %4247, 1
  store i32 %4249, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %250) #6
  br label %4250

4250:                                             ; preds = %4246, %4242
  call void @llvm.lifetime.end.p0(i64 48, ptr %250) #6
  br label %4367

4251:                                             ; preds = %4235, %4233
  %4252 = landingpad { ptr, i32 }
          cleanup
  %4253 = extractvalue { ptr, i32 } %4252, 0
  store ptr %4253, ptr %10, align 8
  %4254 = extractvalue { ptr, i32 } %4252, 1
  store i32 %4254, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %251) #6
  br label %4367

4255:                                             ; preds = %4237
  %4256 = load ptr, ptr %4, align 8, !tbaa !5
  %4257 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4256, ptr noundef @.str.5)
          to label %4258 unwind label %4165

4258:                                             ; preds = %4255
  br label %4259

4259:                                             ; preds = %4258, %4241
  br label %4260

4260:                                             ; preds = %4259
  %4261 = load i32, ptr %246, align 4, !tbaa !9
  %4262 = add nsw i32 %4261, 1
  store i32 %4262, ptr %246, align 4, !tbaa !9
  br label %4230, !llvm.loop !123

4263:                                             ; preds = %4230
  %4264 = load ptr, ptr %4, align 8, !tbaa !5
  %4265 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4264, ptr noundef @.str.6)
          to label %4266 unwind label %4165

4266:                                             ; preds = %4263
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4267

4267:                                             ; preds = %4275, %4266
  %4268 = load i32, ptr %246, align 4, !tbaa !9
  %4269 = icmp slt i32 %4268, 65
  br i1 %4269, label %4270, label %4282

4270:                                             ; preds = %4267
  call void @llvm.lifetime.start.p0(i64 16, ptr %252) #6
  %4271 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4271)
          to label %4272 unwind label %4278

4272:                                             ; preds = %4270
  %4273 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %4274 unwind label %4278

4274:                                             ; preds = %4272
  call void @llvm.lifetime.end.p0(i64 16, ptr %252) #6
  br label %4275

4275:                                             ; preds = %4274
  %4276 = load i32, ptr %246, align 4, !tbaa !9
  %4277 = add nsw i32 %4276, 3
  store i32 %4277, ptr %246, align 4, !tbaa !9
  br label %4267, !llvm.loop !124

4278:                                             ; preds = %4272, %4270
  %4279 = landingpad { ptr, i32 }
          cleanup
  %4280 = extractvalue { ptr, i32 } %4279, 0
  store ptr %4280, ptr %10, align 8
  %4281 = extractvalue { ptr, i32 } %4279, 1
  store i32 %4281, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %252) #6
  br label %4367

4282:                                             ; preds = %4267
  store i32 0, ptr %246, align 4, !tbaa !9
  br label %4283

4283:                                             ; preds = %4304, %4282
  %4284 = load i32, ptr %246, align 4, !tbaa !9
  %4285 = icmp slt i32 %4284, 65
  br i1 %4285, label %4286, label %4307

4286:                                             ; preds = %4283
  call void @llvm.lifetime.start.p0(i64 16, ptr %253) #6
  %4287 = load i32, ptr %246, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %253, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef %4287)
          to label %4288 unwind label %4295

4288:                                             ; preds = %4286
  %4289 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %253)
          to label %4290 unwind label %4295

4290:                                             ; preds = %4288
  call void @llvm.lifetime.end.p0(i64 16, ptr %253) #6
  br i1 %4289, label %4291, label %4299

4291:                                             ; preds = %4290
  %4292 = load ptr, ptr %4, align 8, !tbaa !5
  %4293 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4292, ptr noundef @.str.4)
          to label %4294 unwind label %4165

4294:                                             ; preds = %4291
  br label %4303

4295:                                             ; preds = %4288, %4286
  %4296 = landingpad { ptr, i32 }
          cleanup
  %4297 = extractvalue { ptr, i32 } %4296, 0
  store ptr %4297, ptr %10, align 8
  %4298 = extractvalue { ptr, i32 } %4296, 1
  store i32 %4298, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %253) #6
  br label %4367

4299:                                             ; preds = %4290
  %4300 = load ptr, ptr %4, align 8, !tbaa !5
  %4301 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4300, ptr noundef @.str.5)
          to label %4302 unwind label %4165

4302:                                             ; preds = %4299
  br label %4303

4303:                                             ; preds = %4302, %4294
  br label %4304

4304:                                             ; preds = %4303
  %4305 = load i32, ptr %246, align 4, !tbaa !9
  %4306 = add nsw i32 %4305, 1
  store i32 %4306, ptr %246, align 4, !tbaa !9
  br label %4283, !llvm.loop !125

4307:                                             ; preds = %4283
  %4308 = load ptr, ptr %4, align 8, !tbaa !5
  %4309 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4308, ptr noundef @.str.3)
          to label %4310 unwind label %4165

4310:                                             ; preds = %4307
  %4311 = load ptr, ptr %4, align 8, !tbaa !5
  %4312 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4311, ptr noundef @.str.7)
          to label %4313 unwind label %4165

4313:                                             ; preds = %4310
  call void @llvm.lifetime.start.p0(i64 32, ptr %254) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %254, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef 2)
          to label %4314 unwind label %4349

4314:                                             ; preds = %4313
  %4315 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4312, ptr noundef nonnull align 8 dereferenceable(32) %254)
          to label %4316 unwind label %4353

4316:                                             ; preds = %4314
  %4317 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4315, ptr noundef @.str.3)
          to label %4318 unwind label %4353

4318:                                             ; preds = %4316
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %254) #6
  %4319 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %245, ptr noundef @.str.8)
          to label %4320 unwind label %4165

4320:                                             ; preds = %4318
  %4321 = load ptr, ptr %4, align 8, !tbaa !5
  %4322 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4321, ptr noundef @.str.7)
          to label %4323 unwind label %4165

4323:                                             ; preds = %4320
  call void @llvm.lifetime.start.p0(i64 32, ptr %255) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %255, ptr noundef nonnull align 8 dereferenceable(48) %245, i32 noundef 2)
          to label %4324 unwind label %4358

4324:                                             ; preds = %4323
  %4325 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4322, ptr noundef nonnull align 8 dereferenceable(32) %255)
          to label %4326 unwind label %4362

4326:                                             ; preds = %4324
  %4327 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4325, ptr noundef @.str.3)
          to label %4328 unwind label %4362

4328:                                             ; preds = %4326
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %255) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %255) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %246) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %245) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %245) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %243) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %243) #6
  %4329 = load ptr, ptr %4, align 8, !tbaa !5
  %4330 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4329, ptr noundef @.str.11)
  %4331 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4330, ptr noundef @.str.2)
  %4332 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4331, i32 noundef 65)
  %4333 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4332, ptr noundef @.str.2)
  %4334 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4333, i32 noundef 33)
  %4335 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4334, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %256) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %257) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %257, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %256, ptr noundef nonnull align 4 dereferenceable(20) %257, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %257) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %258) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0, ptr noundef null)
          to label %4336 unwind label %4369

4336:                                             ; preds = %4328
  call void @llvm.lifetime.start.p0(i64 4, ptr %259) #6
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4337

4337:                                             ; preds = %4386, %4336
  %4338 = load i32, ptr %259, align 4, !tbaa !9
  %4339 = icmp slt i32 %4338, 65
  br i1 %4339, label %4340, label %4389

4340:                                             ; preds = %4337
  call void @llvm.lifetime.start.p0(i64 16, ptr %260) #6
  %4341 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4341)
          to label %4342 unwind label %4373

4342:                                             ; preds = %4340
  %4343 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %260)
          to label %4344 unwind label %4373

4344:                                             ; preds = %4342
  call void @llvm.lifetime.end.p0(i64 16, ptr %260) #6
  br i1 %4343, label %4345, label %4381

4345:                                             ; preds = %4344
  %4346 = load ptr, ptr %4, align 8, !tbaa !5
  %4347 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4346, ptr noundef @.str.4)
          to label %4348 unwind label %4377

4348:                                             ; preds = %4345
  br label %4385

4349:                                             ; preds = %4313
  %4350 = landingpad { ptr, i32 }
          cleanup
  %4351 = extractvalue { ptr, i32 } %4350, 0
  store ptr %4351, ptr %10, align 8
  %4352 = extractvalue { ptr, i32 } %4350, 1
  store i32 %4352, ptr %11, align 4
  br label %4357

4353:                                             ; preds = %4316, %4314
  %4354 = landingpad { ptr, i32 }
          cleanup
  %4355 = extractvalue { ptr, i32 } %4354, 0
  store ptr %4355, ptr %10, align 8
  %4356 = extractvalue { ptr, i32 } %4354, 1
  store i32 %4356, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  br label %4357

4357:                                             ; preds = %4353, %4349
  call void @llvm.lifetime.end.p0(i64 32, ptr %254) #6
  br label %4367

4358:                                             ; preds = %4323
  %4359 = landingpad { ptr, i32 }
          cleanup
  %4360 = extractvalue { ptr, i32 } %4359, 0
  store ptr %4360, ptr %10, align 8
  %4361 = extractvalue { ptr, i32 } %4359, 1
  store i32 %4361, ptr %11, align 4
  br label %4366

4362:                                             ; preds = %4326, %4324
  %4363 = landingpad { ptr, i32 }
          cleanup
  %4364 = extractvalue { ptr, i32 } %4363, 0
  store ptr %4364, ptr %10, align 8
  %4365 = extractvalue { ptr, i32 } %4363, 1
  store i32 %4365, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %255) #6
  br label %4366

4366:                                             ; preds = %4362, %4358
  call void @llvm.lifetime.end.p0(i64 32, ptr %255) #6
  br label %4367

4367:                                             ; preds = %4366, %4357, %4295, %4278, %4251, %4250, %4209, %4192, %4165, %4161
  call void @llvm.lifetime.end.p0(i64 4, ptr %246) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %245) #6
  br label %4368

4368:                                             ; preds = %4367, %4157
  call void @llvm.lifetime.end.p0(i64 48, ptr %245) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %243) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %243) #6
  br label %5409

4369:                                             ; preds = %4328
  %4370 = landingpad { ptr, i32 }
          cleanup
  %4371 = extractvalue { ptr, i32 } %4370, 0
  store ptr %4371, ptr %10, align 8
  %4372 = extractvalue { ptr, i32 } %4370, 1
  store i32 %4372, ptr %11, align 4
  br label %4580

4373:                                             ; preds = %4342, %4340
  %4374 = landingpad { ptr, i32 }
          cleanup
  %4375 = extractvalue { ptr, i32 } %4374, 0
  store ptr %4375, ptr %10, align 8
  %4376 = extractvalue { ptr, i32 } %4374, 1
  store i32 %4376, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %260) #6
  br label %4579

4377:                                             ; preds = %4532, %4530, %4522, %4519, %4511, %4503, %4475, %4467, %4450, %4436, %4433, %4425, %4417, %4389, %4381, %4345
  %4378 = landingpad { ptr, i32 }
          cleanup
  %4379 = extractvalue { ptr, i32 } %4378, 0
  store ptr %4379, ptr %10, align 8
  %4380 = extractvalue { ptr, i32 } %4378, 1
  store i32 %4380, ptr %11, align 4
  br label %4579

4381:                                             ; preds = %4344
  %4382 = load ptr, ptr %4, align 8, !tbaa !5
  %4383 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4382, ptr noundef @.str.5)
          to label %4384 unwind label %4377

4384:                                             ; preds = %4381
  br label %4385

4385:                                             ; preds = %4384, %4348
  br label %4386

4386:                                             ; preds = %4385
  %4387 = load i32, ptr %259, align 4, !tbaa !9
  %4388 = add nsw i32 %4387, 1
  store i32 %4388, ptr %259, align 4, !tbaa !9
  br label %4337, !llvm.loop !126

4389:                                             ; preds = %4337
  %4390 = load ptr, ptr %4, align 8, !tbaa !5
  %4391 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4390, ptr noundef @.str.6)
          to label %4392 unwind label %4377

4392:                                             ; preds = %4389
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4393

4393:                                             ; preds = %4401, %4392
  %4394 = load i32, ptr %259, align 4, !tbaa !9
  %4395 = icmp slt i32 %4394, 65
  br i1 %4395, label %4396, label %4408

4396:                                             ; preds = %4393
  call void @llvm.lifetime.start.p0(i64 16, ptr %261) #6
  %4397 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %261, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4397)
          to label %4398 unwind label %4404

4398:                                             ; preds = %4396
  %4399 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %261, i1 noundef zeroext true)
          to label %4400 unwind label %4404

4400:                                             ; preds = %4398
  call void @llvm.lifetime.end.p0(i64 16, ptr %261) #6
  br label %4401

4401:                                             ; preds = %4400
  %4402 = load i32, ptr %259, align 4, !tbaa !9
  %4403 = add nsw i32 %4402, 3
  store i32 %4403, ptr %259, align 4, !tbaa !9
  br label %4393, !llvm.loop !127

4404:                                             ; preds = %4398, %4396
  %4405 = landingpad { ptr, i32 }
          cleanup
  %4406 = extractvalue { ptr, i32 } %4405, 0
  store ptr %4406, ptr %10, align 8
  %4407 = extractvalue { ptr, i32 } %4405, 1
  store i32 %4407, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %261) #6
  br label %4579

4408:                                             ; preds = %4393
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4409

4409:                                             ; preds = %4430, %4408
  %4410 = load i32, ptr %259, align 4, !tbaa !9
  %4411 = icmp slt i32 %4410, 65
  br i1 %4411, label %4412, label %4433

4412:                                             ; preds = %4409
  call void @llvm.lifetime.start.p0(i64 16, ptr %262) #6
  %4413 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %262, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4413)
          to label %4414 unwind label %4421

4414:                                             ; preds = %4412
  %4415 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %262)
          to label %4416 unwind label %4421

4416:                                             ; preds = %4414
  call void @llvm.lifetime.end.p0(i64 16, ptr %262) #6
  br i1 %4415, label %4417, label %4425

4417:                                             ; preds = %4416
  %4418 = load ptr, ptr %4, align 8, !tbaa !5
  %4419 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4418, ptr noundef @.str.4)
          to label %4420 unwind label %4377

4420:                                             ; preds = %4417
  br label %4429

4421:                                             ; preds = %4414, %4412
  %4422 = landingpad { ptr, i32 }
          cleanup
  %4423 = extractvalue { ptr, i32 } %4422, 0
  store ptr %4423, ptr %10, align 8
  %4424 = extractvalue { ptr, i32 } %4422, 1
  store i32 %4424, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %262) #6
  br label %4579

4425:                                             ; preds = %4416
  %4426 = load ptr, ptr %4, align 8, !tbaa !5
  %4427 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4426, ptr noundef @.str.5)
          to label %4428 unwind label %4377

4428:                                             ; preds = %4425
  br label %4429

4429:                                             ; preds = %4428, %4420
  br label %4430

4430:                                             ; preds = %4429
  %4431 = load i32, ptr %259, align 4, !tbaa !9
  %4432 = add nsw i32 %4431, 1
  store i32 %4432, ptr %259, align 4, !tbaa !9
  br label %4409, !llvm.loop !128

4433:                                             ; preds = %4409
  %4434 = load ptr, ptr %4, align 8, !tbaa !5
  %4435 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4434, ptr noundef @.str.3)
          to label %4436 unwind label %4377

4436:                                             ; preds = %4433
  %4437 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0)
          to label %4438 unwind label %4377

4438:                                             ; preds = %4436
  call void @llvm.lifetime.start.p0(i64 48, ptr %263) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %263, ptr noundef nonnull align 8 dereferenceable(48) %258)
          to label %4439 unwind label %4454

4439:                                             ; preds = %4438
  %4440 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %258, ptr noundef nonnull align 8 dereferenceable(48) %263)
          to label %4441 unwind label %4458

4441:                                             ; preds = %4439
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %263) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %263) #6
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4442

4442:                                             ; preds = %4472, %4441
  %4443 = load i32, ptr %259, align 4, !tbaa !9
  %4444 = icmp slt i32 %4443, 65
  br i1 %4444, label %4445, label %4475

4445:                                             ; preds = %4442
  call void @llvm.lifetime.start.p0(i64 16, ptr %264) #6
  %4446 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4446)
          to label %4447 unwind label %4463

4447:                                             ; preds = %4445
  %4448 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %264)
          to label %4449 unwind label %4463

4449:                                             ; preds = %4447
  call void @llvm.lifetime.end.p0(i64 16, ptr %264) #6
  br i1 %4448, label %4450, label %4467

4450:                                             ; preds = %4449
  %4451 = load ptr, ptr %4, align 8, !tbaa !5
  %4452 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4451, ptr noundef @.str.4)
          to label %4453 unwind label %4377

4453:                                             ; preds = %4450
  br label %4471

4454:                                             ; preds = %4438
  %4455 = landingpad { ptr, i32 }
          cleanup
  %4456 = extractvalue { ptr, i32 } %4455, 0
  store ptr %4456, ptr %10, align 8
  %4457 = extractvalue { ptr, i32 } %4455, 1
  store i32 %4457, ptr %11, align 4
  br label %4462

4458:                                             ; preds = %4439
  %4459 = landingpad { ptr, i32 }
          cleanup
  %4460 = extractvalue { ptr, i32 } %4459, 0
  store ptr %4460, ptr %10, align 8
  %4461 = extractvalue { ptr, i32 } %4459, 1
  store i32 %4461, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %263) #6
  br label %4462

4462:                                             ; preds = %4458, %4454
  call void @llvm.lifetime.end.p0(i64 48, ptr %263) #6
  br label %4579

4463:                                             ; preds = %4447, %4445
  %4464 = landingpad { ptr, i32 }
          cleanup
  %4465 = extractvalue { ptr, i32 } %4464, 0
  store ptr %4465, ptr %10, align 8
  %4466 = extractvalue { ptr, i32 } %4464, 1
  store i32 %4466, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %264) #6
  br label %4579

4467:                                             ; preds = %4449
  %4468 = load ptr, ptr %4, align 8, !tbaa !5
  %4469 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4468, ptr noundef @.str.5)
          to label %4470 unwind label %4377

4470:                                             ; preds = %4467
  br label %4471

4471:                                             ; preds = %4470, %4453
  br label %4472

4472:                                             ; preds = %4471
  %4473 = load i32, ptr %259, align 4, !tbaa !9
  %4474 = add nsw i32 %4473, 1
  store i32 %4474, ptr %259, align 4, !tbaa !9
  br label %4442, !llvm.loop !129

4475:                                             ; preds = %4442
  %4476 = load ptr, ptr %4, align 8, !tbaa !5
  %4477 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4476, ptr noundef @.str.6)
          to label %4478 unwind label %4377

4478:                                             ; preds = %4475
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4479

4479:                                             ; preds = %4487, %4478
  %4480 = load i32, ptr %259, align 4, !tbaa !9
  %4481 = icmp slt i32 %4480, 65
  br i1 %4481, label %4482, label %4494

4482:                                             ; preds = %4479
  call void @llvm.lifetime.start.p0(i64 16, ptr %265) #6
  %4483 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %265, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4483)
          to label %4484 unwind label %4490

4484:                                             ; preds = %4482
  %4485 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %265, i1 noundef zeroext false)
          to label %4486 unwind label %4490

4486:                                             ; preds = %4484
  call void @llvm.lifetime.end.p0(i64 16, ptr %265) #6
  br label %4487

4487:                                             ; preds = %4486
  %4488 = load i32, ptr %259, align 4, !tbaa !9
  %4489 = add nsw i32 %4488, 3
  store i32 %4489, ptr %259, align 4, !tbaa !9
  br label %4479, !llvm.loop !130

4490:                                             ; preds = %4484, %4482
  %4491 = landingpad { ptr, i32 }
          cleanup
  %4492 = extractvalue { ptr, i32 } %4491, 0
  store ptr %4492, ptr %10, align 8
  %4493 = extractvalue { ptr, i32 } %4491, 1
  store i32 %4493, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %265) #6
  br label %4579

4494:                                             ; preds = %4479
  store i32 0, ptr %259, align 4, !tbaa !9
  br label %4495

4495:                                             ; preds = %4516, %4494
  %4496 = load i32, ptr %259, align 4, !tbaa !9
  %4497 = icmp slt i32 %4496, 65
  br i1 %4497, label %4498, label %4519

4498:                                             ; preds = %4495
  call void @llvm.lifetime.start.p0(i64 16, ptr %266) #6
  %4499 = load i32, ptr %259, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %266, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %4499)
          to label %4500 unwind label %4507

4500:                                             ; preds = %4498
  %4501 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %266)
          to label %4502 unwind label %4507

4502:                                             ; preds = %4500
  call void @llvm.lifetime.end.p0(i64 16, ptr %266) #6
  br i1 %4501, label %4503, label %4511

4503:                                             ; preds = %4502
  %4504 = load ptr, ptr %4, align 8, !tbaa !5
  %4505 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4504, ptr noundef @.str.4)
          to label %4506 unwind label %4377

4506:                                             ; preds = %4503
  br label %4515

4507:                                             ; preds = %4500, %4498
  %4508 = landingpad { ptr, i32 }
          cleanup
  %4509 = extractvalue { ptr, i32 } %4508, 0
  store ptr %4509, ptr %10, align 8
  %4510 = extractvalue { ptr, i32 } %4508, 1
  store i32 %4510, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %266) #6
  br label %4579

4511:                                             ; preds = %4502
  %4512 = load ptr, ptr %4, align 8, !tbaa !5
  %4513 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4512, ptr noundef @.str.5)
          to label %4514 unwind label %4377

4514:                                             ; preds = %4511
  br label %4515

4515:                                             ; preds = %4514, %4506
  br label %4516

4516:                                             ; preds = %4515
  %4517 = load i32, ptr %259, align 4, !tbaa !9
  %4518 = add nsw i32 %4517, 1
  store i32 %4518, ptr %259, align 4, !tbaa !9
  br label %4495, !llvm.loop !131

4519:                                             ; preds = %4495
  %4520 = load ptr, ptr %4, align 8, !tbaa !5
  %4521 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4520, ptr noundef @.str.3)
          to label %4522 unwind label %4377

4522:                                             ; preds = %4519
  %4523 = load ptr, ptr %4, align 8, !tbaa !5
  %4524 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4523, ptr noundef @.str.7)
          to label %4525 unwind label %4377

4525:                                             ; preds = %4522
  call void @llvm.lifetime.start.p0(i64 32, ptr %267) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %267, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 2)
          to label %4526 unwind label %4561

4526:                                             ; preds = %4525
  %4527 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4524, ptr noundef nonnull align 8 dereferenceable(32) %267)
          to label %4528 unwind label %4565

4528:                                             ; preds = %4526
  %4529 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4527, ptr noundef @.str.3)
          to label %4530 unwind label %4565

4530:                                             ; preds = %4528
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %267) #6
  %4531 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %258, ptr noundef @.str.8)
          to label %4532 unwind label %4377

4532:                                             ; preds = %4530
  %4533 = load ptr, ptr %4, align 8, !tbaa !5
  %4534 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4533, ptr noundef @.str.7)
          to label %4535 unwind label %4377

4535:                                             ; preds = %4532
  call void @llvm.lifetime.start.p0(i64 32, ptr %268) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %268, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 2)
          to label %4536 unwind label %4570

4536:                                             ; preds = %4535
  %4537 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4534, ptr noundef nonnull align 8 dereferenceable(32) %268)
          to label %4538 unwind label %4574

4538:                                             ; preds = %4536
  %4539 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4537, ptr noundef @.str.3)
          to label %4540 unwind label %4574

4540:                                             ; preds = %4538
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %268) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %268) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %259) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %258) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %258) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %256) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %256) #6
  %4541 = load ptr, ptr %4, align 8, !tbaa !5
  %4542 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4541, ptr noundef @.str)
  %4543 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4542, ptr noundef @.str.2)
  %4544 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4543, i32 noundef 65)
  %4545 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4544, ptr noundef @.str.2)
  %4546 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4545, i32 noundef 111)
  %4547 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4546, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %269) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %270) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %270, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %269, ptr noundef nonnull align 4 dereferenceable(20) %270, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %270) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %271) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef 0, ptr noundef null)
          to label %4548 unwind label %4581

4548:                                             ; preds = %4540
  call void @llvm.lifetime.start.p0(i64 4, ptr %272) #6
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4549

4549:                                             ; preds = %4598, %4548
  %4550 = load i32, ptr %272, align 4, !tbaa !9
  %4551 = icmp slt i32 %4550, 65
  br i1 %4551, label %4552, label %4601

4552:                                             ; preds = %4549
  call void @llvm.lifetime.start.p0(i64 16, ptr %273) #6
  %4553 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %273, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4553)
          to label %4554 unwind label %4585

4554:                                             ; preds = %4552
  %4555 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %273)
          to label %4556 unwind label %4585

4556:                                             ; preds = %4554
  call void @llvm.lifetime.end.p0(i64 16, ptr %273) #6
  br i1 %4555, label %4557, label %4593

4557:                                             ; preds = %4556
  %4558 = load ptr, ptr %4, align 8, !tbaa !5
  %4559 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4558, ptr noundef @.str.4)
          to label %4560 unwind label %4589

4560:                                             ; preds = %4557
  br label %4597

4561:                                             ; preds = %4525
  %4562 = landingpad { ptr, i32 }
          cleanup
  %4563 = extractvalue { ptr, i32 } %4562, 0
  store ptr %4563, ptr %10, align 8
  %4564 = extractvalue { ptr, i32 } %4562, 1
  store i32 %4564, ptr %11, align 4
  br label %4569

4565:                                             ; preds = %4528, %4526
  %4566 = landingpad { ptr, i32 }
          cleanup
  %4567 = extractvalue { ptr, i32 } %4566, 0
  store ptr %4567, ptr %10, align 8
  %4568 = extractvalue { ptr, i32 } %4566, 1
  store i32 %4568, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #6
  br label %4569

4569:                                             ; preds = %4565, %4561
  call void @llvm.lifetime.end.p0(i64 32, ptr %267) #6
  br label %4579

4570:                                             ; preds = %4535
  %4571 = landingpad { ptr, i32 }
          cleanup
  %4572 = extractvalue { ptr, i32 } %4571, 0
  store ptr %4572, ptr %10, align 8
  %4573 = extractvalue { ptr, i32 } %4571, 1
  store i32 %4573, ptr %11, align 4
  br label %4578

4574:                                             ; preds = %4538, %4536
  %4575 = landingpad { ptr, i32 }
          cleanup
  %4576 = extractvalue { ptr, i32 } %4575, 0
  store ptr %4576, ptr %10, align 8
  %4577 = extractvalue { ptr, i32 } %4575, 1
  store i32 %4577, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %268) #6
  br label %4578

4578:                                             ; preds = %4574, %4570
  call void @llvm.lifetime.end.p0(i64 32, ptr %268) #6
  br label %4579

4579:                                             ; preds = %4578, %4569, %4507, %4490, %4463, %4462, %4421, %4404, %4377, %4373
  call void @llvm.lifetime.end.p0(i64 4, ptr %259) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %258) #6
  br label %4580

4580:                                             ; preds = %4579, %4369
  call void @llvm.lifetime.end.p0(i64 48, ptr %258) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %256) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %256) #6
  br label %5409

4581:                                             ; preds = %4540
  %4582 = landingpad { ptr, i32 }
          cleanup
  %4583 = extractvalue { ptr, i32 } %4582, 0
  store ptr %4583, ptr %10, align 8
  %4584 = extractvalue { ptr, i32 } %4582, 1
  store i32 %4584, ptr %11, align 4
  br label %4792

4585:                                             ; preds = %4554, %4552
  %4586 = landingpad { ptr, i32 }
          cleanup
  %4587 = extractvalue { ptr, i32 } %4586, 0
  store ptr %4587, ptr %10, align 8
  %4588 = extractvalue { ptr, i32 } %4586, 1
  store i32 %4588, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %273) #6
  br label %4791

4589:                                             ; preds = %4744, %4742, %4734, %4731, %4723, %4715, %4687, %4679, %4662, %4648, %4645, %4637, %4629, %4601, %4593, %4557
  %4590 = landingpad { ptr, i32 }
          cleanup
  %4591 = extractvalue { ptr, i32 } %4590, 0
  store ptr %4591, ptr %10, align 8
  %4592 = extractvalue { ptr, i32 } %4590, 1
  store i32 %4592, ptr %11, align 4
  br label %4791

4593:                                             ; preds = %4556
  %4594 = load ptr, ptr %4, align 8, !tbaa !5
  %4595 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4594, ptr noundef @.str.5)
          to label %4596 unwind label %4589

4596:                                             ; preds = %4593
  br label %4597

4597:                                             ; preds = %4596, %4560
  br label %4598

4598:                                             ; preds = %4597
  %4599 = load i32, ptr %272, align 4, !tbaa !9
  %4600 = add nsw i32 %4599, 1
  store i32 %4600, ptr %272, align 4, !tbaa !9
  br label %4549, !llvm.loop !132

4601:                                             ; preds = %4549
  %4602 = load ptr, ptr %4, align 8, !tbaa !5
  %4603 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4602, ptr noundef @.str.6)
          to label %4604 unwind label %4589

4604:                                             ; preds = %4601
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4605

4605:                                             ; preds = %4613, %4604
  %4606 = load i32, ptr %272, align 4, !tbaa !9
  %4607 = icmp slt i32 %4606, 65
  br i1 %4607, label %4608, label %4620

4608:                                             ; preds = %4605
  call void @llvm.lifetime.start.p0(i64 16, ptr %274) #6
  %4609 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %274, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4609)
          to label %4610 unwind label %4616

4610:                                             ; preds = %4608
  %4611 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %274, i1 noundef zeroext true)
          to label %4612 unwind label %4616

4612:                                             ; preds = %4610
  call void @llvm.lifetime.end.p0(i64 16, ptr %274) #6
  br label %4613

4613:                                             ; preds = %4612
  %4614 = load i32, ptr %272, align 4, !tbaa !9
  %4615 = add nsw i32 %4614, 3
  store i32 %4615, ptr %272, align 4, !tbaa !9
  br label %4605, !llvm.loop !133

4616:                                             ; preds = %4610, %4608
  %4617 = landingpad { ptr, i32 }
          cleanup
  %4618 = extractvalue { ptr, i32 } %4617, 0
  store ptr %4618, ptr %10, align 8
  %4619 = extractvalue { ptr, i32 } %4617, 1
  store i32 %4619, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %274) #6
  br label %4791

4620:                                             ; preds = %4605
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4621

4621:                                             ; preds = %4642, %4620
  %4622 = load i32, ptr %272, align 4, !tbaa !9
  %4623 = icmp slt i32 %4622, 65
  br i1 %4623, label %4624, label %4645

4624:                                             ; preds = %4621
  call void @llvm.lifetime.start.p0(i64 16, ptr %275) #6
  %4625 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %275, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4625)
          to label %4626 unwind label %4633

4626:                                             ; preds = %4624
  %4627 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %275)
          to label %4628 unwind label %4633

4628:                                             ; preds = %4626
  call void @llvm.lifetime.end.p0(i64 16, ptr %275) #6
  br i1 %4627, label %4629, label %4637

4629:                                             ; preds = %4628
  %4630 = load ptr, ptr %4, align 8, !tbaa !5
  %4631 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4630, ptr noundef @.str.4)
          to label %4632 unwind label %4589

4632:                                             ; preds = %4629
  br label %4641

4633:                                             ; preds = %4626, %4624
  %4634 = landingpad { ptr, i32 }
          cleanup
  %4635 = extractvalue { ptr, i32 } %4634, 0
  store ptr %4635, ptr %10, align 8
  %4636 = extractvalue { ptr, i32 } %4634, 1
  store i32 %4636, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %275) #6
  br label %4791

4637:                                             ; preds = %4628
  %4638 = load ptr, ptr %4, align 8, !tbaa !5
  %4639 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4638, ptr noundef @.str.5)
          to label %4640 unwind label %4589

4640:                                             ; preds = %4637
  br label %4641

4641:                                             ; preds = %4640, %4632
  br label %4642

4642:                                             ; preds = %4641
  %4643 = load i32, ptr %272, align 4, !tbaa !9
  %4644 = add nsw i32 %4643, 1
  store i32 %4644, ptr %272, align 4, !tbaa !9
  br label %4621, !llvm.loop !134

4645:                                             ; preds = %4621
  %4646 = load ptr, ptr %4, align 8, !tbaa !5
  %4647 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4646, ptr noundef @.str.3)
          to label %4648 unwind label %4589

4648:                                             ; preds = %4645
  %4649 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef 0)
          to label %4650 unwind label %4589

4650:                                             ; preds = %4648
  call void @llvm.lifetime.start.p0(i64 48, ptr %276) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %271)
          to label %4651 unwind label %4666

4651:                                             ; preds = %4650
  %4652 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %271, ptr noundef nonnull align 8 dereferenceable(48) %276)
          to label %4653 unwind label %4670

4653:                                             ; preds = %4651
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %276) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %276) #6
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4654

4654:                                             ; preds = %4684, %4653
  %4655 = load i32, ptr %272, align 4, !tbaa !9
  %4656 = icmp slt i32 %4655, 65
  br i1 %4656, label %4657, label %4687

4657:                                             ; preds = %4654
  call void @llvm.lifetime.start.p0(i64 16, ptr %277) #6
  %4658 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %277, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4658)
          to label %4659 unwind label %4675

4659:                                             ; preds = %4657
  %4660 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %277)
          to label %4661 unwind label %4675

4661:                                             ; preds = %4659
  call void @llvm.lifetime.end.p0(i64 16, ptr %277) #6
  br i1 %4660, label %4662, label %4679

4662:                                             ; preds = %4661
  %4663 = load ptr, ptr %4, align 8, !tbaa !5
  %4664 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4663, ptr noundef @.str.4)
          to label %4665 unwind label %4589

4665:                                             ; preds = %4662
  br label %4683

4666:                                             ; preds = %4650
  %4667 = landingpad { ptr, i32 }
          cleanup
  %4668 = extractvalue { ptr, i32 } %4667, 0
  store ptr %4668, ptr %10, align 8
  %4669 = extractvalue { ptr, i32 } %4667, 1
  store i32 %4669, ptr %11, align 4
  br label %4674

4670:                                             ; preds = %4651
  %4671 = landingpad { ptr, i32 }
          cleanup
  %4672 = extractvalue { ptr, i32 } %4671, 0
  store ptr %4672, ptr %10, align 8
  %4673 = extractvalue { ptr, i32 } %4671, 1
  store i32 %4673, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %276) #6
  br label %4674

4674:                                             ; preds = %4670, %4666
  call void @llvm.lifetime.end.p0(i64 48, ptr %276) #6
  br label %4791

4675:                                             ; preds = %4659, %4657
  %4676 = landingpad { ptr, i32 }
          cleanup
  %4677 = extractvalue { ptr, i32 } %4676, 0
  store ptr %4677, ptr %10, align 8
  %4678 = extractvalue { ptr, i32 } %4676, 1
  store i32 %4678, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %277) #6
  br label %4791

4679:                                             ; preds = %4661
  %4680 = load ptr, ptr %4, align 8, !tbaa !5
  %4681 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4680, ptr noundef @.str.5)
          to label %4682 unwind label %4589

4682:                                             ; preds = %4679
  br label %4683

4683:                                             ; preds = %4682, %4665
  br label %4684

4684:                                             ; preds = %4683
  %4685 = load i32, ptr %272, align 4, !tbaa !9
  %4686 = add nsw i32 %4685, 1
  store i32 %4686, ptr %272, align 4, !tbaa !9
  br label %4654, !llvm.loop !135

4687:                                             ; preds = %4654
  %4688 = load ptr, ptr %4, align 8, !tbaa !5
  %4689 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4688, ptr noundef @.str.6)
          to label %4690 unwind label %4589

4690:                                             ; preds = %4687
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4691

4691:                                             ; preds = %4699, %4690
  %4692 = load i32, ptr %272, align 4, !tbaa !9
  %4693 = icmp slt i32 %4692, 65
  br i1 %4693, label %4694, label %4706

4694:                                             ; preds = %4691
  call void @llvm.lifetime.start.p0(i64 16, ptr %278) #6
  %4695 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %278, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4695)
          to label %4696 unwind label %4702

4696:                                             ; preds = %4694
  %4697 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %278, i1 noundef zeroext false)
          to label %4698 unwind label %4702

4698:                                             ; preds = %4696
  call void @llvm.lifetime.end.p0(i64 16, ptr %278) #6
  br label %4699

4699:                                             ; preds = %4698
  %4700 = load i32, ptr %272, align 4, !tbaa !9
  %4701 = add nsw i32 %4700, 3
  store i32 %4701, ptr %272, align 4, !tbaa !9
  br label %4691, !llvm.loop !136

4702:                                             ; preds = %4696, %4694
  %4703 = landingpad { ptr, i32 }
          cleanup
  %4704 = extractvalue { ptr, i32 } %4703, 0
  store ptr %4704, ptr %10, align 8
  %4705 = extractvalue { ptr, i32 } %4703, 1
  store i32 %4705, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %278) #6
  br label %4791

4706:                                             ; preds = %4691
  store i32 0, ptr %272, align 4, !tbaa !9
  br label %4707

4707:                                             ; preds = %4728, %4706
  %4708 = load i32, ptr %272, align 4, !tbaa !9
  %4709 = icmp slt i32 %4708, 65
  br i1 %4709, label %4710, label %4731

4710:                                             ; preds = %4707
  call void @llvm.lifetime.start.p0(i64 16, ptr %279) #6
  %4711 = load i32, ptr %272, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %279, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef %4711)
          to label %4712 unwind label %4719

4712:                                             ; preds = %4710
  %4713 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %279)
          to label %4714 unwind label %4719

4714:                                             ; preds = %4712
  call void @llvm.lifetime.end.p0(i64 16, ptr %279) #6
  br i1 %4713, label %4715, label %4723

4715:                                             ; preds = %4714
  %4716 = load ptr, ptr %4, align 8, !tbaa !5
  %4717 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4716, ptr noundef @.str.4)
          to label %4718 unwind label %4589

4718:                                             ; preds = %4715
  br label %4727

4719:                                             ; preds = %4712, %4710
  %4720 = landingpad { ptr, i32 }
          cleanup
  %4721 = extractvalue { ptr, i32 } %4720, 0
  store ptr %4721, ptr %10, align 8
  %4722 = extractvalue { ptr, i32 } %4720, 1
  store i32 %4722, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %279) #6
  br label %4791

4723:                                             ; preds = %4714
  %4724 = load ptr, ptr %4, align 8, !tbaa !5
  %4725 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4724, ptr noundef @.str.5)
          to label %4726 unwind label %4589

4726:                                             ; preds = %4723
  br label %4727

4727:                                             ; preds = %4726, %4718
  br label %4728

4728:                                             ; preds = %4727
  %4729 = load i32, ptr %272, align 4, !tbaa !9
  %4730 = add nsw i32 %4729, 1
  store i32 %4730, ptr %272, align 4, !tbaa !9
  br label %4707, !llvm.loop !137

4731:                                             ; preds = %4707
  %4732 = load ptr, ptr %4, align 8, !tbaa !5
  %4733 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4732, ptr noundef @.str.3)
          to label %4734 unwind label %4589

4734:                                             ; preds = %4731
  %4735 = load ptr, ptr %4, align 8, !tbaa !5
  %4736 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4735, ptr noundef @.str.7)
          to label %4737 unwind label %4589

4737:                                             ; preds = %4734
  call void @llvm.lifetime.start.p0(i64 32, ptr %280) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %280, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef 2)
          to label %4738 unwind label %4773

4738:                                             ; preds = %4737
  %4739 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4736, ptr noundef nonnull align 8 dereferenceable(32) %280)
          to label %4740 unwind label %4777

4740:                                             ; preds = %4738
  %4741 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4739, ptr noundef @.str.3)
          to label %4742 unwind label %4777

4742:                                             ; preds = %4740
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %280) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %280) #6
  %4743 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %271, ptr noundef @.str.8)
          to label %4744 unwind label %4589

4744:                                             ; preds = %4742
  %4745 = load ptr, ptr %4, align 8, !tbaa !5
  %4746 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4745, ptr noundef @.str.7)
          to label %4747 unwind label %4589

4747:                                             ; preds = %4744
  call void @llvm.lifetime.start.p0(i64 32, ptr %281) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %281, ptr noundef nonnull align 8 dereferenceable(48) %271, i32 noundef 2)
          to label %4748 unwind label %4782

4748:                                             ; preds = %4747
  %4749 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4746, ptr noundef nonnull align 8 dereferenceable(32) %281)
          to label %4750 unwind label %4786

4750:                                             ; preds = %4748
  %4751 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4749, ptr noundef @.str.3)
          to label %4752 unwind label %4786

4752:                                             ; preds = %4750
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %281) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %281) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %272) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %271) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %271) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %269) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %269) #6
  %4753 = load ptr, ptr %4, align 8, !tbaa !5
  %4754 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4753, ptr noundef @.str.9)
  %4755 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4754, ptr noundef @.str.2)
  %4756 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4755, i32 noundef 65)
  %4757 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4756, ptr noundef @.str.2)
  %4758 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4757, i32 noundef 111)
  %4759 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4758, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %282) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %283) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %283, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %282, ptr noundef nonnull align 4 dereferenceable(20) %283, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %283) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %284) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef 0, ptr noundef null)
          to label %4760 unwind label %4793

4760:                                             ; preds = %4752
  call void @llvm.lifetime.start.p0(i64 4, ptr %285) #6
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4761

4761:                                             ; preds = %4810, %4760
  %4762 = load i32, ptr %285, align 4, !tbaa !9
  %4763 = icmp slt i32 %4762, 65
  br i1 %4763, label %4764, label %4813

4764:                                             ; preds = %4761
  call void @llvm.lifetime.start.p0(i64 16, ptr %286) #6
  %4765 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %286, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4765)
          to label %4766 unwind label %4797

4766:                                             ; preds = %4764
  %4767 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %286)
          to label %4768 unwind label %4797

4768:                                             ; preds = %4766
  call void @llvm.lifetime.end.p0(i64 16, ptr %286) #6
  br i1 %4767, label %4769, label %4805

4769:                                             ; preds = %4768
  %4770 = load ptr, ptr %4, align 8, !tbaa !5
  %4771 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4770, ptr noundef @.str.4)
          to label %4772 unwind label %4801

4772:                                             ; preds = %4769
  br label %4809

4773:                                             ; preds = %4737
  %4774 = landingpad { ptr, i32 }
          cleanup
  %4775 = extractvalue { ptr, i32 } %4774, 0
  store ptr %4775, ptr %10, align 8
  %4776 = extractvalue { ptr, i32 } %4774, 1
  store i32 %4776, ptr %11, align 4
  br label %4781

4777:                                             ; preds = %4740, %4738
  %4778 = landingpad { ptr, i32 }
          cleanup
  %4779 = extractvalue { ptr, i32 } %4778, 0
  store ptr %4779, ptr %10, align 8
  %4780 = extractvalue { ptr, i32 } %4778, 1
  store i32 %4780, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %280) #6
  br label %4781

4781:                                             ; preds = %4777, %4773
  call void @llvm.lifetime.end.p0(i64 32, ptr %280) #6
  br label %4791

4782:                                             ; preds = %4747
  %4783 = landingpad { ptr, i32 }
          cleanup
  %4784 = extractvalue { ptr, i32 } %4783, 0
  store ptr %4784, ptr %10, align 8
  %4785 = extractvalue { ptr, i32 } %4783, 1
  store i32 %4785, ptr %11, align 4
  br label %4790

4786:                                             ; preds = %4750, %4748
  %4787 = landingpad { ptr, i32 }
          cleanup
  %4788 = extractvalue { ptr, i32 } %4787, 0
  store ptr %4788, ptr %10, align 8
  %4789 = extractvalue { ptr, i32 } %4787, 1
  store i32 %4789, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %281) #6
  br label %4790

4790:                                             ; preds = %4786, %4782
  call void @llvm.lifetime.end.p0(i64 32, ptr %281) #6
  br label %4791

4791:                                             ; preds = %4790, %4781, %4719, %4702, %4675, %4674, %4633, %4616, %4589, %4585
  call void @llvm.lifetime.end.p0(i64 4, ptr %272) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %271) #6
  br label %4792

4792:                                             ; preds = %4791, %4581
  call void @llvm.lifetime.end.p0(i64 48, ptr %271) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %269) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %269) #6
  br label %5409

4793:                                             ; preds = %4752
  %4794 = landingpad { ptr, i32 }
          cleanup
  %4795 = extractvalue { ptr, i32 } %4794, 0
  store ptr %4795, ptr %10, align 8
  %4796 = extractvalue { ptr, i32 } %4794, 1
  store i32 %4796, ptr %11, align 4
  br label %5004

4797:                                             ; preds = %4766, %4764
  %4798 = landingpad { ptr, i32 }
          cleanup
  %4799 = extractvalue { ptr, i32 } %4798, 0
  store ptr %4799, ptr %10, align 8
  %4800 = extractvalue { ptr, i32 } %4798, 1
  store i32 %4800, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %286) #6
  br label %5003

4801:                                             ; preds = %4956, %4954, %4946, %4943, %4935, %4927, %4899, %4891, %4874, %4860, %4857, %4849, %4841, %4813, %4805, %4769
  %4802 = landingpad { ptr, i32 }
          cleanup
  %4803 = extractvalue { ptr, i32 } %4802, 0
  store ptr %4803, ptr %10, align 8
  %4804 = extractvalue { ptr, i32 } %4802, 1
  store i32 %4804, ptr %11, align 4
  br label %5003

4805:                                             ; preds = %4768
  %4806 = load ptr, ptr %4, align 8, !tbaa !5
  %4807 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4806, ptr noundef @.str.5)
          to label %4808 unwind label %4801

4808:                                             ; preds = %4805
  br label %4809

4809:                                             ; preds = %4808, %4772
  br label %4810

4810:                                             ; preds = %4809
  %4811 = load i32, ptr %285, align 4, !tbaa !9
  %4812 = add nsw i32 %4811, 1
  store i32 %4812, ptr %285, align 4, !tbaa !9
  br label %4761, !llvm.loop !138

4813:                                             ; preds = %4761
  %4814 = load ptr, ptr %4, align 8, !tbaa !5
  %4815 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4814, ptr noundef @.str.6)
          to label %4816 unwind label %4801

4816:                                             ; preds = %4813
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4817

4817:                                             ; preds = %4825, %4816
  %4818 = load i32, ptr %285, align 4, !tbaa !9
  %4819 = icmp slt i32 %4818, 65
  br i1 %4819, label %4820, label %4832

4820:                                             ; preds = %4817
  call void @llvm.lifetime.start.p0(i64 16, ptr %287) #6
  %4821 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %287, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4821)
          to label %4822 unwind label %4828

4822:                                             ; preds = %4820
  %4823 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %287, i1 noundef zeroext true)
          to label %4824 unwind label %4828

4824:                                             ; preds = %4822
  call void @llvm.lifetime.end.p0(i64 16, ptr %287) #6
  br label %4825

4825:                                             ; preds = %4824
  %4826 = load i32, ptr %285, align 4, !tbaa !9
  %4827 = add nsw i32 %4826, 3
  store i32 %4827, ptr %285, align 4, !tbaa !9
  br label %4817, !llvm.loop !139

4828:                                             ; preds = %4822, %4820
  %4829 = landingpad { ptr, i32 }
          cleanup
  %4830 = extractvalue { ptr, i32 } %4829, 0
  store ptr %4830, ptr %10, align 8
  %4831 = extractvalue { ptr, i32 } %4829, 1
  store i32 %4831, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %287) #6
  br label %5003

4832:                                             ; preds = %4817
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4833

4833:                                             ; preds = %4854, %4832
  %4834 = load i32, ptr %285, align 4, !tbaa !9
  %4835 = icmp slt i32 %4834, 65
  br i1 %4835, label %4836, label %4857

4836:                                             ; preds = %4833
  call void @llvm.lifetime.start.p0(i64 16, ptr %288) #6
  %4837 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4837)
          to label %4838 unwind label %4845

4838:                                             ; preds = %4836
  %4839 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %288)
          to label %4840 unwind label %4845

4840:                                             ; preds = %4838
  call void @llvm.lifetime.end.p0(i64 16, ptr %288) #6
  br i1 %4839, label %4841, label %4849

4841:                                             ; preds = %4840
  %4842 = load ptr, ptr %4, align 8, !tbaa !5
  %4843 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4842, ptr noundef @.str.4)
          to label %4844 unwind label %4801

4844:                                             ; preds = %4841
  br label %4853

4845:                                             ; preds = %4838, %4836
  %4846 = landingpad { ptr, i32 }
          cleanup
  %4847 = extractvalue { ptr, i32 } %4846, 0
  store ptr %4847, ptr %10, align 8
  %4848 = extractvalue { ptr, i32 } %4846, 1
  store i32 %4848, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %288) #6
  br label %5003

4849:                                             ; preds = %4840
  %4850 = load ptr, ptr %4, align 8, !tbaa !5
  %4851 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4850, ptr noundef @.str.5)
          to label %4852 unwind label %4801

4852:                                             ; preds = %4849
  br label %4853

4853:                                             ; preds = %4852, %4844
  br label %4854

4854:                                             ; preds = %4853
  %4855 = load i32, ptr %285, align 4, !tbaa !9
  %4856 = add nsw i32 %4855, 1
  store i32 %4856, ptr %285, align 4, !tbaa !9
  br label %4833, !llvm.loop !140

4857:                                             ; preds = %4833
  %4858 = load ptr, ptr %4, align 8, !tbaa !5
  %4859 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4858, ptr noundef @.str.3)
          to label %4860 unwind label %4801

4860:                                             ; preds = %4857
  %4861 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef 0)
          to label %4862 unwind label %4801

4862:                                             ; preds = %4860
  call void @llvm.lifetime.start.p0(i64 48, ptr %289) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fix") align 8 %289, ptr noundef nonnull align 8 dereferenceable(48) %284)
          to label %4863 unwind label %4878

4863:                                             ; preds = %4862
  %4864 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %284, ptr noundef nonnull align 8 dereferenceable(48) %289)
          to label %4865 unwind label %4882

4865:                                             ; preds = %4863
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %289) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %289) #6
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4866

4866:                                             ; preds = %4896, %4865
  %4867 = load i32, ptr %285, align 4, !tbaa !9
  %4868 = icmp slt i32 %4867, 65
  br i1 %4868, label %4869, label %4899

4869:                                             ; preds = %4866
  call void @llvm.lifetime.start.p0(i64 16, ptr %290) #6
  %4870 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %290, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4870)
          to label %4871 unwind label %4887

4871:                                             ; preds = %4869
  %4872 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %290)
          to label %4873 unwind label %4887

4873:                                             ; preds = %4871
  call void @llvm.lifetime.end.p0(i64 16, ptr %290) #6
  br i1 %4872, label %4874, label %4891

4874:                                             ; preds = %4873
  %4875 = load ptr, ptr %4, align 8, !tbaa !5
  %4876 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4875, ptr noundef @.str.4)
          to label %4877 unwind label %4801

4877:                                             ; preds = %4874
  br label %4895

4878:                                             ; preds = %4862
  %4879 = landingpad { ptr, i32 }
          cleanup
  %4880 = extractvalue { ptr, i32 } %4879, 0
  store ptr %4880, ptr %10, align 8
  %4881 = extractvalue { ptr, i32 } %4879, 1
  store i32 %4881, ptr %11, align 4
  br label %4886

4882:                                             ; preds = %4863
  %4883 = landingpad { ptr, i32 }
          cleanup
  %4884 = extractvalue { ptr, i32 } %4883, 0
  store ptr %4884, ptr %10, align 8
  %4885 = extractvalue { ptr, i32 } %4883, 1
  store i32 %4885, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %289) #6
  br label %4886

4886:                                             ; preds = %4882, %4878
  call void @llvm.lifetime.end.p0(i64 48, ptr %289) #6
  br label %5003

4887:                                             ; preds = %4871, %4869
  %4888 = landingpad { ptr, i32 }
          cleanup
  %4889 = extractvalue { ptr, i32 } %4888, 0
  store ptr %4889, ptr %10, align 8
  %4890 = extractvalue { ptr, i32 } %4888, 1
  store i32 %4890, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %290) #6
  br label %5003

4891:                                             ; preds = %4873
  %4892 = load ptr, ptr %4, align 8, !tbaa !5
  %4893 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4892, ptr noundef @.str.5)
          to label %4894 unwind label %4801

4894:                                             ; preds = %4891
  br label %4895

4895:                                             ; preds = %4894, %4877
  br label %4896

4896:                                             ; preds = %4895
  %4897 = load i32, ptr %285, align 4, !tbaa !9
  %4898 = add nsw i32 %4897, 1
  store i32 %4898, ptr %285, align 4, !tbaa !9
  br label %4866, !llvm.loop !141

4899:                                             ; preds = %4866
  %4900 = load ptr, ptr %4, align 8, !tbaa !5
  %4901 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4900, ptr noundef @.str.6)
          to label %4902 unwind label %4801

4902:                                             ; preds = %4899
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4903

4903:                                             ; preds = %4911, %4902
  %4904 = load i32, ptr %285, align 4, !tbaa !9
  %4905 = icmp slt i32 %4904, 65
  br i1 %4905, label %4906, label %4918

4906:                                             ; preds = %4903
  call void @llvm.lifetime.start.p0(i64 16, ptr %291) #6
  %4907 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %291, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4907)
          to label %4908 unwind label %4914

4908:                                             ; preds = %4906
  %4909 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %291, i1 noundef zeroext false)
          to label %4910 unwind label %4914

4910:                                             ; preds = %4908
  call void @llvm.lifetime.end.p0(i64 16, ptr %291) #6
  br label %4911

4911:                                             ; preds = %4910
  %4912 = load i32, ptr %285, align 4, !tbaa !9
  %4913 = add nsw i32 %4912, 3
  store i32 %4913, ptr %285, align 4, !tbaa !9
  br label %4903, !llvm.loop !142

4914:                                             ; preds = %4908, %4906
  %4915 = landingpad { ptr, i32 }
          cleanup
  %4916 = extractvalue { ptr, i32 } %4915, 0
  store ptr %4916, ptr %10, align 8
  %4917 = extractvalue { ptr, i32 } %4915, 1
  store i32 %4917, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %291) #6
  br label %5003

4918:                                             ; preds = %4903
  store i32 0, ptr %285, align 4, !tbaa !9
  br label %4919

4919:                                             ; preds = %4940, %4918
  %4920 = load i32, ptr %285, align 4, !tbaa !9
  %4921 = icmp slt i32 %4920, 65
  br i1 %4921, label %4922, label %4943

4922:                                             ; preds = %4919
  call void @llvm.lifetime.start.p0(i64 16, ptr %292) #6
  %4923 = load i32, ptr %285, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %292, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef %4923)
          to label %4924 unwind label %4931

4924:                                             ; preds = %4922
  %4925 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %292)
          to label %4926 unwind label %4931

4926:                                             ; preds = %4924
  call void @llvm.lifetime.end.p0(i64 16, ptr %292) #6
  br i1 %4925, label %4927, label %4935

4927:                                             ; preds = %4926
  %4928 = load ptr, ptr %4, align 8, !tbaa !5
  %4929 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4928, ptr noundef @.str.4)
          to label %4930 unwind label %4801

4930:                                             ; preds = %4927
  br label %4939

4931:                                             ; preds = %4924, %4922
  %4932 = landingpad { ptr, i32 }
          cleanup
  %4933 = extractvalue { ptr, i32 } %4932, 0
  store ptr %4933, ptr %10, align 8
  %4934 = extractvalue { ptr, i32 } %4932, 1
  store i32 %4934, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %292) #6
  br label %5003

4935:                                             ; preds = %4926
  %4936 = load ptr, ptr %4, align 8, !tbaa !5
  %4937 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4936, ptr noundef @.str.5)
          to label %4938 unwind label %4801

4938:                                             ; preds = %4935
  br label %4939

4939:                                             ; preds = %4938, %4930
  br label %4940

4940:                                             ; preds = %4939
  %4941 = load i32, ptr %285, align 4, !tbaa !9
  %4942 = add nsw i32 %4941, 1
  store i32 %4942, ptr %285, align 4, !tbaa !9
  br label %4919, !llvm.loop !143

4943:                                             ; preds = %4919
  %4944 = load ptr, ptr %4, align 8, !tbaa !5
  %4945 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4944, ptr noundef @.str.3)
          to label %4946 unwind label %4801

4946:                                             ; preds = %4943
  %4947 = load ptr, ptr %4, align 8, !tbaa !5
  %4948 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4947, ptr noundef @.str.7)
          to label %4949 unwind label %4801

4949:                                             ; preds = %4946
  call void @llvm.lifetime.start.p0(i64 32, ptr %293) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %293, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef 2)
          to label %4950 unwind label %4985

4950:                                             ; preds = %4949
  %4951 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4948, ptr noundef nonnull align 8 dereferenceable(32) %293)
          to label %4952 unwind label %4989

4952:                                             ; preds = %4950
  %4953 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4951, ptr noundef @.str.3)
          to label %4954 unwind label %4989

4954:                                             ; preds = %4952
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %293) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %293) #6
  %4955 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %284, ptr noundef @.str.8)
          to label %4956 unwind label %4801

4956:                                             ; preds = %4954
  %4957 = load ptr, ptr %4, align 8, !tbaa !5
  %4958 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4957, ptr noundef @.str.7)
          to label %4959 unwind label %4801

4959:                                             ; preds = %4956
  call void @llvm.lifetime.start.p0(i64 32, ptr %294) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %294, ptr noundef nonnull align 8 dereferenceable(48) %284, i32 noundef 2)
          to label %4960 unwind label %4994

4960:                                             ; preds = %4959
  %4961 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4958, ptr noundef nonnull align 8 dereferenceable(32) %294)
          to label %4962 unwind label %4998

4962:                                             ; preds = %4960
  %4963 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4961, ptr noundef @.str.3)
          to label %4964 unwind label %4998

4964:                                             ; preds = %4962
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %294) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %294) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %285) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %284) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %284) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %282) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %282) #6
  %4965 = load ptr, ptr %4, align 8, !tbaa !5
  %4966 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4965, ptr noundef @.str.10)
  %4967 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4966, ptr noundef @.str.2)
  %4968 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4967, i32 noundef 65)
  %4969 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4968, ptr noundef @.str.2)
  %4970 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4969, i32 noundef 111)
  %4971 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4970, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %295) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %296) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %296, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %295, ptr noundef nonnull align 4 dereferenceable(20) %296, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %296) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %297) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef 0, ptr noundef null)
          to label %4972 unwind label %5005

4972:                                             ; preds = %4964
  call void @llvm.lifetime.start.p0(i64 4, ptr %298) #6
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %4973

4973:                                             ; preds = %5022, %4972
  %4974 = load i32, ptr %298, align 4, !tbaa !9
  %4975 = icmp slt i32 %4974, 65
  br i1 %4975, label %4976, label %5025

4976:                                             ; preds = %4973
  call void @llvm.lifetime.start.p0(i64 16, ptr %299) #6
  %4977 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %299, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %4977)
          to label %4978 unwind label %5009

4978:                                             ; preds = %4976
  %4979 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %299)
          to label %4980 unwind label %5009

4980:                                             ; preds = %4978
  call void @llvm.lifetime.end.p0(i64 16, ptr %299) #6
  br i1 %4979, label %4981, label %5017

4981:                                             ; preds = %4980
  %4982 = load ptr, ptr %4, align 8, !tbaa !5
  %4983 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4982, ptr noundef @.str.4)
          to label %4984 unwind label %5013

4984:                                             ; preds = %4981
  br label %5021

4985:                                             ; preds = %4949
  %4986 = landingpad { ptr, i32 }
          cleanup
  %4987 = extractvalue { ptr, i32 } %4986, 0
  store ptr %4987, ptr %10, align 8
  %4988 = extractvalue { ptr, i32 } %4986, 1
  store i32 %4988, ptr %11, align 4
  br label %4993

4989:                                             ; preds = %4952, %4950
  %4990 = landingpad { ptr, i32 }
          cleanup
  %4991 = extractvalue { ptr, i32 } %4990, 0
  store ptr %4991, ptr %10, align 8
  %4992 = extractvalue { ptr, i32 } %4990, 1
  store i32 %4992, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %293) #6
  br label %4993

4993:                                             ; preds = %4989, %4985
  call void @llvm.lifetime.end.p0(i64 32, ptr %293) #6
  br label %5003

4994:                                             ; preds = %4959
  %4995 = landingpad { ptr, i32 }
          cleanup
  %4996 = extractvalue { ptr, i32 } %4995, 0
  store ptr %4996, ptr %10, align 8
  %4997 = extractvalue { ptr, i32 } %4995, 1
  store i32 %4997, ptr %11, align 4
  br label %5002

4998:                                             ; preds = %4962, %4960
  %4999 = landingpad { ptr, i32 }
          cleanup
  %5000 = extractvalue { ptr, i32 } %4999, 0
  store ptr %5000, ptr %10, align 8
  %5001 = extractvalue { ptr, i32 } %4999, 1
  store i32 %5001, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %294) #6
  br label %5002

5002:                                             ; preds = %4998, %4994
  call void @llvm.lifetime.end.p0(i64 32, ptr %294) #6
  br label %5003

5003:                                             ; preds = %5002, %4993, %4931, %4914, %4887, %4886, %4845, %4828, %4801, %4797
  call void @llvm.lifetime.end.p0(i64 4, ptr %285) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %284) #6
  br label %5004

5004:                                             ; preds = %5003, %4793
  call void @llvm.lifetime.end.p0(i64 48, ptr %284) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %282) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %282) #6
  br label %5409

5005:                                             ; preds = %4964
  %5006 = landingpad { ptr, i32 }
          cleanup
  %5007 = extractvalue { ptr, i32 } %5006, 0
  store ptr %5007, ptr %10, align 8
  %5008 = extractvalue { ptr, i32 } %5006, 1
  store i32 %5008, ptr %11, align 4
  br label %5216

5009:                                             ; preds = %4978, %4976
  %5010 = landingpad { ptr, i32 }
          cleanup
  %5011 = extractvalue { ptr, i32 } %5010, 0
  store ptr %5011, ptr %10, align 8
  %5012 = extractvalue { ptr, i32 } %5010, 1
  store i32 %5012, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %299) #6
  br label %5215

5013:                                             ; preds = %5168, %5166, %5158, %5155, %5147, %5139, %5111, %5103, %5086, %5072, %5069, %5061, %5053, %5025, %5017, %4981
  %5014 = landingpad { ptr, i32 }
          cleanup
  %5015 = extractvalue { ptr, i32 } %5014, 0
  store ptr %5015, ptr %10, align 8
  %5016 = extractvalue { ptr, i32 } %5014, 1
  store i32 %5016, ptr %11, align 4
  br label %5215

5017:                                             ; preds = %4980
  %5018 = load ptr, ptr %4, align 8, !tbaa !5
  %5019 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5018, ptr noundef @.str.5)
          to label %5020 unwind label %5013

5020:                                             ; preds = %5017
  br label %5021

5021:                                             ; preds = %5020, %4984
  br label %5022

5022:                                             ; preds = %5021
  %5023 = load i32, ptr %298, align 4, !tbaa !9
  %5024 = add nsw i32 %5023, 1
  store i32 %5024, ptr %298, align 4, !tbaa !9
  br label %4973, !llvm.loop !144

5025:                                             ; preds = %4973
  %5026 = load ptr, ptr %4, align 8, !tbaa !5
  %5027 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5026, ptr noundef @.str.6)
          to label %5028 unwind label %5013

5028:                                             ; preds = %5025
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %5029

5029:                                             ; preds = %5037, %5028
  %5030 = load i32, ptr %298, align 4, !tbaa !9
  %5031 = icmp slt i32 %5030, 65
  br i1 %5031, label %5032, label %5044

5032:                                             ; preds = %5029
  call void @llvm.lifetime.start.p0(i64 16, ptr %300) #6
  %5033 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %300, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %5033)
          to label %5034 unwind label %5040

5034:                                             ; preds = %5032
  %5035 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %300, i1 noundef zeroext true)
          to label %5036 unwind label %5040

5036:                                             ; preds = %5034
  call void @llvm.lifetime.end.p0(i64 16, ptr %300) #6
  br label %5037

5037:                                             ; preds = %5036
  %5038 = load i32, ptr %298, align 4, !tbaa !9
  %5039 = add nsw i32 %5038, 3
  store i32 %5039, ptr %298, align 4, !tbaa !9
  br label %5029, !llvm.loop !145

5040:                                             ; preds = %5034, %5032
  %5041 = landingpad { ptr, i32 }
          cleanup
  %5042 = extractvalue { ptr, i32 } %5041, 0
  store ptr %5042, ptr %10, align 8
  %5043 = extractvalue { ptr, i32 } %5041, 1
  store i32 %5043, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %300) #6
  br label %5215

5044:                                             ; preds = %5029
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %5045

5045:                                             ; preds = %5066, %5044
  %5046 = load i32, ptr %298, align 4, !tbaa !9
  %5047 = icmp slt i32 %5046, 65
  br i1 %5047, label %5048, label %5069

5048:                                             ; preds = %5045
  call void @llvm.lifetime.start.p0(i64 16, ptr %301) #6
  %5049 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %301, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %5049)
          to label %5050 unwind label %5057

5050:                                             ; preds = %5048
  %5051 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %301)
          to label %5052 unwind label %5057

5052:                                             ; preds = %5050
  call void @llvm.lifetime.end.p0(i64 16, ptr %301) #6
  br i1 %5051, label %5053, label %5061

5053:                                             ; preds = %5052
  %5054 = load ptr, ptr %4, align 8, !tbaa !5
  %5055 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5054, ptr noundef @.str.4)
          to label %5056 unwind label %5013

5056:                                             ; preds = %5053
  br label %5065

5057:                                             ; preds = %5050, %5048
  %5058 = landingpad { ptr, i32 }
          cleanup
  %5059 = extractvalue { ptr, i32 } %5058, 0
  store ptr %5059, ptr %10, align 8
  %5060 = extractvalue { ptr, i32 } %5058, 1
  store i32 %5060, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %301) #6
  br label %5215

5061:                                             ; preds = %5052
  %5062 = load ptr, ptr %4, align 8, !tbaa !5
  %5063 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5062, ptr noundef @.str.5)
          to label %5064 unwind label %5013

5064:                                             ; preds = %5061
  br label %5065

5065:                                             ; preds = %5064, %5056
  br label %5066

5066:                                             ; preds = %5065
  %5067 = load i32, ptr %298, align 4, !tbaa !9
  %5068 = add nsw i32 %5067, 1
  store i32 %5068, ptr %298, align 4, !tbaa !9
  br label %5045, !llvm.loop !146

5069:                                             ; preds = %5045
  %5070 = load ptr, ptr %4, align 8, !tbaa !5
  %5071 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5070, ptr noundef @.str.3)
          to label %5072 unwind label %5013

5072:                                             ; preds = %5069
  %5073 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef 0)
          to label %5074 unwind label %5013

5074:                                             ; preds = %5072
  call void @llvm.lifetime.start.p0(i64 48, ptr %302) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %302, ptr noundef nonnull align 8 dereferenceable(48) %297)
          to label %5075 unwind label %5090

5075:                                             ; preds = %5074
  %5076 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %297, ptr noundef nonnull align 8 dereferenceable(48) %302)
          to label %5077 unwind label %5094

5077:                                             ; preds = %5075
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %302) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %302) #6
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %5078

5078:                                             ; preds = %5108, %5077
  %5079 = load i32, ptr %298, align 4, !tbaa !9
  %5080 = icmp slt i32 %5079, 65
  br i1 %5080, label %5081, label %5111

5081:                                             ; preds = %5078
  call void @llvm.lifetime.start.p0(i64 16, ptr %303) #6
  %5082 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %303, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %5082)
          to label %5083 unwind label %5099

5083:                                             ; preds = %5081
  %5084 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %303)
          to label %5085 unwind label %5099

5085:                                             ; preds = %5083
  call void @llvm.lifetime.end.p0(i64 16, ptr %303) #6
  br i1 %5084, label %5086, label %5103

5086:                                             ; preds = %5085
  %5087 = load ptr, ptr %4, align 8, !tbaa !5
  %5088 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5087, ptr noundef @.str.4)
          to label %5089 unwind label %5013

5089:                                             ; preds = %5086
  br label %5107

5090:                                             ; preds = %5074
  %5091 = landingpad { ptr, i32 }
          cleanup
  %5092 = extractvalue { ptr, i32 } %5091, 0
  store ptr %5092, ptr %10, align 8
  %5093 = extractvalue { ptr, i32 } %5091, 1
  store i32 %5093, ptr %11, align 4
  br label %5098

5094:                                             ; preds = %5075
  %5095 = landingpad { ptr, i32 }
          cleanup
  %5096 = extractvalue { ptr, i32 } %5095, 0
  store ptr %5096, ptr %10, align 8
  %5097 = extractvalue { ptr, i32 } %5095, 1
  store i32 %5097, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %302) #6
  br label %5098

5098:                                             ; preds = %5094, %5090
  call void @llvm.lifetime.end.p0(i64 48, ptr %302) #6
  br label %5215

5099:                                             ; preds = %5083, %5081
  %5100 = landingpad { ptr, i32 }
          cleanup
  %5101 = extractvalue { ptr, i32 } %5100, 0
  store ptr %5101, ptr %10, align 8
  %5102 = extractvalue { ptr, i32 } %5100, 1
  store i32 %5102, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %303) #6
  br label %5215

5103:                                             ; preds = %5085
  %5104 = load ptr, ptr %4, align 8, !tbaa !5
  %5105 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5104, ptr noundef @.str.5)
          to label %5106 unwind label %5013

5106:                                             ; preds = %5103
  br label %5107

5107:                                             ; preds = %5106, %5089
  br label %5108

5108:                                             ; preds = %5107
  %5109 = load i32, ptr %298, align 4, !tbaa !9
  %5110 = add nsw i32 %5109, 1
  store i32 %5110, ptr %298, align 4, !tbaa !9
  br label %5078, !llvm.loop !147

5111:                                             ; preds = %5078
  %5112 = load ptr, ptr %4, align 8, !tbaa !5
  %5113 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5112, ptr noundef @.str.6)
          to label %5114 unwind label %5013

5114:                                             ; preds = %5111
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %5115

5115:                                             ; preds = %5123, %5114
  %5116 = load i32, ptr %298, align 4, !tbaa !9
  %5117 = icmp slt i32 %5116, 65
  br i1 %5117, label %5118, label %5130

5118:                                             ; preds = %5115
  call void @llvm.lifetime.start.p0(i64 16, ptr %304) #6
  %5119 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %304, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %5119)
          to label %5120 unwind label %5126

5120:                                             ; preds = %5118
  %5121 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %304, i1 noundef zeroext false)
          to label %5122 unwind label %5126

5122:                                             ; preds = %5120
  call void @llvm.lifetime.end.p0(i64 16, ptr %304) #6
  br label %5123

5123:                                             ; preds = %5122
  %5124 = load i32, ptr %298, align 4, !tbaa !9
  %5125 = add nsw i32 %5124, 3
  store i32 %5125, ptr %298, align 4, !tbaa !9
  br label %5115, !llvm.loop !148

5126:                                             ; preds = %5120, %5118
  %5127 = landingpad { ptr, i32 }
          cleanup
  %5128 = extractvalue { ptr, i32 } %5127, 0
  store ptr %5128, ptr %10, align 8
  %5129 = extractvalue { ptr, i32 } %5127, 1
  store i32 %5129, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %304) #6
  br label %5215

5130:                                             ; preds = %5115
  store i32 0, ptr %298, align 4, !tbaa !9
  br label %5131

5131:                                             ; preds = %5152, %5130
  %5132 = load i32, ptr %298, align 4, !tbaa !9
  %5133 = icmp slt i32 %5132, 65
  br i1 %5133, label %5134, label %5155

5134:                                             ; preds = %5131
  call void @llvm.lifetime.start.p0(i64 16, ptr %305) #6
  %5135 = load i32, ptr %298, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %305, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef %5135)
          to label %5136 unwind label %5143

5136:                                             ; preds = %5134
  %5137 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %305)
          to label %5138 unwind label %5143

5138:                                             ; preds = %5136
  call void @llvm.lifetime.end.p0(i64 16, ptr %305) #6
  br i1 %5137, label %5139, label %5147

5139:                                             ; preds = %5138
  %5140 = load ptr, ptr %4, align 8, !tbaa !5
  %5141 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5140, ptr noundef @.str.4)
          to label %5142 unwind label %5013

5142:                                             ; preds = %5139
  br label %5151

5143:                                             ; preds = %5136, %5134
  %5144 = landingpad { ptr, i32 }
          cleanup
  %5145 = extractvalue { ptr, i32 } %5144, 0
  store ptr %5145, ptr %10, align 8
  %5146 = extractvalue { ptr, i32 } %5144, 1
  store i32 %5146, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %305) #6
  br label %5215

5147:                                             ; preds = %5138
  %5148 = load ptr, ptr %4, align 8, !tbaa !5
  %5149 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5148, ptr noundef @.str.5)
          to label %5150 unwind label %5013

5150:                                             ; preds = %5147
  br label %5151

5151:                                             ; preds = %5150, %5142
  br label %5152

5152:                                             ; preds = %5151
  %5153 = load i32, ptr %298, align 4, !tbaa !9
  %5154 = add nsw i32 %5153, 1
  store i32 %5154, ptr %298, align 4, !tbaa !9
  br label %5131, !llvm.loop !149

5155:                                             ; preds = %5131
  %5156 = load ptr, ptr %4, align 8, !tbaa !5
  %5157 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5156, ptr noundef @.str.3)
          to label %5158 unwind label %5013

5158:                                             ; preds = %5155
  %5159 = load ptr, ptr %4, align 8, !tbaa !5
  %5160 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5159, ptr noundef @.str.7)
          to label %5161 unwind label %5013

5161:                                             ; preds = %5158
  call void @llvm.lifetime.start.p0(i64 32, ptr %306) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %306, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef 2)
          to label %5162 unwind label %5197

5162:                                             ; preds = %5161
  %5163 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %5160, ptr noundef nonnull align 8 dereferenceable(32) %306)
          to label %5164 unwind label %5201

5164:                                             ; preds = %5162
  %5165 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5163, ptr noundef @.str.3)
          to label %5166 unwind label %5201

5166:                                             ; preds = %5164
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %306) #6
  %5167 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %297, ptr noundef @.str.8)
          to label %5168 unwind label %5013

5168:                                             ; preds = %5166
  %5169 = load ptr, ptr %4, align 8, !tbaa !5
  %5170 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5169, ptr noundef @.str.7)
          to label %5171 unwind label %5013

5171:                                             ; preds = %5168
  call void @llvm.lifetime.start.p0(i64 32, ptr %307) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %307, ptr noundef nonnull align 8 dereferenceable(48) %297, i32 noundef 2)
          to label %5172 unwind label %5206

5172:                                             ; preds = %5171
  %5173 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %5170, ptr noundef nonnull align 8 dereferenceable(32) %307)
          to label %5174 unwind label %5210

5174:                                             ; preds = %5172
  %5175 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5173, ptr noundef @.str.3)
          to label %5176 unwind label %5210

5176:                                             ; preds = %5174
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %307) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %307) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %298) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %297) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %297) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %295) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %295) #6
  %5177 = load ptr, ptr %4, align 8, !tbaa !5
  %5178 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5177, ptr noundef @.str.11)
  %5179 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5178, ptr noundef @.str.2)
  %5180 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %5179, i32 noundef 65)
  %5181 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5180, ptr noundef @.str.2)
  %5182 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %5181, i32 noundef 111)
  %5183 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5182, ptr noundef @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr %308) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr %309) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %309, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %308, ptr noundef nonnull align 4 dereferenceable(20) %309, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr %309) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr %310) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef 0, ptr noundef null)
          to label %5184 unwind label %5217

5184:                                             ; preds = %5176
  call void @llvm.lifetime.start.p0(i64 4, ptr %311) #6
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5185

5185:                                             ; preds = %5234, %5184
  %5186 = load i32, ptr %311, align 4, !tbaa !9
  %5187 = icmp slt i32 %5186, 65
  br i1 %5187, label %5188, label %5237

5188:                                             ; preds = %5185
  call void @llvm.lifetime.start.p0(i64 16, ptr %312) #6
  %5189 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %312, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5189)
          to label %5190 unwind label %5221

5190:                                             ; preds = %5188
  %5191 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %312)
          to label %5192 unwind label %5221

5192:                                             ; preds = %5190
  call void @llvm.lifetime.end.p0(i64 16, ptr %312) #6
  br i1 %5191, label %5193, label %5229

5193:                                             ; preds = %5192
  %5194 = load ptr, ptr %4, align 8, !tbaa !5
  %5195 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5194, ptr noundef @.str.4)
          to label %5196 unwind label %5225

5196:                                             ; preds = %5193
  br label %5233

5197:                                             ; preds = %5161
  %5198 = landingpad { ptr, i32 }
          cleanup
  %5199 = extractvalue { ptr, i32 } %5198, 0
  store ptr %5199, ptr %10, align 8
  %5200 = extractvalue { ptr, i32 } %5198, 1
  store i32 %5200, ptr %11, align 4
  br label %5205

5201:                                             ; preds = %5164, %5162
  %5202 = landingpad { ptr, i32 }
          cleanup
  %5203 = extractvalue { ptr, i32 } %5202, 0
  store ptr %5203, ptr %10, align 8
  %5204 = extractvalue { ptr, i32 } %5202, 1
  store i32 %5204, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #6
  br label %5205

5205:                                             ; preds = %5201, %5197
  call void @llvm.lifetime.end.p0(i64 32, ptr %306) #6
  br label %5215

5206:                                             ; preds = %5171
  %5207 = landingpad { ptr, i32 }
          cleanup
  %5208 = extractvalue { ptr, i32 } %5207, 0
  store ptr %5208, ptr %10, align 8
  %5209 = extractvalue { ptr, i32 } %5207, 1
  store i32 %5209, ptr %11, align 4
  br label %5214

5210:                                             ; preds = %5174, %5172
  %5211 = landingpad { ptr, i32 }
          cleanup
  %5212 = extractvalue { ptr, i32 } %5211, 0
  store ptr %5212, ptr %10, align 8
  %5213 = extractvalue { ptr, i32 } %5211, 1
  store i32 %5213, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %307) #6
  br label %5214

5214:                                             ; preds = %5210, %5206
  call void @llvm.lifetime.end.p0(i64 32, ptr %307) #6
  br label %5215

5215:                                             ; preds = %5214, %5205, %5143, %5126, %5099, %5098, %5057, %5040, %5013, %5009
  call void @llvm.lifetime.end.p0(i64 4, ptr %298) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %297) #6
  br label %5216

5216:                                             ; preds = %5215, %5005
  call void @llvm.lifetime.end.p0(i64 48, ptr %297) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %295) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %295) #6
  br label %5409

5217:                                             ; preds = %5176
  %5218 = landingpad { ptr, i32 }
          cleanup
  %5219 = extractvalue { ptr, i32 } %5218, 0
  store ptr %5219, ptr %10, align 8
  %5220 = extractvalue { ptr, i32 } %5218, 1
  store i32 %5220, ptr %11, align 4
  br label %5408

5221:                                             ; preds = %5190, %5188
  %5222 = landingpad { ptr, i32 }
          cleanup
  %5223 = extractvalue { ptr, i32 } %5222, 0
  store ptr %5223, ptr %10, align 8
  %5224 = extractvalue { ptr, i32 } %5222, 1
  store i32 %5224, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %312) #6
  br label %5407

5225:                                             ; preds = %5380, %5378, %5370, %5367, %5359, %5351, %5323, %5315, %5298, %5284, %5281, %5273, %5265, %5237, %5229, %5193
  %5226 = landingpad { ptr, i32 }
          cleanup
  %5227 = extractvalue { ptr, i32 } %5226, 0
  store ptr %5227, ptr %10, align 8
  %5228 = extractvalue { ptr, i32 } %5226, 1
  store i32 %5228, ptr %11, align 4
  br label %5407

5229:                                             ; preds = %5192
  %5230 = load ptr, ptr %4, align 8, !tbaa !5
  %5231 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5230, ptr noundef @.str.5)
          to label %5232 unwind label %5225

5232:                                             ; preds = %5229
  br label %5233

5233:                                             ; preds = %5232, %5196
  br label %5234

5234:                                             ; preds = %5233
  %5235 = load i32, ptr %311, align 4, !tbaa !9
  %5236 = add nsw i32 %5235, 1
  store i32 %5236, ptr %311, align 4, !tbaa !9
  br label %5185, !llvm.loop !150

5237:                                             ; preds = %5185
  %5238 = load ptr, ptr %4, align 8, !tbaa !5
  %5239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5238, ptr noundef @.str.6)
          to label %5240 unwind label %5225

5240:                                             ; preds = %5237
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5241

5241:                                             ; preds = %5249, %5240
  %5242 = load i32, ptr %311, align 4, !tbaa !9
  %5243 = icmp slt i32 %5242, 65
  br i1 %5243, label %5244, label %5256

5244:                                             ; preds = %5241
  call void @llvm.lifetime.start.p0(i64 16, ptr %313) #6
  %5245 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %313, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5245)
          to label %5246 unwind label %5252

5246:                                             ; preds = %5244
  %5247 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %313, i1 noundef zeroext true)
          to label %5248 unwind label %5252

5248:                                             ; preds = %5246
  call void @llvm.lifetime.end.p0(i64 16, ptr %313) #6
  br label %5249

5249:                                             ; preds = %5248
  %5250 = load i32, ptr %311, align 4, !tbaa !9
  %5251 = add nsw i32 %5250, 3
  store i32 %5251, ptr %311, align 4, !tbaa !9
  br label %5241, !llvm.loop !151

5252:                                             ; preds = %5246, %5244
  %5253 = landingpad { ptr, i32 }
          cleanup
  %5254 = extractvalue { ptr, i32 } %5253, 0
  store ptr %5254, ptr %10, align 8
  %5255 = extractvalue { ptr, i32 } %5253, 1
  store i32 %5255, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %313) #6
  br label %5407

5256:                                             ; preds = %5241
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5257

5257:                                             ; preds = %5278, %5256
  %5258 = load i32, ptr %311, align 4, !tbaa !9
  %5259 = icmp slt i32 %5258, 65
  br i1 %5259, label %5260, label %5281

5260:                                             ; preds = %5257
  call void @llvm.lifetime.start.p0(i64 16, ptr %314) #6
  %5261 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %314, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5261)
          to label %5262 unwind label %5269

5262:                                             ; preds = %5260
  %5263 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %314)
          to label %5264 unwind label %5269

5264:                                             ; preds = %5262
  call void @llvm.lifetime.end.p0(i64 16, ptr %314) #6
  br i1 %5263, label %5265, label %5273

5265:                                             ; preds = %5264
  %5266 = load ptr, ptr %4, align 8, !tbaa !5
  %5267 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5266, ptr noundef @.str.4)
          to label %5268 unwind label %5225

5268:                                             ; preds = %5265
  br label %5277

5269:                                             ; preds = %5262, %5260
  %5270 = landingpad { ptr, i32 }
          cleanup
  %5271 = extractvalue { ptr, i32 } %5270, 0
  store ptr %5271, ptr %10, align 8
  %5272 = extractvalue { ptr, i32 } %5270, 1
  store i32 %5272, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %314) #6
  br label %5407

5273:                                             ; preds = %5264
  %5274 = load ptr, ptr %4, align 8, !tbaa !5
  %5275 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5274, ptr noundef @.str.5)
          to label %5276 unwind label %5225

5276:                                             ; preds = %5273
  br label %5277

5277:                                             ; preds = %5276, %5268
  br label %5278

5278:                                             ; preds = %5277
  %5279 = load i32, ptr %311, align 4, !tbaa !9
  %5280 = add nsw i32 %5279, 1
  store i32 %5280, ptr %311, align 4, !tbaa !9
  br label %5257, !llvm.loop !152

5281:                                             ; preds = %5257
  %5282 = load ptr, ptr %4, align 8, !tbaa !5
  %5283 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5282, ptr noundef @.str.3)
          to label %5284 unwind label %5225

5284:                                             ; preds = %5281
  %5285 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef 0)
          to label %5286 unwind label %5225

5286:                                             ; preds = %5284
  call void @llvm.lifetime.start.p0(i64 48, ptr %315) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_ufix") align 8 %315, ptr noundef nonnull align 8 dereferenceable(48) %310)
          to label %5287 unwind label %5302

5287:                                             ; preds = %5286
  %5288 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %310, ptr noundef nonnull align 8 dereferenceable(48) %315)
          to label %5289 unwind label %5306

5289:                                             ; preds = %5287
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %315) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %315) #6
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5290

5290:                                             ; preds = %5320, %5289
  %5291 = load i32, ptr %311, align 4, !tbaa !9
  %5292 = icmp slt i32 %5291, 65
  br i1 %5292, label %5293, label %5323

5293:                                             ; preds = %5290
  call void @llvm.lifetime.start.p0(i64 16, ptr %316) #6
  %5294 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %316, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5294)
          to label %5295 unwind label %5311

5295:                                             ; preds = %5293
  %5296 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %316)
          to label %5297 unwind label %5311

5297:                                             ; preds = %5295
  call void @llvm.lifetime.end.p0(i64 16, ptr %316) #6
  br i1 %5296, label %5298, label %5315

5298:                                             ; preds = %5297
  %5299 = load ptr, ptr %4, align 8, !tbaa !5
  %5300 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5299, ptr noundef @.str.4)
          to label %5301 unwind label %5225

5301:                                             ; preds = %5298
  br label %5319

5302:                                             ; preds = %5286
  %5303 = landingpad { ptr, i32 }
          cleanup
  %5304 = extractvalue { ptr, i32 } %5303, 0
  store ptr %5304, ptr %10, align 8
  %5305 = extractvalue { ptr, i32 } %5303, 1
  store i32 %5305, ptr %11, align 4
  br label %5310

5306:                                             ; preds = %5287
  %5307 = landingpad { ptr, i32 }
          cleanup
  %5308 = extractvalue { ptr, i32 } %5307, 0
  store ptr %5308, ptr %10, align 8
  %5309 = extractvalue { ptr, i32 } %5307, 1
  store i32 %5309, ptr %11, align 4
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %315) #6
  br label %5310

5310:                                             ; preds = %5306, %5302
  call void @llvm.lifetime.end.p0(i64 48, ptr %315) #6
  br label %5407

5311:                                             ; preds = %5295, %5293
  %5312 = landingpad { ptr, i32 }
          cleanup
  %5313 = extractvalue { ptr, i32 } %5312, 0
  store ptr %5313, ptr %10, align 8
  %5314 = extractvalue { ptr, i32 } %5312, 1
  store i32 %5314, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %316) #6
  br label %5407

5315:                                             ; preds = %5297
  %5316 = load ptr, ptr %4, align 8, !tbaa !5
  %5317 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5316, ptr noundef @.str.5)
          to label %5318 unwind label %5225

5318:                                             ; preds = %5315
  br label %5319

5319:                                             ; preds = %5318, %5301
  br label %5320

5320:                                             ; preds = %5319
  %5321 = load i32, ptr %311, align 4, !tbaa !9
  %5322 = add nsw i32 %5321, 1
  store i32 %5322, ptr %311, align 4, !tbaa !9
  br label %5290, !llvm.loop !153

5323:                                             ; preds = %5290
  %5324 = load ptr, ptr %4, align 8, !tbaa !5
  %5325 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5324, ptr noundef @.str.6)
          to label %5326 unwind label %5225

5326:                                             ; preds = %5323
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5327

5327:                                             ; preds = %5335, %5326
  %5328 = load i32, ptr %311, align 4, !tbaa !9
  %5329 = icmp slt i32 %5328, 65
  br i1 %5329, label %5330, label %5342

5330:                                             ; preds = %5327
  call void @llvm.lifetime.start.p0(i64 16, ptr %317) #6
  %5331 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %317, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5331)
          to label %5332 unwind label %5338

5332:                                             ; preds = %5330
  %5333 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %317, i1 noundef zeroext false)
          to label %5334 unwind label %5338

5334:                                             ; preds = %5332
  call void @llvm.lifetime.end.p0(i64 16, ptr %317) #6
  br label %5335

5335:                                             ; preds = %5334
  %5336 = load i32, ptr %311, align 4, !tbaa !9
  %5337 = add nsw i32 %5336, 3
  store i32 %5337, ptr %311, align 4, !tbaa !9
  br label %5327, !llvm.loop !154

5338:                                             ; preds = %5332, %5330
  %5339 = landingpad { ptr, i32 }
          cleanup
  %5340 = extractvalue { ptr, i32 } %5339, 0
  store ptr %5340, ptr %10, align 8
  %5341 = extractvalue { ptr, i32 } %5339, 1
  store i32 %5341, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %317) #6
  br label %5407

5342:                                             ; preds = %5327
  store i32 0, ptr %311, align 4, !tbaa !9
  br label %5343

5343:                                             ; preds = %5364, %5342
  %5344 = load i32, ptr %311, align 4, !tbaa !9
  %5345 = icmp slt i32 %5344, 65
  br i1 %5345, label %5346, label %5367

5346:                                             ; preds = %5343
  call void @llvm.lifetime.start.p0(i64 16, ptr %318) #6
  %5347 = load i32, ptr %311, align 4, !tbaa !9
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %318, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef %5347)
          to label %5348 unwind label %5355

5348:                                             ; preds = %5346
  %5349 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %318)
          to label %5350 unwind label %5355

5350:                                             ; preds = %5348
  call void @llvm.lifetime.end.p0(i64 16, ptr %318) #6
  br i1 %5349, label %5351, label %5359

5351:                                             ; preds = %5350
  %5352 = load ptr, ptr %4, align 8, !tbaa !5
  %5353 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5352, ptr noundef @.str.4)
          to label %5354 unwind label %5225

5354:                                             ; preds = %5351
  br label %5363

5355:                                             ; preds = %5348, %5346
  %5356 = landingpad { ptr, i32 }
          cleanup
  %5357 = extractvalue { ptr, i32 } %5356, 0
  store ptr %5357, ptr %10, align 8
  %5358 = extractvalue { ptr, i32 } %5356, 1
  store i32 %5358, ptr %11, align 4
  call void @llvm.lifetime.end.p0(i64 16, ptr %318) #6
  br label %5407

5359:                                             ; preds = %5350
  %5360 = load ptr, ptr %4, align 8, !tbaa !5
  %5361 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5360, ptr noundef @.str.5)
          to label %5362 unwind label %5225

5362:                                             ; preds = %5359
  br label %5363

5363:                                             ; preds = %5362, %5354
  br label %5364

5364:                                             ; preds = %5363
  %5365 = load i32, ptr %311, align 4, !tbaa !9
  %5366 = add nsw i32 %5365, 1
  store i32 %5366, ptr %311, align 4, !tbaa !9
  br label %5343, !llvm.loop !155

5367:                                             ; preds = %5343
  %5368 = load ptr, ptr %4, align 8, !tbaa !5
  %5369 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5368, ptr noundef @.str.3)
          to label %5370 unwind label %5225

5370:                                             ; preds = %5367
  %5371 = load ptr, ptr %4, align 8, !tbaa !5
  %5372 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5371, ptr noundef @.str.7)
          to label %5373 unwind label %5225

5373:                                             ; preds = %5370
  call void @llvm.lifetime.start.p0(i64 32, ptr %319) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %319, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef 2)
          to label %5374 unwind label %5389

5374:                                             ; preds = %5373
  %5375 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %5372, ptr noundef nonnull align 8 dereferenceable(32) %319)
          to label %5376 unwind label %5393

5376:                                             ; preds = %5374
  %5377 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5375, ptr noundef @.str.3)
          to label %5378 unwind label %5393

5378:                                             ; preds = %5376
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %319) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %319) #6
  %5379 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %310, ptr noundef @.str.8)
          to label %5380 unwind label %5225

5380:                                             ; preds = %5378
  %5381 = load ptr, ptr %4, align 8, !tbaa !5
  %5382 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5381, ptr noundef @.str.7)
          to label %5383 unwind label %5225

5383:                                             ; preds = %5380
  call void @llvm.lifetime.start.p0(i64 32, ptr %320) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %320, ptr noundef nonnull align 8 dereferenceable(48) %310, i32 noundef 2)
          to label %5384 unwind label %5398

5384:                                             ; preds = %5383
  %5385 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %5382, ptr noundef nonnull align 8 dereferenceable(32) %320)
          to label %5386 unwind label %5402

5386:                                             ; preds = %5384
  %5387 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5385, ptr noundef @.str.3)
          to label %5388 unwind label %5402

5388:                                             ; preds = %5386
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %320) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr %320) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %311) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %310) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr %310) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %308) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %308) #6
  ret void

5389:                                             ; preds = %5373
  %5390 = landingpad { ptr, i32 }
          cleanup
  %5391 = extractvalue { ptr, i32 } %5390, 0
  store ptr %5391, ptr %10, align 8
  %5392 = extractvalue { ptr, i32 } %5390, 1
  store i32 %5392, ptr %11, align 4
  br label %5397

5393:                                             ; preds = %5376, %5374
  %5394 = landingpad { ptr, i32 }
          cleanup
  %5395 = extractvalue { ptr, i32 } %5394, 0
  store ptr %5395, ptr %10, align 8
  %5396 = extractvalue { ptr, i32 } %5394, 1
  store i32 %5396, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %319) #6
  br label %5397

5397:                                             ; preds = %5393, %5389
  call void @llvm.lifetime.end.p0(i64 32, ptr %319) #6
  br label %5407

5398:                                             ; preds = %5383
  %5399 = landingpad { ptr, i32 }
          cleanup
  %5400 = extractvalue { ptr, i32 } %5399, 0
  store ptr %5400, ptr %10, align 8
  %5401 = extractvalue { ptr, i32 } %5399, 1
  store i32 %5401, ptr %11, align 4
  br label %5406

5402:                                             ; preds = %5386, %5384
  %5403 = landingpad { ptr, i32 }
          cleanup
  %5404 = extractvalue { ptr, i32 } %5403, 0
  store ptr %5404, ptr %10, align 8
  %5405 = extractvalue { ptr, i32 } %5403, 1
  store i32 %5405, ptr %11, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %320) #6
  br label %5406

5406:                                             ; preds = %5402, %5398
  call void @llvm.lifetime.end.p0(i64 32, ptr %320) #6
  br label %5407

5407:                                             ; preds = %5406, %5397, %5355, %5338, %5311, %5310, %5269, %5252, %5225, %5221
  call void @llvm.lifetime.end.p0(i64 4, ptr %311) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %310) #6
  br label %5408

5408:                                             ; preds = %5407, %5217
  call void @llvm.lifetime.end.p0(i64 48, ptr %310) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %308) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr %308) #6
  br label %5409

5409:                                             ; preds = %5408, %5216, %5004, %4792, %4580, %4368, %4156, %3944, %3732, %3520, %3308, %3096, %2884, %2672, %2460, %2248, %2036, %1824, %1612, %1400, %1188, %976, %764, %552
  %5410 = load ptr, ptr %10, align 8
  %5411 = load i32, ptr %11, align 4
  %5412 = insertvalue { ptr, i32 } poison, ptr %5410, 0
  %5413 = insertvalue { ptr, i32 } %5412, i32 %5411, 1
  resume { ptr, i32 } %5413
}

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

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) #2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20), i32 noundef, i32 noundef) unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8, ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12)) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12), i1 noundef zeroext) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_fix") align 8, ptr noundef nonnull align 8 dereferenceable(48)) #1 align 2

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

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

declare void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #2

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_ufix") align 8, ptr noundef nonnull align 8 dereferenceable(48)) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) #1 align 2

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = distinct !{!11, !12}
!12 = !{!"llvm.loop.mustprogress"}
!13 = distinct !{!13, !12}
!14 = distinct !{!14, !12}
!15 = distinct !{!15, !12}
!16 = distinct !{!16, !12}
!17 = distinct !{!17, !12}
!18 = distinct !{!18, !12}
!19 = distinct !{!19, !12}
!20 = distinct !{!20, !12}
!21 = distinct !{!21, !12}
!22 = distinct !{!22, !12}
!23 = distinct !{!23, !12}
!24 = distinct !{!24, !12}
!25 = distinct !{!25, !12}
!26 = distinct !{!26, !12}
!27 = distinct !{!27, !12}
!28 = distinct !{!28, !12}
!29 = distinct !{!29, !12}
!30 = distinct !{!30, !12}
!31 = distinct !{!31, !12}
!32 = distinct !{!32, !12}
!33 = distinct !{!33, !12}
!34 = distinct !{!34, !12}
!35 = distinct !{!35, !12}
!36 = distinct !{!36, !12}
!37 = distinct !{!37, !12}
!38 = distinct !{!38, !12}
!39 = distinct !{!39, !12}
!40 = distinct !{!40, !12}
!41 = distinct !{!41, !12}
!42 = distinct !{!42, !12}
!43 = distinct !{!43, !12}
!44 = distinct !{!44, !12}
!45 = distinct !{!45, !12}
!46 = distinct !{!46, !12}
!47 = distinct !{!47, !12}
!48 = distinct !{!48, !12}
!49 = distinct !{!49, !12}
!50 = distinct !{!50, !12}
!51 = distinct !{!51, !12}
!52 = distinct !{!52, !12}
!53 = distinct !{!53, !12}
!54 = distinct !{!54, !12}
!55 = distinct !{!55, !12}
!56 = distinct !{!56, !12}
!57 = distinct !{!57, !12}
!58 = distinct !{!58, !12}
!59 = distinct !{!59, !12}
!60 = distinct !{!60, !12}
!61 = distinct !{!61, !12}
!62 = distinct !{!62, !12}
!63 = distinct !{!63, !12}
!64 = distinct !{!64, !12}
!65 = distinct !{!65, !12}
!66 = distinct !{!66, !12}
!67 = distinct !{!67, !12}
!68 = distinct !{!68, !12}
!69 = distinct !{!69, !12}
!70 = distinct !{!70, !12}
!71 = distinct !{!71, !12}
!72 = distinct !{!72, !12}
!73 = distinct !{!73, !12}
!74 = distinct !{!74, !12}
!75 = distinct !{!75, !12}
!76 = distinct !{!76, !12}
!77 = distinct !{!77, !12}
!78 = distinct !{!78, !12}
!79 = distinct !{!79, !12}
!80 = distinct !{!80, !12}
!81 = distinct !{!81, !12}
!82 = distinct !{!82, !12}
!83 = distinct !{!83, !12}
!84 = distinct !{!84, !12}
!85 = distinct !{!85, !12}
!86 = distinct !{!86, !12}
!87 = distinct !{!87, !12}
!88 = distinct !{!88, !12}
!89 = distinct !{!89, !12}
!90 = distinct !{!90, !12}
!91 = distinct !{!91, !12}
!92 = distinct !{!92, !12}
!93 = distinct !{!93, !12}
!94 = distinct !{!94, !12}
!95 = distinct !{!95, !12}
!96 = distinct !{!96, !12}
!97 = distinct !{!97, !12}
!98 = distinct !{!98, !12}
!99 = distinct !{!99, !12}
!100 = distinct !{!100, !12}
!101 = distinct !{!101, !12}
!102 = distinct !{!102, !12}
!103 = distinct !{!103, !12}
!104 = distinct !{!104, !12}
!105 = distinct !{!105, !12}
!106 = distinct !{!106, !12}
!107 = distinct !{!107, !12}
!108 = distinct !{!108, !12}
!109 = distinct !{!109, !12}
!110 = distinct !{!110, !12}
!111 = distinct !{!111, !12}
!112 = distinct !{!112, !12}
!113 = distinct !{!113, !12}
!114 = distinct !{!114, !12}
!115 = distinct !{!115, !12}
!116 = distinct !{!116, !12}
!117 = distinct !{!117, !12}
!118 = distinct !{!118, !12}
!119 = distinct !{!119, !12}
!120 = distinct !{!120, !12}
!121 = distinct !{!121, !12}
!122 = distinct !{!122, !12}
!123 = distinct !{!123, !12}
!124 = distinct !{!124, !12}
!125 = distinct !{!125, !12}
!126 = distinct !{!126, !12}
!127 = distinct !{!127, !12}
!128 = distinct !{!128, !12}
!129 = distinct !{!129, !12}
!130 = distinct !{!130, !12}
!131 = distinct !{!131, !12}
!132 = distinct !{!132, !12}
!133 = distinct !{!133, !12}
!134 = distinct !{!134, !12}
!135 = distinct !{!135, !12}
!136 = distinct !{!136, !12}
!137 = distinct !{!137, !12}
!138 = distinct !{!138, !12}
!139 = distinct !{!139, !12}
!140 = distinct !{!140, !12}
!141 = distinct !{!141, !12}
!142 = distinct !{!142, !12}
!143 = distinct !{!143, !12}
!144 = distinct !{!144, !12}
!145 = distinct !{!145, !12}
!146 = distinct !{!146, !12}
!147 = distinct !{!147, !12}
!148 = distinct !{!148, !12}
!149 = distinct !{!149, !12}
!150 = distinct !{!150, !12}
!151 = distinct !{!151, !12}
!152 = distinct !{!152, !12}
!153 = distinct !{!153, !12}
!154 = distinct !{!154, !12}
!155 = distinct !{!155, !12}


; 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.sc_dt::sc_context" = type { %"class.sc_dt::sc_fxtype_params", ptr, ptr }
%"class.sc_dt::sc_fxtype_params" = type { i32, i32, i32, i32, i32 }
%"class.sc_dt::sc_fix" = type { %"class.sc_dt::sc_fxnum" }
%"class.sc_dt::sc_fxnum" = type { ptr, %"class.sc_dt::scfx_params", i8, i8, ptr }
%"class.sc_dt::scfx_params" = type { %"class.sc_dt::sc_fxtype_params", i32, %"class.sc_dt::sc_fxcast_switch" }
%"class.sc_dt::sc_fxcast_switch" = type { i32 }
%"class.sc_dt::sc_fxnum_bitref" = type <{ ptr, i32, [4 x i8] }>
%"class.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.sc_dt::sc_fixed" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufix" = type { %"class.sc_dt::sc_fxnum" }
%"class.sc_dt::sc_ufixed" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.0" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.1" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.2" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.3" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.4" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.5" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.6" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.7" = type { %"class.sc_dt::sc_ufix" }
%"class.sc_dt::sc_fixed.8" = type { %"class.sc_dt::sc_fix" }
%"class.sc_dt::sc_ufixed.9" = type { %"class.sc_dt::sc_ufix" }

@.str = external hidden unnamed_addr constant [9 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [5 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [8 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [12 x i8], align 1

; Function Attrs: mustprogress uwtable
define dso_local void @_Z8test_bitRSoii(ptr noundef nonnull align 8 dereferenceable(8) %0, i32 noundef %1, i32 noundef %2) local_unnamed_addr #0 personality ptr @__gxx_personality_v0 {
  %4 = alloca %"class.sc_dt::sc_context", align 8
  %5 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %6 = alloca %"class.sc_dt::sc_fix", align 8
  %7 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %8 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %9 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %10 = alloca %"class.sc_dt::sc_fix", align 8
  %11 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %12 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %13 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca %"class.std::__cxx11::basic_string", align 8
  %16 = alloca %"class.sc_dt::sc_context", align 8
  %17 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %18 = alloca %"class.sc_dt::sc_fixed", align 8
  %19 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %20 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %21 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %22 = alloca %"class.sc_dt::sc_fix", align 8
  %23 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %24 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %25 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.sc_dt::sc_context", align 8
  %29 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %30 = alloca %"class.sc_dt::sc_ufix", align 8
  %31 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %32 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %33 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %34 = alloca %"class.sc_dt::sc_ufix", align 8
  %35 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %36 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %37 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca %"class.sc_dt::sc_context", align 8
  %41 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %42 = alloca %"class.sc_dt::sc_ufixed", align 8
  %43 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %44 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %45 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %46 = alloca %"class.sc_dt::sc_ufix", align 8
  %47 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %48 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %49 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.sc_dt::sc_context", align 8
  %53 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %54 = alloca %"class.sc_dt::sc_fix", align 8
  %55 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %56 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %57 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %58 = alloca %"class.sc_dt::sc_fix", align 8
  %59 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %60 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %61 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.sc_dt::sc_context", align 8
  %65 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %66 = alloca %"class.sc_dt::sc_fixed.0", align 8
  %67 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %68 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %69 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %70 = alloca %"class.sc_dt::sc_fix", align 8
  %71 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %72 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %73 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.sc_dt::sc_context", align 8
  %77 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %78 = alloca %"class.sc_dt::sc_ufix", align 8
  %79 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %80 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %81 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %82 = alloca %"class.sc_dt::sc_ufix", align 8
  %83 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %84 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %85 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %86 = alloca %"class.std::__cxx11::basic_string", align 8
  %87 = alloca %"class.std::__cxx11::basic_string", align 8
  %88 = alloca %"class.sc_dt::sc_context", align 8
  %89 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %90 = alloca %"class.sc_dt::sc_ufixed.1", align 8
  %91 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %92 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %93 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %94 = alloca %"class.sc_dt::sc_ufix", align 8
  %95 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %96 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %97 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca %"class.std::__cxx11::basic_string", align 8
  %100 = alloca %"class.sc_dt::sc_context", align 8
  %101 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %102 = alloca %"class.sc_dt::sc_fix", align 8
  %103 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %104 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %105 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %106 = alloca %"class.sc_dt::sc_fix", align 8
  %107 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %108 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %109 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %110 = alloca %"class.std::__cxx11::basic_string", align 8
  %111 = alloca %"class.std::__cxx11::basic_string", align 8
  %112 = alloca %"class.sc_dt::sc_context", align 8
  %113 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %114 = alloca %"class.sc_dt::sc_fixed.2", align 8
  %115 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %116 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %117 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %118 = alloca %"class.sc_dt::sc_fix", align 8
  %119 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %120 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %121 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %122 = alloca %"class.std::__cxx11::basic_string", align 8
  %123 = alloca %"class.std::__cxx11::basic_string", align 8
  %124 = alloca %"class.sc_dt::sc_context", align 8
  %125 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %126 = alloca %"class.sc_dt::sc_ufix", align 8
  %127 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %128 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %129 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %130 = alloca %"class.sc_dt::sc_ufix", align 8
  %131 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %132 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %133 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %134 = alloca %"class.std::__cxx11::basic_string", align 8
  %135 = alloca %"class.std::__cxx11::basic_string", align 8
  %136 = alloca %"class.sc_dt::sc_context", align 8
  %137 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %138 = alloca %"class.sc_dt::sc_ufixed.3", align 8
  %139 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %140 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %141 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %142 = alloca %"class.sc_dt::sc_ufix", align 8
  %143 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %144 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %145 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %146 = alloca %"class.std::__cxx11::basic_string", align 8
  %147 = alloca %"class.std::__cxx11::basic_string", align 8
  %148 = alloca %"class.sc_dt::sc_context", align 8
  %149 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %150 = alloca %"class.sc_dt::sc_fix", align 8
  %151 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %152 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %153 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %154 = alloca %"class.sc_dt::sc_fix", align 8
  %155 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %156 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %157 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %158 = alloca %"class.std::__cxx11::basic_string", align 8
  %159 = alloca %"class.std::__cxx11::basic_string", align 8
  %160 = alloca %"class.sc_dt::sc_context", align 8
  %161 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %162 = alloca %"class.sc_dt::sc_fixed.4", align 8
  %163 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %164 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %165 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %166 = alloca %"class.sc_dt::sc_fix", align 8
  %167 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %168 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %169 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %170 = alloca %"class.std::__cxx11::basic_string", align 8
  %171 = alloca %"class.std::__cxx11::basic_string", align 8
  %172 = alloca %"class.sc_dt::sc_context", align 8
  %173 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %174 = alloca %"class.sc_dt::sc_ufix", align 8
  %175 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %176 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %177 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %178 = alloca %"class.sc_dt::sc_ufix", align 8
  %179 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %180 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %181 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %182 = alloca %"class.std::__cxx11::basic_string", align 8
  %183 = alloca %"class.std::__cxx11::basic_string", align 8
  %184 = alloca %"class.sc_dt::sc_context", align 8
  %185 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %186 = alloca %"class.sc_dt::sc_ufixed.5", align 8
  %187 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %188 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %189 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %190 = alloca %"class.sc_dt::sc_ufix", align 8
  %191 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %192 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %193 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %194 = alloca %"class.std::__cxx11::basic_string", align 8
  %195 = alloca %"class.std::__cxx11::basic_string", align 8
  %196 = alloca %"class.sc_dt::sc_context", align 8
  %197 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %198 = alloca %"class.sc_dt::sc_fix", align 8
  %199 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %200 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %201 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %202 = alloca %"class.sc_dt::sc_fix", align 8
  %203 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %204 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %205 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %206 = alloca %"class.std::__cxx11::basic_string", align 8
  %207 = alloca %"class.std::__cxx11::basic_string", align 8
  %208 = alloca %"class.sc_dt::sc_context", align 8
  %209 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %210 = alloca %"class.sc_dt::sc_fixed.6", align 8
  %211 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %212 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %213 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %214 = alloca %"class.sc_dt::sc_fix", align 8
  %215 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %216 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %217 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %218 = alloca %"class.std::__cxx11::basic_string", align 8
  %219 = alloca %"class.std::__cxx11::basic_string", align 8
  %220 = alloca %"class.sc_dt::sc_context", align 8
  %221 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %222 = alloca %"class.sc_dt::sc_ufix", align 8
  %223 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %224 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %225 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %226 = alloca %"class.sc_dt::sc_ufix", align 8
  %227 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %228 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %229 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %230 = alloca %"class.std::__cxx11::basic_string", align 8
  %231 = alloca %"class.std::__cxx11::basic_string", align 8
  %232 = alloca %"class.sc_dt::sc_context", align 8
  %233 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %234 = alloca %"class.sc_dt::sc_ufixed.7", align 8
  %235 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %236 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %237 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %238 = alloca %"class.sc_dt::sc_ufix", align 8
  %239 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %240 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %241 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %242 = alloca %"class.std::__cxx11::basic_string", align 8
  %243 = alloca %"class.std::__cxx11::basic_string", align 8
  %244 = alloca %"class.sc_dt::sc_context", align 8
  %245 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %246 = alloca %"class.sc_dt::sc_fix", align 8
  %247 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %248 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %249 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %250 = alloca %"class.sc_dt::sc_fix", align 8
  %251 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %252 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %253 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %254 = alloca %"class.std::__cxx11::basic_string", align 8
  %255 = alloca %"class.std::__cxx11::basic_string", align 8
  %256 = alloca %"class.sc_dt::sc_context", align 8
  %257 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %258 = alloca %"class.sc_dt::sc_fixed.8", align 8
  %259 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %260 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %261 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %262 = alloca %"class.sc_dt::sc_fix", align 8
  %263 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %264 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %265 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %266 = alloca %"class.std::__cxx11::basic_string", align 8
  %267 = alloca %"class.std::__cxx11::basic_string", align 8
  %268 = alloca %"class.sc_dt::sc_context", align 8
  %269 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %270 = alloca %"class.sc_dt::sc_ufix", align 8
  %271 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %272 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %273 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %274 = alloca %"class.sc_dt::sc_ufix", align 8
  %275 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %276 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %277 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %278 = alloca %"class.std::__cxx11::basic_string", align 8
  %279 = alloca %"class.std::__cxx11::basic_string", align 8
  %280 = alloca %"class.sc_dt::sc_context", align 8
  %281 = alloca %"class.sc_dt::sc_fxtype_params", align 4
  %282 = alloca %"class.sc_dt::sc_ufixed.9", align 8
  %283 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %284 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %285 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %286 = alloca %"class.sc_dt::sc_ufix", align 8
  %287 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %288 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %289 = alloca %"class.sc_dt::sc_fxnum_bitref", align 8
  %290 = alloca %"class.std::__cxx11::basic_string", align 8
  %291 = alloca %"class.std::__cxx11::basic_string", align 8
  %292 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %293 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %292, ptr noundef nonnull @.str.2)
  %294 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %293, i32 noundef 13)
  %295 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %294, ptr noundef nonnull @.str.2)
  %296 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %295, i32 noundef 13)
  %297 = tail call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %296, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %4) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %5) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %5, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %4, ptr noundef nonnull align 4 dereferenceable(20) %5, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %5) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %6) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0, ptr noundef null)
          to label %.preheader1673.preheader unwind label %302

.preheader1673.preheader:                         ; preds = %3
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %298 unwind label %304

298:                                              ; preds = %.preheader1673.preheader
  %299 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1918 unwind label %304

.invoke1918:                                      ; preds = %298
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %300 = select i1 %299, ptr @.str.4, ptr @.str.5
  %301 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %300)
          to label %.preheader1673.1 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

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

304:                                              ; preds = %339, %.preheader1673.12, %336, %.preheader1673.11, %333, %.preheader1673.10, %330, %.preheader1673.9, %327, %.preheader1673.8, %324, %.preheader1673.7, %321, %.preheader1673.6, %318, %.preheader1673.5, %315, %.preheader1673.4, %312, %.preheader1673.3, %309, %.preheader1673.2, %306, %.preheader1673.1, %298, %.preheader1673.preheader
  %305 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  br label %.loopexit.split-lp1662

.loopexit1661:                                    ; preds = %.invoke1879, %.invoke1878, %.invoke1877, %.invoke1876, %.invoke1875, %.invoke1874, %.invoke1873, %.invoke1872, %.invoke1871, %.invoke1870, %.invoke1869, %.invoke1868, %.invoke
  %lpad.loopexit1663 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1662

.loopexit.split-lp1662.loopexit:                  ; preds = %.invoke1892, %.invoke1891, %.invoke1890, %.invoke1889, %.invoke1888, %.invoke1887, %.invoke1886, %.invoke1885, %.invoke1884, %.invoke1883, %.invoke1882, %.invoke1881, %.invoke1880
  %lpad.loopexit1666 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1662

.loopexit.split-lp1662.loopexit.split-lp.loopexit: ; preds = %.invoke1905, %.invoke1904, %.invoke1903, %.invoke1902, %.invoke1901, %.invoke1900, %.invoke1899, %.invoke1898, %.invoke1897, %.invoke1896, %.invoke1895, %.invoke1894, %.invoke1893
  %lpad.loopexit1670 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1662

.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke1918, %.invoke1917, %.invoke1916, %.invoke1915, %.invoke1914, %.invoke1913, %.invoke1912, %.invoke1911, %.invoke1910, %.invoke1909, %.invoke1908, %.invoke1907, %.invoke1906
  %lpad.loopexit1674 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1662

.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %529, %527, %520, %518, %463, %399, %397, %342
  %lpad.loopexit.split-lp1675 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1662

.preheader1673.1:                                 ; preds = %.invoke1918
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 1)
          to label %306 unwind label %304

306:                                              ; preds = %.preheader1673.1
  %307 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1917 unwind label %304

.invoke1917:                                      ; preds = %306
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.5 = select i1 %307, ptr @.str.4, ptr @.str.5
  %308 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.5)
          to label %.preheader1673.2 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.2:                                 ; preds = %.invoke1917
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %309 unwind label %304

309:                                              ; preds = %.preheader1673.2
  %310 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1916 unwind label %304

.invoke1916:                                      ; preds = %309
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51919 = select i1 %310, ptr @.str.4, ptr @.str.5
  %311 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51919)
          to label %.preheader1673.3 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.3:                                 ; preds = %.invoke1916
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %312 unwind label %304

312:                                              ; preds = %.preheader1673.3
  %313 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1915 unwind label %304

.invoke1915:                                      ; preds = %312
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51920 = select i1 %313, ptr @.str.4, ptr @.str.5
  %314 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51920)
          to label %.preheader1673.4 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.4:                                 ; preds = %.invoke1915
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 4)
          to label %315 unwind label %304

315:                                              ; preds = %.preheader1673.4
  %316 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1914 unwind label %304

.invoke1914:                                      ; preds = %315
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51921 = select i1 %316, ptr @.str.4, ptr @.str.5
  %317 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51921)
          to label %.preheader1673.5 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.5:                                 ; preds = %.invoke1914
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 5)
          to label %318 unwind label %304

318:                                              ; preds = %.preheader1673.5
  %319 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1913 unwind label %304

.invoke1913:                                      ; preds = %318
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51922 = select i1 %319, ptr @.str.4, ptr @.str.5
  %320 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51922)
          to label %.preheader1673.6 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.6:                                 ; preds = %.invoke1913
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %321 unwind label %304

321:                                              ; preds = %.preheader1673.6
  %322 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1912 unwind label %304

.invoke1912:                                      ; preds = %321
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51923 = select i1 %322, ptr @.str.4, ptr @.str.5
  %323 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51923)
          to label %.preheader1673.7 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.7:                                 ; preds = %.invoke1912
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 7)
          to label %324 unwind label %304

324:                                              ; preds = %.preheader1673.7
  %325 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1911 unwind label %304

.invoke1911:                                      ; preds = %324
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51924 = select i1 %325, ptr @.str.4, ptr @.str.5
  %326 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51924)
          to label %.preheader1673.8 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.8:                                 ; preds = %.invoke1911
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 8)
          to label %327 unwind label %304

327:                                              ; preds = %.preheader1673.8
  %328 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1910 unwind label %304

.invoke1910:                                      ; preds = %327
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51925 = select i1 %328, ptr @.str.4, ptr @.str.5
  %329 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51925)
          to label %.preheader1673.9 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.9:                                 ; preds = %.invoke1910
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %330 unwind label %304

330:                                              ; preds = %.preheader1673.9
  %331 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1909 unwind label %304

.invoke1909:                                      ; preds = %330
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51926 = select i1 %331, ptr @.str.4, ptr @.str.5
  %332 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51926)
          to label %.preheader1673.10 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.10:                                ; preds = %.invoke1909
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 10)
          to label %333 unwind label %304

333:                                              ; preds = %.preheader1673.10
  %334 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1908 unwind label %304

.invoke1908:                                      ; preds = %333
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51927 = select i1 %334, ptr @.str.4, ptr @.str.5
  %335 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51927)
          to label %.preheader1673.11 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.11:                                ; preds = %.invoke1908
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 11)
          to label %336 unwind label %304

336:                                              ; preds = %.preheader1673.11
  %337 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1907 unwind label %304

.invoke1907:                                      ; preds = %336
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51928 = select i1 %337, ptr @.str.4, ptr @.str.5
  %338 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51928)
          to label %.preheader1673.12 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1673.12:                                ; preds = %.invoke1907
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %7, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %339 unwind label %304

339:                                              ; preds = %.preheader1673.12
  %340 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %7)
          to label %.invoke1906 unwind label %304

.invoke1906:                                      ; preds = %339
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #6
  %.str.4..str.51929 = select i1 %340, ptr @.str.4, ptr @.str.5
  %341 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51929)
          to label %342 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit

342:                                              ; preds = %.invoke1906
  %343 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1672.preheader unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1672.preheader:                         ; preds = %342
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %8, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %344 unwind label %354

344:                                              ; preds = %.preheader1672.preheader
  %345 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %8, i1 noundef zeroext true)
          to label %.preheader1672.1 unwind label %354

.preheader1672.1:                                 ; preds = %344
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %8, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %346 unwind label %354

346:                                              ; preds = %.preheader1672.1
  %347 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %8, i1 noundef zeroext true)
          to label %.preheader1672.2 unwind label %354

.preheader1672.2:                                 ; preds = %346
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %8, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %348 unwind label %354

348:                                              ; preds = %.preheader1672.2
  %349 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %8, i1 noundef zeroext true)
          to label %.preheader1672.3 unwind label %354

.preheader1672.3:                                 ; preds = %348
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %8, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %350 unwind label %354

350:                                              ; preds = %.preheader1672.3
  %351 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %8, i1 noundef zeroext true)
          to label %.preheader1672.4 unwind label %354

.preheader1672.4:                                 ; preds = %350
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %8) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %8, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %352 unwind label %354

352:                                              ; preds = %.preheader1672.4
  %353 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %8, i1 noundef zeroext true)
          to label %.preheader1669.preheader unwind label %354

.preheader1669.preheader:                         ; preds = %352
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %356 unwind label %359

354:                                              ; preds = %352, %.preheader1672.4, %350, %.preheader1672.3, %348, %.preheader1672.2, %346, %.preheader1672.1, %344, %.preheader1672.preheader
  %355 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %8) #6
  br label %.loopexit.split-lp1662

356:                                              ; preds = %.preheader1669.preheader
  %357 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1905 unwind label %359

.invoke1905:                                      ; preds = %356
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51930 = select i1 %357, ptr @.str.4, ptr @.str.5
  %358 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51930)
          to label %.preheader1669.1 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

359:                                              ; preds = %394, %.preheader1669.12, %391, %.preheader1669.11, %388, %.preheader1669.10, %385, %.preheader1669.9, %382, %.preheader1669.8, %379, %.preheader1669.7, %376, %.preheader1669.6, %373, %.preheader1669.5, %370, %.preheader1669.4, %367, %.preheader1669.3, %364, %.preheader1669.2, %361, %.preheader1669.1, %356, %.preheader1669.preheader
  %360 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  br label %.loopexit.split-lp1662

.preheader1669.1:                                 ; preds = %.invoke1905
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 1)
          to label %361 unwind label %359

361:                                              ; preds = %.preheader1669.1
  %362 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1904 unwind label %359

.invoke1904:                                      ; preds = %361
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51931 = select i1 %362, ptr @.str.4, ptr @.str.5
  %363 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51931)
          to label %.preheader1669.2 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.2:                                 ; preds = %.invoke1904
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %364 unwind label %359

364:                                              ; preds = %.preheader1669.2
  %365 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1903 unwind label %359

.invoke1903:                                      ; preds = %364
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51932 = select i1 %365, ptr @.str.4, ptr @.str.5
  %366 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51932)
          to label %.preheader1669.3 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.3:                                 ; preds = %.invoke1903
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %367 unwind label %359

367:                                              ; preds = %.preheader1669.3
  %368 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1902 unwind label %359

.invoke1902:                                      ; preds = %367
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51933 = select i1 %368, ptr @.str.4, ptr @.str.5
  %369 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51933)
          to label %.preheader1669.4 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.4:                                 ; preds = %.invoke1902
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 4)
          to label %370 unwind label %359

370:                                              ; preds = %.preheader1669.4
  %371 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1901 unwind label %359

.invoke1901:                                      ; preds = %370
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51934 = select i1 %371, ptr @.str.4, ptr @.str.5
  %372 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51934)
          to label %.preheader1669.5 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.5:                                 ; preds = %.invoke1901
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 5)
          to label %373 unwind label %359

373:                                              ; preds = %.preheader1669.5
  %374 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1900 unwind label %359

.invoke1900:                                      ; preds = %373
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51935 = select i1 %374, ptr @.str.4, ptr @.str.5
  %375 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51935)
          to label %.preheader1669.6 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.6:                                 ; preds = %.invoke1900
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %376 unwind label %359

376:                                              ; preds = %.preheader1669.6
  %377 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1899 unwind label %359

.invoke1899:                                      ; preds = %376
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51936 = select i1 %377, ptr @.str.4, ptr @.str.5
  %378 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51936)
          to label %.preheader1669.7 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.7:                                 ; preds = %.invoke1899
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 7)
          to label %379 unwind label %359

379:                                              ; preds = %.preheader1669.7
  %380 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1898 unwind label %359

.invoke1898:                                      ; preds = %379
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51937 = select i1 %380, ptr @.str.4, ptr @.str.5
  %381 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51937)
          to label %.preheader1669.8 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.8:                                 ; preds = %.invoke1898
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 8)
          to label %382 unwind label %359

382:                                              ; preds = %.preheader1669.8
  %383 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1897 unwind label %359

.invoke1897:                                      ; preds = %382
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51938 = select i1 %383, ptr @.str.4, ptr @.str.5
  %384 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51938)
          to label %.preheader1669.9 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.9:                                 ; preds = %.invoke1897
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %385 unwind label %359

385:                                              ; preds = %.preheader1669.9
  %386 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1896 unwind label %359

.invoke1896:                                      ; preds = %385
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51939 = select i1 %386, ptr @.str.4, ptr @.str.5
  %387 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51939)
          to label %.preheader1669.10 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.10:                                ; preds = %.invoke1896
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 10)
          to label %388 unwind label %359

388:                                              ; preds = %.preheader1669.10
  %389 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1895 unwind label %359

.invoke1895:                                      ; preds = %388
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51940 = select i1 %389, ptr @.str.4, ptr @.str.5
  %390 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51940)
          to label %.preheader1669.11 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.11:                                ; preds = %.invoke1895
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 11)
          to label %391 unwind label %359

391:                                              ; preds = %.preheader1669.11
  %392 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1894 unwind label %359

.invoke1894:                                      ; preds = %391
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51941 = select i1 %392, ptr @.str.4, ptr @.str.5
  %393 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51941)
          to label %.preheader1669.12 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

.preheader1669.12:                                ; preds = %.invoke1894
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %9) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %9, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %394 unwind label %359

394:                                              ; preds = %.preheader1669.12
  %395 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %9)
          to label %.invoke1893 unwind label %359

.invoke1893:                                      ; preds = %394
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %9) #6
  %.str.4..str.51942 = select i1 %395, ptr @.str.4, ptr @.str.5
  %396 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51942)
          to label %397 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit

397:                                              ; preds = %.invoke1893
  %398 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %399 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

399:                                              ; preds = %397
  %400 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %401 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

401:                                              ; preds = %399
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %10) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %10, ptr noundef nonnull align 8 dereferenceable(48) %6)
          to label %402 unwind label %408

402:                                              ; preds = %401
  %403 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %6, ptr noundef nonnull align 8 dereferenceable(48) %10)
          to label %404 unwind label %410

404:                                              ; preds = %402
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %10) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %10) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %405 unwind label %413

405:                                              ; preds = %404
  %406 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1892 unwind label %413

.invoke1892:                                      ; preds = %405
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51943 = select i1 %406, ptr @.str.4, ptr @.str.5
  %407 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51943)
          to label %415 unwind label %.loopexit.split-lp1662.loopexit

408:                                              ; preds = %401
  %409 = landingpad { ptr, i32 }
          cleanup
  br label %412

410:                                              ; preds = %402
  %411 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %10) #6
  br label %412

412:                                              ; preds = %410, %408
  %.pn = phi { ptr, i32 } [ %411, %410 ], [ %409, %408 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %10) #6
  br label %.loopexit.split-lp1662

413:                                              ; preds = %460, %459, %456, %455, %452, %451, %448, %447, %444, %443, %440, %439, %436, %435, %432, %431, %428, %427, %424, %423, %420, %419, %416, %415, %405, %404
  %414 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  br label %.loopexit.split-lp1662

415:                                              ; preds = %.invoke1892
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 1)
          to label %416 unwind label %413

416:                                              ; preds = %415
  %417 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1891 unwind label %413

.invoke1891:                                      ; preds = %416
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51944 = select i1 %417, ptr @.str.4, ptr @.str.5
  %418 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51944)
          to label %419 unwind label %.loopexit.split-lp1662.loopexit

419:                                              ; preds = %.invoke1891
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %420 unwind label %413

420:                                              ; preds = %419
  %421 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1890 unwind label %413

.invoke1890:                                      ; preds = %420
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51945 = select i1 %421, ptr @.str.4, ptr @.str.5
  %422 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51945)
          to label %423 unwind label %.loopexit.split-lp1662.loopexit

423:                                              ; preds = %.invoke1890
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %424 unwind label %413

424:                                              ; preds = %423
  %425 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1889 unwind label %413

.invoke1889:                                      ; preds = %424
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51946 = select i1 %425, ptr @.str.4, ptr @.str.5
  %426 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51946)
          to label %427 unwind label %.loopexit.split-lp1662.loopexit

427:                                              ; preds = %.invoke1889
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 4)
          to label %428 unwind label %413

428:                                              ; preds = %427
  %429 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1888 unwind label %413

.invoke1888:                                      ; preds = %428
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51947 = select i1 %429, ptr @.str.4, ptr @.str.5
  %430 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51947)
          to label %431 unwind label %.loopexit.split-lp1662.loopexit

431:                                              ; preds = %.invoke1888
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 5)
          to label %432 unwind label %413

432:                                              ; preds = %431
  %433 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1887 unwind label %413

.invoke1887:                                      ; preds = %432
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51948 = select i1 %433, ptr @.str.4, ptr @.str.5
  %434 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51948)
          to label %435 unwind label %.loopexit.split-lp1662.loopexit

435:                                              ; preds = %.invoke1887
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %436 unwind label %413

436:                                              ; preds = %435
  %437 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1886 unwind label %413

.invoke1886:                                      ; preds = %436
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51949 = select i1 %437, ptr @.str.4, ptr @.str.5
  %438 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51949)
          to label %439 unwind label %.loopexit.split-lp1662.loopexit

439:                                              ; preds = %.invoke1886
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 7)
          to label %440 unwind label %413

440:                                              ; preds = %439
  %441 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1885 unwind label %413

.invoke1885:                                      ; preds = %440
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51950 = select i1 %441, ptr @.str.4, ptr @.str.5
  %442 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51950)
          to label %443 unwind label %.loopexit.split-lp1662.loopexit

443:                                              ; preds = %.invoke1885
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 8)
          to label %444 unwind label %413

444:                                              ; preds = %443
  %445 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1884 unwind label %413

.invoke1884:                                      ; preds = %444
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51951 = select i1 %445, ptr @.str.4, ptr @.str.5
  %446 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51951)
          to label %447 unwind label %.loopexit.split-lp1662.loopexit

447:                                              ; preds = %.invoke1884
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %448 unwind label %413

448:                                              ; preds = %447
  %449 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1883 unwind label %413

.invoke1883:                                      ; preds = %448
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51952 = select i1 %449, ptr @.str.4, ptr @.str.5
  %450 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51952)
          to label %451 unwind label %.loopexit.split-lp1662.loopexit

451:                                              ; preds = %.invoke1883
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 10)
          to label %452 unwind label %413

452:                                              ; preds = %451
  %453 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1882 unwind label %413

.invoke1882:                                      ; preds = %452
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51953 = select i1 %453, ptr @.str.4, ptr @.str.5
  %454 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51953)
          to label %455 unwind label %.loopexit.split-lp1662.loopexit

455:                                              ; preds = %.invoke1882
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 11)
          to label %456 unwind label %413

456:                                              ; preds = %455
  %457 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1881 unwind label %413

.invoke1881:                                      ; preds = %456
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51954 = select i1 %457, ptr @.str.4, ptr @.str.5
  %458 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51954)
          to label %459 unwind label %.loopexit.split-lp1662.loopexit

459:                                              ; preds = %.invoke1881
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %11) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %11, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %460 unwind label %413

460:                                              ; preds = %459
  %461 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %11)
          to label %.invoke1880 unwind label %413

.invoke1880:                                      ; preds = %460
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %11) #6
  %.str.4..str.51955 = select i1 %461, ptr @.str.4, ptr @.str.5
  %462 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51955)
          to label %463 unwind label %.loopexit.split-lp1662.loopexit

463:                                              ; preds = %.invoke1880
  %464 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1665.preheader unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1665.preheader:                         ; preds = %463
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %12, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %465 unwind label %475

465:                                              ; preds = %.preheader1665.preheader
  %466 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %12, i1 noundef zeroext false)
          to label %.preheader1665.1 unwind label %475

.preheader1665.1:                                 ; preds = %465
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %12, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %467 unwind label %475

467:                                              ; preds = %.preheader1665.1
  %468 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %12, i1 noundef zeroext false)
          to label %.preheader1665.2 unwind label %475

.preheader1665.2:                                 ; preds = %467
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %12, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %469 unwind label %475

469:                                              ; preds = %.preheader1665.2
  %470 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %12, i1 noundef zeroext false)
          to label %.preheader1665.3 unwind label %475

.preheader1665.3:                                 ; preds = %469
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %12, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %471 unwind label %475

471:                                              ; preds = %.preheader1665.3
  %472 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %12, i1 noundef zeroext false)
          to label %.preheader1665.4 unwind label %475

.preheader1665.4:                                 ; preds = %471
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %12) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %12, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %473 unwind label %475

473:                                              ; preds = %.preheader1665.4
  %474 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %12, i1 noundef zeroext false)
          to label %.preheader1660.preheader unwind label %475

.preheader1660.preheader:                         ; preds = %473
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 0)
          to label %477 unwind label %480

475:                                              ; preds = %473, %.preheader1665.4, %471, %.preheader1665.3, %469, %.preheader1665.2, %467, %.preheader1665.1, %465, %.preheader1665.preheader
  %476 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %12) #6
  br label %.loopexit.split-lp1662

477:                                              ; preds = %.preheader1660.preheader
  %478 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1879 unwind label %480

.invoke1879:                                      ; preds = %477
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51956 = select i1 %478, ptr @.str.4, ptr @.str.5
  %479 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51956)
          to label %.preheader1660.1 unwind label %.loopexit1661

480:                                              ; preds = %515, %.preheader1660.12, %512, %.preheader1660.11, %509, %.preheader1660.10, %506, %.preheader1660.9, %503, %.preheader1660.8, %500, %.preheader1660.7, %497, %.preheader1660.6, %494, %.preheader1660.5, %491, %.preheader1660.4, %488, %.preheader1660.3, %485, %.preheader1660.2, %482, %.preheader1660.1, %477, %.preheader1660.preheader
  %481 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  br label %.loopexit.split-lp1662

.preheader1660.1:                                 ; preds = %.invoke1879
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 1)
          to label %482 unwind label %480

482:                                              ; preds = %.preheader1660.1
  %483 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1878 unwind label %480

.invoke1878:                                      ; preds = %482
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51957 = select i1 %483, ptr @.str.4, ptr @.str.5
  %484 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51957)
          to label %.preheader1660.2 unwind label %.loopexit1661

.preheader1660.2:                                 ; preds = %.invoke1878
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %485 unwind label %480

485:                                              ; preds = %.preheader1660.2
  %486 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1877 unwind label %480

.invoke1877:                                      ; preds = %485
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51958 = select i1 %486, ptr @.str.4, ptr @.str.5
  %487 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51958)
          to label %.preheader1660.3 unwind label %.loopexit1661

.preheader1660.3:                                 ; preds = %.invoke1877
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 3)
          to label %488 unwind label %480

488:                                              ; preds = %.preheader1660.3
  %489 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1876 unwind label %480

.invoke1876:                                      ; preds = %488
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51959 = select i1 %489, ptr @.str.4, ptr @.str.5
  %490 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51959)
          to label %.preheader1660.4 unwind label %.loopexit1661

.preheader1660.4:                                 ; preds = %.invoke1876
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 4)
          to label %491 unwind label %480

491:                                              ; preds = %.preheader1660.4
  %492 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1875 unwind label %480

.invoke1875:                                      ; preds = %491
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51960 = select i1 %492, ptr @.str.4, ptr @.str.5
  %493 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51960)
          to label %.preheader1660.5 unwind label %.loopexit1661

.preheader1660.5:                                 ; preds = %.invoke1875
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 5)
          to label %494 unwind label %480

494:                                              ; preds = %.preheader1660.5
  %495 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1874 unwind label %480

.invoke1874:                                      ; preds = %494
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51961 = select i1 %495, ptr @.str.4, ptr @.str.5
  %496 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51961)
          to label %.preheader1660.6 unwind label %.loopexit1661

.preheader1660.6:                                 ; preds = %.invoke1874
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 6)
          to label %497 unwind label %480

497:                                              ; preds = %.preheader1660.6
  %498 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1873 unwind label %480

.invoke1873:                                      ; preds = %497
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51962 = select i1 %498, ptr @.str.4, ptr @.str.5
  %499 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51962)
          to label %.preheader1660.7 unwind label %.loopexit1661

.preheader1660.7:                                 ; preds = %.invoke1873
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 7)
          to label %500 unwind label %480

500:                                              ; preds = %.preheader1660.7
  %501 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1872 unwind label %480

.invoke1872:                                      ; preds = %500
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51963 = select i1 %501, ptr @.str.4, ptr @.str.5
  %502 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51963)
          to label %.preheader1660.8 unwind label %.loopexit1661

.preheader1660.8:                                 ; preds = %.invoke1872
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 8)
          to label %503 unwind label %480

503:                                              ; preds = %.preheader1660.8
  %504 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1871 unwind label %480

.invoke1871:                                      ; preds = %503
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51964 = select i1 %504, ptr @.str.4, ptr @.str.5
  %505 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51964)
          to label %.preheader1660.9 unwind label %.loopexit1661

.preheader1660.9:                                 ; preds = %.invoke1871
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 9)
          to label %506 unwind label %480

506:                                              ; preds = %.preheader1660.9
  %507 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1870 unwind label %480

.invoke1870:                                      ; preds = %506
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51965 = select i1 %507, ptr @.str.4, ptr @.str.5
  %508 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51965)
          to label %.preheader1660.10 unwind label %.loopexit1661

.preheader1660.10:                                ; preds = %.invoke1870
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 10)
          to label %509 unwind label %480

509:                                              ; preds = %.preheader1660.10
  %510 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1869 unwind label %480

.invoke1869:                                      ; preds = %509
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51966 = select i1 %510, ptr @.str.4, ptr @.str.5
  %511 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51966)
          to label %.preheader1660.11 unwind label %.loopexit1661

.preheader1660.11:                                ; preds = %.invoke1869
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 11)
          to label %512 unwind label %480

512:                                              ; preds = %.preheader1660.11
  %513 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke1868 unwind label %480

.invoke1868:                                      ; preds = %512
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51967 = select i1 %513, ptr @.str.4, ptr @.str.5
  %514 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51967)
          to label %.preheader1660.12 unwind label %.loopexit1661

.preheader1660.12:                                ; preds = %.invoke1868
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %13) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %13, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 12)
          to label %515 unwind label %480

515:                                              ; preds = %.preheader1660.12
  %516 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %13)
          to label %.invoke unwind label %480

.invoke:                                          ; preds = %515
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %13) #6
  %.str.4..str.51968 = select i1 %516, ptr @.str.4, ptr @.str.5
  %517 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.51968)
          to label %518 unwind label %.loopexit1661

518:                                              ; preds = %.invoke
  %519 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %520 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

520:                                              ; preds = %518
  %521 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %522 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

522:                                              ; preds = %520
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %14) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %14, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %523 unwind label %547

523:                                              ; preds = %522
  %524 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %521, ptr noundef nonnull align 8 dereferenceable(32) %14)
          to label %525 unwind label %549

525:                                              ; preds = %523
  %526 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %524, ptr noundef nonnull @.str.3)
          to label %527 unwind label %549

527:                                              ; preds = %525
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #6
  %528 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %6, ptr noundef nonnull @.str.8)
          to label %529 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

529:                                              ; preds = %527
  %530 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %531 unwind label %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

531:                                              ; preds = %529
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %15) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %15, ptr noundef nonnull align 8 dereferenceable(48) %6, i32 noundef 2)
          to label %532 unwind label %552

532:                                              ; preds = %531
  %533 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %530, ptr noundef nonnull align 8 dereferenceable(32) %15)
          to label %534 unwind label %554

534:                                              ; preds = %532
  %535 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %533, ptr noundef nonnull @.str.3)
          to label %536 unwind label %554

536:                                              ; preds = %534
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %6) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %6) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %4) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %4) #6
  %537 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %538 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %537, ptr noundef nonnull @.str.2)
  %539 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %538, i32 noundef 13)
  %540 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %539, ptr noundef nonnull @.str.2)
  %541 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %540, i32 noundef 13)
  %542 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %541, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %16) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %17) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %17, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %16, ptr noundef nonnull align 4 dereferenceable(20) %17, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %17) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %18) #6
  invoke void @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0, ptr noundef null)
          to label %.preheader1656.preheader unwind label %558

.preheader1656.preheader:                         ; preds = %536
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %543 unwind label %560

543:                                              ; preds = %.preheader1656.preheader
  %544 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2020 unwind label %560

.invoke2020:                                      ; preds = %543
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %545 = select i1 %544, ptr @.str.4, ptr @.str.5
  %546 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %545)
          to label %.preheader1656.1 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

547:                                              ; preds = %522
  %548 = landingpad { ptr, i32 }
          cleanup
  br label %551

549:                                              ; preds = %525, %523
  %550 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #6
  br label %551

551:                                              ; preds = %549, %547
  %.pn1059 = phi { ptr, i32 } [ %550, %549 ], [ %548, %547 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %14) #6
  br label %.loopexit.split-lp1662

552:                                              ; preds = %531
  %553 = landingpad { ptr, i32 }
          cleanup
  br label %556

554:                                              ; preds = %534, %532
  %555 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %15) #6
  br label %556

556:                                              ; preds = %554, %552
  %.pn1061 = phi { ptr, i32 } [ %555, %554 ], [ %553, %552 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %15) #6
  br label %.loopexit.split-lp1662

.loopexit.split-lp1662:                           ; preds = %.loopexit1661, %.loopexit.split-lp1662.loopexit.split-lp.loopexit, %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1662.loopexit, %556, %551, %480, %475, %413, %412, %359, %354, %304
  %.pn1270 = phi { ptr, i32 } [ %305, %304 ], [ %355, %354 ], [ %360, %359 ], [ %414, %413 ], [ %476, %475 ], [ %481, %480 ], [ %.pn1061, %556 ], [ %.pn1059, %551 ], [ %.pn, %412 ], [ %lpad.loopexit1663, %.loopexit1661 ], [ %lpad.loopexit1666, %.loopexit.split-lp1662.loopexit ], [ %lpad.loopexit1670, %.loopexit.split-lp1662.loopexit.split-lp.loopexit ], [ %lpad.loopexit1674, %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1675, %.loopexit.split-lp1662.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %6) #6
  br label %557

557:                                              ; preds = %.loopexit.split-lp1662, %302
  %.pn1270.pn = phi { ptr, i32 } [ %.pn1270, %.loopexit.split-lp1662 ], [ %303, %302 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %6) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %4) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %4) #6
  br label %5024

558:                                              ; preds = %536
  %559 = landingpad { ptr, i32 }
          cleanup
  br label %813

560:                                              ; preds = %595, %.preheader1656.12, %592, %.preheader1656.11, %589, %.preheader1656.10, %586, %.preheader1656.9, %583, %.preheader1656.8, %580, %.preheader1656.7, %577, %.preheader1656.6, %574, %.preheader1656.5, %571, %.preheader1656.4, %568, %.preheader1656.3, %565, %.preheader1656.2, %562, %.preheader1656.1, %543, %.preheader1656.preheader
  %561 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  br label %.loopexit.split-lp1645

.loopexit1644:                                    ; preds = %.invoke1981, %.invoke1980, %.invoke1979, %.invoke1978, %.invoke1977, %.invoke1976, %.invoke1975, %.invoke1974, %.invoke1973, %.invoke1972, %.invoke1971, %.invoke1970, %.invoke1969
  %lpad.loopexit1646 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1645

.loopexit.split-lp1645.loopexit:                  ; preds = %.invoke1994, %.invoke1993, %.invoke1992, %.invoke1991, %.invoke1990, %.invoke1989, %.invoke1988, %.invoke1987, %.invoke1986, %.invoke1985, %.invoke1984, %.invoke1983, %.invoke1982
  %lpad.loopexit1649 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1645

.loopexit.split-lp1645.loopexit.split-lp.loopexit: ; preds = %.invoke2007, %.invoke2006, %.invoke2005, %.invoke2004, %.invoke2003, %.invoke2002, %.invoke2001, %.invoke2000, %.invoke1999, %.invoke1998, %.invoke1997, %.invoke1996, %.invoke1995
  %lpad.loopexit1653 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1645

.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2020, %.invoke2019, %.invoke2018, %.invoke2017, %.invoke2016, %.invoke2015, %.invoke2014, %.invoke2013, %.invoke2012, %.invoke2011, %.invoke2010, %.invoke2009, %.invoke2008
  %lpad.loopexit1657 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1645

.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %785, %783, %776, %774, %719, %655, %653, %598
  %lpad.loopexit.split-lp1658 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1645

.preheader1656.1:                                 ; preds = %.invoke2020
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 1)
          to label %562 unwind label %560

562:                                              ; preds = %.preheader1656.1
  %563 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2019 unwind label %560

.invoke2019:                                      ; preds = %562
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52021 = select i1 %563, ptr @.str.4, ptr @.str.5
  %564 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52021)
          to label %.preheader1656.2 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.2:                                 ; preds = %.invoke2019
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %565 unwind label %560

565:                                              ; preds = %.preheader1656.2
  %566 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2018 unwind label %560

.invoke2018:                                      ; preds = %565
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52022 = select i1 %566, ptr @.str.4, ptr @.str.5
  %567 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52022)
          to label %.preheader1656.3 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.3:                                 ; preds = %.invoke2018
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %568 unwind label %560

568:                                              ; preds = %.preheader1656.3
  %569 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2017 unwind label %560

.invoke2017:                                      ; preds = %568
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52023 = select i1 %569, ptr @.str.4, ptr @.str.5
  %570 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52023)
          to label %.preheader1656.4 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.4:                                 ; preds = %.invoke2017
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 4)
          to label %571 unwind label %560

571:                                              ; preds = %.preheader1656.4
  %572 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2016 unwind label %560

.invoke2016:                                      ; preds = %571
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52024 = select i1 %572, ptr @.str.4, ptr @.str.5
  %573 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52024)
          to label %.preheader1656.5 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.5:                                 ; preds = %.invoke2016
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 5)
          to label %574 unwind label %560

574:                                              ; preds = %.preheader1656.5
  %575 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2015 unwind label %560

.invoke2015:                                      ; preds = %574
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52025 = select i1 %575, ptr @.str.4, ptr @.str.5
  %576 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52025)
          to label %.preheader1656.6 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.6:                                 ; preds = %.invoke2015
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %577 unwind label %560

577:                                              ; preds = %.preheader1656.6
  %578 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2014 unwind label %560

.invoke2014:                                      ; preds = %577
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52026 = select i1 %578, ptr @.str.4, ptr @.str.5
  %579 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52026)
          to label %.preheader1656.7 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.7:                                 ; preds = %.invoke2014
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 7)
          to label %580 unwind label %560

580:                                              ; preds = %.preheader1656.7
  %581 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2013 unwind label %560

.invoke2013:                                      ; preds = %580
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52027 = select i1 %581, ptr @.str.4, ptr @.str.5
  %582 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52027)
          to label %.preheader1656.8 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.8:                                 ; preds = %.invoke2013
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 8)
          to label %583 unwind label %560

583:                                              ; preds = %.preheader1656.8
  %584 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2012 unwind label %560

.invoke2012:                                      ; preds = %583
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52028 = select i1 %584, ptr @.str.4, ptr @.str.5
  %585 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52028)
          to label %.preheader1656.9 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.9:                                 ; preds = %.invoke2012
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %586 unwind label %560

586:                                              ; preds = %.preheader1656.9
  %587 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2011 unwind label %560

.invoke2011:                                      ; preds = %586
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52029 = select i1 %587, ptr @.str.4, ptr @.str.5
  %588 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52029)
          to label %.preheader1656.10 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.10:                                ; preds = %.invoke2011
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 10)
          to label %589 unwind label %560

589:                                              ; preds = %.preheader1656.10
  %590 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2010 unwind label %560

.invoke2010:                                      ; preds = %589
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52030 = select i1 %590, ptr @.str.4, ptr @.str.5
  %591 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52030)
          to label %.preheader1656.11 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.11:                                ; preds = %.invoke2010
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 11)
          to label %592 unwind label %560

592:                                              ; preds = %.preheader1656.11
  %593 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2009 unwind label %560

.invoke2009:                                      ; preds = %592
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52031 = select i1 %593, ptr @.str.4, ptr @.str.5
  %594 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52031)
          to label %.preheader1656.12 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1656.12:                                ; preds = %.invoke2009
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %19) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %19, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %595 unwind label %560

595:                                              ; preds = %.preheader1656.12
  %596 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %19)
          to label %.invoke2008 unwind label %560

.invoke2008:                                      ; preds = %595
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %19) #6
  %.str.4..str.52032 = select i1 %596, ptr @.str.4, ptr @.str.5
  %597 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52032)
          to label %598 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit

598:                                              ; preds = %.invoke2008
  %599 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1655.preheader unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1655.preheader:                         ; preds = %598
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %600 unwind label %610

600:                                              ; preds = %.preheader1655.preheader
  %601 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %20, i1 noundef zeroext true)
          to label %.preheader1655.1 unwind label %610

.preheader1655.1:                                 ; preds = %600
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %602 unwind label %610

602:                                              ; preds = %.preheader1655.1
  %603 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %20, i1 noundef zeroext true)
          to label %.preheader1655.2 unwind label %610

.preheader1655.2:                                 ; preds = %602
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %604 unwind label %610

604:                                              ; preds = %.preheader1655.2
  %605 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %20, i1 noundef zeroext true)
          to label %.preheader1655.3 unwind label %610

.preheader1655.3:                                 ; preds = %604
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %606 unwind label %610

606:                                              ; preds = %.preheader1655.3
  %607 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %20, i1 noundef zeroext true)
          to label %.preheader1655.4 unwind label %610

.preheader1655.4:                                 ; preds = %606
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %20) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %20, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %608 unwind label %610

608:                                              ; preds = %.preheader1655.4
  %609 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %20, i1 noundef zeroext true)
          to label %.preheader1652.preheader unwind label %610

.preheader1652.preheader:                         ; preds = %608
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %612 unwind label %615

610:                                              ; preds = %608, %.preheader1655.4, %606, %.preheader1655.3, %604, %.preheader1655.2, %602, %.preheader1655.1, %600, %.preheader1655.preheader
  %611 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %20) #6
  br label %.loopexit.split-lp1645

612:                                              ; preds = %.preheader1652.preheader
  %613 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2007 unwind label %615

.invoke2007:                                      ; preds = %612
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52033 = select i1 %613, ptr @.str.4, ptr @.str.5
  %614 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52033)
          to label %.preheader1652.1 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

615:                                              ; preds = %650, %.preheader1652.12, %647, %.preheader1652.11, %644, %.preheader1652.10, %641, %.preheader1652.9, %638, %.preheader1652.8, %635, %.preheader1652.7, %632, %.preheader1652.6, %629, %.preheader1652.5, %626, %.preheader1652.4, %623, %.preheader1652.3, %620, %.preheader1652.2, %617, %.preheader1652.1, %612, %.preheader1652.preheader
  %616 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  br label %.loopexit.split-lp1645

.preheader1652.1:                                 ; preds = %.invoke2007
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 1)
          to label %617 unwind label %615

617:                                              ; preds = %.preheader1652.1
  %618 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2006 unwind label %615

.invoke2006:                                      ; preds = %617
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52034 = select i1 %618, ptr @.str.4, ptr @.str.5
  %619 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52034)
          to label %.preheader1652.2 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.2:                                 ; preds = %.invoke2006
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %620 unwind label %615

620:                                              ; preds = %.preheader1652.2
  %621 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2005 unwind label %615

.invoke2005:                                      ; preds = %620
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52035 = select i1 %621, ptr @.str.4, ptr @.str.5
  %622 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52035)
          to label %.preheader1652.3 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.3:                                 ; preds = %.invoke2005
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %623 unwind label %615

623:                                              ; preds = %.preheader1652.3
  %624 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2004 unwind label %615

.invoke2004:                                      ; preds = %623
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52036 = select i1 %624, ptr @.str.4, ptr @.str.5
  %625 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52036)
          to label %.preheader1652.4 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.4:                                 ; preds = %.invoke2004
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 4)
          to label %626 unwind label %615

626:                                              ; preds = %.preheader1652.4
  %627 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2003 unwind label %615

.invoke2003:                                      ; preds = %626
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52037 = select i1 %627, ptr @.str.4, ptr @.str.5
  %628 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52037)
          to label %.preheader1652.5 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.5:                                 ; preds = %.invoke2003
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 5)
          to label %629 unwind label %615

629:                                              ; preds = %.preheader1652.5
  %630 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2002 unwind label %615

.invoke2002:                                      ; preds = %629
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52038 = select i1 %630, ptr @.str.4, ptr @.str.5
  %631 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52038)
          to label %.preheader1652.6 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.6:                                 ; preds = %.invoke2002
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %632 unwind label %615

632:                                              ; preds = %.preheader1652.6
  %633 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2001 unwind label %615

.invoke2001:                                      ; preds = %632
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52039 = select i1 %633, ptr @.str.4, ptr @.str.5
  %634 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52039)
          to label %.preheader1652.7 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.7:                                 ; preds = %.invoke2001
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 7)
          to label %635 unwind label %615

635:                                              ; preds = %.preheader1652.7
  %636 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke2000 unwind label %615

.invoke2000:                                      ; preds = %635
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52040 = select i1 %636, ptr @.str.4, ptr @.str.5
  %637 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52040)
          to label %.preheader1652.8 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.8:                                 ; preds = %.invoke2000
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 8)
          to label %638 unwind label %615

638:                                              ; preds = %.preheader1652.8
  %639 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke1999 unwind label %615

.invoke1999:                                      ; preds = %638
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52041 = select i1 %639, ptr @.str.4, ptr @.str.5
  %640 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52041)
          to label %.preheader1652.9 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.9:                                 ; preds = %.invoke1999
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %641 unwind label %615

641:                                              ; preds = %.preheader1652.9
  %642 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke1998 unwind label %615

.invoke1998:                                      ; preds = %641
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52042 = select i1 %642, ptr @.str.4, ptr @.str.5
  %643 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52042)
          to label %.preheader1652.10 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.10:                                ; preds = %.invoke1998
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 10)
          to label %644 unwind label %615

644:                                              ; preds = %.preheader1652.10
  %645 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke1997 unwind label %615

.invoke1997:                                      ; preds = %644
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52043 = select i1 %645, ptr @.str.4, ptr @.str.5
  %646 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52043)
          to label %.preheader1652.11 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.11:                                ; preds = %.invoke1997
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 11)
          to label %647 unwind label %615

647:                                              ; preds = %.preheader1652.11
  %648 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke1996 unwind label %615

.invoke1996:                                      ; preds = %647
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52044 = select i1 %648, ptr @.str.4, ptr @.str.5
  %649 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52044)
          to label %.preheader1652.12 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

.preheader1652.12:                                ; preds = %.invoke1996
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %21) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %21, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %650 unwind label %615

650:                                              ; preds = %.preheader1652.12
  %651 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %21)
          to label %.invoke1995 unwind label %615

.invoke1995:                                      ; preds = %650
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %21) #6
  %.str.4..str.52045 = select i1 %651, ptr @.str.4, ptr @.str.5
  %652 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52045)
          to label %653 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit

653:                                              ; preds = %.invoke1995
  %654 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %655 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

655:                                              ; preds = %653
  %656 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %657 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

657:                                              ; preds = %655
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %22) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %22, ptr noundef nonnull align 8 dereferenceable(48) %18)
          to label %658 unwind label %664

658:                                              ; preds = %657
  %659 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %18, ptr noundef nonnull align 8 dereferenceable(48) %22)
          to label %660 unwind label %666

660:                                              ; preds = %658
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %22) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %22) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %661 unwind label %669

661:                                              ; preds = %660
  %662 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1994 unwind label %669

.invoke1994:                                      ; preds = %661
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52046 = select i1 %662, ptr @.str.4, ptr @.str.5
  %663 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52046)
          to label %671 unwind label %.loopexit.split-lp1645.loopexit

664:                                              ; preds = %657
  %665 = landingpad { ptr, i32 }
          cleanup
  br label %668

666:                                              ; preds = %658
  %667 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %22) #6
  br label %668

668:                                              ; preds = %666, %664
  %.pn1063 = phi { ptr, i32 } [ %667, %666 ], [ %665, %664 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %22) #6
  br label %.loopexit.split-lp1645

669:                                              ; preds = %716, %715, %712, %711, %708, %707, %704, %703, %700, %699, %696, %695, %692, %691, %688, %687, %684, %683, %680, %679, %676, %675, %672, %671, %661, %660
  %670 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  br label %.loopexit.split-lp1645

671:                                              ; preds = %.invoke1994
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 1)
          to label %672 unwind label %669

672:                                              ; preds = %671
  %673 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1993 unwind label %669

.invoke1993:                                      ; preds = %672
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52047 = select i1 %673, ptr @.str.4, ptr @.str.5
  %674 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52047)
          to label %675 unwind label %.loopexit.split-lp1645.loopexit

675:                                              ; preds = %.invoke1993
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %676 unwind label %669

676:                                              ; preds = %675
  %677 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1992 unwind label %669

.invoke1992:                                      ; preds = %676
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52048 = select i1 %677, ptr @.str.4, ptr @.str.5
  %678 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52048)
          to label %679 unwind label %.loopexit.split-lp1645.loopexit

679:                                              ; preds = %.invoke1992
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %680 unwind label %669

680:                                              ; preds = %679
  %681 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1991 unwind label %669

.invoke1991:                                      ; preds = %680
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52049 = select i1 %681, ptr @.str.4, ptr @.str.5
  %682 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52049)
          to label %683 unwind label %.loopexit.split-lp1645.loopexit

683:                                              ; preds = %.invoke1991
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 4)
          to label %684 unwind label %669

684:                                              ; preds = %683
  %685 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1990 unwind label %669

.invoke1990:                                      ; preds = %684
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52050 = select i1 %685, ptr @.str.4, ptr @.str.5
  %686 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52050)
          to label %687 unwind label %.loopexit.split-lp1645.loopexit

687:                                              ; preds = %.invoke1990
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 5)
          to label %688 unwind label %669

688:                                              ; preds = %687
  %689 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1989 unwind label %669

.invoke1989:                                      ; preds = %688
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52051 = select i1 %689, ptr @.str.4, ptr @.str.5
  %690 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52051)
          to label %691 unwind label %.loopexit.split-lp1645.loopexit

691:                                              ; preds = %.invoke1989
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %692 unwind label %669

692:                                              ; preds = %691
  %693 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1988 unwind label %669

.invoke1988:                                      ; preds = %692
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52052 = select i1 %693, ptr @.str.4, ptr @.str.5
  %694 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52052)
          to label %695 unwind label %.loopexit.split-lp1645.loopexit

695:                                              ; preds = %.invoke1988
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 7)
          to label %696 unwind label %669

696:                                              ; preds = %695
  %697 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1987 unwind label %669

.invoke1987:                                      ; preds = %696
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52053 = select i1 %697, ptr @.str.4, ptr @.str.5
  %698 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52053)
          to label %699 unwind label %.loopexit.split-lp1645.loopexit

699:                                              ; preds = %.invoke1987
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 8)
          to label %700 unwind label %669

700:                                              ; preds = %699
  %701 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1986 unwind label %669

.invoke1986:                                      ; preds = %700
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52054 = select i1 %701, ptr @.str.4, ptr @.str.5
  %702 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52054)
          to label %703 unwind label %.loopexit.split-lp1645.loopexit

703:                                              ; preds = %.invoke1986
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %704 unwind label %669

704:                                              ; preds = %703
  %705 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1985 unwind label %669

.invoke1985:                                      ; preds = %704
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52055 = select i1 %705, ptr @.str.4, ptr @.str.5
  %706 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52055)
          to label %707 unwind label %.loopexit.split-lp1645.loopexit

707:                                              ; preds = %.invoke1985
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 10)
          to label %708 unwind label %669

708:                                              ; preds = %707
  %709 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1984 unwind label %669

.invoke1984:                                      ; preds = %708
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52056 = select i1 %709, ptr @.str.4, ptr @.str.5
  %710 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52056)
          to label %711 unwind label %.loopexit.split-lp1645.loopexit

711:                                              ; preds = %.invoke1984
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 11)
          to label %712 unwind label %669

712:                                              ; preds = %711
  %713 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1983 unwind label %669

.invoke1983:                                      ; preds = %712
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52057 = select i1 %713, ptr @.str.4, ptr @.str.5
  %714 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52057)
          to label %715 unwind label %.loopexit.split-lp1645.loopexit

715:                                              ; preds = %.invoke1983
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %23) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %23, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %716 unwind label %669

716:                                              ; preds = %715
  %717 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %23)
          to label %.invoke1982 unwind label %669

.invoke1982:                                      ; preds = %716
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %23) #6
  %.str.4..str.52058 = select i1 %717, ptr @.str.4, ptr @.str.5
  %718 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52058)
          to label %719 unwind label %.loopexit.split-lp1645.loopexit

719:                                              ; preds = %.invoke1982
  %720 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1648.preheader unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1648.preheader:                         ; preds = %719
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %721 unwind label %731

721:                                              ; preds = %.preheader1648.preheader
  %722 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %24, i1 noundef zeroext false)
          to label %.preheader1648.1 unwind label %731

.preheader1648.1:                                 ; preds = %721
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %723 unwind label %731

723:                                              ; preds = %.preheader1648.1
  %724 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %24, i1 noundef zeroext false)
          to label %.preheader1648.2 unwind label %731

.preheader1648.2:                                 ; preds = %723
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %725 unwind label %731

725:                                              ; preds = %.preheader1648.2
  %726 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %24, i1 noundef zeroext false)
          to label %.preheader1648.3 unwind label %731

.preheader1648.3:                                 ; preds = %725
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %727 unwind label %731

727:                                              ; preds = %.preheader1648.3
  %728 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %24, i1 noundef zeroext false)
          to label %.preheader1648.4 unwind label %731

.preheader1648.4:                                 ; preds = %727
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %24) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %24, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %729 unwind label %731

729:                                              ; preds = %.preheader1648.4
  %730 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %24, i1 noundef zeroext false)
          to label %.preheader1643.preheader unwind label %731

.preheader1643.preheader:                         ; preds = %729
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 0)
          to label %733 unwind label %736

731:                                              ; preds = %729, %.preheader1648.4, %727, %.preheader1648.3, %725, %.preheader1648.2, %723, %.preheader1648.1, %721, %.preheader1648.preheader
  %732 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %24) #6
  br label %.loopexit.split-lp1645

733:                                              ; preds = %.preheader1643.preheader
  %734 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1981 unwind label %736

.invoke1981:                                      ; preds = %733
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52059 = select i1 %734, ptr @.str.4, ptr @.str.5
  %735 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52059)
          to label %.preheader1643.1 unwind label %.loopexit1644

736:                                              ; preds = %771, %.preheader1643.12, %768, %.preheader1643.11, %765, %.preheader1643.10, %762, %.preheader1643.9, %759, %.preheader1643.8, %756, %.preheader1643.7, %753, %.preheader1643.6, %750, %.preheader1643.5, %747, %.preheader1643.4, %744, %.preheader1643.3, %741, %.preheader1643.2, %738, %.preheader1643.1, %733, %.preheader1643.preheader
  %737 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  br label %.loopexit.split-lp1645

.preheader1643.1:                                 ; preds = %.invoke1981
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 1)
          to label %738 unwind label %736

738:                                              ; preds = %.preheader1643.1
  %739 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1980 unwind label %736

.invoke1980:                                      ; preds = %738
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52060 = select i1 %739, ptr @.str.4, ptr @.str.5
  %740 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52060)
          to label %.preheader1643.2 unwind label %.loopexit1644

.preheader1643.2:                                 ; preds = %.invoke1980
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %741 unwind label %736

741:                                              ; preds = %.preheader1643.2
  %742 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1979 unwind label %736

.invoke1979:                                      ; preds = %741
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52061 = select i1 %742, ptr @.str.4, ptr @.str.5
  %743 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52061)
          to label %.preheader1643.3 unwind label %.loopexit1644

.preheader1643.3:                                 ; preds = %.invoke1979
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 3)
          to label %744 unwind label %736

744:                                              ; preds = %.preheader1643.3
  %745 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1978 unwind label %736

.invoke1978:                                      ; preds = %744
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52062 = select i1 %745, ptr @.str.4, ptr @.str.5
  %746 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52062)
          to label %.preheader1643.4 unwind label %.loopexit1644

.preheader1643.4:                                 ; preds = %.invoke1978
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 4)
          to label %747 unwind label %736

747:                                              ; preds = %.preheader1643.4
  %748 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1977 unwind label %736

.invoke1977:                                      ; preds = %747
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52063 = select i1 %748, ptr @.str.4, ptr @.str.5
  %749 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52063)
          to label %.preheader1643.5 unwind label %.loopexit1644

.preheader1643.5:                                 ; preds = %.invoke1977
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 5)
          to label %750 unwind label %736

750:                                              ; preds = %.preheader1643.5
  %751 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1976 unwind label %736

.invoke1976:                                      ; preds = %750
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52064 = select i1 %751, ptr @.str.4, ptr @.str.5
  %752 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52064)
          to label %.preheader1643.6 unwind label %.loopexit1644

.preheader1643.6:                                 ; preds = %.invoke1976
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 6)
          to label %753 unwind label %736

753:                                              ; preds = %.preheader1643.6
  %754 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1975 unwind label %736

.invoke1975:                                      ; preds = %753
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52065 = select i1 %754, ptr @.str.4, ptr @.str.5
  %755 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52065)
          to label %.preheader1643.7 unwind label %.loopexit1644

.preheader1643.7:                                 ; preds = %.invoke1975
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 7)
          to label %756 unwind label %736

756:                                              ; preds = %.preheader1643.7
  %757 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1974 unwind label %736

.invoke1974:                                      ; preds = %756
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52066 = select i1 %757, ptr @.str.4, ptr @.str.5
  %758 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52066)
          to label %.preheader1643.8 unwind label %.loopexit1644

.preheader1643.8:                                 ; preds = %.invoke1974
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 8)
          to label %759 unwind label %736

759:                                              ; preds = %.preheader1643.8
  %760 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1973 unwind label %736

.invoke1973:                                      ; preds = %759
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52067 = select i1 %760, ptr @.str.4, ptr @.str.5
  %761 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52067)
          to label %.preheader1643.9 unwind label %.loopexit1644

.preheader1643.9:                                 ; preds = %.invoke1973
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 9)
          to label %762 unwind label %736

762:                                              ; preds = %.preheader1643.9
  %763 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1972 unwind label %736

.invoke1972:                                      ; preds = %762
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52068 = select i1 %763, ptr @.str.4, ptr @.str.5
  %764 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52068)
          to label %.preheader1643.10 unwind label %.loopexit1644

.preheader1643.10:                                ; preds = %.invoke1972
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 10)
          to label %765 unwind label %736

765:                                              ; preds = %.preheader1643.10
  %766 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1971 unwind label %736

.invoke1971:                                      ; preds = %765
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52069 = select i1 %766, ptr @.str.4, ptr @.str.5
  %767 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52069)
          to label %.preheader1643.11 unwind label %.loopexit1644

.preheader1643.11:                                ; preds = %.invoke1971
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 11)
          to label %768 unwind label %736

768:                                              ; preds = %.preheader1643.11
  %769 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1970 unwind label %736

.invoke1970:                                      ; preds = %768
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52070 = select i1 %769, ptr @.str.4, ptr @.str.5
  %770 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52070)
          to label %.preheader1643.12 unwind label %.loopexit1644

.preheader1643.12:                                ; preds = %.invoke1970
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %25) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %25, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 12)
          to label %771 unwind label %736

771:                                              ; preds = %.preheader1643.12
  %772 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %25)
          to label %.invoke1969 unwind label %736

.invoke1969:                                      ; preds = %771
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %25) #6
  %.str.4..str.52071 = select i1 %772, ptr @.str.4, ptr @.str.5
  %773 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52071)
          to label %774 unwind label %.loopexit1644

774:                                              ; preds = %.invoke1969
  %775 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %776 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

776:                                              ; preds = %774
  %777 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %778 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

778:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %26, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %779 unwind label %803

779:                                              ; preds = %778
  %780 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %777, ptr noundef nonnull align 8 dereferenceable(32) %26)
          to label %781 unwind label %805

781:                                              ; preds = %779
  %782 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %780, ptr noundef nonnull @.str.3)
          to label %783 unwind label %805

783:                                              ; preds = %781
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  %784 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %18, ptr noundef nonnull @.str.8)
          to label %785 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

785:                                              ; preds = %783
  %786 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %787 unwind label %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

787:                                              ; preds = %785
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %27, ptr noundef nonnull align 8 dereferenceable(48) %18, i32 noundef 2)
          to label %788 unwind label %808

788:                                              ; preds = %787
  %789 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %786, ptr noundef nonnull align 8 dereferenceable(32) %27)
          to label %790 unwind label %810

790:                                              ; preds = %788
  %791 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %789, ptr noundef nonnull @.str.3)
          to label %792 unwind label %810

792:                                              ; preds = %790
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %18) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %18) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %16) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %16) #6
  %793 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %794 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %793, ptr noundef nonnull @.str.2)
  %795 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %794, i32 noundef 13)
  %796 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %795, ptr noundef nonnull @.str.2)
  %797 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %796, i32 noundef 13)
  %798 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %797, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %28) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %29) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %29, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %28, ptr noundef nonnull align 4 dereferenceable(20) %29, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %29) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %30) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0, ptr noundef null)
          to label %.preheader1639.preheader unwind label %814

.preheader1639.preheader:                         ; preds = %792
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %799 unwind label %816

799:                                              ; preds = %.preheader1639.preheader
  %800 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2123 unwind label %816

.invoke2123:                                      ; preds = %799
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %801 = select i1 %800, ptr @.str.4, ptr @.str.5
  %802 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %801)
          to label %.preheader1639.1 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

803:                                              ; preds = %778
  %804 = landingpad { ptr, i32 }
          cleanup
  br label %807

805:                                              ; preds = %781, %779
  %806 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #6
  br label %807

807:                                              ; preds = %805, %803
  %.pn1065 = phi { ptr, i32 } [ %806, %805 ], [ %804, %803 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #6
  br label %.loopexit.split-lp1645

808:                                              ; preds = %787
  %809 = landingpad { ptr, i32 }
          cleanup
  br label %812

810:                                              ; preds = %790, %788
  %811 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #6
  br label %812

812:                                              ; preds = %810, %808
  %.pn1067 = phi { ptr, i32 } [ %811, %810 ], [ %809, %808 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #6
  br label %.loopexit.split-lp1645

.loopexit.split-lp1645:                           ; preds = %.loopexit1644, %.loopexit.split-lp1645.loopexit.split-lp.loopexit, %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1645.loopexit, %812, %807, %736, %731, %669, %668, %615, %610, %560
  %.pn1267 = phi { ptr, i32 } [ %561, %560 ], [ %611, %610 ], [ %616, %615 ], [ %670, %669 ], [ %732, %731 ], [ %737, %736 ], [ %.pn1067, %812 ], [ %.pn1065, %807 ], [ %.pn1063, %668 ], [ %lpad.loopexit1646, %.loopexit1644 ], [ %lpad.loopexit1649, %.loopexit.split-lp1645.loopexit ], [ %lpad.loopexit1653, %.loopexit.split-lp1645.loopexit.split-lp.loopexit ], [ %lpad.loopexit1657, %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1658, %.loopexit.split-lp1645.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %18) #6
  br label %813

813:                                              ; preds = %.loopexit.split-lp1645, %558
  %.pn1267.pn = phi { ptr, i32 } [ %.pn1267, %.loopexit.split-lp1645 ], [ %559, %558 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %18) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %16) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %16) #6
  br label %5024

814:                                              ; preds = %792
  %815 = landingpad { ptr, i32 }
          cleanup
  br label %1069

816:                                              ; preds = %851, %.preheader1639.12, %848, %.preheader1639.11, %845, %.preheader1639.10, %842, %.preheader1639.9, %839, %.preheader1639.8, %836, %.preheader1639.7, %833, %.preheader1639.6, %830, %.preheader1639.5, %827, %.preheader1639.4, %824, %.preheader1639.3, %821, %.preheader1639.2, %818, %.preheader1639.1, %799, %.preheader1639.preheader
  %817 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  br label %.loopexit.split-lp1628

.loopexit1627:                                    ; preds = %.invoke2084, %.invoke2083, %.invoke2082, %.invoke2081, %.invoke2080, %.invoke2079, %.invoke2078, %.invoke2077, %.invoke2076, %.invoke2075, %.invoke2074, %.invoke2073, %.invoke2072
  %lpad.loopexit1629 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1628

.loopexit.split-lp1628.loopexit:                  ; preds = %.invoke2097, %.invoke2096, %.invoke2095, %.invoke2094, %.invoke2093, %.invoke2092, %.invoke2091, %.invoke2090, %.invoke2089, %.invoke2088, %.invoke2087, %.invoke2086, %.invoke2085
  %lpad.loopexit1632 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1628

.loopexit.split-lp1628.loopexit.split-lp.loopexit: ; preds = %.invoke2110, %.invoke2109, %.invoke2108, %.invoke2107, %.invoke2106, %.invoke2105, %.invoke2104, %.invoke2103, %.invoke2102, %.invoke2101, %.invoke2100, %.invoke2099, %.invoke2098
  %lpad.loopexit1636 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1628

.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2123, %.invoke2122, %.invoke2121, %.invoke2120, %.invoke2119, %.invoke2118, %.invoke2117, %.invoke2116, %.invoke2115, %.invoke2114, %.invoke2113, %.invoke2112, %.invoke2111
  %lpad.loopexit1640 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1628

.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %1041, %1039, %1032, %1030, %975, %911, %909, %854
  %lpad.loopexit.split-lp1641 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1628

.preheader1639.1:                                 ; preds = %.invoke2123
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 1)
          to label %818 unwind label %816

818:                                              ; preds = %.preheader1639.1
  %819 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2122 unwind label %816

.invoke2122:                                      ; preds = %818
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52124 = select i1 %819, ptr @.str.4, ptr @.str.5
  %820 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52124)
          to label %.preheader1639.2 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.2:                                 ; preds = %.invoke2122
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %821 unwind label %816

821:                                              ; preds = %.preheader1639.2
  %822 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2121 unwind label %816

.invoke2121:                                      ; preds = %821
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52125 = select i1 %822, ptr @.str.4, ptr @.str.5
  %823 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52125)
          to label %.preheader1639.3 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.3:                                 ; preds = %.invoke2121
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %824 unwind label %816

824:                                              ; preds = %.preheader1639.3
  %825 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2120 unwind label %816

.invoke2120:                                      ; preds = %824
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52126 = select i1 %825, ptr @.str.4, ptr @.str.5
  %826 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52126)
          to label %.preheader1639.4 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.4:                                 ; preds = %.invoke2120
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 4)
          to label %827 unwind label %816

827:                                              ; preds = %.preheader1639.4
  %828 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2119 unwind label %816

.invoke2119:                                      ; preds = %827
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52127 = select i1 %828, ptr @.str.4, ptr @.str.5
  %829 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52127)
          to label %.preheader1639.5 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.5:                                 ; preds = %.invoke2119
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 5)
          to label %830 unwind label %816

830:                                              ; preds = %.preheader1639.5
  %831 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2118 unwind label %816

.invoke2118:                                      ; preds = %830
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52128 = select i1 %831, ptr @.str.4, ptr @.str.5
  %832 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52128)
          to label %.preheader1639.6 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.6:                                 ; preds = %.invoke2118
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %833 unwind label %816

833:                                              ; preds = %.preheader1639.6
  %834 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2117 unwind label %816

.invoke2117:                                      ; preds = %833
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52129 = select i1 %834, ptr @.str.4, ptr @.str.5
  %835 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52129)
          to label %.preheader1639.7 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.7:                                 ; preds = %.invoke2117
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 7)
          to label %836 unwind label %816

836:                                              ; preds = %.preheader1639.7
  %837 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2116 unwind label %816

.invoke2116:                                      ; preds = %836
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52130 = select i1 %837, ptr @.str.4, ptr @.str.5
  %838 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52130)
          to label %.preheader1639.8 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.8:                                 ; preds = %.invoke2116
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 8)
          to label %839 unwind label %816

839:                                              ; preds = %.preheader1639.8
  %840 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2115 unwind label %816

.invoke2115:                                      ; preds = %839
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52131 = select i1 %840, ptr @.str.4, ptr @.str.5
  %841 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52131)
          to label %.preheader1639.9 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.9:                                 ; preds = %.invoke2115
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %842 unwind label %816

842:                                              ; preds = %.preheader1639.9
  %843 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2114 unwind label %816

.invoke2114:                                      ; preds = %842
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52132 = select i1 %843, ptr @.str.4, ptr @.str.5
  %844 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52132)
          to label %.preheader1639.10 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.10:                                ; preds = %.invoke2114
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 10)
          to label %845 unwind label %816

845:                                              ; preds = %.preheader1639.10
  %846 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2113 unwind label %816

.invoke2113:                                      ; preds = %845
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52133 = select i1 %846, ptr @.str.4, ptr @.str.5
  %847 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52133)
          to label %.preheader1639.11 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.11:                                ; preds = %.invoke2113
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 11)
          to label %848 unwind label %816

848:                                              ; preds = %.preheader1639.11
  %849 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2112 unwind label %816

.invoke2112:                                      ; preds = %848
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52134 = select i1 %849, ptr @.str.4, ptr @.str.5
  %850 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52134)
          to label %.preheader1639.12 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1639.12:                                ; preds = %.invoke2112
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %31) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %31, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %851 unwind label %816

851:                                              ; preds = %.preheader1639.12
  %852 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %31)
          to label %.invoke2111 unwind label %816

.invoke2111:                                      ; preds = %851
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %31) #6
  %.str.4..str.52135 = select i1 %852, ptr @.str.4, ptr @.str.5
  %853 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52135)
          to label %854 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit

854:                                              ; preds = %.invoke2111
  %855 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1638.preheader unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1638.preheader:                         ; preds = %854
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %856 unwind label %866

856:                                              ; preds = %.preheader1638.preheader
  %857 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %32, i1 noundef zeroext true)
          to label %.preheader1638.1 unwind label %866

.preheader1638.1:                                 ; preds = %856
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %858 unwind label %866

858:                                              ; preds = %.preheader1638.1
  %859 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %32, i1 noundef zeroext true)
          to label %.preheader1638.2 unwind label %866

.preheader1638.2:                                 ; preds = %858
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %860 unwind label %866

860:                                              ; preds = %.preheader1638.2
  %861 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %32, i1 noundef zeroext true)
          to label %.preheader1638.3 unwind label %866

.preheader1638.3:                                 ; preds = %860
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %862 unwind label %866

862:                                              ; preds = %.preheader1638.3
  %863 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %32, i1 noundef zeroext true)
          to label %.preheader1638.4 unwind label %866

.preheader1638.4:                                 ; preds = %862
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %32) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %32, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %864 unwind label %866

864:                                              ; preds = %.preheader1638.4
  %865 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %32, i1 noundef zeroext true)
          to label %.preheader1635.preheader unwind label %866

.preheader1635.preheader:                         ; preds = %864
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %868 unwind label %871

866:                                              ; preds = %864, %.preheader1638.4, %862, %.preheader1638.3, %860, %.preheader1638.2, %858, %.preheader1638.1, %856, %.preheader1638.preheader
  %867 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %32) #6
  br label %.loopexit.split-lp1628

868:                                              ; preds = %.preheader1635.preheader
  %869 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2110 unwind label %871

.invoke2110:                                      ; preds = %868
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52136 = select i1 %869, ptr @.str.4, ptr @.str.5
  %870 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52136)
          to label %.preheader1635.1 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

871:                                              ; preds = %906, %.preheader1635.12, %903, %.preheader1635.11, %900, %.preheader1635.10, %897, %.preheader1635.9, %894, %.preheader1635.8, %891, %.preheader1635.7, %888, %.preheader1635.6, %885, %.preheader1635.5, %882, %.preheader1635.4, %879, %.preheader1635.3, %876, %.preheader1635.2, %873, %.preheader1635.1, %868, %.preheader1635.preheader
  %872 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  br label %.loopexit.split-lp1628

.preheader1635.1:                                 ; preds = %.invoke2110
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 1)
          to label %873 unwind label %871

873:                                              ; preds = %.preheader1635.1
  %874 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2109 unwind label %871

.invoke2109:                                      ; preds = %873
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52137 = select i1 %874, ptr @.str.4, ptr @.str.5
  %875 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52137)
          to label %.preheader1635.2 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.2:                                 ; preds = %.invoke2109
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %876 unwind label %871

876:                                              ; preds = %.preheader1635.2
  %877 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2108 unwind label %871

.invoke2108:                                      ; preds = %876
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52138 = select i1 %877, ptr @.str.4, ptr @.str.5
  %878 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52138)
          to label %.preheader1635.3 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.3:                                 ; preds = %.invoke2108
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %879 unwind label %871

879:                                              ; preds = %.preheader1635.3
  %880 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2107 unwind label %871

.invoke2107:                                      ; preds = %879
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52139 = select i1 %880, ptr @.str.4, ptr @.str.5
  %881 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52139)
          to label %.preheader1635.4 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.4:                                 ; preds = %.invoke2107
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 4)
          to label %882 unwind label %871

882:                                              ; preds = %.preheader1635.4
  %883 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2106 unwind label %871

.invoke2106:                                      ; preds = %882
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52140 = select i1 %883, ptr @.str.4, ptr @.str.5
  %884 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52140)
          to label %.preheader1635.5 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.5:                                 ; preds = %.invoke2106
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 5)
          to label %885 unwind label %871

885:                                              ; preds = %.preheader1635.5
  %886 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2105 unwind label %871

.invoke2105:                                      ; preds = %885
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52141 = select i1 %886, ptr @.str.4, ptr @.str.5
  %887 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52141)
          to label %.preheader1635.6 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.6:                                 ; preds = %.invoke2105
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %888 unwind label %871

888:                                              ; preds = %.preheader1635.6
  %889 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2104 unwind label %871

.invoke2104:                                      ; preds = %888
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52142 = select i1 %889, ptr @.str.4, ptr @.str.5
  %890 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52142)
          to label %.preheader1635.7 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.7:                                 ; preds = %.invoke2104
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 7)
          to label %891 unwind label %871

891:                                              ; preds = %.preheader1635.7
  %892 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2103 unwind label %871

.invoke2103:                                      ; preds = %891
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52143 = select i1 %892, ptr @.str.4, ptr @.str.5
  %893 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52143)
          to label %.preheader1635.8 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.8:                                 ; preds = %.invoke2103
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 8)
          to label %894 unwind label %871

894:                                              ; preds = %.preheader1635.8
  %895 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2102 unwind label %871

.invoke2102:                                      ; preds = %894
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52144 = select i1 %895, ptr @.str.4, ptr @.str.5
  %896 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52144)
          to label %.preheader1635.9 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.9:                                 ; preds = %.invoke2102
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %897 unwind label %871

897:                                              ; preds = %.preheader1635.9
  %898 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2101 unwind label %871

.invoke2101:                                      ; preds = %897
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52145 = select i1 %898, ptr @.str.4, ptr @.str.5
  %899 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52145)
          to label %.preheader1635.10 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.10:                                ; preds = %.invoke2101
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 10)
          to label %900 unwind label %871

900:                                              ; preds = %.preheader1635.10
  %901 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2100 unwind label %871

.invoke2100:                                      ; preds = %900
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52146 = select i1 %901, ptr @.str.4, ptr @.str.5
  %902 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52146)
          to label %.preheader1635.11 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.11:                                ; preds = %.invoke2100
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 11)
          to label %903 unwind label %871

903:                                              ; preds = %.preheader1635.11
  %904 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2099 unwind label %871

.invoke2099:                                      ; preds = %903
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52147 = select i1 %904, ptr @.str.4, ptr @.str.5
  %905 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52147)
          to label %.preheader1635.12 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

.preheader1635.12:                                ; preds = %.invoke2099
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %33) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %33, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %906 unwind label %871

906:                                              ; preds = %.preheader1635.12
  %907 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %33)
          to label %.invoke2098 unwind label %871

.invoke2098:                                      ; preds = %906
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %33) #6
  %.str.4..str.52148 = select i1 %907, ptr @.str.4, ptr @.str.5
  %908 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52148)
          to label %909 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit

909:                                              ; preds = %.invoke2098
  %910 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %911 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

911:                                              ; preds = %909
  %912 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %913 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

913:                                              ; preds = %911
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %34) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %34, ptr noundef nonnull align 8 dereferenceable(48) %30)
          to label %914 unwind label %920

914:                                              ; preds = %913
  %915 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %30, ptr noundef nonnull align 8 dereferenceable(48) %34)
          to label %916 unwind label %922

916:                                              ; preds = %914
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %34) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %34) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %917 unwind label %925

917:                                              ; preds = %916
  %918 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2097 unwind label %925

.invoke2097:                                      ; preds = %917
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52149 = select i1 %918, ptr @.str.4, ptr @.str.5
  %919 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52149)
          to label %927 unwind label %.loopexit.split-lp1628.loopexit

920:                                              ; preds = %913
  %921 = landingpad { ptr, i32 }
          cleanup
  br label %924

922:                                              ; preds = %914
  %923 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %34) #6
  br label %924

924:                                              ; preds = %922, %920
  %.pn1069 = phi { ptr, i32 } [ %923, %922 ], [ %921, %920 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %34) #6
  br label %.loopexit.split-lp1628

925:                                              ; preds = %972, %971, %968, %967, %964, %963, %960, %959, %956, %955, %952, %951, %948, %947, %944, %943, %940, %939, %936, %935, %932, %931, %928, %927, %917, %916
  %926 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  br label %.loopexit.split-lp1628

927:                                              ; preds = %.invoke2097
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 1)
          to label %928 unwind label %925

928:                                              ; preds = %927
  %929 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2096 unwind label %925

.invoke2096:                                      ; preds = %928
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52150 = select i1 %929, ptr @.str.4, ptr @.str.5
  %930 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52150)
          to label %931 unwind label %.loopexit.split-lp1628.loopexit

931:                                              ; preds = %.invoke2096
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %932 unwind label %925

932:                                              ; preds = %931
  %933 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2095 unwind label %925

.invoke2095:                                      ; preds = %932
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52151 = select i1 %933, ptr @.str.4, ptr @.str.5
  %934 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52151)
          to label %935 unwind label %.loopexit.split-lp1628.loopexit

935:                                              ; preds = %.invoke2095
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %936 unwind label %925

936:                                              ; preds = %935
  %937 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2094 unwind label %925

.invoke2094:                                      ; preds = %936
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52152 = select i1 %937, ptr @.str.4, ptr @.str.5
  %938 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52152)
          to label %939 unwind label %.loopexit.split-lp1628.loopexit

939:                                              ; preds = %.invoke2094
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 4)
          to label %940 unwind label %925

940:                                              ; preds = %939
  %941 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2093 unwind label %925

.invoke2093:                                      ; preds = %940
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52153 = select i1 %941, ptr @.str.4, ptr @.str.5
  %942 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52153)
          to label %943 unwind label %.loopexit.split-lp1628.loopexit

943:                                              ; preds = %.invoke2093
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 5)
          to label %944 unwind label %925

944:                                              ; preds = %943
  %945 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2092 unwind label %925

.invoke2092:                                      ; preds = %944
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52154 = select i1 %945, ptr @.str.4, ptr @.str.5
  %946 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52154)
          to label %947 unwind label %.loopexit.split-lp1628.loopexit

947:                                              ; preds = %.invoke2092
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %948 unwind label %925

948:                                              ; preds = %947
  %949 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2091 unwind label %925

.invoke2091:                                      ; preds = %948
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52155 = select i1 %949, ptr @.str.4, ptr @.str.5
  %950 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52155)
          to label %951 unwind label %.loopexit.split-lp1628.loopexit

951:                                              ; preds = %.invoke2091
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 7)
          to label %952 unwind label %925

952:                                              ; preds = %951
  %953 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2090 unwind label %925

.invoke2090:                                      ; preds = %952
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52156 = select i1 %953, ptr @.str.4, ptr @.str.5
  %954 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52156)
          to label %955 unwind label %.loopexit.split-lp1628.loopexit

955:                                              ; preds = %.invoke2090
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 8)
          to label %956 unwind label %925

956:                                              ; preds = %955
  %957 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2089 unwind label %925

.invoke2089:                                      ; preds = %956
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52157 = select i1 %957, ptr @.str.4, ptr @.str.5
  %958 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52157)
          to label %959 unwind label %.loopexit.split-lp1628.loopexit

959:                                              ; preds = %.invoke2089
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %960 unwind label %925

960:                                              ; preds = %959
  %961 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2088 unwind label %925

.invoke2088:                                      ; preds = %960
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52158 = select i1 %961, ptr @.str.4, ptr @.str.5
  %962 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52158)
          to label %963 unwind label %.loopexit.split-lp1628.loopexit

963:                                              ; preds = %.invoke2088
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 10)
          to label %964 unwind label %925

964:                                              ; preds = %963
  %965 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2087 unwind label %925

.invoke2087:                                      ; preds = %964
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52159 = select i1 %965, ptr @.str.4, ptr @.str.5
  %966 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52159)
          to label %967 unwind label %.loopexit.split-lp1628.loopexit

967:                                              ; preds = %.invoke2087
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 11)
          to label %968 unwind label %925

968:                                              ; preds = %967
  %969 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2086 unwind label %925

.invoke2086:                                      ; preds = %968
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52160 = select i1 %969, ptr @.str.4, ptr @.str.5
  %970 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52160)
          to label %971 unwind label %.loopexit.split-lp1628.loopexit

971:                                              ; preds = %.invoke2086
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %35) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %35, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %972 unwind label %925

972:                                              ; preds = %971
  %973 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %35)
          to label %.invoke2085 unwind label %925

.invoke2085:                                      ; preds = %972
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %35) #6
  %.str.4..str.52161 = select i1 %973, ptr @.str.4, ptr @.str.5
  %974 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52161)
          to label %975 unwind label %.loopexit.split-lp1628.loopexit

975:                                              ; preds = %.invoke2085
  %976 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1631.preheader unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1631.preheader:                         ; preds = %975
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %36, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %977 unwind label %987

977:                                              ; preds = %.preheader1631.preheader
  %978 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %36, i1 noundef zeroext false)
          to label %.preheader1631.1 unwind label %987

.preheader1631.1:                                 ; preds = %977
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %36, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %979 unwind label %987

979:                                              ; preds = %.preheader1631.1
  %980 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %36, i1 noundef zeroext false)
          to label %.preheader1631.2 unwind label %987

.preheader1631.2:                                 ; preds = %979
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %36, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %981 unwind label %987

981:                                              ; preds = %.preheader1631.2
  %982 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %36, i1 noundef zeroext false)
          to label %.preheader1631.3 unwind label %987

.preheader1631.3:                                 ; preds = %981
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %36, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %983 unwind label %987

983:                                              ; preds = %.preheader1631.3
  %984 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %36, i1 noundef zeroext false)
          to label %.preheader1631.4 unwind label %987

.preheader1631.4:                                 ; preds = %983
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %36) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %36, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %985 unwind label %987

985:                                              ; preds = %.preheader1631.4
  %986 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %36, i1 noundef zeroext false)
          to label %.preheader1626.preheader unwind label %987

.preheader1626.preheader:                         ; preds = %985
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 0)
          to label %989 unwind label %992

987:                                              ; preds = %985, %.preheader1631.4, %983, %.preheader1631.3, %981, %.preheader1631.2, %979, %.preheader1631.1, %977, %.preheader1631.preheader
  %988 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %36) #6
  br label %.loopexit.split-lp1628

989:                                              ; preds = %.preheader1626.preheader
  %990 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2084 unwind label %992

.invoke2084:                                      ; preds = %989
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52162 = select i1 %990, ptr @.str.4, ptr @.str.5
  %991 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52162)
          to label %.preheader1626.1 unwind label %.loopexit1627

992:                                              ; preds = %1027, %.preheader1626.12, %1024, %.preheader1626.11, %1021, %.preheader1626.10, %1018, %.preheader1626.9, %1015, %.preheader1626.8, %1012, %.preheader1626.7, %1009, %.preheader1626.6, %1006, %.preheader1626.5, %1003, %.preheader1626.4, %1000, %.preheader1626.3, %997, %.preheader1626.2, %994, %.preheader1626.1, %989, %.preheader1626.preheader
  %993 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  br label %.loopexit.split-lp1628

.preheader1626.1:                                 ; preds = %.invoke2084
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 1)
          to label %994 unwind label %992

994:                                              ; preds = %.preheader1626.1
  %995 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2083 unwind label %992

.invoke2083:                                      ; preds = %994
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52163 = select i1 %995, ptr @.str.4, ptr @.str.5
  %996 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52163)
          to label %.preheader1626.2 unwind label %.loopexit1627

.preheader1626.2:                                 ; preds = %.invoke2083
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %997 unwind label %992

997:                                              ; preds = %.preheader1626.2
  %998 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2082 unwind label %992

.invoke2082:                                      ; preds = %997
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52164 = select i1 %998, ptr @.str.4, ptr @.str.5
  %999 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52164)
          to label %.preheader1626.3 unwind label %.loopexit1627

.preheader1626.3:                                 ; preds = %.invoke2082
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 3)
          to label %1000 unwind label %992

1000:                                             ; preds = %.preheader1626.3
  %1001 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2081 unwind label %992

.invoke2081:                                      ; preds = %1000
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52165 = select i1 %1001, ptr @.str.4, ptr @.str.5
  %1002 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52165)
          to label %.preheader1626.4 unwind label %.loopexit1627

.preheader1626.4:                                 ; preds = %.invoke2081
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 4)
          to label %1003 unwind label %992

1003:                                             ; preds = %.preheader1626.4
  %1004 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2080 unwind label %992

.invoke2080:                                      ; preds = %1003
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52166 = select i1 %1004, ptr @.str.4, ptr @.str.5
  %1005 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52166)
          to label %.preheader1626.5 unwind label %.loopexit1627

.preheader1626.5:                                 ; preds = %.invoke2080
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 5)
          to label %1006 unwind label %992

1006:                                             ; preds = %.preheader1626.5
  %1007 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2079 unwind label %992

.invoke2079:                                      ; preds = %1006
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52167 = select i1 %1007, ptr @.str.4, ptr @.str.5
  %1008 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52167)
          to label %.preheader1626.6 unwind label %.loopexit1627

.preheader1626.6:                                 ; preds = %.invoke2079
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 6)
          to label %1009 unwind label %992

1009:                                             ; preds = %.preheader1626.6
  %1010 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2078 unwind label %992

.invoke2078:                                      ; preds = %1009
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52168 = select i1 %1010, ptr @.str.4, ptr @.str.5
  %1011 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52168)
          to label %.preheader1626.7 unwind label %.loopexit1627

.preheader1626.7:                                 ; preds = %.invoke2078
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 7)
          to label %1012 unwind label %992

1012:                                             ; preds = %.preheader1626.7
  %1013 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2077 unwind label %992

.invoke2077:                                      ; preds = %1012
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52169 = select i1 %1013, ptr @.str.4, ptr @.str.5
  %1014 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52169)
          to label %.preheader1626.8 unwind label %.loopexit1627

.preheader1626.8:                                 ; preds = %.invoke2077
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 8)
          to label %1015 unwind label %992

1015:                                             ; preds = %.preheader1626.8
  %1016 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2076 unwind label %992

.invoke2076:                                      ; preds = %1015
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52170 = select i1 %1016, ptr @.str.4, ptr @.str.5
  %1017 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52170)
          to label %.preheader1626.9 unwind label %.loopexit1627

.preheader1626.9:                                 ; preds = %.invoke2076
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 9)
          to label %1018 unwind label %992

1018:                                             ; preds = %.preheader1626.9
  %1019 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2075 unwind label %992

.invoke2075:                                      ; preds = %1018
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52171 = select i1 %1019, ptr @.str.4, ptr @.str.5
  %1020 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52171)
          to label %.preheader1626.10 unwind label %.loopexit1627

.preheader1626.10:                                ; preds = %.invoke2075
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 10)
          to label %1021 unwind label %992

1021:                                             ; preds = %.preheader1626.10
  %1022 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2074 unwind label %992

.invoke2074:                                      ; preds = %1021
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52172 = select i1 %1022, ptr @.str.4, ptr @.str.5
  %1023 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52172)
          to label %.preheader1626.11 unwind label %.loopexit1627

.preheader1626.11:                                ; preds = %.invoke2074
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 11)
          to label %1024 unwind label %992

1024:                                             ; preds = %.preheader1626.11
  %1025 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2073 unwind label %992

.invoke2073:                                      ; preds = %1024
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52173 = select i1 %1025, ptr @.str.4, ptr @.str.5
  %1026 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52173)
          to label %.preheader1626.12 unwind label %.loopexit1627

.preheader1626.12:                                ; preds = %.invoke2073
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %37) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %37, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 12)
          to label %1027 unwind label %992

1027:                                             ; preds = %.preheader1626.12
  %1028 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %37)
          to label %.invoke2072 unwind label %992

.invoke2072:                                      ; preds = %1027
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %37) #6
  %.str.4..str.52174 = select i1 %1028, ptr @.str.4, ptr @.str.5
  %1029 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52174)
          to label %1030 unwind label %.loopexit1627

1030:                                             ; preds = %.invoke2072
  %1031 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1032 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1032:                                             ; preds = %1030
  %1033 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1034 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1034:                                             ; preds = %1032
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %1035 unwind label %1059

1035:                                             ; preds = %1034
  %1036 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1033, ptr noundef nonnull align 8 dereferenceable(32) %38)
          to label %1037 unwind label %1061

1037:                                             ; preds = %1035
  %1038 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1036, ptr noundef nonnull @.str.3)
          to label %1039 unwind label %1061

1039:                                             ; preds = %1037
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  %1040 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %30, ptr noundef nonnull @.str.8)
          to label %1041 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1041:                                             ; preds = %1039
  %1042 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1043 unwind label %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1043:                                             ; preds = %1041
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %39, ptr noundef nonnull align 8 dereferenceable(48) %30, i32 noundef 2)
          to label %1044 unwind label %1064

1044:                                             ; preds = %1043
  %1045 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1042, ptr noundef nonnull align 8 dereferenceable(32) %39)
          to label %1046 unwind label %1066

1046:                                             ; preds = %1044
  %1047 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1045, ptr noundef nonnull @.str.3)
          to label %1048 unwind label %1066

1048:                                             ; preds = %1046
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %30) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %30) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %28) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %28) #6
  %1049 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %1050 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1049, ptr noundef nonnull @.str.2)
  %1051 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1050, i32 noundef 13)
  %1052 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1051, ptr noundef nonnull @.str.2)
  %1053 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1052, i32 noundef 13)
  %1054 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1053, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %40) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %41) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %41, i32 noundef 13, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %40, ptr noundef nonnull align 4 dereferenceable(20) %41, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %41) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %42) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0, ptr noundef null)
          to label %.preheader1622.preheader unwind label %1070

.preheader1622.preheader:                         ; preds = %1048
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1055 unwind label %1072

1055:                                             ; preds = %.preheader1622.preheader
  %1056 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2226 unwind label %1072

.invoke2226:                                      ; preds = %1055
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %1057 = select i1 %1056, ptr @.str.4, ptr @.str.5
  %1058 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %1057)
          to label %.preheader1622.1 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

1059:                                             ; preds = %1034
  %1060 = landingpad { ptr, i32 }
          cleanup
  br label %1063

1061:                                             ; preds = %1037, %1035
  %1062 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #6
  br label %1063

1063:                                             ; preds = %1061, %1059
  %.pn1071 = phi { ptr, i32 } [ %1062, %1061 ], [ %1060, %1059 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #6
  br label %.loopexit.split-lp1628

1064:                                             ; preds = %1043
  %1065 = landingpad { ptr, i32 }
          cleanup
  br label %1068

1066:                                             ; preds = %1046, %1044
  %1067 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #6
  br label %1068

1068:                                             ; preds = %1066, %1064
  %.pn1073 = phi { ptr, i32 } [ %1067, %1066 ], [ %1065, %1064 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #6
  br label %.loopexit.split-lp1628

.loopexit.split-lp1628:                           ; preds = %.loopexit1627, %.loopexit.split-lp1628.loopexit.split-lp.loopexit, %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1628.loopexit, %1068, %1063, %992, %987, %925, %924, %871, %866, %816
  %.pn1264 = phi { ptr, i32 } [ %817, %816 ], [ %867, %866 ], [ %872, %871 ], [ %926, %925 ], [ %988, %987 ], [ %993, %992 ], [ %.pn1073, %1068 ], [ %.pn1071, %1063 ], [ %.pn1069, %924 ], [ %lpad.loopexit1629, %.loopexit1627 ], [ %lpad.loopexit1632, %.loopexit.split-lp1628.loopexit ], [ %lpad.loopexit1636, %.loopexit.split-lp1628.loopexit.split-lp.loopexit ], [ %lpad.loopexit1640, %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1641, %.loopexit.split-lp1628.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %30) #6
  br label %1069

1069:                                             ; preds = %.loopexit.split-lp1628, %814
  %.pn1264.pn = phi { ptr, i32 } [ %.pn1264, %.loopexit.split-lp1628 ], [ %815, %814 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %30) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %28) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %28) #6
  br label %5024

1070:                                             ; preds = %1048
  %1071 = landingpad { ptr, i32 }
          cleanup
  br label %1325

1072:                                             ; preds = %1107, %.preheader1622.12, %1104, %.preheader1622.11, %1101, %.preheader1622.10, %1098, %.preheader1622.9, %1095, %.preheader1622.8, %1092, %.preheader1622.7, %1089, %.preheader1622.6, %1086, %.preheader1622.5, %1083, %.preheader1622.4, %1080, %.preheader1622.3, %1077, %.preheader1622.2, %1074, %.preheader1622.1, %1055, %.preheader1622.preheader
  %1073 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  br label %.loopexit.split-lp1611

.loopexit1610:                                    ; preds = %.invoke2187, %.invoke2186, %.invoke2185, %.invoke2184, %.invoke2183, %.invoke2182, %.invoke2181, %.invoke2180, %.invoke2179, %.invoke2178, %.invoke2177, %.invoke2176, %.invoke2175
  %lpad.loopexit1612 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1611

.loopexit.split-lp1611.loopexit:                  ; preds = %.invoke2200, %.invoke2199, %.invoke2198, %.invoke2197, %.invoke2196, %.invoke2195, %.invoke2194, %.invoke2193, %.invoke2192, %.invoke2191, %.invoke2190, %.invoke2189, %.invoke2188
  %lpad.loopexit1615 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1611

.loopexit.split-lp1611.loopexit.split-lp.loopexit: ; preds = %.invoke2213, %.invoke2212, %.invoke2211, %.invoke2210, %.invoke2209, %.invoke2208, %.invoke2207, %.invoke2206, %.invoke2205, %.invoke2204, %.invoke2203, %.invoke2202, %.invoke2201
  %lpad.loopexit1619 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1611

.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2226, %.invoke2225, %.invoke2224, %.invoke2223, %.invoke2222, %.invoke2221, %.invoke2220, %.invoke2219, %.invoke2218, %.invoke2217, %.invoke2216, %.invoke2215, %.invoke2214
  %lpad.loopexit1623 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1611

.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %1297, %1295, %1288, %1286, %1231, %1167, %1165, %1110
  %lpad.loopexit.split-lp1624 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1611

.preheader1622.1:                                 ; preds = %.invoke2226
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 1)
          to label %1074 unwind label %1072

1074:                                             ; preds = %.preheader1622.1
  %1075 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2225 unwind label %1072

.invoke2225:                                      ; preds = %1074
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52227 = select i1 %1075, ptr @.str.4, ptr @.str.5
  %1076 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52227)
          to label %.preheader1622.2 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.2:                                 ; preds = %.invoke2225
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1077 unwind label %1072

1077:                                             ; preds = %.preheader1622.2
  %1078 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2224 unwind label %1072

.invoke2224:                                      ; preds = %1077
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52228 = select i1 %1078, ptr @.str.4, ptr @.str.5
  %1079 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52228)
          to label %.preheader1622.3 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.3:                                 ; preds = %.invoke2224
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1080 unwind label %1072

1080:                                             ; preds = %.preheader1622.3
  %1081 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2223 unwind label %1072

.invoke2223:                                      ; preds = %1080
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52229 = select i1 %1081, ptr @.str.4, ptr @.str.5
  %1082 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52229)
          to label %.preheader1622.4 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.4:                                 ; preds = %.invoke2223
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 4)
          to label %1083 unwind label %1072

1083:                                             ; preds = %.preheader1622.4
  %1084 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2222 unwind label %1072

.invoke2222:                                      ; preds = %1083
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52230 = select i1 %1084, ptr @.str.4, ptr @.str.5
  %1085 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52230)
          to label %.preheader1622.5 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.5:                                 ; preds = %.invoke2222
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 5)
          to label %1086 unwind label %1072

1086:                                             ; preds = %.preheader1622.5
  %1087 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2221 unwind label %1072

.invoke2221:                                      ; preds = %1086
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52231 = select i1 %1087, ptr @.str.4, ptr @.str.5
  %1088 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52231)
          to label %.preheader1622.6 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.6:                                 ; preds = %.invoke2221
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1089 unwind label %1072

1089:                                             ; preds = %.preheader1622.6
  %1090 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2220 unwind label %1072

.invoke2220:                                      ; preds = %1089
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52232 = select i1 %1090, ptr @.str.4, ptr @.str.5
  %1091 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52232)
          to label %.preheader1622.7 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.7:                                 ; preds = %.invoke2220
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 7)
          to label %1092 unwind label %1072

1092:                                             ; preds = %.preheader1622.7
  %1093 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2219 unwind label %1072

.invoke2219:                                      ; preds = %1092
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52233 = select i1 %1093, ptr @.str.4, ptr @.str.5
  %1094 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52233)
          to label %.preheader1622.8 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.8:                                 ; preds = %.invoke2219
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 8)
          to label %1095 unwind label %1072

1095:                                             ; preds = %.preheader1622.8
  %1096 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2218 unwind label %1072

.invoke2218:                                      ; preds = %1095
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52234 = select i1 %1096, ptr @.str.4, ptr @.str.5
  %1097 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52234)
          to label %.preheader1622.9 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.9:                                 ; preds = %.invoke2218
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1098 unwind label %1072

1098:                                             ; preds = %.preheader1622.9
  %1099 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2217 unwind label %1072

.invoke2217:                                      ; preds = %1098
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52235 = select i1 %1099, ptr @.str.4, ptr @.str.5
  %1100 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52235)
          to label %.preheader1622.10 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.10:                                ; preds = %.invoke2217
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 10)
          to label %1101 unwind label %1072

1101:                                             ; preds = %.preheader1622.10
  %1102 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2216 unwind label %1072

.invoke2216:                                      ; preds = %1101
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52236 = select i1 %1102, ptr @.str.4, ptr @.str.5
  %1103 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52236)
          to label %.preheader1622.11 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.11:                                ; preds = %.invoke2216
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 11)
          to label %1104 unwind label %1072

1104:                                             ; preds = %.preheader1622.11
  %1105 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2215 unwind label %1072

.invoke2215:                                      ; preds = %1104
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52237 = select i1 %1105, ptr @.str.4, ptr @.str.5
  %1106 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52237)
          to label %.preheader1622.12 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1622.12:                                ; preds = %.invoke2215
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %43) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %43, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1107 unwind label %1072

1107:                                             ; preds = %.preheader1622.12
  %1108 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %43)
          to label %.invoke2214 unwind label %1072

.invoke2214:                                      ; preds = %1107
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %43) #6
  %.str.4..str.52238 = select i1 %1108, ptr @.str.4, ptr @.str.5
  %1109 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52238)
          to label %1110 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit

1110:                                             ; preds = %.invoke2214
  %1111 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1621.preheader unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1621.preheader:                         ; preds = %1110
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %44) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1112 unwind label %1122

1112:                                             ; preds = %.preheader1621.preheader
  %1113 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext true)
          to label %.preheader1621.1 unwind label %1122

.preheader1621.1:                                 ; preds = %1112
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %44) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1114 unwind label %1122

1114:                                             ; preds = %.preheader1621.1
  %1115 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext true)
          to label %.preheader1621.2 unwind label %1122

.preheader1621.2:                                 ; preds = %1114
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %44) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1116 unwind label %1122

1116:                                             ; preds = %.preheader1621.2
  %1117 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext true)
          to label %.preheader1621.3 unwind label %1122

.preheader1621.3:                                 ; preds = %1116
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %44) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1118 unwind label %1122

1118:                                             ; preds = %.preheader1621.3
  %1119 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext true)
          to label %.preheader1621.4 unwind label %1122

.preheader1621.4:                                 ; preds = %1118
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %44) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %44, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1120 unwind label %1122

1120:                                             ; preds = %.preheader1621.4
  %1121 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %44, i1 noundef zeroext true)
          to label %.preheader1618.preheader unwind label %1122

.preheader1618.preheader:                         ; preds = %1120
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1124 unwind label %1127

1122:                                             ; preds = %1120, %.preheader1621.4, %1118, %.preheader1621.3, %1116, %.preheader1621.2, %1114, %.preheader1621.1, %1112, %.preheader1621.preheader
  %1123 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %44) #6
  br label %.loopexit.split-lp1611

1124:                                             ; preds = %.preheader1618.preheader
  %1125 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2213 unwind label %1127

.invoke2213:                                      ; preds = %1124
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52239 = select i1 %1125, ptr @.str.4, ptr @.str.5
  %1126 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52239)
          to label %.preheader1618.1 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

1127:                                             ; preds = %1162, %.preheader1618.12, %1159, %.preheader1618.11, %1156, %.preheader1618.10, %1153, %.preheader1618.9, %1150, %.preheader1618.8, %1147, %.preheader1618.7, %1144, %.preheader1618.6, %1141, %.preheader1618.5, %1138, %.preheader1618.4, %1135, %.preheader1618.3, %1132, %.preheader1618.2, %1129, %.preheader1618.1, %1124, %.preheader1618.preheader
  %1128 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  br label %.loopexit.split-lp1611

.preheader1618.1:                                 ; preds = %.invoke2213
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 1)
          to label %1129 unwind label %1127

1129:                                             ; preds = %.preheader1618.1
  %1130 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2212 unwind label %1127

.invoke2212:                                      ; preds = %1129
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52240 = select i1 %1130, ptr @.str.4, ptr @.str.5
  %1131 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52240)
          to label %.preheader1618.2 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.2:                                 ; preds = %.invoke2212
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1132 unwind label %1127

1132:                                             ; preds = %.preheader1618.2
  %1133 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2211 unwind label %1127

.invoke2211:                                      ; preds = %1132
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52241 = select i1 %1133, ptr @.str.4, ptr @.str.5
  %1134 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52241)
          to label %.preheader1618.3 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.3:                                 ; preds = %.invoke2211
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1135 unwind label %1127

1135:                                             ; preds = %.preheader1618.3
  %1136 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2210 unwind label %1127

.invoke2210:                                      ; preds = %1135
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52242 = select i1 %1136, ptr @.str.4, ptr @.str.5
  %1137 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52242)
          to label %.preheader1618.4 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.4:                                 ; preds = %.invoke2210
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 4)
          to label %1138 unwind label %1127

1138:                                             ; preds = %.preheader1618.4
  %1139 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2209 unwind label %1127

.invoke2209:                                      ; preds = %1138
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52243 = select i1 %1139, ptr @.str.4, ptr @.str.5
  %1140 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52243)
          to label %.preheader1618.5 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.5:                                 ; preds = %.invoke2209
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 5)
          to label %1141 unwind label %1127

1141:                                             ; preds = %.preheader1618.5
  %1142 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2208 unwind label %1127

.invoke2208:                                      ; preds = %1141
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52244 = select i1 %1142, ptr @.str.4, ptr @.str.5
  %1143 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52244)
          to label %.preheader1618.6 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.6:                                 ; preds = %.invoke2208
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1144 unwind label %1127

1144:                                             ; preds = %.preheader1618.6
  %1145 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2207 unwind label %1127

.invoke2207:                                      ; preds = %1144
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52245 = select i1 %1145, ptr @.str.4, ptr @.str.5
  %1146 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52245)
          to label %.preheader1618.7 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.7:                                 ; preds = %.invoke2207
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 7)
          to label %1147 unwind label %1127

1147:                                             ; preds = %.preheader1618.7
  %1148 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2206 unwind label %1127

.invoke2206:                                      ; preds = %1147
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52246 = select i1 %1148, ptr @.str.4, ptr @.str.5
  %1149 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52246)
          to label %.preheader1618.8 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.8:                                 ; preds = %.invoke2206
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 8)
          to label %1150 unwind label %1127

1150:                                             ; preds = %.preheader1618.8
  %1151 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2205 unwind label %1127

.invoke2205:                                      ; preds = %1150
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52247 = select i1 %1151, ptr @.str.4, ptr @.str.5
  %1152 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52247)
          to label %.preheader1618.9 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.9:                                 ; preds = %.invoke2205
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1153 unwind label %1127

1153:                                             ; preds = %.preheader1618.9
  %1154 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2204 unwind label %1127

.invoke2204:                                      ; preds = %1153
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52248 = select i1 %1154, ptr @.str.4, ptr @.str.5
  %1155 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52248)
          to label %.preheader1618.10 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.10:                                ; preds = %.invoke2204
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 10)
          to label %1156 unwind label %1127

1156:                                             ; preds = %.preheader1618.10
  %1157 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2203 unwind label %1127

.invoke2203:                                      ; preds = %1156
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52249 = select i1 %1157, ptr @.str.4, ptr @.str.5
  %1158 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52249)
          to label %.preheader1618.11 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.11:                                ; preds = %.invoke2203
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 11)
          to label %1159 unwind label %1127

1159:                                             ; preds = %.preheader1618.11
  %1160 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2202 unwind label %1127

.invoke2202:                                      ; preds = %1159
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52250 = select i1 %1160, ptr @.str.4, ptr @.str.5
  %1161 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52250)
          to label %.preheader1618.12 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

.preheader1618.12:                                ; preds = %.invoke2202
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %45) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %45, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1162 unwind label %1127

1162:                                             ; preds = %.preheader1618.12
  %1163 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %45)
          to label %.invoke2201 unwind label %1127

.invoke2201:                                      ; preds = %1162
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %45) #6
  %.str.4..str.52251 = select i1 %1163, ptr @.str.4, ptr @.str.5
  %1164 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52251)
          to label %1165 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit

1165:                                             ; preds = %.invoke2201
  %1166 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1167 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1167:                                             ; preds = %1165
  %1168 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1169 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1169:                                             ; preds = %1167
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %46) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %46, ptr noundef nonnull align 8 dereferenceable(48) %42)
          to label %1170 unwind label %1176

1170:                                             ; preds = %1169
  %1171 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %42, ptr noundef nonnull align 8 dereferenceable(48) %46)
          to label %1172 unwind label %1178

1172:                                             ; preds = %1170
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %46) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %46) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1173 unwind label %1181

1173:                                             ; preds = %1172
  %1174 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2200 unwind label %1181

.invoke2200:                                      ; preds = %1173
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52252 = select i1 %1174, ptr @.str.4, ptr @.str.5
  %1175 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52252)
          to label %1183 unwind label %.loopexit.split-lp1611.loopexit

1176:                                             ; preds = %1169
  %1177 = landingpad { ptr, i32 }
          cleanup
  br label %1180

1178:                                             ; preds = %1170
  %1179 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %46) #6
  br label %1180

1180:                                             ; preds = %1178, %1176
  %.pn1075 = phi { ptr, i32 } [ %1179, %1178 ], [ %1177, %1176 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %46) #6
  br label %.loopexit.split-lp1611

1181:                                             ; preds = %1228, %1227, %1224, %1223, %1220, %1219, %1216, %1215, %1212, %1211, %1208, %1207, %1204, %1203, %1200, %1199, %1196, %1195, %1192, %1191, %1188, %1187, %1184, %1183, %1173, %1172
  %1182 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  br label %.loopexit.split-lp1611

1183:                                             ; preds = %.invoke2200
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 1)
          to label %1184 unwind label %1181

1184:                                             ; preds = %1183
  %1185 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2199 unwind label %1181

.invoke2199:                                      ; preds = %1184
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52253 = select i1 %1185, ptr @.str.4, ptr @.str.5
  %1186 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52253)
          to label %1187 unwind label %.loopexit.split-lp1611.loopexit

1187:                                             ; preds = %.invoke2199
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1188 unwind label %1181

1188:                                             ; preds = %1187
  %1189 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2198 unwind label %1181

.invoke2198:                                      ; preds = %1188
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52254 = select i1 %1189, ptr @.str.4, ptr @.str.5
  %1190 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52254)
          to label %1191 unwind label %.loopexit.split-lp1611.loopexit

1191:                                             ; preds = %.invoke2198
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1192 unwind label %1181

1192:                                             ; preds = %1191
  %1193 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2197 unwind label %1181

.invoke2197:                                      ; preds = %1192
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52255 = select i1 %1193, ptr @.str.4, ptr @.str.5
  %1194 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52255)
          to label %1195 unwind label %.loopexit.split-lp1611.loopexit

1195:                                             ; preds = %.invoke2197
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 4)
          to label %1196 unwind label %1181

1196:                                             ; preds = %1195
  %1197 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2196 unwind label %1181

.invoke2196:                                      ; preds = %1196
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52256 = select i1 %1197, ptr @.str.4, ptr @.str.5
  %1198 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52256)
          to label %1199 unwind label %.loopexit.split-lp1611.loopexit

1199:                                             ; preds = %.invoke2196
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 5)
          to label %1200 unwind label %1181

1200:                                             ; preds = %1199
  %1201 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2195 unwind label %1181

.invoke2195:                                      ; preds = %1200
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52257 = select i1 %1201, ptr @.str.4, ptr @.str.5
  %1202 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52257)
          to label %1203 unwind label %.loopexit.split-lp1611.loopexit

1203:                                             ; preds = %.invoke2195
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1204 unwind label %1181

1204:                                             ; preds = %1203
  %1205 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2194 unwind label %1181

.invoke2194:                                      ; preds = %1204
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52258 = select i1 %1205, ptr @.str.4, ptr @.str.5
  %1206 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52258)
          to label %1207 unwind label %.loopexit.split-lp1611.loopexit

1207:                                             ; preds = %.invoke2194
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 7)
          to label %1208 unwind label %1181

1208:                                             ; preds = %1207
  %1209 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2193 unwind label %1181

.invoke2193:                                      ; preds = %1208
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52259 = select i1 %1209, ptr @.str.4, ptr @.str.5
  %1210 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52259)
          to label %1211 unwind label %.loopexit.split-lp1611.loopexit

1211:                                             ; preds = %.invoke2193
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 8)
          to label %1212 unwind label %1181

1212:                                             ; preds = %1211
  %1213 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2192 unwind label %1181

.invoke2192:                                      ; preds = %1212
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52260 = select i1 %1213, ptr @.str.4, ptr @.str.5
  %1214 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52260)
          to label %1215 unwind label %.loopexit.split-lp1611.loopexit

1215:                                             ; preds = %.invoke2192
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1216 unwind label %1181

1216:                                             ; preds = %1215
  %1217 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2191 unwind label %1181

.invoke2191:                                      ; preds = %1216
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52261 = select i1 %1217, ptr @.str.4, ptr @.str.5
  %1218 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52261)
          to label %1219 unwind label %.loopexit.split-lp1611.loopexit

1219:                                             ; preds = %.invoke2191
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 10)
          to label %1220 unwind label %1181

1220:                                             ; preds = %1219
  %1221 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2190 unwind label %1181

.invoke2190:                                      ; preds = %1220
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52262 = select i1 %1221, ptr @.str.4, ptr @.str.5
  %1222 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52262)
          to label %1223 unwind label %.loopexit.split-lp1611.loopexit

1223:                                             ; preds = %.invoke2190
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 11)
          to label %1224 unwind label %1181

1224:                                             ; preds = %1223
  %1225 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2189 unwind label %1181

.invoke2189:                                      ; preds = %1224
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52263 = select i1 %1225, ptr @.str.4, ptr @.str.5
  %1226 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52263)
          to label %1227 unwind label %.loopexit.split-lp1611.loopexit

1227:                                             ; preds = %.invoke2189
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %47) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %47, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1228 unwind label %1181

1228:                                             ; preds = %1227
  %1229 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %47)
          to label %.invoke2188 unwind label %1181

.invoke2188:                                      ; preds = %1228
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %47) #6
  %.str.4..str.52264 = select i1 %1229, ptr @.str.4, ptr @.str.5
  %1230 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52264)
          to label %1231 unwind label %.loopexit.split-lp1611.loopexit

1231:                                             ; preds = %.invoke2188
  %1232 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1614.preheader unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1614.preheader:                         ; preds = %1231
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %48) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %48, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1233 unwind label %1243

1233:                                             ; preds = %.preheader1614.preheader
  %1234 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %48, i1 noundef zeroext false)
          to label %.preheader1614.1 unwind label %1243

.preheader1614.1:                                 ; preds = %1233
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %48) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %48, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1235 unwind label %1243

1235:                                             ; preds = %.preheader1614.1
  %1236 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %48, i1 noundef zeroext false)
          to label %.preheader1614.2 unwind label %1243

.preheader1614.2:                                 ; preds = %1235
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %48) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %48, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1237 unwind label %1243

1237:                                             ; preds = %.preheader1614.2
  %1238 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %48, i1 noundef zeroext false)
          to label %.preheader1614.3 unwind label %1243

.preheader1614.3:                                 ; preds = %1237
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %48) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %48, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1239 unwind label %1243

1239:                                             ; preds = %.preheader1614.3
  %1240 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %48, i1 noundef zeroext false)
          to label %.preheader1614.4 unwind label %1243

.preheader1614.4:                                 ; preds = %1239
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %48) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %48, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1241 unwind label %1243

1241:                                             ; preds = %.preheader1614.4
  %1242 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %48, i1 noundef zeroext false)
          to label %.preheader1609.preheader unwind label %1243

.preheader1609.preheader:                         ; preds = %1241
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 0)
          to label %1245 unwind label %1248

1243:                                             ; preds = %1241, %.preheader1614.4, %1239, %.preheader1614.3, %1237, %.preheader1614.2, %1235, %.preheader1614.1, %1233, %.preheader1614.preheader
  %1244 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %48) #6
  br label %.loopexit.split-lp1611

1245:                                             ; preds = %.preheader1609.preheader
  %1246 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2187 unwind label %1248

.invoke2187:                                      ; preds = %1245
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52265 = select i1 %1246, ptr @.str.4, ptr @.str.5
  %1247 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52265)
          to label %.preheader1609.1 unwind label %.loopexit1610

1248:                                             ; preds = %1283, %.preheader1609.12, %1280, %.preheader1609.11, %1277, %.preheader1609.10, %1274, %.preheader1609.9, %1271, %.preheader1609.8, %1268, %.preheader1609.7, %1265, %.preheader1609.6, %1262, %.preheader1609.5, %1259, %.preheader1609.4, %1256, %.preheader1609.3, %1253, %.preheader1609.2, %1250, %.preheader1609.1, %1245, %.preheader1609.preheader
  %1249 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  br label %.loopexit.split-lp1611

.preheader1609.1:                                 ; preds = %.invoke2187
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 1)
          to label %1250 unwind label %1248

1250:                                             ; preds = %.preheader1609.1
  %1251 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2186 unwind label %1248

.invoke2186:                                      ; preds = %1250
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52266 = select i1 %1251, ptr @.str.4, ptr @.str.5
  %1252 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52266)
          to label %.preheader1609.2 unwind label %.loopexit1610

.preheader1609.2:                                 ; preds = %.invoke2186
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1253 unwind label %1248

1253:                                             ; preds = %.preheader1609.2
  %1254 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2185 unwind label %1248

.invoke2185:                                      ; preds = %1253
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52267 = select i1 %1254, ptr @.str.4, ptr @.str.5
  %1255 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52267)
          to label %.preheader1609.3 unwind label %.loopexit1610

.preheader1609.3:                                 ; preds = %.invoke2185
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 3)
          to label %1256 unwind label %1248

1256:                                             ; preds = %.preheader1609.3
  %1257 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2184 unwind label %1248

.invoke2184:                                      ; preds = %1256
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52268 = select i1 %1257, ptr @.str.4, ptr @.str.5
  %1258 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52268)
          to label %.preheader1609.4 unwind label %.loopexit1610

.preheader1609.4:                                 ; preds = %.invoke2184
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 4)
          to label %1259 unwind label %1248

1259:                                             ; preds = %.preheader1609.4
  %1260 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2183 unwind label %1248

.invoke2183:                                      ; preds = %1259
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52269 = select i1 %1260, ptr @.str.4, ptr @.str.5
  %1261 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52269)
          to label %.preheader1609.5 unwind label %.loopexit1610

.preheader1609.5:                                 ; preds = %.invoke2183
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 5)
          to label %1262 unwind label %1248

1262:                                             ; preds = %.preheader1609.5
  %1263 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2182 unwind label %1248

.invoke2182:                                      ; preds = %1262
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52270 = select i1 %1263, ptr @.str.4, ptr @.str.5
  %1264 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52270)
          to label %.preheader1609.6 unwind label %.loopexit1610

.preheader1609.6:                                 ; preds = %.invoke2182
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 6)
          to label %1265 unwind label %1248

1265:                                             ; preds = %.preheader1609.6
  %1266 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2181 unwind label %1248

.invoke2181:                                      ; preds = %1265
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52271 = select i1 %1266, ptr @.str.4, ptr @.str.5
  %1267 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52271)
          to label %.preheader1609.7 unwind label %.loopexit1610

.preheader1609.7:                                 ; preds = %.invoke2181
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 7)
          to label %1268 unwind label %1248

1268:                                             ; preds = %.preheader1609.7
  %1269 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2180 unwind label %1248

.invoke2180:                                      ; preds = %1268
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52272 = select i1 %1269, ptr @.str.4, ptr @.str.5
  %1270 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52272)
          to label %.preheader1609.8 unwind label %.loopexit1610

.preheader1609.8:                                 ; preds = %.invoke2180
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 8)
          to label %1271 unwind label %1248

1271:                                             ; preds = %.preheader1609.8
  %1272 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2179 unwind label %1248

.invoke2179:                                      ; preds = %1271
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52273 = select i1 %1272, ptr @.str.4, ptr @.str.5
  %1273 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52273)
          to label %.preheader1609.9 unwind label %.loopexit1610

.preheader1609.9:                                 ; preds = %.invoke2179
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 9)
          to label %1274 unwind label %1248

1274:                                             ; preds = %.preheader1609.9
  %1275 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2178 unwind label %1248

.invoke2178:                                      ; preds = %1274
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52274 = select i1 %1275, ptr @.str.4, ptr @.str.5
  %1276 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52274)
          to label %.preheader1609.10 unwind label %.loopexit1610

.preheader1609.10:                                ; preds = %.invoke2178
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 10)
          to label %1277 unwind label %1248

1277:                                             ; preds = %.preheader1609.10
  %1278 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2177 unwind label %1248

.invoke2177:                                      ; preds = %1277
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52275 = select i1 %1278, ptr @.str.4, ptr @.str.5
  %1279 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52275)
          to label %.preheader1609.11 unwind label %.loopexit1610

.preheader1609.11:                                ; preds = %.invoke2177
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 11)
          to label %1280 unwind label %1248

1280:                                             ; preds = %.preheader1609.11
  %1281 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2176 unwind label %1248

.invoke2176:                                      ; preds = %1280
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52276 = select i1 %1281, ptr @.str.4, ptr @.str.5
  %1282 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52276)
          to label %.preheader1609.12 unwind label %.loopexit1610

.preheader1609.12:                                ; preds = %.invoke2176
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %49) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %49, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 12)
          to label %1283 unwind label %1248

1283:                                             ; preds = %.preheader1609.12
  %1284 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %49)
          to label %.invoke2175 unwind label %1248

.invoke2175:                                      ; preds = %1283
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %49) #6
  %.str.4..str.52277 = select i1 %1284, ptr @.str.4, ptr @.str.5
  %1285 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52277)
          to label %1286 unwind label %.loopexit1610

1286:                                             ; preds = %.invoke2175
  %1287 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1288 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1288:                                             ; preds = %1286
  %1289 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1290 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1290:                                             ; preds = %1288
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %50, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1291 unwind label %1315

1291:                                             ; preds = %1290
  %1292 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1289, ptr noundef nonnull align 8 dereferenceable(32) %50)
          to label %1293 unwind label %1317

1293:                                             ; preds = %1291
  %1294 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1292, ptr noundef nonnull @.str.3)
          to label %1295 unwind label %1317

1295:                                             ; preds = %1293
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #6
  %1296 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %42, ptr noundef nonnull @.str.8)
          to label %1297 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1297:                                             ; preds = %1295
  %1298 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1299 unwind label %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1299:                                             ; preds = %1297
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %51) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(48) %42, i32 noundef 2)
          to label %1300 unwind label %1320

1300:                                             ; preds = %1299
  %1301 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1298, ptr noundef nonnull align 8 dereferenceable(32) %51)
          to label %1302 unwind label %1322

1302:                                             ; preds = %1300
  %1303 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1301, ptr noundef nonnull @.str.3)
          to label %1304 unwind label %1322

1304:                                             ; preds = %1302
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %42) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %42) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %40) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %40) #6
  %1305 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %1306 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1305, ptr noundef nonnull @.str.2)
  %1307 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1306, i32 noundef 13)
  %1308 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1307, ptr noundef nonnull @.str.2)
  %1309 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1308, i32 noundef 0)
  %1310 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1309, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %52) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %53) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %53, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %52, ptr noundef nonnull align 4 dereferenceable(20) %53, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %53) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %54) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0, ptr noundef null)
          to label %.preheader1605.preheader unwind label %1326

.preheader1605.preheader:                         ; preds = %1304
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1311 unwind label %1328

1311:                                             ; preds = %.preheader1605.preheader
  %1312 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2329 unwind label %1328

.invoke2329:                                      ; preds = %1311
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %1313 = select i1 %1312, ptr @.str.4, ptr @.str.5
  %1314 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %1313)
          to label %.preheader1605.1 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

1315:                                             ; preds = %1290
  %1316 = landingpad { ptr, i32 }
          cleanup
  br label %1319

1317:                                             ; preds = %1293, %1291
  %1318 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #6
  br label %1319

1319:                                             ; preds = %1317, %1315
  %.pn1077 = phi { ptr, i32 } [ %1318, %1317 ], [ %1316, %1315 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #6
  br label %.loopexit.split-lp1611

1320:                                             ; preds = %1299
  %1321 = landingpad { ptr, i32 }
          cleanup
  br label %1324

1322:                                             ; preds = %1302, %1300
  %1323 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #6
  br label %1324

1324:                                             ; preds = %1322, %1320
  %.pn1079 = phi { ptr, i32 } [ %1323, %1322 ], [ %1321, %1320 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #6
  br label %.loopexit.split-lp1611

.loopexit.split-lp1611:                           ; preds = %.loopexit1610, %.loopexit.split-lp1611.loopexit.split-lp.loopexit, %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1611.loopexit, %1324, %1319, %1248, %1243, %1181, %1180, %1127, %1122, %1072
  %.pn1261 = phi { ptr, i32 } [ %1073, %1072 ], [ %1123, %1122 ], [ %1128, %1127 ], [ %1182, %1181 ], [ %1244, %1243 ], [ %1249, %1248 ], [ %.pn1079, %1324 ], [ %.pn1077, %1319 ], [ %.pn1075, %1180 ], [ %lpad.loopexit1612, %.loopexit1610 ], [ %lpad.loopexit1615, %.loopexit.split-lp1611.loopexit ], [ %lpad.loopexit1619, %.loopexit.split-lp1611.loopexit.split-lp.loopexit ], [ %lpad.loopexit1623, %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1624, %.loopexit.split-lp1611.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %42) #6
  br label %1325

1325:                                             ; preds = %.loopexit.split-lp1611, %1070
  %.pn1261.pn = phi { ptr, i32 } [ %.pn1261, %.loopexit.split-lp1611 ], [ %1071, %1070 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %42) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %40) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %40) #6
  br label %5024

1326:                                             ; preds = %1304
  %1327 = landingpad { ptr, i32 }
          cleanup
  br label %1581

1328:                                             ; preds = %1363, %.preheader1605.12, %1360, %.preheader1605.11, %1357, %.preheader1605.10, %1354, %.preheader1605.9, %1351, %.preheader1605.8, %1348, %.preheader1605.7, %1345, %.preheader1605.6, %1342, %.preheader1605.5, %1339, %.preheader1605.4, %1336, %.preheader1605.3, %1333, %.preheader1605.2, %1330, %.preheader1605.1, %1311, %.preheader1605.preheader
  %1329 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  br label %.loopexit.split-lp1594

.loopexit1593:                                    ; preds = %.invoke2290, %.invoke2289, %.invoke2288, %.invoke2287, %.invoke2286, %.invoke2285, %.invoke2284, %.invoke2283, %.invoke2282, %.invoke2281, %.invoke2280, %.invoke2279, %.invoke2278
  %lpad.loopexit1595 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1594

.loopexit.split-lp1594.loopexit:                  ; preds = %.invoke2303, %.invoke2302, %.invoke2301, %.invoke2300, %.invoke2299, %.invoke2298, %.invoke2297, %.invoke2296, %.invoke2295, %.invoke2294, %.invoke2293, %.invoke2292, %.invoke2291
  %lpad.loopexit1598 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1594

.loopexit.split-lp1594.loopexit.split-lp.loopexit: ; preds = %.invoke2316, %.invoke2315, %.invoke2314, %.invoke2313, %.invoke2312, %.invoke2311, %.invoke2310, %.invoke2309, %.invoke2308, %.invoke2307, %.invoke2306, %.invoke2305, %.invoke2304
  %lpad.loopexit1602 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1594

.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2329, %.invoke2328, %.invoke2327, %.invoke2326, %.invoke2325, %.invoke2324, %.invoke2323, %.invoke2322, %.invoke2321, %.invoke2320, %.invoke2319, %.invoke2318, %.invoke2317
  %lpad.loopexit1606 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1594

.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %1553, %1551, %1544, %1542, %1487, %1423, %1421, %1366
  %lpad.loopexit.split-lp1607 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1594

.preheader1605.1:                                 ; preds = %.invoke2329
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 1)
          to label %1330 unwind label %1328

1330:                                             ; preds = %.preheader1605.1
  %1331 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2328 unwind label %1328

.invoke2328:                                      ; preds = %1330
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52330 = select i1 %1331, ptr @.str.4, ptr @.str.5
  %1332 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52330)
          to label %.preheader1605.2 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.2:                                 ; preds = %.invoke2328
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1333 unwind label %1328

1333:                                             ; preds = %.preheader1605.2
  %1334 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2327 unwind label %1328

.invoke2327:                                      ; preds = %1333
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52331 = select i1 %1334, ptr @.str.4, ptr @.str.5
  %1335 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52331)
          to label %.preheader1605.3 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.3:                                 ; preds = %.invoke2327
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1336 unwind label %1328

1336:                                             ; preds = %.preheader1605.3
  %1337 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2326 unwind label %1328

.invoke2326:                                      ; preds = %1336
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52332 = select i1 %1337, ptr @.str.4, ptr @.str.5
  %1338 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52332)
          to label %.preheader1605.4 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.4:                                 ; preds = %.invoke2326
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 4)
          to label %1339 unwind label %1328

1339:                                             ; preds = %.preheader1605.4
  %1340 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2325 unwind label %1328

.invoke2325:                                      ; preds = %1339
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52333 = select i1 %1340, ptr @.str.4, ptr @.str.5
  %1341 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52333)
          to label %.preheader1605.5 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.5:                                 ; preds = %.invoke2325
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 5)
          to label %1342 unwind label %1328

1342:                                             ; preds = %.preheader1605.5
  %1343 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2324 unwind label %1328

.invoke2324:                                      ; preds = %1342
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52334 = select i1 %1343, ptr @.str.4, ptr @.str.5
  %1344 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52334)
          to label %.preheader1605.6 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.6:                                 ; preds = %.invoke2324
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1345 unwind label %1328

1345:                                             ; preds = %.preheader1605.6
  %1346 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2323 unwind label %1328

.invoke2323:                                      ; preds = %1345
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52335 = select i1 %1346, ptr @.str.4, ptr @.str.5
  %1347 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52335)
          to label %.preheader1605.7 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.7:                                 ; preds = %.invoke2323
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 7)
          to label %1348 unwind label %1328

1348:                                             ; preds = %.preheader1605.7
  %1349 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2322 unwind label %1328

.invoke2322:                                      ; preds = %1348
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52336 = select i1 %1349, ptr @.str.4, ptr @.str.5
  %1350 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52336)
          to label %.preheader1605.8 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.8:                                 ; preds = %.invoke2322
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 8)
          to label %1351 unwind label %1328

1351:                                             ; preds = %.preheader1605.8
  %1352 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2321 unwind label %1328

.invoke2321:                                      ; preds = %1351
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52337 = select i1 %1352, ptr @.str.4, ptr @.str.5
  %1353 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52337)
          to label %.preheader1605.9 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.9:                                 ; preds = %.invoke2321
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1354 unwind label %1328

1354:                                             ; preds = %.preheader1605.9
  %1355 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2320 unwind label %1328

.invoke2320:                                      ; preds = %1354
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52338 = select i1 %1355, ptr @.str.4, ptr @.str.5
  %1356 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52338)
          to label %.preheader1605.10 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.10:                                ; preds = %.invoke2320
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 10)
          to label %1357 unwind label %1328

1357:                                             ; preds = %.preheader1605.10
  %1358 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2319 unwind label %1328

.invoke2319:                                      ; preds = %1357
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52339 = select i1 %1358, ptr @.str.4, ptr @.str.5
  %1359 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52339)
          to label %.preheader1605.11 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.11:                                ; preds = %.invoke2319
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 11)
          to label %1360 unwind label %1328

1360:                                             ; preds = %.preheader1605.11
  %1361 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2318 unwind label %1328

.invoke2318:                                      ; preds = %1360
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52340 = select i1 %1361, ptr @.str.4, ptr @.str.5
  %1362 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52340)
          to label %.preheader1605.12 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1605.12:                                ; preds = %.invoke2318
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %55, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1363 unwind label %1328

1363:                                             ; preds = %.preheader1605.12
  %1364 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %55)
          to label %.invoke2317 unwind label %1328

.invoke2317:                                      ; preds = %1363
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #6
  %.str.4..str.52341 = select i1 %1364, ptr @.str.4, ptr @.str.5
  %1365 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52341)
          to label %1366 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit

1366:                                             ; preds = %.invoke2317
  %1367 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1604.preheader unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1604.preheader:                         ; preds = %1366
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1368 unwind label %1378

1368:                                             ; preds = %.preheader1604.preheader
  %1369 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %56, i1 noundef zeroext true)
          to label %.preheader1604.1 unwind label %1378

.preheader1604.1:                                 ; preds = %1368
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1370 unwind label %1378

1370:                                             ; preds = %.preheader1604.1
  %1371 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %56, i1 noundef zeroext true)
          to label %.preheader1604.2 unwind label %1378

.preheader1604.2:                                 ; preds = %1370
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1372 unwind label %1378

1372:                                             ; preds = %.preheader1604.2
  %1373 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %56, i1 noundef zeroext true)
          to label %.preheader1604.3 unwind label %1378

.preheader1604.3:                                 ; preds = %1372
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1374 unwind label %1378

1374:                                             ; preds = %.preheader1604.3
  %1375 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %56, i1 noundef zeroext true)
          to label %.preheader1604.4 unwind label %1378

.preheader1604.4:                                 ; preds = %1374
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %56) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %56, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1376 unwind label %1378

1376:                                             ; preds = %.preheader1604.4
  %1377 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %56, i1 noundef zeroext true)
          to label %.preheader1601.preheader unwind label %1378

.preheader1601.preheader:                         ; preds = %1376
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1380 unwind label %1383

1378:                                             ; preds = %1376, %.preheader1604.4, %1374, %.preheader1604.3, %1372, %.preheader1604.2, %1370, %.preheader1604.1, %1368, %.preheader1604.preheader
  %1379 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %56) #6
  br label %.loopexit.split-lp1594

1380:                                             ; preds = %.preheader1601.preheader
  %1381 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2316 unwind label %1383

.invoke2316:                                      ; preds = %1380
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52342 = select i1 %1381, ptr @.str.4, ptr @.str.5
  %1382 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52342)
          to label %.preheader1601.1 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

1383:                                             ; preds = %1418, %.preheader1601.12, %1415, %.preheader1601.11, %1412, %.preheader1601.10, %1409, %.preheader1601.9, %1406, %.preheader1601.8, %1403, %.preheader1601.7, %1400, %.preheader1601.6, %1397, %.preheader1601.5, %1394, %.preheader1601.4, %1391, %.preheader1601.3, %1388, %.preheader1601.2, %1385, %.preheader1601.1, %1380, %.preheader1601.preheader
  %1384 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  br label %.loopexit.split-lp1594

.preheader1601.1:                                 ; preds = %.invoke2316
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 1)
          to label %1385 unwind label %1383

1385:                                             ; preds = %.preheader1601.1
  %1386 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2315 unwind label %1383

.invoke2315:                                      ; preds = %1385
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52343 = select i1 %1386, ptr @.str.4, ptr @.str.5
  %1387 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52343)
          to label %.preheader1601.2 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.2:                                 ; preds = %.invoke2315
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1388 unwind label %1383

1388:                                             ; preds = %.preheader1601.2
  %1389 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2314 unwind label %1383

.invoke2314:                                      ; preds = %1388
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52344 = select i1 %1389, ptr @.str.4, ptr @.str.5
  %1390 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52344)
          to label %.preheader1601.3 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.3:                                 ; preds = %.invoke2314
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1391 unwind label %1383

1391:                                             ; preds = %.preheader1601.3
  %1392 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2313 unwind label %1383

.invoke2313:                                      ; preds = %1391
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52345 = select i1 %1392, ptr @.str.4, ptr @.str.5
  %1393 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52345)
          to label %.preheader1601.4 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.4:                                 ; preds = %.invoke2313
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 4)
          to label %1394 unwind label %1383

1394:                                             ; preds = %.preheader1601.4
  %1395 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2312 unwind label %1383

.invoke2312:                                      ; preds = %1394
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52346 = select i1 %1395, ptr @.str.4, ptr @.str.5
  %1396 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52346)
          to label %.preheader1601.5 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.5:                                 ; preds = %.invoke2312
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 5)
          to label %1397 unwind label %1383

1397:                                             ; preds = %.preheader1601.5
  %1398 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2311 unwind label %1383

.invoke2311:                                      ; preds = %1397
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52347 = select i1 %1398, ptr @.str.4, ptr @.str.5
  %1399 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52347)
          to label %.preheader1601.6 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.6:                                 ; preds = %.invoke2311
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1400 unwind label %1383

1400:                                             ; preds = %.preheader1601.6
  %1401 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2310 unwind label %1383

.invoke2310:                                      ; preds = %1400
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52348 = select i1 %1401, ptr @.str.4, ptr @.str.5
  %1402 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52348)
          to label %.preheader1601.7 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.7:                                 ; preds = %.invoke2310
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 7)
          to label %1403 unwind label %1383

1403:                                             ; preds = %.preheader1601.7
  %1404 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2309 unwind label %1383

.invoke2309:                                      ; preds = %1403
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52349 = select i1 %1404, ptr @.str.4, ptr @.str.5
  %1405 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52349)
          to label %.preheader1601.8 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.8:                                 ; preds = %.invoke2309
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 8)
          to label %1406 unwind label %1383

1406:                                             ; preds = %.preheader1601.8
  %1407 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2308 unwind label %1383

.invoke2308:                                      ; preds = %1406
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52350 = select i1 %1407, ptr @.str.4, ptr @.str.5
  %1408 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52350)
          to label %.preheader1601.9 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.9:                                 ; preds = %.invoke2308
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1409 unwind label %1383

1409:                                             ; preds = %.preheader1601.9
  %1410 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2307 unwind label %1383

.invoke2307:                                      ; preds = %1409
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52351 = select i1 %1410, ptr @.str.4, ptr @.str.5
  %1411 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52351)
          to label %.preheader1601.10 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.10:                                ; preds = %.invoke2307
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 10)
          to label %1412 unwind label %1383

1412:                                             ; preds = %.preheader1601.10
  %1413 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2306 unwind label %1383

.invoke2306:                                      ; preds = %1412
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52352 = select i1 %1413, ptr @.str.4, ptr @.str.5
  %1414 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52352)
          to label %.preheader1601.11 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.11:                                ; preds = %.invoke2306
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 11)
          to label %1415 unwind label %1383

1415:                                             ; preds = %.preheader1601.11
  %1416 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2305 unwind label %1383

.invoke2305:                                      ; preds = %1415
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52353 = select i1 %1416, ptr @.str.4, ptr @.str.5
  %1417 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52353)
          to label %.preheader1601.12 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

.preheader1601.12:                                ; preds = %.invoke2305
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %57) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %57, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1418 unwind label %1383

1418:                                             ; preds = %.preheader1601.12
  %1419 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %57)
          to label %.invoke2304 unwind label %1383

.invoke2304:                                      ; preds = %1418
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %57) #6
  %.str.4..str.52354 = select i1 %1419, ptr @.str.4, ptr @.str.5
  %1420 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52354)
          to label %1421 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit

1421:                                             ; preds = %.invoke2304
  %1422 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1423 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1423:                                             ; preds = %1421
  %1424 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1425 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1425:                                             ; preds = %1423
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %58) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %58, ptr noundef nonnull align 8 dereferenceable(48) %54)
          to label %1426 unwind label %1432

1426:                                             ; preds = %1425
  %1427 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %54, ptr noundef nonnull align 8 dereferenceable(48) %58)
          to label %1428 unwind label %1434

1428:                                             ; preds = %1426
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %58) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %58) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1429 unwind label %1437

1429:                                             ; preds = %1428
  %1430 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2303 unwind label %1437

.invoke2303:                                      ; preds = %1429
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52355 = select i1 %1430, ptr @.str.4, ptr @.str.5
  %1431 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52355)
          to label %1439 unwind label %.loopexit.split-lp1594.loopexit

1432:                                             ; preds = %1425
  %1433 = landingpad { ptr, i32 }
          cleanup
  br label %1436

1434:                                             ; preds = %1426
  %1435 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %58) #6
  br label %1436

1436:                                             ; preds = %1434, %1432
  %.pn1081 = phi { ptr, i32 } [ %1435, %1434 ], [ %1433, %1432 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %58) #6
  br label %.loopexit.split-lp1594

1437:                                             ; preds = %1484, %1483, %1480, %1479, %1476, %1475, %1472, %1471, %1468, %1467, %1464, %1463, %1460, %1459, %1456, %1455, %1452, %1451, %1448, %1447, %1444, %1443, %1440, %1439, %1429, %1428
  %1438 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  br label %.loopexit.split-lp1594

1439:                                             ; preds = %.invoke2303
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 1)
          to label %1440 unwind label %1437

1440:                                             ; preds = %1439
  %1441 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2302 unwind label %1437

.invoke2302:                                      ; preds = %1440
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52356 = select i1 %1441, ptr @.str.4, ptr @.str.5
  %1442 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52356)
          to label %1443 unwind label %.loopexit.split-lp1594.loopexit

1443:                                             ; preds = %.invoke2302
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1444 unwind label %1437

1444:                                             ; preds = %1443
  %1445 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2301 unwind label %1437

.invoke2301:                                      ; preds = %1444
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52357 = select i1 %1445, ptr @.str.4, ptr @.str.5
  %1446 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52357)
          to label %1447 unwind label %.loopexit.split-lp1594.loopexit

1447:                                             ; preds = %.invoke2301
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1448 unwind label %1437

1448:                                             ; preds = %1447
  %1449 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2300 unwind label %1437

.invoke2300:                                      ; preds = %1448
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52358 = select i1 %1449, ptr @.str.4, ptr @.str.5
  %1450 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52358)
          to label %1451 unwind label %.loopexit.split-lp1594.loopexit

1451:                                             ; preds = %.invoke2300
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 4)
          to label %1452 unwind label %1437

1452:                                             ; preds = %1451
  %1453 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2299 unwind label %1437

.invoke2299:                                      ; preds = %1452
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52359 = select i1 %1453, ptr @.str.4, ptr @.str.5
  %1454 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52359)
          to label %1455 unwind label %.loopexit.split-lp1594.loopexit

1455:                                             ; preds = %.invoke2299
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 5)
          to label %1456 unwind label %1437

1456:                                             ; preds = %1455
  %1457 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2298 unwind label %1437

.invoke2298:                                      ; preds = %1456
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52360 = select i1 %1457, ptr @.str.4, ptr @.str.5
  %1458 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52360)
          to label %1459 unwind label %.loopexit.split-lp1594.loopexit

1459:                                             ; preds = %.invoke2298
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1460 unwind label %1437

1460:                                             ; preds = %1459
  %1461 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2297 unwind label %1437

.invoke2297:                                      ; preds = %1460
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52361 = select i1 %1461, ptr @.str.4, ptr @.str.5
  %1462 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52361)
          to label %1463 unwind label %.loopexit.split-lp1594.loopexit

1463:                                             ; preds = %.invoke2297
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 7)
          to label %1464 unwind label %1437

1464:                                             ; preds = %1463
  %1465 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2296 unwind label %1437

.invoke2296:                                      ; preds = %1464
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52362 = select i1 %1465, ptr @.str.4, ptr @.str.5
  %1466 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52362)
          to label %1467 unwind label %.loopexit.split-lp1594.loopexit

1467:                                             ; preds = %.invoke2296
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 8)
          to label %1468 unwind label %1437

1468:                                             ; preds = %1467
  %1469 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2295 unwind label %1437

.invoke2295:                                      ; preds = %1468
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52363 = select i1 %1469, ptr @.str.4, ptr @.str.5
  %1470 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52363)
          to label %1471 unwind label %.loopexit.split-lp1594.loopexit

1471:                                             ; preds = %.invoke2295
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1472 unwind label %1437

1472:                                             ; preds = %1471
  %1473 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2294 unwind label %1437

.invoke2294:                                      ; preds = %1472
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52364 = select i1 %1473, ptr @.str.4, ptr @.str.5
  %1474 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52364)
          to label %1475 unwind label %.loopexit.split-lp1594.loopexit

1475:                                             ; preds = %.invoke2294
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 10)
          to label %1476 unwind label %1437

1476:                                             ; preds = %1475
  %1477 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2293 unwind label %1437

.invoke2293:                                      ; preds = %1476
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52365 = select i1 %1477, ptr @.str.4, ptr @.str.5
  %1478 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52365)
          to label %1479 unwind label %.loopexit.split-lp1594.loopexit

1479:                                             ; preds = %.invoke2293
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 11)
          to label %1480 unwind label %1437

1480:                                             ; preds = %1479
  %1481 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2292 unwind label %1437

.invoke2292:                                      ; preds = %1480
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52366 = select i1 %1481, ptr @.str.4, ptr @.str.5
  %1482 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52366)
          to label %1483 unwind label %.loopexit.split-lp1594.loopexit

1483:                                             ; preds = %.invoke2292
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %59) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %59, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1484 unwind label %1437

1484:                                             ; preds = %1483
  %1485 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %59)
          to label %.invoke2291 unwind label %1437

.invoke2291:                                      ; preds = %1484
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %59) #6
  %.str.4..str.52367 = select i1 %1485, ptr @.str.4, ptr @.str.5
  %1486 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52367)
          to label %1487 unwind label %.loopexit.split-lp1594.loopexit

1487:                                             ; preds = %.invoke2291
  %1488 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1597.preheader unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1597.preheader:                         ; preds = %1487
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1489 unwind label %1499

1489:                                             ; preds = %.preheader1597.preheader
  %1490 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %60, i1 noundef zeroext false)
          to label %.preheader1597.1 unwind label %1499

.preheader1597.1:                                 ; preds = %1489
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1491 unwind label %1499

1491:                                             ; preds = %.preheader1597.1
  %1492 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %60, i1 noundef zeroext false)
          to label %.preheader1597.2 unwind label %1499

.preheader1597.2:                                 ; preds = %1491
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1493 unwind label %1499

1493:                                             ; preds = %.preheader1597.2
  %1494 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %60, i1 noundef zeroext false)
          to label %.preheader1597.3 unwind label %1499

.preheader1597.3:                                 ; preds = %1493
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1495 unwind label %1499

1495:                                             ; preds = %.preheader1597.3
  %1496 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %60, i1 noundef zeroext false)
          to label %.preheader1597.4 unwind label %1499

.preheader1597.4:                                 ; preds = %1495
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %60) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %60, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1497 unwind label %1499

1497:                                             ; preds = %.preheader1597.4
  %1498 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %60, i1 noundef zeroext false)
          to label %.preheader1592.preheader unwind label %1499

.preheader1592.preheader:                         ; preds = %1497
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 0)
          to label %1501 unwind label %1504

1499:                                             ; preds = %1497, %.preheader1597.4, %1495, %.preheader1597.3, %1493, %.preheader1597.2, %1491, %.preheader1597.1, %1489, %.preheader1597.preheader
  %1500 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %60) #6
  br label %.loopexit.split-lp1594

1501:                                             ; preds = %.preheader1592.preheader
  %1502 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2290 unwind label %1504

.invoke2290:                                      ; preds = %1501
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52368 = select i1 %1502, ptr @.str.4, ptr @.str.5
  %1503 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52368)
          to label %.preheader1592.1 unwind label %.loopexit1593

1504:                                             ; preds = %1539, %.preheader1592.12, %1536, %.preheader1592.11, %1533, %.preheader1592.10, %1530, %.preheader1592.9, %1527, %.preheader1592.8, %1524, %.preheader1592.7, %1521, %.preheader1592.6, %1518, %.preheader1592.5, %1515, %.preheader1592.4, %1512, %.preheader1592.3, %1509, %.preheader1592.2, %1506, %.preheader1592.1, %1501, %.preheader1592.preheader
  %1505 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  br label %.loopexit.split-lp1594

.preheader1592.1:                                 ; preds = %.invoke2290
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 1)
          to label %1506 unwind label %1504

1506:                                             ; preds = %.preheader1592.1
  %1507 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2289 unwind label %1504

.invoke2289:                                      ; preds = %1506
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52369 = select i1 %1507, ptr @.str.4, ptr @.str.5
  %1508 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52369)
          to label %.preheader1592.2 unwind label %.loopexit1593

.preheader1592.2:                                 ; preds = %.invoke2289
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1509 unwind label %1504

1509:                                             ; preds = %.preheader1592.2
  %1510 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2288 unwind label %1504

.invoke2288:                                      ; preds = %1509
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52370 = select i1 %1510, ptr @.str.4, ptr @.str.5
  %1511 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52370)
          to label %.preheader1592.3 unwind label %.loopexit1593

.preheader1592.3:                                 ; preds = %.invoke2288
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 3)
          to label %1512 unwind label %1504

1512:                                             ; preds = %.preheader1592.3
  %1513 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2287 unwind label %1504

.invoke2287:                                      ; preds = %1512
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52371 = select i1 %1513, ptr @.str.4, ptr @.str.5
  %1514 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52371)
          to label %.preheader1592.4 unwind label %.loopexit1593

.preheader1592.4:                                 ; preds = %.invoke2287
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 4)
          to label %1515 unwind label %1504

1515:                                             ; preds = %.preheader1592.4
  %1516 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2286 unwind label %1504

.invoke2286:                                      ; preds = %1515
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52372 = select i1 %1516, ptr @.str.4, ptr @.str.5
  %1517 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52372)
          to label %.preheader1592.5 unwind label %.loopexit1593

.preheader1592.5:                                 ; preds = %.invoke2286
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 5)
          to label %1518 unwind label %1504

1518:                                             ; preds = %.preheader1592.5
  %1519 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2285 unwind label %1504

.invoke2285:                                      ; preds = %1518
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52373 = select i1 %1519, ptr @.str.4, ptr @.str.5
  %1520 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52373)
          to label %.preheader1592.6 unwind label %.loopexit1593

.preheader1592.6:                                 ; preds = %.invoke2285
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 6)
          to label %1521 unwind label %1504

1521:                                             ; preds = %.preheader1592.6
  %1522 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2284 unwind label %1504

.invoke2284:                                      ; preds = %1521
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52374 = select i1 %1522, ptr @.str.4, ptr @.str.5
  %1523 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52374)
          to label %.preheader1592.7 unwind label %.loopexit1593

.preheader1592.7:                                 ; preds = %.invoke2284
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 7)
          to label %1524 unwind label %1504

1524:                                             ; preds = %.preheader1592.7
  %1525 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2283 unwind label %1504

.invoke2283:                                      ; preds = %1524
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52375 = select i1 %1525, ptr @.str.4, ptr @.str.5
  %1526 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52375)
          to label %.preheader1592.8 unwind label %.loopexit1593

.preheader1592.8:                                 ; preds = %.invoke2283
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 8)
          to label %1527 unwind label %1504

1527:                                             ; preds = %.preheader1592.8
  %1528 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2282 unwind label %1504

.invoke2282:                                      ; preds = %1527
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52376 = select i1 %1528, ptr @.str.4, ptr @.str.5
  %1529 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52376)
          to label %.preheader1592.9 unwind label %.loopexit1593

.preheader1592.9:                                 ; preds = %.invoke2282
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 9)
          to label %1530 unwind label %1504

1530:                                             ; preds = %.preheader1592.9
  %1531 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2281 unwind label %1504

.invoke2281:                                      ; preds = %1530
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52377 = select i1 %1531, ptr @.str.4, ptr @.str.5
  %1532 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52377)
          to label %.preheader1592.10 unwind label %.loopexit1593

.preheader1592.10:                                ; preds = %.invoke2281
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 10)
          to label %1533 unwind label %1504

1533:                                             ; preds = %.preheader1592.10
  %1534 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2280 unwind label %1504

.invoke2280:                                      ; preds = %1533
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52378 = select i1 %1534, ptr @.str.4, ptr @.str.5
  %1535 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52378)
          to label %.preheader1592.11 unwind label %.loopexit1593

.preheader1592.11:                                ; preds = %.invoke2280
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 11)
          to label %1536 unwind label %1504

1536:                                             ; preds = %.preheader1592.11
  %1537 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2279 unwind label %1504

.invoke2279:                                      ; preds = %1536
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52379 = select i1 %1537, ptr @.str.4, ptr @.str.5
  %1538 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52379)
          to label %.preheader1592.12 unwind label %.loopexit1593

.preheader1592.12:                                ; preds = %.invoke2279
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %61) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %61, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 12)
          to label %1539 unwind label %1504

1539:                                             ; preds = %.preheader1592.12
  %1540 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %61)
          to label %.invoke2278 unwind label %1504

.invoke2278:                                      ; preds = %1539
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %61) #6
  %.str.4..str.52380 = select i1 %1540, ptr @.str.4, ptr @.str.5
  %1541 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52380)
          to label %1542 unwind label %.loopexit1593

1542:                                             ; preds = %.invoke2278
  %1543 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1544 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1544:                                             ; preds = %1542
  %1545 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1546 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1546:                                             ; preds = %1544
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %62) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %62, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1547 unwind label %1571

1547:                                             ; preds = %1546
  %1548 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1545, ptr noundef nonnull align 8 dereferenceable(32) %62)
          to label %1549 unwind label %1573

1549:                                             ; preds = %1547
  %1550 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1548, ptr noundef nonnull @.str.3)
          to label %1551 unwind label %1573

1551:                                             ; preds = %1549
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #6
  %1552 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %54, ptr noundef nonnull @.str.8)
          to label %1553 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1553:                                             ; preds = %1551
  %1554 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1555 unwind label %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1555:                                             ; preds = %1553
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %63) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %63, ptr noundef nonnull align 8 dereferenceable(48) %54, i32 noundef 2)
          to label %1556 unwind label %1576

1556:                                             ; preds = %1555
  %1557 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1554, ptr noundef nonnull align 8 dereferenceable(32) %63)
          to label %1558 unwind label %1578

1558:                                             ; preds = %1556
  %1559 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1557, ptr noundef nonnull @.str.3)
          to label %1560 unwind label %1578

1560:                                             ; preds = %1558
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %54) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %54) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %52) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %52) #6
  %1561 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %1562 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1561, ptr noundef nonnull @.str.2)
  %1563 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1562, i32 noundef 13)
  %1564 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1563, ptr noundef nonnull @.str.2)
  %1565 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1564, i32 noundef 0)
  %1566 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1565, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %64) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %65) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %65, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %64, ptr noundef nonnull align 4 dereferenceable(20) %65, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %65) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %66) #6
  invoke void @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0, ptr noundef null)
          to label %.preheader1588.preheader unwind label %1582

.preheader1588.preheader:                         ; preds = %1560
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1567 unwind label %1584

1567:                                             ; preds = %.preheader1588.preheader
  %1568 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2432 unwind label %1584

.invoke2432:                                      ; preds = %1567
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %1569 = select i1 %1568, ptr @.str.4, ptr @.str.5
  %1570 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %1569)
          to label %.preheader1588.1 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

1571:                                             ; preds = %1546
  %1572 = landingpad { ptr, i32 }
          cleanup
  br label %1575

1573:                                             ; preds = %1549, %1547
  %1574 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #6
  br label %1575

1575:                                             ; preds = %1573, %1571
  %.pn1083 = phi { ptr, i32 } [ %1574, %1573 ], [ %1572, %1571 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #6
  br label %.loopexit.split-lp1594

1576:                                             ; preds = %1555
  %1577 = landingpad { ptr, i32 }
          cleanup
  br label %1580

1578:                                             ; preds = %1558, %1556
  %1579 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #6
  br label %1580

1580:                                             ; preds = %1578, %1576
  %.pn1085 = phi { ptr, i32 } [ %1579, %1578 ], [ %1577, %1576 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #6
  br label %.loopexit.split-lp1594

.loopexit.split-lp1594:                           ; preds = %.loopexit1593, %.loopexit.split-lp1594.loopexit.split-lp.loopexit, %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1594.loopexit, %1580, %1575, %1504, %1499, %1437, %1436, %1383, %1378, %1328
  %.pn1258 = phi { ptr, i32 } [ %1329, %1328 ], [ %1379, %1378 ], [ %1384, %1383 ], [ %1438, %1437 ], [ %1500, %1499 ], [ %1505, %1504 ], [ %.pn1085, %1580 ], [ %.pn1083, %1575 ], [ %.pn1081, %1436 ], [ %lpad.loopexit1595, %.loopexit1593 ], [ %lpad.loopexit1598, %.loopexit.split-lp1594.loopexit ], [ %lpad.loopexit1602, %.loopexit.split-lp1594.loopexit.split-lp.loopexit ], [ %lpad.loopexit1606, %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1607, %.loopexit.split-lp1594.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %54) #6
  br label %1581

1581:                                             ; preds = %.loopexit.split-lp1594, %1326
  %.pn1258.pn = phi { ptr, i32 } [ %.pn1258, %.loopexit.split-lp1594 ], [ %1327, %1326 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %54) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %52) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %52) #6
  br label %5024

1582:                                             ; preds = %1560
  %1583 = landingpad { ptr, i32 }
          cleanup
  br label %1837

1584:                                             ; preds = %1619, %.preheader1588.12, %1616, %.preheader1588.11, %1613, %.preheader1588.10, %1610, %.preheader1588.9, %1607, %.preheader1588.8, %1604, %.preheader1588.7, %1601, %.preheader1588.6, %1598, %.preheader1588.5, %1595, %.preheader1588.4, %1592, %.preheader1588.3, %1589, %.preheader1588.2, %1586, %.preheader1588.1, %1567, %.preheader1588.preheader
  %1585 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  br label %.loopexit.split-lp1577

.loopexit1576:                                    ; preds = %.invoke2393, %.invoke2392, %.invoke2391, %.invoke2390, %.invoke2389, %.invoke2388, %.invoke2387, %.invoke2386, %.invoke2385, %.invoke2384, %.invoke2383, %.invoke2382, %.invoke2381
  %lpad.loopexit1578 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1577

.loopexit.split-lp1577.loopexit:                  ; preds = %.invoke2406, %.invoke2405, %.invoke2404, %.invoke2403, %.invoke2402, %.invoke2401, %.invoke2400, %.invoke2399, %.invoke2398, %.invoke2397, %.invoke2396, %.invoke2395, %.invoke2394
  %lpad.loopexit1581 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1577

.loopexit.split-lp1577.loopexit.split-lp.loopexit: ; preds = %.invoke2419, %.invoke2418, %.invoke2417, %.invoke2416, %.invoke2415, %.invoke2414, %.invoke2413, %.invoke2412, %.invoke2411, %.invoke2410, %.invoke2409, %.invoke2408, %.invoke2407
  %lpad.loopexit1585 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1577

.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2432, %.invoke2431, %.invoke2430, %.invoke2429, %.invoke2428, %.invoke2427, %.invoke2426, %.invoke2425, %.invoke2424, %.invoke2423, %.invoke2422, %.invoke2421, %.invoke2420
  %lpad.loopexit1589 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1577

.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %1809, %1807, %1800, %1798, %1743, %1679, %1677, %1622
  %lpad.loopexit.split-lp1590 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1577

.preheader1588.1:                                 ; preds = %.invoke2432
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 1)
          to label %1586 unwind label %1584

1586:                                             ; preds = %.preheader1588.1
  %1587 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2431 unwind label %1584

.invoke2431:                                      ; preds = %1586
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52433 = select i1 %1587, ptr @.str.4, ptr @.str.5
  %1588 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52433)
          to label %.preheader1588.2 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.2:                                 ; preds = %.invoke2431
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1589 unwind label %1584

1589:                                             ; preds = %.preheader1588.2
  %1590 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2430 unwind label %1584

.invoke2430:                                      ; preds = %1589
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52434 = select i1 %1590, ptr @.str.4, ptr @.str.5
  %1591 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52434)
          to label %.preheader1588.3 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.3:                                 ; preds = %.invoke2430
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1592 unwind label %1584

1592:                                             ; preds = %.preheader1588.3
  %1593 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2429 unwind label %1584

.invoke2429:                                      ; preds = %1592
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52435 = select i1 %1593, ptr @.str.4, ptr @.str.5
  %1594 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52435)
          to label %.preheader1588.4 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.4:                                 ; preds = %.invoke2429
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 4)
          to label %1595 unwind label %1584

1595:                                             ; preds = %.preheader1588.4
  %1596 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2428 unwind label %1584

.invoke2428:                                      ; preds = %1595
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52436 = select i1 %1596, ptr @.str.4, ptr @.str.5
  %1597 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52436)
          to label %.preheader1588.5 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.5:                                 ; preds = %.invoke2428
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 5)
          to label %1598 unwind label %1584

1598:                                             ; preds = %.preheader1588.5
  %1599 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2427 unwind label %1584

.invoke2427:                                      ; preds = %1598
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52437 = select i1 %1599, ptr @.str.4, ptr @.str.5
  %1600 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52437)
          to label %.preheader1588.6 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.6:                                 ; preds = %.invoke2427
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1601 unwind label %1584

1601:                                             ; preds = %.preheader1588.6
  %1602 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2426 unwind label %1584

.invoke2426:                                      ; preds = %1601
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52438 = select i1 %1602, ptr @.str.4, ptr @.str.5
  %1603 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52438)
          to label %.preheader1588.7 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.7:                                 ; preds = %.invoke2426
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 7)
          to label %1604 unwind label %1584

1604:                                             ; preds = %.preheader1588.7
  %1605 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2425 unwind label %1584

.invoke2425:                                      ; preds = %1604
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52439 = select i1 %1605, ptr @.str.4, ptr @.str.5
  %1606 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52439)
          to label %.preheader1588.8 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.8:                                 ; preds = %.invoke2425
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 8)
          to label %1607 unwind label %1584

1607:                                             ; preds = %.preheader1588.8
  %1608 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2424 unwind label %1584

.invoke2424:                                      ; preds = %1607
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52440 = select i1 %1608, ptr @.str.4, ptr @.str.5
  %1609 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52440)
          to label %.preheader1588.9 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.9:                                 ; preds = %.invoke2424
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1610 unwind label %1584

1610:                                             ; preds = %.preheader1588.9
  %1611 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2423 unwind label %1584

.invoke2423:                                      ; preds = %1610
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52441 = select i1 %1611, ptr @.str.4, ptr @.str.5
  %1612 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52441)
          to label %.preheader1588.10 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.10:                                ; preds = %.invoke2423
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 10)
          to label %1613 unwind label %1584

1613:                                             ; preds = %.preheader1588.10
  %1614 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2422 unwind label %1584

.invoke2422:                                      ; preds = %1613
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52442 = select i1 %1614, ptr @.str.4, ptr @.str.5
  %1615 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52442)
          to label %.preheader1588.11 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.11:                                ; preds = %.invoke2422
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 11)
          to label %1616 unwind label %1584

1616:                                             ; preds = %.preheader1588.11
  %1617 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2421 unwind label %1584

.invoke2421:                                      ; preds = %1616
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52443 = select i1 %1617, ptr @.str.4, ptr @.str.5
  %1618 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52443)
          to label %.preheader1588.12 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1588.12:                                ; preds = %.invoke2421
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %67) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %67, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1619 unwind label %1584

1619:                                             ; preds = %.preheader1588.12
  %1620 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %67)
          to label %.invoke2420 unwind label %1584

.invoke2420:                                      ; preds = %1619
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %67) #6
  %.str.4..str.52444 = select i1 %1620, ptr @.str.4, ptr @.str.5
  %1621 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52444)
          to label %1622 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit

1622:                                             ; preds = %.invoke2420
  %1623 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1587.preheader unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1587.preheader:                         ; preds = %1622
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %68) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1624 unwind label %1634

1624:                                             ; preds = %.preheader1587.preheader
  %1625 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %68, i1 noundef zeroext true)
          to label %.preheader1587.1 unwind label %1634

.preheader1587.1:                                 ; preds = %1624
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %68) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1626 unwind label %1634

1626:                                             ; preds = %.preheader1587.1
  %1627 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %68, i1 noundef zeroext true)
          to label %.preheader1587.2 unwind label %1634

.preheader1587.2:                                 ; preds = %1626
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %68) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1628 unwind label %1634

1628:                                             ; preds = %.preheader1587.2
  %1629 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %68, i1 noundef zeroext true)
          to label %.preheader1587.3 unwind label %1634

.preheader1587.3:                                 ; preds = %1628
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %68) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1630 unwind label %1634

1630:                                             ; preds = %.preheader1587.3
  %1631 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %68, i1 noundef zeroext true)
          to label %.preheader1587.4 unwind label %1634

.preheader1587.4:                                 ; preds = %1630
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %68) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %68, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1632 unwind label %1634

1632:                                             ; preds = %.preheader1587.4
  %1633 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %68, i1 noundef zeroext true)
          to label %.preheader1584.preheader unwind label %1634

.preheader1584.preheader:                         ; preds = %1632
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1636 unwind label %1639

1634:                                             ; preds = %1632, %.preheader1587.4, %1630, %.preheader1587.3, %1628, %.preheader1587.2, %1626, %.preheader1587.1, %1624, %.preheader1587.preheader
  %1635 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %68) #6
  br label %.loopexit.split-lp1577

1636:                                             ; preds = %.preheader1584.preheader
  %1637 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2419 unwind label %1639

.invoke2419:                                      ; preds = %1636
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52445 = select i1 %1637, ptr @.str.4, ptr @.str.5
  %1638 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52445)
          to label %.preheader1584.1 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

1639:                                             ; preds = %1674, %.preheader1584.12, %1671, %.preheader1584.11, %1668, %.preheader1584.10, %1665, %.preheader1584.9, %1662, %.preheader1584.8, %1659, %.preheader1584.7, %1656, %.preheader1584.6, %1653, %.preheader1584.5, %1650, %.preheader1584.4, %1647, %.preheader1584.3, %1644, %.preheader1584.2, %1641, %.preheader1584.1, %1636, %.preheader1584.preheader
  %1640 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  br label %.loopexit.split-lp1577

.preheader1584.1:                                 ; preds = %.invoke2419
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 1)
          to label %1641 unwind label %1639

1641:                                             ; preds = %.preheader1584.1
  %1642 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2418 unwind label %1639

.invoke2418:                                      ; preds = %1641
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52446 = select i1 %1642, ptr @.str.4, ptr @.str.5
  %1643 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52446)
          to label %.preheader1584.2 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.2:                                 ; preds = %.invoke2418
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1644 unwind label %1639

1644:                                             ; preds = %.preheader1584.2
  %1645 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2417 unwind label %1639

.invoke2417:                                      ; preds = %1644
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52447 = select i1 %1645, ptr @.str.4, ptr @.str.5
  %1646 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52447)
          to label %.preheader1584.3 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.3:                                 ; preds = %.invoke2417
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1647 unwind label %1639

1647:                                             ; preds = %.preheader1584.3
  %1648 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2416 unwind label %1639

.invoke2416:                                      ; preds = %1647
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52448 = select i1 %1648, ptr @.str.4, ptr @.str.5
  %1649 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52448)
          to label %.preheader1584.4 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.4:                                 ; preds = %.invoke2416
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 4)
          to label %1650 unwind label %1639

1650:                                             ; preds = %.preheader1584.4
  %1651 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2415 unwind label %1639

.invoke2415:                                      ; preds = %1650
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52449 = select i1 %1651, ptr @.str.4, ptr @.str.5
  %1652 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52449)
          to label %.preheader1584.5 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.5:                                 ; preds = %.invoke2415
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 5)
          to label %1653 unwind label %1639

1653:                                             ; preds = %.preheader1584.5
  %1654 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2414 unwind label %1639

.invoke2414:                                      ; preds = %1653
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52450 = select i1 %1654, ptr @.str.4, ptr @.str.5
  %1655 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52450)
          to label %.preheader1584.6 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.6:                                 ; preds = %.invoke2414
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1656 unwind label %1639

1656:                                             ; preds = %.preheader1584.6
  %1657 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2413 unwind label %1639

.invoke2413:                                      ; preds = %1656
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52451 = select i1 %1657, ptr @.str.4, ptr @.str.5
  %1658 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52451)
          to label %.preheader1584.7 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.7:                                 ; preds = %.invoke2413
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 7)
          to label %1659 unwind label %1639

1659:                                             ; preds = %.preheader1584.7
  %1660 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2412 unwind label %1639

.invoke2412:                                      ; preds = %1659
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52452 = select i1 %1660, ptr @.str.4, ptr @.str.5
  %1661 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52452)
          to label %.preheader1584.8 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.8:                                 ; preds = %.invoke2412
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 8)
          to label %1662 unwind label %1639

1662:                                             ; preds = %.preheader1584.8
  %1663 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2411 unwind label %1639

.invoke2411:                                      ; preds = %1662
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52453 = select i1 %1663, ptr @.str.4, ptr @.str.5
  %1664 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52453)
          to label %.preheader1584.9 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.9:                                 ; preds = %.invoke2411
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1665 unwind label %1639

1665:                                             ; preds = %.preheader1584.9
  %1666 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2410 unwind label %1639

.invoke2410:                                      ; preds = %1665
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52454 = select i1 %1666, ptr @.str.4, ptr @.str.5
  %1667 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52454)
          to label %.preheader1584.10 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.10:                                ; preds = %.invoke2410
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 10)
          to label %1668 unwind label %1639

1668:                                             ; preds = %.preheader1584.10
  %1669 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2409 unwind label %1639

.invoke2409:                                      ; preds = %1668
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52455 = select i1 %1669, ptr @.str.4, ptr @.str.5
  %1670 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52455)
          to label %.preheader1584.11 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.11:                                ; preds = %.invoke2409
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 11)
          to label %1671 unwind label %1639

1671:                                             ; preds = %.preheader1584.11
  %1672 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2408 unwind label %1639

.invoke2408:                                      ; preds = %1671
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52456 = select i1 %1672, ptr @.str.4, ptr @.str.5
  %1673 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52456)
          to label %.preheader1584.12 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

.preheader1584.12:                                ; preds = %.invoke2408
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %69) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %69, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1674 unwind label %1639

1674:                                             ; preds = %.preheader1584.12
  %1675 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %69)
          to label %.invoke2407 unwind label %1639

.invoke2407:                                      ; preds = %1674
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %69) #6
  %.str.4..str.52457 = select i1 %1675, ptr @.str.4, ptr @.str.5
  %1676 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52457)
          to label %1677 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit

1677:                                             ; preds = %.invoke2407
  %1678 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1679 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1679:                                             ; preds = %1677
  %1680 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1681 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1681:                                             ; preds = %1679
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %70) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %70, ptr noundef nonnull align 8 dereferenceable(48) %66)
          to label %1682 unwind label %1688

1682:                                             ; preds = %1681
  %1683 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %66, ptr noundef nonnull align 8 dereferenceable(48) %70)
          to label %1684 unwind label %1690

1684:                                             ; preds = %1682
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %70) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %70) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1685 unwind label %1693

1685:                                             ; preds = %1684
  %1686 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2406 unwind label %1693

.invoke2406:                                      ; preds = %1685
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52458 = select i1 %1686, ptr @.str.4, ptr @.str.5
  %1687 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52458)
          to label %1695 unwind label %.loopexit.split-lp1577.loopexit

1688:                                             ; preds = %1681
  %1689 = landingpad { ptr, i32 }
          cleanup
  br label %1692

1690:                                             ; preds = %1682
  %1691 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %70) #6
  br label %1692

1692:                                             ; preds = %1690, %1688
  %.pn1087 = phi { ptr, i32 } [ %1691, %1690 ], [ %1689, %1688 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %70) #6
  br label %.loopexit.split-lp1577

1693:                                             ; preds = %1740, %1739, %1736, %1735, %1732, %1731, %1728, %1727, %1724, %1723, %1720, %1719, %1716, %1715, %1712, %1711, %1708, %1707, %1704, %1703, %1700, %1699, %1696, %1695, %1685, %1684
  %1694 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  br label %.loopexit.split-lp1577

1695:                                             ; preds = %.invoke2406
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 1)
          to label %1696 unwind label %1693

1696:                                             ; preds = %1695
  %1697 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2405 unwind label %1693

.invoke2405:                                      ; preds = %1696
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52459 = select i1 %1697, ptr @.str.4, ptr @.str.5
  %1698 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52459)
          to label %1699 unwind label %.loopexit.split-lp1577.loopexit

1699:                                             ; preds = %.invoke2405
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1700 unwind label %1693

1700:                                             ; preds = %1699
  %1701 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2404 unwind label %1693

.invoke2404:                                      ; preds = %1700
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52460 = select i1 %1701, ptr @.str.4, ptr @.str.5
  %1702 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52460)
          to label %1703 unwind label %.loopexit.split-lp1577.loopexit

1703:                                             ; preds = %.invoke2404
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1704 unwind label %1693

1704:                                             ; preds = %1703
  %1705 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2403 unwind label %1693

.invoke2403:                                      ; preds = %1704
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52461 = select i1 %1705, ptr @.str.4, ptr @.str.5
  %1706 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52461)
          to label %1707 unwind label %.loopexit.split-lp1577.loopexit

1707:                                             ; preds = %.invoke2403
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 4)
          to label %1708 unwind label %1693

1708:                                             ; preds = %1707
  %1709 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2402 unwind label %1693

.invoke2402:                                      ; preds = %1708
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52462 = select i1 %1709, ptr @.str.4, ptr @.str.5
  %1710 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52462)
          to label %1711 unwind label %.loopexit.split-lp1577.loopexit

1711:                                             ; preds = %.invoke2402
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 5)
          to label %1712 unwind label %1693

1712:                                             ; preds = %1711
  %1713 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2401 unwind label %1693

.invoke2401:                                      ; preds = %1712
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52463 = select i1 %1713, ptr @.str.4, ptr @.str.5
  %1714 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52463)
          to label %1715 unwind label %.loopexit.split-lp1577.loopexit

1715:                                             ; preds = %.invoke2401
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1716 unwind label %1693

1716:                                             ; preds = %1715
  %1717 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2400 unwind label %1693

.invoke2400:                                      ; preds = %1716
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52464 = select i1 %1717, ptr @.str.4, ptr @.str.5
  %1718 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52464)
          to label %1719 unwind label %.loopexit.split-lp1577.loopexit

1719:                                             ; preds = %.invoke2400
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 7)
          to label %1720 unwind label %1693

1720:                                             ; preds = %1719
  %1721 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2399 unwind label %1693

.invoke2399:                                      ; preds = %1720
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52465 = select i1 %1721, ptr @.str.4, ptr @.str.5
  %1722 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52465)
          to label %1723 unwind label %.loopexit.split-lp1577.loopexit

1723:                                             ; preds = %.invoke2399
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 8)
          to label %1724 unwind label %1693

1724:                                             ; preds = %1723
  %1725 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2398 unwind label %1693

.invoke2398:                                      ; preds = %1724
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52466 = select i1 %1725, ptr @.str.4, ptr @.str.5
  %1726 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52466)
          to label %1727 unwind label %.loopexit.split-lp1577.loopexit

1727:                                             ; preds = %.invoke2398
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1728 unwind label %1693

1728:                                             ; preds = %1727
  %1729 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2397 unwind label %1693

.invoke2397:                                      ; preds = %1728
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52467 = select i1 %1729, ptr @.str.4, ptr @.str.5
  %1730 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52467)
          to label %1731 unwind label %.loopexit.split-lp1577.loopexit

1731:                                             ; preds = %.invoke2397
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 10)
          to label %1732 unwind label %1693

1732:                                             ; preds = %1731
  %1733 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2396 unwind label %1693

.invoke2396:                                      ; preds = %1732
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52468 = select i1 %1733, ptr @.str.4, ptr @.str.5
  %1734 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52468)
          to label %1735 unwind label %.loopexit.split-lp1577.loopexit

1735:                                             ; preds = %.invoke2396
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 11)
          to label %1736 unwind label %1693

1736:                                             ; preds = %1735
  %1737 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2395 unwind label %1693

.invoke2395:                                      ; preds = %1736
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52469 = select i1 %1737, ptr @.str.4, ptr @.str.5
  %1738 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52469)
          to label %1739 unwind label %.loopexit.split-lp1577.loopexit

1739:                                             ; preds = %.invoke2395
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %71) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %71, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1740 unwind label %1693

1740:                                             ; preds = %1739
  %1741 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %71)
          to label %.invoke2394 unwind label %1693

.invoke2394:                                      ; preds = %1740
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %71) #6
  %.str.4..str.52470 = select i1 %1741, ptr @.str.4, ptr @.str.5
  %1742 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52470)
          to label %1743 unwind label %.loopexit.split-lp1577.loopexit

1743:                                             ; preds = %.invoke2394
  %1744 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1580.preheader unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1580.preheader:                         ; preds = %1743
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1745 unwind label %1755

1745:                                             ; preds = %.preheader1580.preheader
  %1746 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %72, i1 noundef zeroext false)
          to label %.preheader1580.1 unwind label %1755

.preheader1580.1:                                 ; preds = %1745
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1747 unwind label %1755

1747:                                             ; preds = %.preheader1580.1
  %1748 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %72, i1 noundef zeroext false)
          to label %.preheader1580.2 unwind label %1755

.preheader1580.2:                                 ; preds = %1747
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1749 unwind label %1755

1749:                                             ; preds = %.preheader1580.2
  %1750 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %72, i1 noundef zeroext false)
          to label %.preheader1580.3 unwind label %1755

.preheader1580.3:                                 ; preds = %1749
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1751 unwind label %1755

1751:                                             ; preds = %.preheader1580.3
  %1752 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %72, i1 noundef zeroext false)
          to label %.preheader1580.4 unwind label %1755

.preheader1580.4:                                 ; preds = %1751
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %72) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %72, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1753 unwind label %1755

1753:                                             ; preds = %.preheader1580.4
  %1754 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %72, i1 noundef zeroext false)
          to label %.preheader1575.preheader unwind label %1755

.preheader1575.preheader:                         ; preds = %1753
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 0)
          to label %1757 unwind label %1760

1755:                                             ; preds = %1753, %.preheader1580.4, %1751, %.preheader1580.3, %1749, %.preheader1580.2, %1747, %.preheader1580.1, %1745, %.preheader1580.preheader
  %1756 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %72) #6
  br label %.loopexit.split-lp1577

1757:                                             ; preds = %.preheader1575.preheader
  %1758 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2393 unwind label %1760

.invoke2393:                                      ; preds = %1757
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52471 = select i1 %1758, ptr @.str.4, ptr @.str.5
  %1759 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52471)
          to label %.preheader1575.1 unwind label %.loopexit1576

1760:                                             ; preds = %1795, %.preheader1575.12, %1792, %.preheader1575.11, %1789, %.preheader1575.10, %1786, %.preheader1575.9, %1783, %.preheader1575.8, %1780, %.preheader1575.7, %1777, %.preheader1575.6, %1774, %.preheader1575.5, %1771, %.preheader1575.4, %1768, %.preheader1575.3, %1765, %.preheader1575.2, %1762, %.preheader1575.1, %1757, %.preheader1575.preheader
  %1761 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  br label %.loopexit.split-lp1577

.preheader1575.1:                                 ; preds = %.invoke2393
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 1)
          to label %1762 unwind label %1760

1762:                                             ; preds = %.preheader1575.1
  %1763 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2392 unwind label %1760

.invoke2392:                                      ; preds = %1762
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52472 = select i1 %1763, ptr @.str.4, ptr @.str.5
  %1764 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52472)
          to label %.preheader1575.2 unwind label %.loopexit1576

.preheader1575.2:                                 ; preds = %.invoke2392
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1765 unwind label %1760

1765:                                             ; preds = %.preheader1575.2
  %1766 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2391 unwind label %1760

.invoke2391:                                      ; preds = %1765
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52473 = select i1 %1766, ptr @.str.4, ptr @.str.5
  %1767 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52473)
          to label %.preheader1575.3 unwind label %.loopexit1576

.preheader1575.3:                                 ; preds = %.invoke2391
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 3)
          to label %1768 unwind label %1760

1768:                                             ; preds = %.preheader1575.3
  %1769 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2390 unwind label %1760

.invoke2390:                                      ; preds = %1768
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52474 = select i1 %1769, ptr @.str.4, ptr @.str.5
  %1770 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52474)
          to label %.preheader1575.4 unwind label %.loopexit1576

.preheader1575.4:                                 ; preds = %.invoke2390
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 4)
          to label %1771 unwind label %1760

1771:                                             ; preds = %.preheader1575.4
  %1772 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2389 unwind label %1760

.invoke2389:                                      ; preds = %1771
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52475 = select i1 %1772, ptr @.str.4, ptr @.str.5
  %1773 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52475)
          to label %.preheader1575.5 unwind label %.loopexit1576

.preheader1575.5:                                 ; preds = %.invoke2389
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 5)
          to label %1774 unwind label %1760

1774:                                             ; preds = %.preheader1575.5
  %1775 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2388 unwind label %1760

.invoke2388:                                      ; preds = %1774
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52476 = select i1 %1775, ptr @.str.4, ptr @.str.5
  %1776 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52476)
          to label %.preheader1575.6 unwind label %.loopexit1576

.preheader1575.6:                                 ; preds = %.invoke2388
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 6)
          to label %1777 unwind label %1760

1777:                                             ; preds = %.preheader1575.6
  %1778 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2387 unwind label %1760

.invoke2387:                                      ; preds = %1777
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52477 = select i1 %1778, ptr @.str.4, ptr @.str.5
  %1779 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52477)
          to label %.preheader1575.7 unwind label %.loopexit1576

.preheader1575.7:                                 ; preds = %.invoke2387
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 7)
          to label %1780 unwind label %1760

1780:                                             ; preds = %.preheader1575.7
  %1781 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2386 unwind label %1760

.invoke2386:                                      ; preds = %1780
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52478 = select i1 %1781, ptr @.str.4, ptr @.str.5
  %1782 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52478)
          to label %.preheader1575.8 unwind label %.loopexit1576

.preheader1575.8:                                 ; preds = %.invoke2386
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 8)
          to label %1783 unwind label %1760

1783:                                             ; preds = %.preheader1575.8
  %1784 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2385 unwind label %1760

.invoke2385:                                      ; preds = %1783
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52479 = select i1 %1784, ptr @.str.4, ptr @.str.5
  %1785 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52479)
          to label %.preheader1575.9 unwind label %.loopexit1576

.preheader1575.9:                                 ; preds = %.invoke2385
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 9)
          to label %1786 unwind label %1760

1786:                                             ; preds = %.preheader1575.9
  %1787 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2384 unwind label %1760

.invoke2384:                                      ; preds = %1786
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52480 = select i1 %1787, ptr @.str.4, ptr @.str.5
  %1788 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52480)
          to label %.preheader1575.10 unwind label %.loopexit1576

.preheader1575.10:                                ; preds = %.invoke2384
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 10)
          to label %1789 unwind label %1760

1789:                                             ; preds = %.preheader1575.10
  %1790 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2383 unwind label %1760

.invoke2383:                                      ; preds = %1789
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52481 = select i1 %1790, ptr @.str.4, ptr @.str.5
  %1791 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52481)
          to label %.preheader1575.11 unwind label %.loopexit1576

.preheader1575.11:                                ; preds = %.invoke2383
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 11)
          to label %1792 unwind label %1760

1792:                                             ; preds = %.preheader1575.11
  %1793 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2382 unwind label %1760

.invoke2382:                                      ; preds = %1792
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52482 = select i1 %1793, ptr @.str.4, ptr @.str.5
  %1794 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52482)
          to label %.preheader1575.12 unwind label %.loopexit1576

.preheader1575.12:                                ; preds = %.invoke2382
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %73) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %73, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 12)
          to label %1795 unwind label %1760

1795:                                             ; preds = %.preheader1575.12
  %1796 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %73)
          to label %.invoke2381 unwind label %1760

.invoke2381:                                      ; preds = %1795
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %73) #6
  %.str.4..str.52483 = select i1 %1796, ptr @.str.4, ptr @.str.5
  %1797 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52483)
          to label %1798 unwind label %.loopexit1576

1798:                                             ; preds = %.invoke2381
  %1799 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1800 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1800:                                             ; preds = %1798
  %1801 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1802 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1802:                                             ; preds = %1800
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %74) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %74, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1803 unwind label %1827

1803:                                             ; preds = %1802
  %1804 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1801, ptr noundef nonnull align 8 dereferenceable(32) %74)
          to label %1805 unwind label %1829

1805:                                             ; preds = %1803
  %1806 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1804, ptr noundef nonnull @.str.3)
          to label %1807 unwind label %1829

1807:                                             ; preds = %1805
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #6
  %1808 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %66, ptr noundef nonnull @.str.8)
          to label %1809 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1809:                                             ; preds = %1807
  %1810 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %1811 unwind label %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1811:                                             ; preds = %1809
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %75) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %75, ptr noundef nonnull align 8 dereferenceable(48) %66, i32 noundef 2)
          to label %1812 unwind label %1832

1812:                                             ; preds = %1811
  %1813 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %1810, ptr noundef nonnull align 8 dereferenceable(32) %75)
          to label %1814 unwind label %1834

1814:                                             ; preds = %1812
  %1815 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1813, ptr noundef nonnull @.str.3)
          to label %1816 unwind label %1834

1816:                                             ; preds = %1814
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %66) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %66) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %64) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %64) #6
  %1817 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %1818 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1817, ptr noundef nonnull @.str.2)
  %1819 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1818, i32 noundef 13)
  %1820 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1819, ptr noundef nonnull @.str.2)
  %1821 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %1820, i32 noundef 0)
  %1822 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %1821, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %76) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %77) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %77, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %76, ptr noundef nonnull align 4 dereferenceable(20) %77, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %77) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %78) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0, ptr noundef null)
          to label %.preheader1571.preheader unwind label %1838

.preheader1571.preheader:                         ; preds = %1816
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %1823 unwind label %1840

1823:                                             ; preds = %.preheader1571.preheader
  %1824 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2535 unwind label %1840

.invoke2535:                                      ; preds = %1823
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %1825 = select i1 %1824, ptr @.str.4, ptr @.str.5
  %1826 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %1825)
          to label %.preheader1571.1 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

1827:                                             ; preds = %1802
  %1828 = landingpad { ptr, i32 }
          cleanup
  br label %1831

1829:                                             ; preds = %1805, %1803
  %1830 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #6
  br label %1831

1831:                                             ; preds = %1829, %1827
  %.pn1089 = phi { ptr, i32 } [ %1830, %1829 ], [ %1828, %1827 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #6
  br label %.loopexit.split-lp1577

1832:                                             ; preds = %1811
  %1833 = landingpad { ptr, i32 }
          cleanup
  br label %1836

1834:                                             ; preds = %1814, %1812
  %1835 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #6
  br label %1836

1836:                                             ; preds = %1834, %1832
  %.pn1091 = phi { ptr, i32 } [ %1835, %1834 ], [ %1833, %1832 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #6
  br label %.loopexit.split-lp1577

.loopexit.split-lp1577:                           ; preds = %.loopexit1576, %.loopexit.split-lp1577.loopexit.split-lp.loopexit, %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1577.loopexit, %1836, %1831, %1760, %1755, %1693, %1692, %1639, %1634, %1584
  %.pn1255 = phi { ptr, i32 } [ %1585, %1584 ], [ %1635, %1634 ], [ %1640, %1639 ], [ %1694, %1693 ], [ %1756, %1755 ], [ %1761, %1760 ], [ %.pn1091, %1836 ], [ %.pn1089, %1831 ], [ %.pn1087, %1692 ], [ %lpad.loopexit1578, %.loopexit1576 ], [ %lpad.loopexit1581, %.loopexit.split-lp1577.loopexit ], [ %lpad.loopexit1585, %.loopexit.split-lp1577.loopexit.split-lp.loopexit ], [ %lpad.loopexit1589, %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1590, %.loopexit.split-lp1577.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %66) #6
  br label %1837

1837:                                             ; preds = %.loopexit.split-lp1577, %1582
  %.pn1255.pn = phi { ptr, i32 } [ %.pn1255, %.loopexit.split-lp1577 ], [ %1583, %1582 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %66) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %64) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %64) #6
  br label %5024

1838:                                             ; preds = %1816
  %1839 = landingpad { ptr, i32 }
          cleanup
  br label %2093

1840:                                             ; preds = %1875, %.preheader1571.12, %1872, %.preheader1571.11, %1869, %.preheader1571.10, %1866, %.preheader1571.9, %1863, %.preheader1571.8, %1860, %.preheader1571.7, %1857, %.preheader1571.6, %1854, %.preheader1571.5, %1851, %.preheader1571.4, %1848, %.preheader1571.3, %1845, %.preheader1571.2, %1842, %.preheader1571.1, %1823, %.preheader1571.preheader
  %1841 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  br label %.loopexit.split-lp1560

.loopexit1559:                                    ; preds = %.invoke2496, %.invoke2495, %.invoke2494, %.invoke2493, %.invoke2492, %.invoke2491, %.invoke2490, %.invoke2489, %.invoke2488, %.invoke2487, %.invoke2486, %.invoke2485, %.invoke2484
  %lpad.loopexit1561 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1560

.loopexit.split-lp1560.loopexit:                  ; preds = %.invoke2509, %.invoke2508, %.invoke2507, %.invoke2506, %.invoke2505, %.invoke2504, %.invoke2503, %.invoke2502, %.invoke2501, %.invoke2500, %.invoke2499, %.invoke2498, %.invoke2497
  %lpad.loopexit1564 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1560

.loopexit.split-lp1560.loopexit.split-lp.loopexit: ; preds = %.invoke2522, %.invoke2521, %.invoke2520, %.invoke2519, %.invoke2518, %.invoke2517, %.invoke2516, %.invoke2515, %.invoke2514, %.invoke2513, %.invoke2512, %.invoke2511, %.invoke2510
  %lpad.loopexit1568 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1560

.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2535, %.invoke2534, %.invoke2533, %.invoke2532, %.invoke2531, %.invoke2530, %.invoke2529, %.invoke2528, %.invoke2527, %.invoke2526, %.invoke2525, %.invoke2524, %.invoke2523
  %lpad.loopexit1572 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1560

.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2065, %2063, %2056, %2054, %1999, %1935, %1933, %1878
  %lpad.loopexit.split-lp1573 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1560

.preheader1571.1:                                 ; preds = %.invoke2535
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 1)
          to label %1842 unwind label %1840

1842:                                             ; preds = %.preheader1571.1
  %1843 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2534 unwind label %1840

.invoke2534:                                      ; preds = %1842
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52536 = select i1 %1843, ptr @.str.4, ptr @.str.5
  %1844 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52536)
          to label %.preheader1571.2 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.2:                                 ; preds = %.invoke2534
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %1845 unwind label %1840

1845:                                             ; preds = %.preheader1571.2
  %1846 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2533 unwind label %1840

.invoke2533:                                      ; preds = %1845
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52537 = select i1 %1846, ptr @.str.4, ptr @.str.5
  %1847 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52537)
          to label %.preheader1571.3 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.3:                                 ; preds = %.invoke2533
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %1848 unwind label %1840

1848:                                             ; preds = %.preheader1571.3
  %1849 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2532 unwind label %1840

.invoke2532:                                      ; preds = %1848
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52538 = select i1 %1849, ptr @.str.4, ptr @.str.5
  %1850 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52538)
          to label %.preheader1571.4 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.4:                                 ; preds = %.invoke2532
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 4)
          to label %1851 unwind label %1840

1851:                                             ; preds = %.preheader1571.4
  %1852 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2531 unwind label %1840

.invoke2531:                                      ; preds = %1851
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52539 = select i1 %1852, ptr @.str.4, ptr @.str.5
  %1853 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52539)
          to label %.preheader1571.5 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.5:                                 ; preds = %.invoke2531
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 5)
          to label %1854 unwind label %1840

1854:                                             ; preds = %.preheader1571.5
  %1855 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2530 unwind label %1840

.invoke2530:                                      ; preds = %1854
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52540 = select i1 %1855, ptr @.str.4, ptr @.str.5
  %1856 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52540)
          to label %.preheader1571.6 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.6:                                 ; preds = %.invoke2530
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %1857 unwind label %1840

1857:                                             ; preds = %.preheader1571.6
  %1858 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2529 unwind label %1840

.invoke2529:                                      ; preds = %1857
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52541 = select i1 %1858, ptr @.str.4, ptr @.str.5
  %1859 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52541)
          to label %.preheader1571.7 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.7:                                 ; preds = %.invoke2529
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 7)
          to label %1860 unwind label %1840

1860:                                             ; preds = %.preheader1571.7
  %1861 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2528 unwind label %1840

.invoke2528:                                      ; preds = %1860
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52542 = select i1 %1861, ptr @.str.4, ptr @.str.5
  %1862 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52542)
          to label %.preheader1571.8 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.8:                                 ; preds = %.invoke2528
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 8)
          to label %1863 unwind label %1840

1863:                                             ; preds = %.preheader1571.8
  %1864 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2527 unwind label %1840

.invoke2527:                                      ; preds = %1863
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52543 = select i1 %1864, ptr @.str.4, ptr @.str.5
  %1865 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52543)
          to label %.preheader1571.9 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.9:                                 ; preds = %.invoke2527
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %1866 unwind label %1840

1866:                                             ; preds = %.preheader1571.9
  %1867 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2526 unwind label %1840

.invoke2526:                                      ; preds = %1866
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52544 = select i1 %1867, ptr @.str.4, ptr @.str.5
  %1868 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52544)
          to label %.preheader1571.10 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.10:                                ; preds = %.invoke2526
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 10)
          to label %1869 unwind label %1840

1869:                                             ; preds = %.preheader1571.10
  %1870 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2525 unwind label %1840

.invoke2525:                                      ; preds = %1869
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52545 = select i1 %1870, ptr @.str.4, ptr @.str.5
  %1871 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52545)
          to label %.preheader1571.11 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.11:                                ; preds = %.invoke2525
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 11)
          to label %1872 unwind label %1840

1872:                                             ; preds = %.preheader1571.11
  %1873 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2524 unwind label %1840

.invoke2524:                                      ; preds = %1872
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52546 = select i1 %1873, ptr @.str.4, ptr @.str.5
  %1874 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52546)
          to label %.preheader1571.12 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1571.12:                                ; preds = %.invoke2524
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %79) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %79, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %1875 unwind label %1840

1875:                                             ; preds = %.preheader1571.12
  %1876 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %79)
          to label %.invoke2523 unwind label %1840

.invoke2523:                                      ; preds = %1875
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %79) #6
  %.str.4..str.52547 = select i1 %1876, ptr @.str.4, ptr @.str.5
  %1877 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52547)
          to label %1878 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit

1878:                                             ; preds = %.invoke2523
  %1879 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1570.preheader unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1570.preheader:                         ; preds = %1878
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %80) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %1880 unwind label %1890

1880:                                             ; preds = %.preheader1570.preheader
  %1881 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %80, i1 noundef zeroext true)
          to label %.preheader1570.1 unwind label %1890

.preheader1570.1:                                 ; preds = %1880
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %80) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %1882 unwind label %1890

1882:                                             ; preds = %.preheader1570.1
  %1883 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %80, i1 noundef zeroext true)
          to label %.preheader1570.2 unwind label %1890

.preheader1570.2:                                 ; preds = %1882
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %80) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %1884 unwind label %1890

1884:                                             ; preds = %.preheader1570.2
  %1885 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %80, i1 noundef zeroext true)
          to label %.preheader1570.3 unwind label %1890

.preheader1570.3:                                 ; preds = %1884
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %80) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %1886 unwind label %1890

1886:                                             ; preds = %.preheader1570.3
  %1887 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %80, i1 noundef zeroext true)
          to label %.preheader1570.4 unwind label %1890

.preheader1570.4:                                 ; preds = %1886
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %80) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %80, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %1888 unwind label %1890

1888:                                             ; preds = %.preheader1570.4
  %1889 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %80, i1 noundef zeroext true)
          to label %.preheader1567.preheader unwind label %1890

.preheader1567.preheader:                         ; preds = %1888
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %1892 unwind label %1895

1890:                                             ; preds = %1888, %.preheader1570.4, %1886, %.preheader1570.3, %1884, %.preheader1570.2, %1882, %.preheader1570.1, %1880, %.preheader1570.preheader
  %1891 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %80) #6
  br label %.loopexit.split-lp1560

1892:                                             ; preds = %.preheader1567.preheader
  %1893 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2522 unwind label %1895

.invoke2522:                                      ; preds = %1892
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52548 = select i1 %1893, ptr @.str.4, ptr @.str.5
  %1894 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52548)
          to label %.preheader1567.1 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

1895:                                             ; preds = %1930, %.preheader1567.12, %1927, %.preheader1567.11, %1924, %.preheader1567.10, %1921, %.preheader1567.9, %1918, %.preheader1567.8, %1915, %.preheader1567.7, %1912, %.preheader1567.6, %1909, %.preheader1567.5, %1906, %.preheader1567.4, %1903, %.preheader1567.3, %1900, %.preheader1567.2, %1897, %.preheader1567.1, %1892, %.preheader1567.preheader
  %1896 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  br label %.loopexit.split-lp1560

.preheader1567.1:                                 ; preds = %.invoke2522
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 1)
          to label %1897 unwind label %1895

1897:                                             ; preds = %.preheader1567.1
  %1898 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2521 unwind label %1895

.invoke2521:                                      ; preds = %1897
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52549 = select i1 %1898, ptr @.str.4, ptr @.str.5
  %1899 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52549)
          to label %.preheader1567.2 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.2:                                 ; preds = %.invoke2521
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %1900 unwind label %1895

1900:                                             ; preds = %.preheader1567.2
  %1901 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2520 unwind label %1895

.invoke2520:                                      ; preds = %1900
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52550 = select i1 %1901, ptr @.str.4, ptr @.str.5
  %1902 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52550)
          to label %.preheader1567.3 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.3:                                 ; preds = %.invoke2520
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %1903 unwind label %1895

1903:                                             ; preds = %.preheader1567.3
  %1904 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2519 unwind label %1895

.invoke2519:                                      ; preds = %1903
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52551 = select i1 %1904, ptr @.str.4, ptr @.str.5
  %1905 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52551)
          to label %.preheader1567.4 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.4:                                 ; preds = %.invoke2519
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 4)
          to label %1906 unwind label %1895

1906:                                             ; preds = %.preheader1567.4
  %1907 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2518 unwind label %1895

.invoke2518:                                      ; preds = %1906
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52552 = select i1 %1907, ptr @.str.4, ptr @.str.5
  %1908 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52552)
          to label %.preheader1567.5 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.5:                                 ; preds = %.invoke2518
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 5)
          to label %1909 unwind label %1895

1909:                                             ; preds = %.preheader1567.5
  %1910 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2517 unwind label %1895

.invoke2517:                                      ; preds = %1909
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52553 = select i1 %1910, ptr @.str.4, ptr @.str.5
  %1911 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52553)
          to label %.preheader1567.6 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.6:                                 ; preds = %.invoke2517
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %1912 unwind label %1895

1912:                                             ; preds = %.preheader1567.6
  %1913 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2516 unwind label %1895

.invoke2516:                                      ; preds = %1912
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52554 = select i1 %1913, ptr @.str.4, ptr @.str.5
  %1914 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52554)
          to label %.preheader1567.7 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.7:                                 ; preds = %.invoke2516
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 7)
          to label %1915 unwind label %1895

1915:                                             ; preds = %.preheader1567.7
  %1916 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2515 unwind label %1895

.invoke2515:                                      ; preds = %1915
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52555 = select i1 %1916, ptr @.str.4, ptr @.str.5
  %1917 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52555)
          to label %.preheader1567.8 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.8:                                 ; preds = %.invoke2515
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 8)
          to label %1918 unwind label %1895

1918:                                             ; preds = %.preheader1567.8
  %1919 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2514 unwind label %1895

.invoke2514:                                      ; preds = %1918
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52556 = select i1 %1919, ptr @.str.4, ptr @.str.5
  %1920 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52556)
          to label %.preheader1567.9 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.9:                                 ; preds = %.invoke2514
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %1921 unwind label %1895

1921:                                             ; preds = %.preheader1567.9
  %1922 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2513 unwind label %1895

.invoke2513:                                      ; preds = %1921
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52557 = select i1 %1922, ptr @.str.4, ptr @.str.5
  %1923 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52557)
          to label %.preheader1567.10 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.10:                                ; preds = %.invoke2513
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 10)
          to label %1924 unwind label %1895

1924:                                             ; preds = %.preheader1567.10
  %1925 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2512 unwind label %1895

.invoke2512:                                      ; preds = %1924
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52558 = select i1 %1925, ptr @.str.4, ptr @.str.5
  %1926 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52558)
          to label %.preheader1567.11 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.11:                                ; preds = %.invoke2512
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 11)
          to label %1927 unwind label %1895

1927:                                             ; preds = %.preheader1567.11
  %1928 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2511 unwind label %1895

.invoke2511:                                      ; preds = %1927
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52559 = select i1 %1928, ptr @.str.4, ptr @.str.5
  %1929 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52559)
          to label %.preheader1567.12 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

.preheader1567.12:                                ; preds = %.invoke2511
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %81) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %81, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %1930 unwind label %1895

1930:                                             ; preds = %.preheader1567.12
  %1931 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %81)
          to label %.invoke2510 unwind label %1895

.invoke2510:                                      ; preds = %1930
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %81) #6
  %.str.4..str.52560 = select i1 %1931, ptr @.str.4, ptr @.str.5
  %1932 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52560)
          to label %1933 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit

1933:                                             ; preds = %.invoke2510
  %1934 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %1935 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1935:                                             ; preds = %1933
  %1936 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %1937 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

1937:                                             ; preds = %1935
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %82) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %82, ptr noundef nonnull align 8 dereferenceable(48) %78)
          to label %1938 unwind label %1944

1938:                                             ; preds = %1937
  %1939 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %78, ptr noundef nonnull align 8 dereferenceable(48) %82)
          to label %1940 unwind label %1946

1940:                                             ; preds = %1938
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %82) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %82) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %1941 unwind label %1949

1941:                                             ; preds = %1940
  %1942 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2509 unwind label %1949

.invoke2509:                                      ; preds = %1941
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52561 = select i1 %1942, ptr @.str.4, ptr @.str.5
  %1943 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52561)
          to label %1951 unwind label %.loopexit.split-lp1560.loopexit

1944:                                             ; preds = %1937
  %1945 = landingpad { ptr, i32 }
          cleanup
  br label %1948

1946:                                             ; preds = %1938
  %1947 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %82) #6
  br label %1948

1948:                                             ; preds = %1946, %1944
  %.pn1093 = phi { ptr, i32 } [ %1947, %1946 ], [ %1945, %1944 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %82) #6
  br label %.loopexit.split-lp1560

1949:                                             ; preds = %1996, %1995, %1992, %1991, %1988, %1987, %1984, %1983, %1980, %1979, %1976, %1975, %1972, %1971, %1968, %1967, %1964, %1963, %1960, %1959, %1956, %1955, %1952, %1951, %1941, %1940
  %1950 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  br label %.loopexit.split-lp1560

1951:                                             ; preds = %.invoke2509
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 1)
          to label %1952 unwind label %1949

1952:                                             ; preds = %1951
  %1953 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2508 unwind label %1949

.invoke2508:                                      ; preds = %1952
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52562 = select i1 %1953, ptr @.str.4, ptr @.str.5
  %1954 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52562)
          to label %1955 unwind label %.loopexit.split-lp1560.loopexit

1955:                                             ; preds = %.invoke2508
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %1956 unwind label %1949

1956:                                             ; preds = %1955
  %1957 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2507 unwind label %1949

.invoke2507:                                      ; preds = %1956
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52563 = select i1 %1957, ptr @.str.4, ptr @.str.5
  %1958 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52563)
          to label %1959 unwind label %.loopexit.split-lp1560.loopexit

1959:                                             ; preds = %.invoke2507
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %1960 unwind label %1949

1960:                                             ; preds = %1959
  %1961 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2506 unwind label %1949

.invoke2506:                                      ; preds = %1960
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52564 = select i1 %1961, ptr @.str.4, ptr @.str.5
  %1962 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52564)
          to label %1963 unwind label %.loopexit.split-lp1560.loopexit

1963:                                             ; preds = %.invoke2506
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 4)
          to label %1964 unwind label %1949

1964:                                             ; preds = %1963
  %1965 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2505 unwind label %1949

.invoke2505:                                      ; preds = %1964
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52565 = select i1 %1965, ptr @.str.4, ptr @.str.5
  %1966 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52565)
          to label %1967 unwind label %.loopexit.split-lp1560.loopexit

1967:                                             ; preds = %.invoke2505
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 5)
          to label %1968 unwind label %1949

1968:                                             ; preds = %1967
  %1969 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2504 unwind label %1949

.invoke2504:                                      ; preds = %1968
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52566 = select i1 %1969, ptr @.str.4, ptr @.str.5
  %1970 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52566)
          to label %1971 unwind label %.loopexit.split-lp1560.loopexit

1971:                                             ; preds = %.invoke2504
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %1972 unwind label %1949

1972:                                             ; preds = %1971
  %1973 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2503 unwind label %1949

.invoke2503:                                      ; preds = %1972
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52567 = select i1 %1973, ptr @.str.4, ptr @.str.5
  %1974 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52567)
          to label %1975 unwind label %.loopexit.split-lp1560.loopexit

1975:                                             ; preds = %.invoke2503
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 7)
          to label %1976 unwind label %1949

1976:                                             ; preds = %1975
  %1977 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2502 unwind label %1949

.invoke2502:                                      ; preds = %1976
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52568 = select i1 %1977, ptr @.str.4, ptr @.str.5
  %1978 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52568)
          to label %1979 unwind label %.loopexit.split-lp1560.loopexit

1979:                                             ; preds = %.invoke2502
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 8)
          to label %1980 unwind label %1949

1980:                                             ; preds = %1979
  %1981 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2501 unwind label %1949

.invoke2501:                                      ; preds = %1980
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52569 = select i1 %1981, ptr @.str.4, ptr @.str.5
  %1982 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52569)
          to label %1983 unwind label %.loopexit.split-lp1560.loopexit

1983:                                             ; preds = %.invoke2501
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %1984 unwind label %1949

1984:                                             ; preds = %1983
  %1985 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2500 unwind label %1949

.invoke2500:                                      ; preds = %1984
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52570 = select i1 %1985, ptr @.str.4, ptr @.str.5
  %1986 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52570)
          to label %1987 unwind label %.loopexit.split-lp1560.loopexit

1987:                                             ; preds = %.invoke2500
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 10)
          to label %1988 unwind label %1949

1988:                                             ; preds = %1987
  %1989 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2499 unwind label %1949

.invoke2499:                                      ; preds = %1988
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52571 = select i1 %1989, ptr @.str.4, ptr @.str.5
  %1990 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52571)
          to label %1991 unwind label %.loopexit.split-lp1560.loopexit

1991:                                             ; preds = %.invoke2499
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 11)
          to label %1992 unwind label %1949

1992:                                             ; preds = %1991
  %1993 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2498 unwind label %1949

.invoke2498:                                      ; preds = %1992
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52572 = select i1 %1993, ptr @.str.4, ptr @.str.5
  %1994 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52572)
          to label %1995 unwind label %.loopexit.split-lp1560.loopexit

1995:                                             ; preds = %.invoke2498
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %83) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %83, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %1996 unwind label %1949

1996:                                             ; preds = %1995
  %1997 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %83)
          to label %.invoke2497 unwind label %1949

.invoke2497:                                      ; preds = %1996
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %83) #6
  %.str.4..str.52573 = select i1 %1997, ptr @.str.4, ptr @.str.5
  %1998 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52573)
          to label %1999 unwind label %.loopexit.split-lp1560.loopexit

1999:                                             ; preds = %.invoke2497
  %2000 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1563.preheader unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1563.preheader:                         ; preds = %1999
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %84) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %2001 unwind label %2011

2001:                                             ; preds = %.preheader1563.preheader
  %2002 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %84, i1 noundef zeroext false)
          to label %.preheader1563.1 unwind label %2011

.preheader1563.1:                                 ; preds = %2001
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %84) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %2003 unwind label %2011

2003:                                             ; preds = %.preheader1563.1
  %2004 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %84, i1 noundef zeroext false)
          to label %.preheader1563.2 unwind label %2011

.preheader1563.2:                                 ; preds = %2003
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %84) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %2005 unwind label %2011

2005:                                             ; preds = %.preheader1563.2
  %2006 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %84, i1 noundef zeroext false)
          to label %.preheader1563.3 unwind label %2011

.preheader1563.3:                                 ; preds = %2005
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %84) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %2007 unwind label %2011

2007:                                             ; preds = %.preheader1563.3
  %2008 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %84, i1 noundef zeroext false)
          to label %.preheader1563.4 unwind label %2011

.preheader1563.4:                                 ; preds = %2007
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %84) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %84, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %2009 unwind label %2011

2009:                                             ; preds = %.preheader1563.4
  %2010 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %84, i1 noundef zeroext false)
          to label %.preheader1558.preheader unwind label %2011

.preheader1558.preheader:                         ; preds = %2009
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 0)
          to label %2013 unwind label %2016

2011:                                             ; preds = %2009, %.preheader1563.4, %2007, %.preheader1563.3, %2005, %.preheader1563.2, %2003, %.preheader1563.1, %2001, %.preheader1563.preheader
  %2012 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %84) #6
  br label %.loopexit.split-lp1560

2013:                                             ; preds = %.preheader1558.preheader
  %2014 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2496 unwind label %2016

.invoke2496:                                      ; preds = %2013
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52574 = select i1 %2014, ptr @.str.4, ptr @.str.5
  %2015 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52574)
          to label %.preheader1558.1 unwind label %.loopexit1559

2016:                                             ; preds = %2051, %.preheader1558.12, %2048, %.preheader1558.11, %2045, %.preheader1558.10, %2042, %.preheader1558.9, %2039, %.preheader1558.8, %2036, %.preheader1558.7, %2033, %.preheader1558.6, %2030, %.preheader1558.5, %2027, %.preheader1558.4, %2024, %.preheader1558.3, %2021, %.preheader1558.2, %2018, %.preheader1558.1, %2013, %.preheader1558.preheader
  %2017 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  br label %.loopexit.split-lp1560

.preheader1558.1:                                 ; preds = %.invoke2496
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 1)
          to label %2018 unwind label %2016

2018:                                             ; preds = %.preheader1558.1
  %2019 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2495 unwind label %2016

.invoke2495:                                      ; preds = %2018
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52575 = select i1 %2019, ptr @.str.4, ptr @.str.5
  %2020 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52575)
          to label %.preheader1558.2 unwind label %.loopexit1559

.preheader1558.2:                                 ; preds = %.invoke2495
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %2021 unwind label %2016

2021:                                             ; preds = %.preheader1558.2
  %2022 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2494 unwind label %2016

.invoke2494:                                      ; preds = %2021
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52576 = select i1 %2022, ptr @.str.4, ptr @.str.5
  %2023 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52576)
          to label %.preheader1558.3 unwind label %.loopexit1559

.preheader1558.3:                                 ; preds = %.invoke2494
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 3)
          to label %2024 unwind label %2016

2024:                                             ; preds = %.preheader1558.3
  %2025 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2493 unwind label %2016

.invoke2493:                                      ; preds = %2024
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52577 = select i1 %2025, ptr @.str.4, ptr @.str.5
  %2026 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52577)
          to label %.preheader1558.4 unwind label %.loopexit1559

.preheader1558.4:                                 ; preds = %.invoke2493
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 4)
          to label %2027 unwind label %2016

2027:                                             ; preds = %.preheader1558.4
  %2028 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2492 unwind label %2016

.invoke2492:                                      ; preds = %2027
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52578 = select i1 %2028, ptr @.str.4, ptr @.str.5
  %2029 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52578)
          to label %.preheader1558.5 unwind label %.loopexit1559

.preheader1558.5:                                 ; preds = %.invoke2492
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 5)
          to label %2030 unwind label %2016

2030:                                             ; preds = %.preheader1558.5
  %2031 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2491 unwind label %2016

.invoke2491:                                      ; preds = %2030
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52579 = select i1 %2031, ptr @.str.4, ptr @.str.5
  %2032 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52579)
          to label %.preheader1558.6 unwind label %.loopexit1559

.preheader1558.6:                                 ; preds = %.invoke2491
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 6)
          to label %2033 unwind label %2016

2033:                                             ; preds = %.preheader1558.6
  %2034 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2490 unwind label %2016

.invoke2490:                                      ; preds = %2033
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52580 = select i1 %2034, ptr @.str.4, ptr @.str.5
  %2035 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52580)
          to label %.preheader1558.7 unwind label %.loopexit1559

.preheader1558.7:                                 ; preds = %.invoke2490
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 7)
          to label %2036 unwind label %2016

2036:                                             ; preds = %.preheader1558.7
  %2037 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2489 unwind label %2016

.invoke2489:                                      ; preds = %2036
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52581 = select i1 %2037, ptr @.str.4, ptr @.str.5
  %2038 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52581)
          to label %.preheader1558.8 unwind label %.loopexit1559

.preheader1558.8:                                 ; preds = %.invoke2489
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 8)
          to label %2039 unwind label %2016

2039:                                             ; preds = %.preheader1558.8
  %2040 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2488 unwind label %2016

.invoke2488:                                      ; preds = %2039
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52582 = select i1 %2040, ptr @.str.4, ptr @.str.5
  %2041 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52582)
          to label %.preheader1558.9 unwind label %.loopexit1559

.preheader1558.9:                                 ; preds = %.invoke2488
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 9)
          to label %2042 unwind label %2016

2042:                                             ; preds = %.preheader1558.9
  %2043 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2487 unwind label %2016

.invoke2487:                                      ; preds = %2042
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52583 = select i1 %2043, ptr @.str.4, ptr @.str.5
  %2044 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52583)
          to label %.preheader1558.10 unwind label %.loopexit1559

.preheader1558.10:                                ; preds = %.invoke2487
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 10)
          to label %2045 unwind label %2016

2045:                                             ; preds = %.preheader1558.10
  %2046 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2486 unwind label %2016

.invoke2486:                                      ; preds = %2045
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52584 = select i1 %2046, ptr @.str.4, ptr @.str.5
  %2047 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52584)
          to label %.preheader1558.11 unwind label %.loopexit1559

.preheader1558.11:                                ; preds = %.invoke2486
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 11)
          to label %2048 unwind label %2016

2048:                                             ; preds = %.preheader1558.11
  %2049 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2485 unwind label %2016

.invoke2485:                                      ; preds = %2048
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52585 = select i1 %2049, ptr @.str.4, ptr @.str.5
  %2050 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52585)
          to label %.preheader1558.12 unwind label %.loopexit1559

.preheader1558.12:                                ; preds = %.invoke2485
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %85) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %85, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 12)
          to label %2051 unwind label %2016

2051:                                             ; preds = %.preheader1558.12
  %2052 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %85)
          to label %.invoke2484 unwind label %2016

.invoke2484:                                      ; preds = %2051
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %85) #6
  %.str.4..str.52586 = select i1 %2052, ptr @.str.4, ptr @.str.5
  %2053 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52586)
          to label %2054 unwind label %.loopexit1559

2054:                                             ; preds = %.invoke2484
  %2055 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2056 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2056:                                             ; preds = %2054
  %2057 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2058 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2058:                                             ; preds = %2056
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %86) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %86, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %2059 unwind label %2083

2059:                                             ; preds = %2058
  %2060 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2057, ptr noundef nonnull align 8 dereferenceable(32) %86)
          to label %2061 unwind label %2085

2061:                                             ; preds = %2059
  %2062 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2060, ptr noundef nonnull @.str.3)
          to label %2063 unwind label %2085

2063:                                             ; preds = %2061
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %86) #6
  %2064 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %78, ptr noundef nonnull @.str.8)
          to label %2065 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2065:                                             ; preds = %2063
  %2066 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2067 unwind label %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2067:                                             ; preds = %2065
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %87) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %87, ptr noundef nonnull align 8 dereferenceable(48) %78, i32 noundef 2)
          to label %2068 unwind label %2088

2068:                                             ; preds = %2067
  %2069 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2066, ptr noundef nonnull align 8 dereferenceable(32) %87)
          to label %2070 unwind label %2090

2070:                                             ; preds = %2068
  %2071 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2069, ptr noundef nonnull @.str.3)
          to label %2072 unwind label %2090

2072:                                             ; preds = %2070
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %87) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %78) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %78) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %76) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %76) #6
  %2073 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %2074 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2073, ptr noundef nonnull @.str.2)
  %2075 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2074, i32 noundef 13)
  %2076 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2075, ptr noundef nonnull @.str.2)
  %2077 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2076, i32 noundef 0)
  %2078 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2077, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %88) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %89) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %89, i32 noundef 13, i32 noundef 0)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %88, ptr noundef nonnull align 4 dereferenceable(20) %89, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %89) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %90) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0, ptr noundef null)
          to label %.preheader1554.preheader unwind label %2094

.preheader1554.preheader:                         ; preds = %2072
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2079 unwind label %2096

2079:                                             ; preds = %.preheader1554.preheader
  %2080 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2638 unwind label %2096

.invoke2638:                                      ; preds = %2079
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %2081 = select i1 %2080, ptr @.str.4, ptr @.str.5
  %2082 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2081)
          to label %.preheader1554.1 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

2083:                                             ; preds = %2058
  %2084 = landingpad { ptr, i32 }
          cleanup
  br label %2087

2085:                                             ; preds = %2061, %2059
  %2086 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %86) #6
  br label %2087

2087:                                             ; preds = %2085, %2083
  %.pn1095 = phi { ptr, i32 } [ %2086, %2085 ], [ %2084, %2083 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %86) #6
  br label %.loopexit.split-lp1560

2088:                                             ; preds = %2067
  %2089 = landingpad { ptr, i32 }
          cleanup
  br label %2092

2090:                                             ; preds = %2070, %2068
  %2091 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #6
  br label %2092

2092:                                             ; preds = %2090, %2088
  %.pn1097 = phi { ptr, i32 } [ %2091, %2090 ], [ %2089, %2088 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %87) #6
  br label %.loopexit.split-lp1560

.loopexit.split-lp1560:                           ; preds = %.loopexit1559, %.loopexit.split-lp1560.loopexit.split-lp.loopexit, %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1560.loopexit, %2092, %2087, %2016, %2011, %1949, %1948, %1895, %1890, %1840
  %.pn1252 = phi { ptr, i32 } [ %1841, %1840 ], [ %1891, %1890 ], [ %1896, %1895 ], [ %1950, %1949 ], [ %2012, %2011 ], [ %2017, %2016 ], [ %.pn1097, %2092 ], [ %.pn1095, %2087 ], [ %.pn1093, %1948 ], [ %lpad.loopexit1561, %.loopexit1559 ], [ %lpad.loopexit1564, %.loopexit.split-lp1560.loopexit ], [ %lpad.loopexit1568, %.loopexit.split-lp1560.loopexit.split-lp.loopexit ], [ %lpad.loopexit1572, %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1573, %.loopexit.split-lp1560.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %78) #6
  br label %2093

2093:                                             ; preds = %.loopexit.split-lp1560, %1838
  %.pn1252.pn = phi { ptr, i32 } [ %.pn1252, %.loopexit.split-lp1560 ], [ %1839, %1838 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %78) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %76) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %76) #6
  br label %5024

2094:                                             ; preds = %2072
  %2095 = landingpad { ptr, i32 }
          cleanup
  br label %2349

2096:                                             ; preds = %2131, %.preheader1554.12, %2128, %.preheader1554.11, %2125, %.preheader1554.10, %2122, %.preheader1554.9, %2119, %.preheader1554.8, %2116, %.preheader1554.7, %2113, %.preheader1554.6, %2110, %.preheader1554.5, %2107, %.preheader1554.4, %2104, %.preheader1554.3, %2101, %.preheader1554.2, %2098, %.preheader1554.1, %2079, %.preheader1554.preheader
  %2097 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  br label %.loopexit.split-lp1543

.loopexit1542:                                    ; preds = %.invoke2599, %.invoke2598, %.invoke2597, %.invoke2596, %.invoke2595, %.invoke2594, %.invoke2593, %.invoke2592, %.invoke2591, %.invoke2590, %.invoke2589, %.invoke2588, %.invoke2587
  %lpad.loopexit1544 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1543

.loopexit.split-lp1543.loopexit:                  ; preds = %.invoke2612, %.invoke2611, %.invoke2610, %.invoke2609, %.invoke2608, %.invoke2607, %.invoke2606, %.invoke2605, %.invoke2604, %.invoke2603, %.invoke2602, %.invoke2601, %.invoke2600
  %lpad.loopexit1547 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1543

.loopexit.split-lp1543.loopexit.split-lp.loopexit: ; preds = %.invoke2625, %.invoke2624, %.invoke2623, %.invoke2622, %.invoke2621, %.invoke2620, %.invoke2619, %.invoke2618, %.invoke2617, %.invoke2616, %.invoke2615, %.invoke2614, %.invoke2613
  %lpad.loopexit1551 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1543

.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2638, %.invoke2637, %.invoke2636, %.invoke2635, %.invoke2634, %.invoke2633, %.invoke2632, %.invoke2631, %.invoke2630, %.invoke2629, %.invoke2628, %.invoke2627, %.invoke2626
  %lpad.loopexit1555 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1543

.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2321, %2319, %2312, %2310, %2255, %2191, %2189, %2134
  %lpad.loopexit.split-lp1556 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1543

.preheader1554.1:                                 ; preds = %.invoke2638
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 1)
          to label %2098 unwind label %2096

2098:                                             ; preds = %.preheader1554.1
  %2099 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2637 unwind label %2096

.invoke2637:                                      ; preds = %2098
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52639 = select i1 %2099, ptr @.str.4, ptr @.str.5
  %2100 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52639)
          to label %.preheader1554.2 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.2:                                 ; preds = %.invoke2637
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2101 unwind label %2096

2101:                                             ; preds = %.preheader1554.2
  %2102 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2636 unwind label %2096

.invoke2636:                                      ; preds = %2101
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52640 = select i1 %2102, ptr @.str.4, ptr @.str.5
  %2103 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52640)
          to label %.preheader1554.3 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.3:                                 ; preds = %.invoke2636
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2104 unwind label %2096

2104:                                             ; preds = %.preheader1554.3
  %2105 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2635 unwind label %2096

.invoke2635:                                      ; preds = %2104
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52641 = select i1 %2105, ptr @.str.4, ptr @.str.5
  %2106 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52641)
          to label %.preheader1554.4 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.4:                                 ; preds = %.invoke2635
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 4)
          to label %2107 unwind label %2096

2107:                                             ; preds = %.preheader1554.4
  %2108 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2634 unwind label %2096

.invoke2634:                                      ; preds = %2107
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52642 = select i1 %2108, ptr @.str.4, ptr @.str.5
  %2109 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52642)
          to label %.preheader1554.5 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.5:                                 ; preds = %.invoke2634
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 5)
          to label %2110 unwind label %2096

2110:                                             ; preds = %.preheader1554.5
  %2111 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2633 unwind label %2096

.invoke2633:                                      ; preds = %2110
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52643 = select i1 %2111, ptr @.str.4, ptr @.str.5
  %2112 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52643)
          to label %.preheader1554.6 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.6:                                 ; preds = %.invoke2633
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2113 unwind label %2096

2113:                                             ; preds = %.preheader1554.6
  %2114 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2632 unwind label %2096

.invoke2632:                                      ; preds = %2113
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52644 = select i1 %2114, ptr @.str.4, ptr @.str.5
  %2115 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52644)
          to label %.preheader1554.7 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.7:                                 ; preds = %.invoke2632
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 7)
          to label %2116 unwind label %2096

2116:                                             ; preds = %.preheader1554.7
  %2117 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2631 unwind label %2096

.invoke2631:                                      ; preds = %2116
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52645 = select i1 %2117, ptr @.str.4, ptr @.str.5
  %2118 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52645)
          to label %.preheader1554.8 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.8:                                 ; preds = %.invoke2631
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 8)
          to label %2119 unwind label %2096

2119:                                             ; preds = %.preheader1554.8
  %2120 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2630 unwind label %2096

.invoke2630:                                      ; preds = %2119
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52646 = select i1 %2120, ptr @.str.4, ptr @.str.5
  %2121 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52646)
          to label %.preheader1554.9 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.9:                                 ; preds = %.invoke2630
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2122 unwind label %2096

2122:                                             ; preds = %.preheader1554.9
  %2123 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2629 unwind label %2096

.invoke2629:                                      ; preds = %2122
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52647 = select i1 %2123, ptr @.str.4, ptr @.str.5
  %2124 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52647)
          to label %.preheader1554.10 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.10:                                ; preds = %.invoke2629
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 10)
          to label %2125 unwind label %2096

2125:                                             ; preds = %.preheader1554.10
  %2126 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2628 unwind label %2096

.invoke2628:                                      ; preds = %2125
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52648 = select i1 %2126, ptr @.str.4, ptr @.str.5
  %2127 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52648)
          to label %.preheader1554.11 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.11:                                ; preds = %.invoke2628
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 11)
          to label %2128 unwind label %2096

2128:                                             ; preds = %.preheader1554.11
  %2129 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2627 unwind label %2096

.invoke2627:                                      ; preds = %2128
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52649 = select i1 %2129, ptr @.str.4, ptr @.str.5
  %2130 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52649)
          to label %.preheader1554.12 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1554.12:                                ; preds = %.invoke2627
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %91) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %91, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2131 unwind label %2096

2131:                                             ; preds = %.preheader1554.12
  %2132 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %91)
          to label %.invoke2626 unwind label %2096

.invoke2626:                                      ; preds = %2131
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %91) #6
  %.str.4..str.52650 = select i1 %2132, ptr @.str.4, ptr @.str.5
  %2133 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52650)
          to label %2134 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit

2134:                                             ; preds = %.invoke2626
  %2135 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1553.preheader unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1553.preheader:                         ; preds = %2134
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2136 unwind label %2146

2136:                                             ; preds = %.preheader1553.preheader
  %2137 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %.preheader1553.1 unwind label %2146

.preheader1553.1:                                 ; preds = %2136
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2138 unwind label %2146

2138:                                             ; preds = %.preheader1553.1
  %2139 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %.preheader1553.2 unwind label %2146

.preheader1553.2:                                 ; preds = %2138
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2140 unwind label %2146

2140:                                             ; preds = %.preheader1553.2
  %2141 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %.preheader1553.3 unwind label %2146

.preheader1553.3:                                 ; preds = %2140
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2142 unwind label %2146

2142:                                             ; preds = %.preheader1553.3
  %2143 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %.preheader1553.4 unwind label %2146

.preheader1553.4:                                 ; preds = %2142
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %92) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %92, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2144 unwind label %2146

2144:                                             ; preds = %.preheader1553.4
  %2145 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %92, i1 noundef zeroext true)
          to label %.preheader1550.preheader unwind label %2146

.preheader1550.preheader:                         ; preds = %2144
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2148 unwind label %2151

2146:                                             ; preds = %2144, %.preheader1553.4, %2142, %.preheader1553.3, %2140, %.preheader1553.2, %2138, %.preheader1553.1, %2136, %.preheader1553.preheader
  %2147 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %92) #6
  br label %.loopexit.split-lp1543

2148:                                             ; preds = %.preheader1550.preheader
  %2149 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2625 unwind label %2151

.invoke2625:                                      ; preds = %2148
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52651 = select i1 %2149, ptr @.str.4, ptr @.str.5
  %2150 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52651)
          to label %.preheader1550.1 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

2151:                                             ; preds = %2186, %.preheader1550.12, %2183, %.preheader1550.11, %2180, %.preheader1550.10, %2177, %.preheader1550.9, %2174, %.preheader1550.8, %2171, %.preheader1550.7, %2168, %.preheader1550.6, %2165, %.preheader1550.5, %2162, %.preheader1550.4, %2159, %.preheader1550.3, %2156, %.preheader1550.2, %2153, %.preheader1550.1, %2148, %.preheader1550.preheader
  %2152 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  br label %.loopexit.split-lp1543

.preheader1550.1:                                 ; preds = %.invoke2625
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 1)
          to label %2153 unwind label %2151

2153:                                             ; preds = %.preheader1550.1
  %2154 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2624 unwind label %2151

.invoke2624:                                      ; preds = %2153
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52652 = select i1 %2154, ptr @.str.4, ptr @.str.5
  %2155 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52652)
          to label %.preheader1550.2 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.2:                                 ; preds = %.invoke2624
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2156 unwind label %2151

2156:                                             ; preds = %.preheader1550.2
  %2157 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2623 unwind label %2151

.invoke2623:                                      ; preds = %2156
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52653 = select i1 %2157, ptr @.str.4, ptr @.str.5
  %2158 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52653)
          to label %.preheader1550.3 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.3:                                 ; preds = %.invoke2623
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2159 unwind label %2151

2159:                                             ; preds = %.preheader1550.3
  %2160 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2622 unwind label %2151

.invoke2622:                                      ; preds = %2159
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52654 = select i1 %2160, ptr @.str.4, ptr @.str.5
  %2161 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52654)
          to label %.preheader1550.4 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.4:                                 ; preds = %.invoke2622
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 4)
          to label %2162 unwind label %2151

2162:                                             ; preds = %.preheader1550.4
  %2163 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2621 unwind label %2151

.invoke2621:                                      ; preds = %2162
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52655 = select i1 %2163, ptr @.str.4, ptr @.str.5
  %2164 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52655)
          to label %.preheader1550.5 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.5:                                 ; preds = %.invoke2621
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 5)
          to label %2165 unwind label %2151

2165:                                             ; preds = %.preheader1550.5
  %2166 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2620 unwind label %2151

.invoke2620:                                      ; preds = %2165
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52656 = select i1 %2166, ptr @.str.4, ptr @.str.5
  %2167 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52656)
          to label %.preheader1550.6 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.6:                                 ; preds = %.invoke2620
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2168 unwind label %2151

2168:                                             ; preds = %.preheader1550.6
  %2169 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2619 unwind label %2151

.invoke2619:                                      ; preds = %2168
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52657 = select i1 %2169, ptr @.str.4, ptr @.str.5
  %2170 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52657)
          to label %.preheader1550.7 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.7:                                 ; preds = %.invoke2619
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 7)
          to label %2171 unwind label %2151

2171:                                             ; preds = %.preheader1550.7
  %2172 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2618 unwind label %2151

.invoke2618:                                      ; preds = %2171
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52658 = select i1 %2172, ptr @.str.4, ptr @.str.5
  %2173 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52658)
          to label %.preheader1550.8 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.8:                                 ; preds = %.invoke2618
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 8)
          to label %2174 unwind label %2151

2174:                                             ; preds = %.preheader1550.8
  %2175 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2617 unwind label %2151

.invoke2617:                                      ; preds = %2174
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52659 = select i1 %2175, ptr @.str.4, ptr @.str.5
  %2176 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52659)
          to label %.preheader1550.9 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.9:                                 ; preds = %.invoke2617
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2177 unwind label %2151

2177:                                             ; preds = %.preheader1550.9
  %2178 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2616 unwind label %2151

.invoke2616:                                      ; preds = %2177
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52660 = select i1 %2178, ptr @.str.4, ptr @.str.5
  %2179 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52660)
          to label %.preheader1550.10 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.10:                                ; preds = %.invoke2616
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 10)
          to label %2180 unwind label %2151

2180:                                             ; preds = %.preheader1550.10
  %2181 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2615 unwind label %2151

.invoke2615:                                      ; preds = %2180
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52661 = select i1 %2181, ptr @.str.4, ptr @.str.5
  %2182 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52661)
          to label %.preheader1550.11 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.11:                                ; preds = %.invoke2615
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 11)
          to label %2183 unwind label %2151

2183:                                             ; preds = %.preheader1550.11
  %2184 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2614 unwind label %2151

.invoke2614:                                      ; preds = %2183
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52662 = select i1 %2184, ptr @.str.4, ptr @.str.5
  %2185 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52662)
          to label %.preheader1550.12 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

.preheader1550.12:                                ; preds = %.invoke2614
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %93) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %93, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2186 unwind label %2151

2186:                                             ; preds = %.preheader1550.12
  %2187 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %93)
          to label %.invoke2613 unwind label %2151

.invoke2613:                                      ; preds = %2186
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %93) #6
  %.str.4..str.52663 = select i1 %2187, ptr @.str.4, ptr @.str.5
  %2188 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52663)
          to label %2189 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit

2189:                                             ; preds = %.invoke2613
  %2190 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2191 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2191:                                             ; preds = %2189
  %2192 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2193 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2193:                                             ; preds = %2191
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %94) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %94, ptr noundef nonnull align 8 dereferenceable(48) %90)
          to label %2194 unwind label %2200

2194:                                             ; preds = %2193
  %2195 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %90, ptr noundef nonnull align 8 dereferenceable(48) %94)
          to label %2196 unwind label %2202

2196:                                             ; preds = %2194
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %94) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %94) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2197 unwind label %2205

2197:                                             ; preds = %2196
  %2198 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2612 unwind label %2205

.invoke2612:                                      ; preds = %2197
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52664 = select i1 %2198, ptr @.str.4, ptr @.str.5
  %2199 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52664)
          to label %2207 unwind label %.loopexit.split-lp1543.loopexit

2200:                                             ; preds = %2193
  %2201 = landingpad { ptr, i32 }
          cleanup
  br label %2204

2202:                                             ; preds = %2194
  %2203 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %94) #6
  br label %2204

2204:                                             ; preds = %2202, %2200
  %.pn1099 = phi { ptr, i32 } [ %2203, %2202 ], [ %2201, %2200 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %94) #6
  br label %.loopexit.split-lp1543

2205:                                             ; preds = %2252, %2251, %2248, %2247, %2244, %2243, %2240, %2239, %2236, %2235, %2232, %2231, %2228, %2227, %2224, %2223, %2220, %2219, %2216, %2215, %2212, %2211, %2208, %2207, %2197, %2196
  %2206 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  br label %.loopexit.split-lp1543

2207:                                             ; preds = %.invoke2612
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 1)
          to label %2208 unwind label %2205

2208:                                             ; preds = %2207
  %2209 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2611 unwind label %2205

.invoke2611:                                      ; preds = %2208
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52665 = select i1 %2209, ptr @.str.4, ptr @.str.5
  %2210 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52665)
          to label %2211 unwind label %.loopexit.split-lp1543.loopexit

2211:                                             ; preds = %.invoke2611
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2212 unwind label %2205

2212:                                             ; preds = %2211
  %2213 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2610 unwind label %2205

.invoke2610:                                      ; preds = %2212
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52666 = select i1 %2213, ptr @.str.4, ptr @.str.5
  %2214 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52666)
          to label %2215 unwind label %.loopexit.split-lp1543.loopexit

2215:                                             ; preds = %.invoke2610
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2216 unwind label %2205

2216:                                             ; preds = %2215
  %2217 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2609 unwind label %2205

.invoke2609:                                      ; preds = %2216
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52667 = select i1 %2217, ptr @.str.4, ptr @.str.5
  %2218 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52667)
          to label %2219 unwind label %.loopexit.split-lp1543.loopexit

2219:                                             ; preds = %.invoke2609
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 4)
          to label %2220 unwind label %2205

2220:                                             ; preds = %2219
  %2221 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2608 unwind label %2205

.invoke2608:                                      ; preds = %2220
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52668 = select i1 %2221, ptr @.str.4, ptr @.str.5
  %2222 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52668)
          to label %2223 unwind label %.loopexit.split-lp1543.loopexit

2223:                                             ; preds = %.invoke2608
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 5)
          to label %2224 unwind label %2205

2224:                                             ; preds = %2223
  %2225 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2607 unwind label %2205

.invoke2607:                                      ; preds = %2224
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52669 = select i1 %2225, ptr @.str.4, ptr @.str.5
  %2226 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52669)
          to label %2227 unwind label %.loopexit.split-lp1543.loopexit

2227:                                             ; preds = %.invoke2607
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2228 unwind label %2205

2228:                                             ; preds = %2227
  %2229 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2606 unwind label %2205

.invoke2606:                                      ; preds = %2228
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52670 = select i1 %2229, ptr @.str.4, ptr @.str.5
  %2230 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52670)
          to label %2231 unwind label %.loopexit.split-lp1543.loopexit

2231:                                             ; preds = %.invoke2606
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 7)
          to label %2232 unwind label %2205

2232:                                             ; preds = %2231
  %2233 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2605 unwind label %2205

.invoke2605:                                      ; preds = %2232
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52671 = select i1 %2233, ptr @.str.4, ptr @.str.5
  %2234 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52671)
          to label %2235 unwind label %.loopexit.split-lp1543.loopexit

2235:                                             ; preds = %.invoke2605
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 8)
          to label %2236 unwind label %2205

2236:                                             ; preds = %2235
  %2237 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2604 unwind label %2205

.invoke2604:                                      ; preds = %2236
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52672 = select i1 %2237, ptr @.str.4, ptr @.str.5
  %2238 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52672)
          to label %2239 unwind label %.loopexit.split-lp1543.loopexit

2239:                                             ; preds = %.invoke2604
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2240 unwind label %2205

2240:                                             ; preds = %2239
  %2241 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2603 unwind label %2205

.invoke2603:                                      ; preds = %2240
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52673 = select i1 %2241, ptr @.str.4, ptr @.str.5
  %2242 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52673)
          to label %2243 unwind label %.loopexit.split-lp1543.loopexit

2243:                                             ; preds = %.invoke2603
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 10)
          to label %2244 unwind label %2205

2244:                                             ; preds = %2243
  %2245 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2602 unwind label %2205

.invoke2602:                                      ; preds = %2244
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52674 = select i1 %2245, ptr @.str.4, ptr @.str.5
  %2246 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52674)
          to label %2247 unwind label %.loopexit.split-lp1543.loopexit

2247:                                             ; preds = %.invoke2602
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 11)
          to label %2248 unwind label %2205

2248:                                             ; preds = %2247
  %2249 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2601 unwind label %2205

.invoke2601:                                      ; preds = %2248
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52675 = select i1 %2249, ptr @.str.4, ptr @.str.5
  %2250 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52675)
          to label %2251 unwind label %.loopexit.split-lp1543.loopexit

2251:                                             ; preds = %.invoke2601
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %95) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %95, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2252 unwind label %2205

2252:                                             ; preds = %2251
  %2253 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %95)
          to label %.invoke2600 unwind label %2205

.invoke2600:                                      ; preds = %2252
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %95) #6
  %.str.4..str.52676 = select i1 %2253, ptr @.str.4, ptr @.str.5
  %2254 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52676)
          to label %2255 unwind label %.loopexit.split-lp1543.loopexit

2255:                                             ; preds = %.invoke2600
  %2256 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1546.preheader unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1546.preheader:                         ; preds = %2255
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %96) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2257 unwind label %2267

2257:                                             ; preds = %.preheader1546.preheader
  %2258 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %.preheader1546.1 unwind label %2267

.preheader1546.1:                                 ; preds = %2257
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %96) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2259 unwind label %2267

2259:                                             ; preds = %.preheader1546.1
  %2260 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %.preheader1546.2 unwind label %2267

.preheader1546.2:                                 ; preds = %2259
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %96) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2261 unwind label %2267

2261:                                             ; preds = %.preheader1546.2
  %2262 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %.preheader1546.3 unwind label %2267

.preheader1546.3:                                 ; preds = %2261
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %96) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2263 unwind label %2267

2263:                                             ; preds = %.preheader1546.3
  %2264 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %.preheader1546.4 unwind label %2267

.preheader1546.4:                                 ; preds = %2263
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %96) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %96, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2265 unwind label %2267

2265:                                             ; preds = %.preheader1546.4
  %2266 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %96, i1 noundef zeroext false)
          to label %.preheader1541.preheader unwind label %2267

.preheader1541.preheader:                         ; preds = %2265
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 0)
          to label %2269 unwind label %2272

2267:                                             ; preds = %2265, %.preheader1546.4, %2263, %.preheader1546.3, %2261, %.preheader1546.2, %2259, %.preheader1546.1, %2257, %.preheader1546.preheader
  %2268 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %96) #6
  br label %.loopexit.split-lp1543

2269:                                             ; preds = %.preheader1541.preheader
  %2270 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2599 unwind label %2272

.invoke2599:                                      ; preds = %2269
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52677 = select i1 %2270, ptr @.str.4, ptr @.str.5
  %2271 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52677)
          to label %.preheader1541.1 unwind label %.loopexit1542

2272:                                             ; preds = %2307, %.preheader1541.12, %2304, %.preheader1541.11, %2301, %.preheader1541.10, %2298, %.preheader1541.9, %2295, %.preheader1541.8, %2292, %.preheader1541.7, %2289, %.preheader1541.6, %2286, %.preheader1541.5, %2283, %.preheader1541.4, %2280, %.preheader1541.3, %2277, %.preheader1541.2, %2274, %.preheader1541.1, %2269, %.preheader1541.preheader
  %2273 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  br label %.loopexit.split-lp1543

.preheader1541.1:                                 ; preds = %.invoke2599
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 1)
          to label %2274 unwind label %2272

2274:                                             ; preds = %.preheader1541.1
  %2275 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2598 unwind label %2272

.invoke2598:                                      ; preds = %2274
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52678 = select i1 %2275, ptr @.str.4, ptr @.str.5
  %2276 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52678)
          to label %.preheader1541.2 unwind label %.loopexit1542

.preheader1541.2:                                 ; preds = %.invoke2598
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2277 unwind label %2272

2277:                                             ; preds = %.preheader1541.2
  %2278 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2597 unwind label %2272

.invoke2597:                                      ; preds = %2277
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52679 = select i1 %2278, ptr @.str.4, ptr @.str.5
  %2279 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52679)
          to label %.preheader1541.3 unwind label %.loopexit1542

.preheader1541.3:                                 ; preds = %.invoke2597
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 3)
          to label %2280 unwind label %2272

2280:                                             ; preds = %.preheader1541.3
  %2281 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2596 unwind label %2272

.invoke2596:                                      ; preds = %2280
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52680 = select i1 %2281, ptr @.str.4, ptr @.str.5
  %2282 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52680)
          to label %.preheader1541.4 unwind label %.loopexit1542

.preheader1541.4:                                 ; preds = %.invoke2596
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 4)
          to label %2283 unwind label %2272

2283:                                             ; preds = %.preheader1541.4
  %2284 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2595 unwind label %2272

.invoke2595:                                      ; preds = %2283
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52681 = select i1 %2284, ptr @.str.4, ptr @.str.5
  %2285 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52681)
          to label %.preheader1541.5 unwind label %.loopexit1542

.preheader1541.5:                                 ; preds = %.invoke2595
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 5)
          to label %2286 unwind label %2272

2286:                                             ; preds = %.preheader1541.5
  %2287 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2594 unwind label %2272

.invoke2594:                                      ; preds = %2286
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52682 = select i1 %2287, ptr @.str.4, ptr @.str.5
  %2288 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52682)
          to label %.preheader1541.6 unwind label %.loopexit1542

.preheader1541.6:                                 ; preds = %.invoke2594
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 6)
          to label %2289 unwind label %2272

2289:                                             ; preds = %.preheader1541.6
  %2290 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2593 unwind label %2272

.invoke2593:                                      ; preds = %2289
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52683 = select i1 %2290, ptr @.str.4, ptr @.str.5
  %2291 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52683)
          to label %.preheader1541.7 unwind label %.loopexit1542

.preheader1541.7:                                 ; preds = %.invoke2593
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 7)
          to label %2292 unwind label %2272

2292:                                             ; preds = %.preheader1541.7
  %2293 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2592 unwind label %2272

.invoke2592:                                      ; preds = %2292
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52684 = select i1 %2293, ptr @.str.4, ptr @.str.5
  %2294 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52684)
          to label %.preheader1541.8 unwind label %.loopexit1542

.preheader1541.8:                                 ; preds = %.invoke2592
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 8)
          to label %2295 unwind label %2272

2295:                                             ; preds = %.preheader1541.8
  %2296 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2591 unwind label %2272

.invoke2591:                                      ; preds = %2295
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52685 = select i1 %2296, ptr @.str.4, ptr @.str.5
  %2297 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52685)
          to label %.preheader1541.9 unwind label %.loopexit1542

.preheader1541.9:                                 ; preds = %.invoke2591
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 9)
          to label %2298 unwind label %2272

2298:                                             ; preds = %.preheader1541.9
  %2299 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2590 unwind label %2272

.invoke2590:                                      ; preds = %2298
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52686 = select i1 %2299, ptr @.str.4, ptr @.str.5
  %2300 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52686)
          to label %.preheader1541.10 unwind label %.loopexit1542

.preheader1541.10:                                ; preds = %.invoke2590
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 10)
          to label %2301 unwind label %2272

2301:                                             ; preds = %.preheader1541.10
  %2302 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2589 unwind label %2272

.invoke2589:                                      ; preds = %2301
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52687 = select i1 %2302, ptr @.str.4, ptr @.str.5
  %2303 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52687)
          to label %.preheader1541.11 unwind label %.loopexit1542

.preheader1541.11:                                ; preds = %.invoke2589
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 11)
          to label %2304 unwind label %2272

2304:                                             ; preds = %.preheader1541.11
  %2305 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2588 unwind label %2272

.invoke2588:                                      ; preds = %2304
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52688 = select i1 %2305, ptr @.str.4, ptr @.str.5
  %2306 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52688)
          to label %.preheader1541.12 unwind label %.loopexit1542

.preheader1541.12:                                ; preds = %.invoke2588
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %97) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %97, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 12)
          to label %2307 unwind label %2272

2307:                                             ; preds = %.preheader1541.12
  %2308 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %97)
          to label %.invoke2587 unwind label %2272

.invoke2587:                                      ; preds = %2307
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %97) #6
  %.str.4..str.52689 = select i1 %2308, ptr @.str.4, ptr @.str.5
  %2309 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52689)
          to label %2310 unwind label %.loopexit1542

2310:                                             ; preds = %.invoke2587
  %2311 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2312 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2312:                                             ; preds = %2310
  %2313 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2314 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2314:                                             ; preds = %2312
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %98) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %98, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2315 unwind label %2339

2315:                                             ; preds = %2314
  %2316 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2313, ptr noundef nonnull align 8 dereferenceable(32) %98)
          to label %2317 unwind label %2341

2317:                                             ; preds = %2315
  %2318 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2316, ptr noundef nonnull @.str.3)
          to label %2319 unwind label %2341

2319:                                             ; preds = %2317
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %98) #6
  %2320 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %90, ptr noundef nonnull @.str.8)
          to label %2321 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2321:                                             ; preds = %2319
  %2322 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2323 unwind label %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2323:                                             ; preds = %2321
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %99) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %99, ptr noundef nonnull align 8 dereferenceable(48) %90, i32 noundef 2)
          to label %2324 unwind label %2344

2324:                                             ; preds = %2323
  %2325 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2322, ptr noundef nonnull align 8 dereferenceable(32) %99)
          to label %2326 unwind label %2346

2326:                                             ; preds = %2324
  %2327 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2325, ptr noundef nonnull @.str.3)
          to label %2328 unwind label %2346

2328:                                             ; preds = %2326
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %99) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %90) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %90) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %88) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %88) #6
  %2329 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %2330 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2329, ptr noundef nonnull @.str.2)
  %2331 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2330, i32 noundef 5)
  %2332 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2331, ptr noundef nonnull @.str.2)
  %2333 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2332, i32 noundef 13)
  %2334 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2333, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %100) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %101) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %101, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %100, ptr noundef nonnull align 4 dereferenceable(20) %101, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %101) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %102) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0, ptr noundef null)
          to label %.preheader1537.preheader unwind label %2350

.preheader1537.preheader:                         ; preds = %2328
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %103, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2335 unwind label %2352

2335:                                             ; preds = %.preheader1537.preheader
  %2336 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %103)
          to label %.invoke2709 unwind label %2352

.invoke2709:                                      ; preds = %2335
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  %2337 = select i1 %2336, ptr @.str.4, ptr @.str.5
  %2338 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2337)
          to label %.preheader1537.1 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit

2339:                                             ; preds = %2314
  %2340 = landingpad { ptr, i32 }
          cleanup
  br label %2343

2341:                                             ; preds = %2317, %2315
  %2342 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #6
  br label %2343

2343:                                             ; preds = %2341, %2339
  %.pn1101 = phi { ptr, i32 } [ %2342, %2341 ], [ %2340, %2339 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %98) #6
  br label %.loopexit.split-lp1543

2344:                                             ; preds = %2323
  %2345 = landingpad { ptr, i32 }
          cleanup
  br label %2348

2346:                                             ; preds = %2326, %2324
  %2347 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %99) #6
  br label %2348

2348:                                             ; preds = %2346, %2344
  %.pn1103 = phi { ptr, i32 } [ %2347, %2346 ], [ %2345, %2344 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %99) #6
  br label %.loopexit.split-lp1543

.loopexit.split-lp1543:                           ; preds = %.loopexit1542, %.loopexit.split-lp1543.loopexit.split-lp.loopexit, %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1543.loopexit, %2348, %2343, %2272, %2267, %2205, %2204, %2151, %2146, %2096
  %.pn1249 = phi { ptr, i32 } [ %2097, %2096 ], [ %2147, %2146 ], [ %2152, %2151 ], [ %2206, %2205 ], [ %2268, %2267 ], [ %2273, %2272 ], [ %.pn1103, %2348 ], [ %.pn1101, %2343 ], [ %.pn1099, %2204 ], [ %lpad.loopexit1544, %.loopexit1542 ], [ %lpad.loopexit1547, %.loopexit.split-lp1543.loopexit ], [ %lpad.loopexit1551, %.loopexit.split-lp1543.loopexit.split-lp.loopexit ], [ %lpad.loopexit1555, %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1556, %.loopexit.split-lp1543.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %90) #6
  br label %2349

2349:                                             ; preds = %.loopexit.split-lp1543, %2094
  %.pn1249.pn = phi { ptr, i32 } [ %.pn1249, %.loopexit.split-lp1543 ], [ %2095, %2094 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %90) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %88) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %88) #6
  br label %5024

2350:                                             ; preds = %2328
  %2351 = landingpad { ptr, i32 }
          cleanup
  br label %2489

2352:                                             ; preds = %2363, %.preheader1537.4, %2360, %.preheader1537.3, %2357, %.preheader1537.2, %2354, %.preheader1537.1, %2335, %.preheader1537.preheader
  %2353 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  br label %.loopexit.split-lp1526

.loopexit1525:                                    ; preds = %.invoke2694, %.invoke2693, %.invoke2692, %.invoke2691, %.invoke2690
  %lpad.loopexit1527 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1526

.loopexit.split-lp1526.loopexit:                  ; preds = %.invoke2699, %.invoke2698, %.invoke2697, %.invoke2696, %.invoke2695
  %lpad.loopexit1530 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1526

.loopexit.split-lp1526.loopexit.split-lp.loopexit: ; preds = %.invoke2704, %.invoke2703, %.invoke2702, %.invoke2701, %.invoke2700
  %lpad.loopexit1534 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1526

.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2709, %.invoke2708, %.invoke2707, %.invoke2706, %.invoke2705
  %lpad.loopexit1538 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1526

.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2461, %2459, %2452, %2450, %2425, %2393, %2391, %2366
  %lpad.loopexit.split-lp1539 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1526

.preheader1537.1:                                 ; preds = %.invoke2709
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %103, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 1)
          to label %2354 unwind label %2352

2354:                                             ; preds = %.preheader1537.1
  %2355 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %103)
          to label %.invoke2708 unwind label %2352

.invoke2708:                                      ; preds = %2354
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  %.str.4..str.52710 = select i1 %2355, ptr @.str.4, ptr @.str.5
  %2356 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52710)
          to label %.preheader1537.2 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1537.2:                                 ; preds = %.invoke2708
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %103, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2357 unwind label %2352

2357:                                             ; preds = %.preheader1537.2
  %2358 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %103)
          to label %.invoke2707 unwind label %2352

.invoke2707:                                      ; preds = %2357
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  %.str.4..str.52711 = select i1 %2358, ptr @.str.4, ptr @.str.5
  %2359 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52711)
          to label %.preheader1537.3 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1537.3:                                 ; preds = %.invoke2707
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %103, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2360 unwind label %2352

2360:                                             ; preds = %.preheader1537.3
  %2361 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %103)
          to label %.invoke2706 unwind label %2352

.invoke2706:                                      ; preds = %2360
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  %.str.4..str.52712 = select i1 %2361, ptr @.str.4, ptr @.str.5
  %2362 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52712)
          to label %.preheader1537.4 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1537.4:                                 ; preds = %.invoke2706
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %103, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 4)
          to label %2363 unwind label %2352

2363:                                             ; preds = %.preheader1537.4
  %2364 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %103)
          to label %.invoke2705 unwind label %2352

.invoke2705:                                      ; preds = %2363
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #6
  %.str.4..str.52713 = select i1 %2364, ptr @.str.4, ptr @.str.5
  %2365 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52713)
          to label %2366 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit

2366:                                             ; preds = %.invoke2705
  %2367 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1536.preheader unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1536.preheader:                         ; preds = %2366
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %104) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %104, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2368 unwind label %2372

2368:                                             ; preds = %.preheader1536.preheader
  %2369 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %104, i1 noundef zeroext true)
          to label %.preheader1536.1 unwind label %2372

.preheader1536.1:                                 ; preds = %2368
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %104) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %104) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %104, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2370 unwind label %2372

2370:                                             ; preds = %.preheader1536.1
  %2371 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %104, i1 noundef zeroext true)
          to label %.preheader1533.preheader unwind label %2372

.preheader1533.preheader:                         ; preds = %2370
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %104) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %105) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2374 unwind label %2377

2372:                                             ; preds = %2370, %.preheader1536.1, %2368, %.preheader1536.preheader
  %2373 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %104) #6
  br label %.loopexit.split-lp1526

2374:                                             ; preds = %.preheader1533.preheader
  %2375 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %105)
          to label %.invoke2704 unwind label %2377

.invoke2704:                                      ; preds = %2374
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  %.str.4..str.52714 = select i1 %2375, ptr @.str.4, ptr @.str.5
  %2376 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52714)
          to label %.preheader1533.1 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit

2377:                                             ; preds = %2388, %.preheader1533.4, %2385, %.preheader1533.3, %2382, %.preheader1533.2, %2379, %.preheader1533.1, %2374, %.preheader1533.preheader
  %2378 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  br label %.loopexit.split-lp1526

.preheader1533.1:                                 ; preds = %.invoke2704
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %105) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 1)
          to label %2379 unwind label %2377

2379:                                             ; preds = %.preheader1533.1
  %2380 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %105)
          to label %.invoke2703 unwind label %2377

.invoke2703:                                      ; preds = %2379
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  %.str.4..str.52715 = select i1 %2380, ptr @.str.4, ptr @.str.5
  %2381 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52715)
          to label %.preheader1533.2 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit

.preheader1533.2:                                 ; preds = %.invoke2703
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %105) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2382 unwind label %2377

2382:                                             ; preds = %.preheader1533.2
  %2383 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %105)
          to label %.invoke2702 unwind label %2377

.invoke2702:                                      ; preds = %2382
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  %.str.4..str.52716 = select i1 %2383, ptr @.str.4, ptr @.str.5
  %2384 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52716)
          to label %.preheader1533.3 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit

.preheader1533.3:                                 ; preds = %.invoke2702
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %105) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2385 unwind label %2377

2385:                                             ; preds = %.preheader1533.3
  %2386 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %105)
          to label %.invoke2701 unwind label %2377

.invoke2701:                                      ; preds = %2385
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  %.str.4..str.52717 = select i1 %2386, ptr @.str.4, ptr @.str.5
  %2387 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52717)
          to label %.preheader1533.4 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit

.preheader1533.4:                                 ; preds = %.invoke2701
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %105) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %105, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 4)
          to label %2388 unwind label %2377

2388:                                             ; preds = %.preheader1533.4
  %2389 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %105)
          to label %.invoke2700 unwind label %2377

.invoke2700:                                      ; preds = %2388
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %105) #6
  %.str.4..str.52718 = select i1 %2389, ptr @.str.4, ptr @.str.5
  %2390 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52718)
          to label %2391 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit

2391:                                             ; preds = %.invoke2700
  %2392 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2393 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2393:                                             ; preds = %2391
  %2394 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2395 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2395:                                             ; preds = %2393
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %106) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %106, ptr noundef nonnull align 8 dereferenceable(48) %102)
          to label %2396 unwind label %2402

2396:                                             ; preds = %2395
  %2397 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %102, ptr noundef nonnull align 8 dereferenceable(48) %106)
          to label %2398 unwind label %2404

2398:                                             ; preds = %2396
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %106) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %106) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2399 unwind label %2407

2399:                                             ; preds = %2398
  %2400 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %107)
          to label %.invoke2699 unwind label %2407

.invoke2699:                                      ; preds = %2399
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  %.str.4..str.52719 = select i1 %2400, ptr @.str.4, ptr @.str.5
  %2401 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52719)
          to label %2409 unwind label %.loopexit.split-lp1526.loopexit

2402:                                             ; preds = %2395
  %2403 = landingpad { ptr, i32 }
          cleanup
  br label %2406

2404:                                             ; preds = %2396
  %2405 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %106) #6
  br label %2406

2406:                                             ; preds = %2404, %2402
  %.pn1105 = phi { ptr, i32 } [ %2405, %2404 ], [ %2403, %2402 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %106) #6
  br label %.loopexit.split-lp1526

2407:                                             ; preds = %2422, %2421, %2418, %2417, %2414, %2413, %2410, %2409, %2399, %2398
  %2408 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  br label %.loopexit.split-lp1526

2409:                                             ; preds = %.invoke2699
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 1)
          to label %2410 unwind label %2407

2410:                                             ; preds = %2409
  %2411 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %107)
          to label %.invoke2698 unwind label %2407

.invoke2698:                                      ; preds = %2410
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  %.str.4..str.52720 = select i1 %2411, ptr @.str.4, ptr @.str.5
  %2412 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52720)
          to label %2413 unwind label %.loopexit.split-lp1526.loopexit

2413:                                             ; preds = %.invoke2698
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2414 unwind label %2407

2414:                                             ; preds = %2413
  %2415 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %107)
          to label %.invoke2697 unwind label %2407

.invoke2697:                                      ; preds = %2414
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  %.str.4..str.52721 = select i1 %2415, ptr @.str.4, ptr @.str.5
  %2416 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52721)
          to label %2417 unwind label %.loopexit.split-lp1526.loopexit

2417:                                             ; preds = %.invoke2697
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2418 unwind label %2407

2418:                                             ; preds = %2417
  %2419 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %107)
          to label %.invoke2696 unwind label %2407

.invoke2696:                                      ; preds = %2418
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  %.str.4..str.52722 = select i1 %2419, ptr @.str.4, ptr @.str.5
  %2420 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52722)
          to label %2421 unwind label %.loopexit.split-lp1526.loopexit

2421:                                             ; preds = %.invoke2696
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %107) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %107, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 4)
          to label %2422 unwind label %2407

2422:                                             ; preds = %2421
  %2423 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %107)
          to label %.invoke2695 unwind label %2407

.invoke2695:                                      ; preds = %2422
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %107) #6
  %.str.4..str.52723 = select i1 %2423, ptr @.str.4, ptr @.str.5
  %2424 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52723)
          to label %2425 unwind label %.loopexit.split-lp1526.loopexit

2425:                                             ; preds = %.invoke2695
  %2426 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1529.preheader unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1529.preheader:                         ; preds = %2425
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %108) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %108, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2427 unwind label %2431

2427:                                             ; preds = %.preheader1529.preheader
  %2428 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %108, i1 noundef zeroext false)
          to label %.preheader1529.1 unwind label %2431

.preheader1529.1:                                 ; preds = %2427
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %108) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %108) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %108, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2429 unwind label %2431

2429:                                             ; preds = %.preheader1529.1
  %2430 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %108, i1 noundef zeroext false)
          to label %.preheader1524.preheader unwind label %2431

.preheader1524.preheader:                         ; preds = %2429
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %108) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %109) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 0)
          to label %2433 unwind label %2436

2431:                                             ; preds = %2429, %.preheader1529.1, %2427, %.preheader1529.preheader
  %2432 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %108) #6
  br label %.loopexit.split-lp1526

2433:                                             ; preds = %.preheader1524.preheader
  %2434 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %109)
          to label %.invoke2694 unwind label %2436

.invoke2694:                                      ; preds = %2433
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  %.str.4..str.52724 = select i1 %2434, ptr @.str.4, ptr @.str.5
  %2435 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52724)
          to label %.preheader1524.1 unwind label %.loopexit1525

2436:                                             ; preds = %2447, %.preheader1524.4, %2444, %.preheader1524.3, %2441, %.preheader1524.2, %2438, %.preheader1524.1, %2433, %.preheader1524.preheader
  %2437 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  br label %.loopexit.split-lp1526

.preheader1524.1:                                 ; preds = %.invoke2694
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %109) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 1)
          to label %2438 unwind label %2436

2438:                                             ; preds = %.preheader1524.1
  %2439 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %109)
          to label %.invoke2693 unwind label %2436

.invoke2693:                                      ; preds = %2438
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  %.str.4..str.52725 = select i1 %2439, ptr @.str.4, ptr @.str.5
  %2440 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52725)
          to label %.preheader1524.2 unwind label %.loopexit1525

.preheader1524.2:                                 ; preds = %.invoke2693
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %109) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2441 unwind label %2436

2441:                                             ; preds = %.preheader1524.2
  %2442 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %109)
          to label %.invoke2692 unwind label %2436

.invoke2692:                                      ; preds = %2441
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  %.str.4..str.52726 = select i1 %2442, ptr @.str.4, ptr @.str.5
  %2443 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52726)
          to label %.preheader1524.3 unwind label %.loopexit1525

.preheader1524.3:                                 ; preds = %.invoke2692
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %109) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 3)
          to label %2444 unwind label %2436

2444:                                             ; preds = %.preheader1524.3
  %2445 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %109)
          to label %.invoke2691 unwind label %2436

.invoke2691:                                      ; preds = %2444
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  %.str.4..str.52727 = select i1 %2445, ptr @.str.4, ptr @.str.5
  %2446 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52727)
          to label %.preheader1524.4 unwind label %.loopexit1525

.preheader1524.4:                                 ; preds = %.invoke2691
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %109) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %109, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 4)
          to label %2447 unwind label %2436

2447:                                             ; preds = %.preheader1524.4
  %2448 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %109)
          to label %.invoke2690 unwind label %2436

.invoke2690:                                      ; preds = %2447
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %109) #6
  %.str.4..str.52728 = select i1 %2448, ptr @.str.4, ptr @.str.5
  %2449 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52728)
          to label %2450 unwind label %.loopexit1525

2450:                                             ; preds = %.invoke2690
  %2451 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2452 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2452:                                             ; preds = %2450
  %2453 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2454 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2454:                                             ; preds = %2452
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %110) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %110, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2455 unwind label %2479

2455:                                             ; preds = %2454
  %2456 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2453, ptr noundef nonnull align 8 dereferenceable(32) %110)
          to label %2457 unwind label %2481

2457:                                             ; preds = %2455
  %2458 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2456, ptr noundef nonnull @.str.3)
          to label %2459 unwind label %2481

2459:                                             ; preds = %2457
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %110) #6
  %2460 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %102, ptr noundef nonnull @.str.8)
          to label %2461 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2461:                                             ; preds = %2459
  %2462 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2463 unwind label %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2463:                                             ; preds = %2461
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %111) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %111, ptr noundef nonnull align 8 dereferenceable(48) %102, i32 noundef 2)
          to label %2464 unwind label %2484

2464:                                             ; preds = %2463
  %2465 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2462, ptr noundef nonnull align 8 dereferenceable(32) %111)
          to label %2466 unwind label %2486

2466:                                             ; preds = %2464
  %2467 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2465, ptr noundef nonnull @.str.3)
          to label %2468 unwind label %2486

2468:                                             ; preds = %2466
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %111) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %102) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %100) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %100) #6
  %2469 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %2470 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2469, ptr noundef nonnull @.str.2)
  %2471 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2470, i32 noundef 5)
  %2472 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2471, ptr noundef nonnull @.str.2)
  %2473 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2472, i32 noundef 13)
  %2474 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2473, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %112) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %113) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %113, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %112, ptr noundef nonnull align 4 dereferenceable(20) %113, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %113) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %114) #6
  invoke void @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0, ptr noundef null)
          to label %.preheader1520.preheader unwind label %2490

.preheader1520.preheader:                         ; preds = %2468
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %115) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %115, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2475 unwind label %2492

2475:                                             ; preds = %.preheader1520.preheader
  %2476 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %115)
          to label %.invoke2748 unwind label %2492

.invoke2748:                                      ; preds = %2475
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  %2477 = select i1 %2476, ptr @.str.4, ptr @.str.5
  %2478 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2477)
          to label %.preheader1520.1 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit

2479:                                             ; preds = %2454
  %2480 = landingpad { ptr, i32 }
          cleanup
  br label %2483

2481:                                             ; preds = %2457, %2455
  %2482 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %110) #6
  br label %2483

2483:                                             ; preds = %2481, %2479
  %.pn1107 = phi { ptr, i32 } [ %2482, %2481 ], [ %2480, %2479 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %110) #6
  br label %.loopexit.split-lp1526

2484:                                             ; preds = %2463
  %2485 = landingpad { ptr, i32 }
          cleanup
  br label %2488

2486:                                             ; preds = %2466, %2464
  %2487 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %111) #6
  br label %2488

2488:                                             ; preds = %2486, %2484
  %.pn1109 = phi { ptr, i32 } [ %2487, %2486 ], [ %2485, %2484 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %111) #6
  br label %.loopexit.split-lp1526

.loopexit.split-lp1526:                           ; preds = %.loopexit1525, %.loopexit.split-lp1526.loopexit.split-lp.loopexit, %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1526.loopexit, %2488, %2483, %2436, %2431, %2407, %2406, %2377, %2372, %2352
  %.pn1246 = phi { ptr, i32 } [ %2353, %2352 ], [ %2373, %2372 ], [ %2378, %2377 ], [ %2408, %2407 ], [ %2432, %2431 ], [ %2437, %2436 ], [ %.pn1109, %2488 ], [ %.pn1107, %2483 ], [ %.pn1105, %2406 ], [ %lpad.loopexit1527, %.loopexit1525 ], [ %lpad.loopexit1530, %.loopexit.split-lp1526.loopexit ], [ %lpad.loopexit1534, %.loopexit.split-lp1526.loopexit.split-lp.loopexit ], [ %lpad.loopexit1538, %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1539, %.loopexit.split-lp1526.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %102) #6
  br label %2489

2489:                                             ; preds = %.loopexit.split-lp1526, %2350
  %.pn1246.pn = phi { ptr, i32 } [ %.pn1246, %.loopexit.split-lp1526 ], [ %2351, %2350 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %102) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %100) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %100) #6
  br label %5024

2490:                                             ; preds = %2468
  %2491 = landingpad { ptr, i32 }
          cleanup
  br label %2629

2492:                                             ; preds = %2503, %.preheader1520.4, %2500, %.preheader1520.3, %2497, %.preheader1520.2, %2494, %.preheader1520.1, %2475, %.preheader1520.preheader
  %2493 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  br label %.loopexit.split-lp1509

.loopexit1508:                                    ; preds = %.invoke2733, %.invoke2732, %.invoke2731, %.invoke2730, %.invoke2729
  %lpad.loopexit1510 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1509

.loopexit.split-lp1509.loopexit:                  ; preds = %.invoke2738, %.invoke2737, %.invoke2736, %.invoke2735, %.invoke2734
  %lpad.loopexit1513 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1509

.loopexit.split-lp1509.loopexit.split-lp.loopexit: ; preds = %.invoke2743, %.invoke2742, %.invoke2741, %.invoke2740, %.invoke2739
  %lpad.loopexit1517 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1509

.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2748, %.invoke2747, %.invoke2746, %.invoke2745, %.invoke2744
  %lpad.loopexit1521 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1509

.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2601, %2599, %2592, %2590, %2565, %2533, %2531, %2506
  %lpad.loopexit.split-lp1522 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1509

.preheader1520.1:                                 ; preds = %.invoke2748
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %115) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %115, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 1)
          to label %2494 unwind label %2492

2494:                                             ; preds = %.preheader1520.1
  %2495 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %115)
          to label %.invoke2747 unwind label %2492

.invoke2747:                                      ; preds = %2494
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  %.str.4..str.52749 = select i1 %2495, ptr @.str.4, ptr @.str.5
  %2496 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52749)
          to label %.preheader1520.2 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1520.2:                                 ; preds = %.invoke2747
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %115) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %115, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2497 unwind label %2492

2497:                                             ; preds = %.preheader1520.2
  %2498 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %115)
          to label %.invoke2746 unwind label %2492

.invoke2746:                                      ; preds = %2497
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  %.str.4..str.52750 = select i1 %2498, ptr @.str.4, ptr @.str.5
  %2499 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52750)
          to label %.preheader1520.3 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1520.3:                                 ; preds = %.invoke2746
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %115) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %115, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2500 unwind label %2492

2500:                                             ; preds = %.preheader1520.3
  %2501 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %115)
          to label %.invoke2745 unwind label %2492

.invoke2745:                                      ; preds = %2500
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  %.str.4..str.52751 = select i1 %2501, ptr @.str.4, ptr @.str.5
  %2502 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52751)
          to label %.preheader1520.4 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1520.4:                                 ; preds = %.invoke2745
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %115) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %115, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 4)
          to label %2503 unwind label %2492

2503:                                             ; preds = %.preheader1520.4
  %2504 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %115)
          to label %.invoke2744 unwind label %2492

.invoke2744:                                      ; preds = %2503
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %115) #6
  %.str.4..str.52752 = select i1 %2504, ptr @.str.4, ptr @.str.5
  %2505 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52752)
          to label %2506 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit

2506:                                             ; preds = %.invoke2744
  %2507 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1519.preheader unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1519.preheader:                         ; preds = %2506
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %116) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %116, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2508 unwind label %2512

2508:                                             ; preds = %.preheader1519.preheader
  %2509 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %116, i1 noundef zeroext true)
          to label %.preheader1519.1 unwind label %2512

.preheader1519.1:                                 ; preds = %2508
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %116) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %116) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %116, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2510 unwind label %2512

2510:                                             ; preds = %.preheader1519.1
  %2511 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %116, i1 noundef zeroext true)
          to label %.preheader1516.preheader unwind label %2512

.preheader1516.preheader:                         ; preds = %2510
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %116) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2514 unwind label %2517

2512:                                             ; preds = %2510, %.preheader1519.1, %2508, %.preheader1519.preheader
  %2513 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %116) #6
  br label %.loopexit.split-lp1509

2514:                                             ; preds = %.preheader1516.preheader
  %2515 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %.invoke2743 unwind label %2517

.invoke2743:                                      ; preds = %2514
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  %.str.4..str.52753 = select i1 %2515, ptr @.str.4, ptr @.str.5
  %2516 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52753)
          to label %.preheader1516.1 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit

2517:                                             ; preds = %2528, %.preheader1516.4, %2525, %.preheader1516.3, %2522, %.preheader1516.2, %2519, %.preheader1516.1, %2514, %.preheader1516.preheader
  %2518 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  br label %.loopexit.split-lp1509

.preheader1516.1:                                 ; preds = %.invoke2743
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 1)
          to label %2519 unwind label %2517

2519:                                             ; preds = %.preheader1516.1
  %2520 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %.invoke2742 unwind label %2517

.invoke2742:                                      ; preds = %2519
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  %.str.4..str.52754 = select i1 %2520, ptr @.str.4, ptr @.str.5
  %2521 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52754)
          to label %.preheader1516.2 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit

.preheader1516.2:                                 ; preds = %.invoke2742
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2522 unwind label %2517

2522:                                             ; preds = %.preheader1516.2
  %2523 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %.invoke2741 unwind label %2517

.invoke2741:                                      ; preds = %2522
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  %.str.4..str.52755 = select i1 %2523, ptr @.str.4, ptr @.str.5
  %2524 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52755)
          to label %.preheader1516.3 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit

.preheader1516.3:                                 ; preds = %.invoke2741
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2525 unwind label %2517

2525:                                             ; preds = %.preheader1516.3
  %2526 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %.invoke2740 unwind label %2517

.invoke2740:                                      ; preds = %2525
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  %.str.4..str.52756 = select i1 %2526, ptr @.str.4, ptr @.str.5
  %2527 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52756)
          to label %.preheader1516.4 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit

.preheader1516.4:                                 ; preds = %.invoke2740
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %117) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %117, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 4)
          to label %2528 unwind label %2517

2528:                                             ; preds = %.preheader1516.4
  %2529 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %117)
          to label %.invoke2739 unwind label %2517

.invoke2739:                                      ; preds = %2528
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %117) #6
  %.str.4..str.52757 = select i1 %2529, ptr @.str.4, ptr @.str.5
  %2530 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52757)
          to label %2531 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit

2531:                                             ; preds = %.invoke2739
  %2532 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2533 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2533:                                             ; preds = %2531
  %2534 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2535 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2535:                                             ; preds = %2533
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %118) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %118, ptr noundef nonnull align 8 dereferenceable(48) %114)
          to label %2536 unwind label %2542

2536:                                             ; preds = %2535
  %2537 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %114, ptr noundef nonnull align 8 dereferenceable(48) %118)
          to label %2538 unwind label %2544

2538:                                             ; preds = %2536
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %118) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %118) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2539 unwind label %2547

2539:                                             ; preds = %2538
  %2540 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %.invoke2738 unwind label %2547

.invoke2738:                                      ; preds = %2539
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  %.str.4..str.52758 = select i1 %2540, ptr @.str.4, ptr @.str.5
  %2541 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52758)
          to label %2549 unwind label %.loopexit.split-lp1509.loopexit

2542:                                             ; preds = %2535
  %2543 = landingpad { ptr, i32 }
          cleanup
  br label %2546

2544:                                             ; preds = %2536
  %2545 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %118) #6
  br label %2546

2546:                                             ; preds = %2544, %2542
  %.pn1111 = phi { ptr, i32 } [ %2545, %2544 ], [ %2543, %2542 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %118) #6
  br label %.loopexit.split-lp1509

2547:                                             ; preds = %2562, %2561, %2558, %2557, %2554, %2553, %2550, %2549, %2539, %2538
  %2548 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  br label %.loopexit.split-lp1509

2549:                                             ; preds = %.invoke2738
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 1)
          to label %2550 unwind label %2547

2550:                                             ; preds = %2549
  %2551 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %.invoke2737 unwind label %2547

.invoke2737:                                      ; preds = %2550
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  %.str.4..str.52759 = select i1 %2551, ptr @.str.4, ptr @.str.5
  %2552 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52759)
          to label %2553 unwind label %.loopexit.split-lp1509.loopexit

2553:                                             ; preds = %.invoke2737
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2554 unwind label %2547

2554:                                             ; preds = %2553
  %2555 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %.invoke2736 unwind label %2547

.invoke2736:                                      ; preds = %2554
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  %.str.4..str.52760 = select i1 %2555, ptr @.str.4, ptr @.str.5
  %2556 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52760)
          to label %2557 unwind label %.loopexit.split-lp1509.loopexit

2557:                                             ; preds = %.invoke2736
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2558 unwind label %2547

2558:                                             ; preds = %2557
  %2559 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %.invoke2735 unwind label %2547

.invoke2735:                                      ; preds = %2558
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  %.str.4..str.52761 = select i1 %2559, ptr @.str.4, ptr @.str.5
  %2560 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52761)
          to label %2561 unwind label %.loopexit.split-lp1509.loopexit

2561:                                             ; preds = %.invoke2735
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %119) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %119, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 4)
          to label %2562 unwind label %2547

2562:                                             ; preds = %2561
  %2563 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %119)
          to label %.invoke2734 unwind label %2547

.invoke2734:                                      ; preds = %2562
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %119) #6
  %.str.4..str.52762 = select i1 %2563, ptr @.str.4, ptr @.str.5
  %2564 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52762)
          to label %2565 unwind label %.loopexit.split-lp1509.loopexit

2565:                                             ; preds = %.invoke2734
  %2566 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1512.preheader unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1512.preheader:                         ; preds = %2565
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %120) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %120, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2567 unwind label %2571

2567:                                             ; preds = %.preheader1512.preheader
  %2568 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %120, i1 noundef zeroext false)
          to label %.preheader1512.1 unwind label %2571

.preheader1512.1:                                 ; preds = %2567
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %120) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %120) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %120, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2569 unwind label %2571

2569:                                             ; preds = %.preheader1512.1
  %2570 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %120, i1 noundef zeroext false)
          to label %.preheader1507.preheader unwind label %2571

.preheader1507.preheader:                         ; preds = %2569
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %120) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %121) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 0)
          to label %2573 unwind label %2576

2571:                                             ; preds = %2569, %.preheader1512.1, %2567, %.preheader1512.preheader
  %2572 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %120) #6
  br label %.loopexit.split-lp1509

2573:                                             ; preds = %.preheader1507.preheader
  %2574 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %.invoke2733 unwind label %2576

.invoke2733:                                      ; preds = %2573
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  %.str.4..str.52763 = select i1 %2574, ptr @.str.4, ptr @.str.5
  %2575 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52763)
          to label %.preheader1507.1 unwind label %.loopexit1508

2576:                                             ; preds = %2587, %.preheader1507.4, %2584, %.preheader1507.3, %2581, %.preheader1507.2, %2578, %.preheader1507.1, %2573, %.preheader1507.preheader
  %2577 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  br label %.loopexit.split-lp1509

.preheader1507.1:                                 ; preds = %.invoke2733
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %121) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 1)
          to label %2578 unwind label %2576

2578:                                             ; preds = %.preheader1507.1
  %2579 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %.invoke2732 unwind label %2576

.invoke2732:                                      ; preds = %2578
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  %.str.4..str.52764 = select i1 %2579, ptr @.str.4, ptr @.str.5
  %2580 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52764)
          to label %.preheader1507.2 unwind label %.loopexit1508

.preheader1507.2:                                 ; preds = %.invoke2732
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %121) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2581 unwind label %2576

2581:                                             ; preds = %.preheader1507.2
  %2582 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %.invoke2731 unwind label %2576

.invoke2731:                                      ; preds = %2581
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  %.str.4..str.52765 = select i1 %2582, ptr @.str.4, ptr @.str.5
  %2583 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52765)
          to label %.preheader1507.3 unwind label %.loopexit1508

.preheader1507.3:                                 ; preds = %.invoke2731
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %121) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 3)
          to label %2584 unwind label %2576

2584:                                             ; preds = %.preheader1507.3
  %2585 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %.invoke2730 unwind label %2576

.invoke2730:                                      ; preds = %2584
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  %.str.4..str.52766 = select i1 %2585, ptr @.str.4, ptr @.str.5
  %2586 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52766)
          to label %.preheader1507.4 unwind label %.loopexit1508

.preheader1507.4:                                 ; preds = %.invoke2730
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %121) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %121, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 4)
          to label %2587 unwind label %2576

2587:                                             ; preds = %.preheader1507.4
  %2588 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %121)
          to label %.invoke2729 unwind label %2576

.invoke2729:                                      ; preds = %2587
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %121) #6
  %.str.4..str.52767 = select i1 %2588, ptr @.str.4, ptr @.str.5
  %2589 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52767)
          to label %2590 unwind label %.loopexit1508

2590:                                             ; preds = %.invoke2729
  %2591 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2592 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2592:                                             ; preds = %2590
  %2593 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2594 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2594:                                             ; preds = %2592
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %122) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %122, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2595 unwind label %2619

2595:                                             ; preds = %2594
  %2596 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2593, ptr noundef nonnull align 8 dereferenceable(32) %122)
          to label %2597 unwind label %2621

2597:                                             ; preds = %2595
  %2598 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2596, ptr noundef nonnull @.str.3)
          to label %2599 unwind label %2621

2599:                                             ; preds = %2597
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %122) #6
  %2600 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %114, ptr noundef nonnull @.str.8)
          to label %2601 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2601:                                             ; preds = %2599
  %2602 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2603 unwind label %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2603:                                             ; preds = %2601
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %123) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %123, ptr noundef nonnull align 8 dereferenceable(48) %114, i32 noundef 2)
          to label %2604 unwind label %2624

2604:                                             ; preds = %2603
  %2605 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2602, ptr noundef nonnull align 8 dereferenceable(32) %123)
          to label %2606 unwind label %2626

2606:                                             ; preds = %2604
  %2607 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2605, ptr noundef nonnull @.str.3)
          to label %2608 unwind label %2626

2608:                                             ; preds = %2606
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %123) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %114) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %114) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %112) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %112) #6
  %2609 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %2610 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2609, ptr noundef nonnull @.str.2)
  %2611 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2610, i32 noundef 5)
  %2612 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2611, ptr noundef nonnull @.str.2)
  %2613 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2612, i32 noundef 13)
  %2614 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2613, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %124) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %125) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %125, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %124, ptr noundef nonnull align 4 dereferenceable(20) %125, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %125) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %126) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0, ptr noundef null)
          to label %.preheader1503.preheader unwind label %2630

.preheader1503.preheader:                         ; preds = %2608
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %127) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %127, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2615 unwind label %2632

2615:                                             ; preds = %.preheader1503.preheader
  %2616 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %127)
          to label %.invoke2787 unwind label %2632

.invoke2787:                                      ; preds = %2615
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  %2617 = select i1 %2616, ptr @.str.4, ptr @.str.5
  %2618 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2617)
          to label %.preheader1503.1 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit

2619:                                             ; preds = %2594
  %2620 = landingpad { ptr, i32 }
          cleanup
  br label %2623

2621:                                             ; preds = %2597, %2595
  %2622 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %122) #6
  br label %2623

2623:                                             ; preds = %2621, %2619
  %.pn1113 = phi { ptr, i32 } [ %2622, %2621 ], [ %2620, %2619 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %122) #6
  br label %.loopexit.split-lp1509

2624:                                             ; preds = %2603
  %2625 = landingpad { ptr, i32 }
          cleanup
  br label %2628

2626:                                             ; preds = %2606, %2604
  %2627 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %123) #6
  br label %2628

2628:                                             ; preds = %2626, %2624
  %.pn1115 = phi { ptr, i32 } [ %2627, %2626 ], [ %2625, %2624 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %123) #6
  br label %.loopexit.split-lp1509

.loopexit.split-lp1509:                           ; preds = %.loopexit1508, %.loopexit.split-lp1509.loopexit.split-lp.loopexit, %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1509.loopexit, %2628, %2623, %2576, %2571, %2547, %2546, %2517, %2512, %2492
  %.pn1243 = phi { ptr, i32 } [ %2493, %2492 ], [ %2513, %2512 ], [ %2518, %2517 ], [ %2548, %2547 ], [ %2572, %2571 ], [ %2577, %2576 ], [ %.pn1115, %2628 ], [ %.pn1113, %2623 ], [ %.pn1111, %2546 ], [ %lpad.loopexit1510, %.loopexit1508 ], [ %lpad.loopexit1513, %.loopexit.split-lp1509.loopexit ], [ %lpad.loopexit1517, %.loopexit.split-lp1509.loopexit.split-lp.loopexit ], [ %lpad.loopexit1521, %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1522, %.loopexit.split-lp1509.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %114) #6
  br label %2629

2629:                                             ; preds = %.loopexit.split-lp1509, %2490
  %.pn1243.pn = phi { ptr, i32 } [ %.pn1243, %.loopexit.split-lp1509 ], [ %2491, %2490 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %114) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %112) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %112) #6
  br label %5024

2630:                                             ; preds = %2608
  %2631 = landingpad { ptr, i32 }
          cleanup
  br label %2769

2632:                                             ; preds = %2643, %.preheader1503.4, %2640, %.preheader1503.3, %2637, %.preheader1503.2, %2634, %.preheader1503.1, %2615, %.preheader1503.preheader
  %2633 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  br label %.loopexit.split-lp1492

.loopexit1491:                                    ; preds = %.invoke2772, %.invoke2771, %.invoke2770, %.invoke2769, %.invoke2768
  %lpad.loopexit1493 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1492

.loopexit.split-lp1492.loopexit:                  ; preds = %.invoke2777, %.invoke2776, %.invoke2775, %.invoke2774, %.invoke2773
  %lpad.loopexit1496 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1492

.loopexit.split-lp1492.loopexit.split-lp.loopexit: ; preds = %.invoke2782, %.invoke2781, %.invoke2780, %.invoke2779, %.invoke2778
  %lpad.loopexit1500 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1492

.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2787, %.invoke2786, %.invoke2785, %.invoke2784, %.invoke2783
  %lpad.loopexit1504 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1492

.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2741, %2739, %2732, %2730, %2705, %2673, %2671, %2646
  %lpad.loopexit.split-lp1505 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1492

.preheader1503.1:                                 ; preds = %.invoke2787
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %127) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %127, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 1)
          to label %2634 unwind label %2632

2634:                                             ; preds = %.preheader1503.1
  %2635 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %127)
          to label %.invoke2786 unwind label %2632

.invoke2786:                                      ; preds = %2634
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  %.str.4..str.52788 = select i1 %2635, ptr @.str.4, ptr @.str.5
  %2636 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52788)
          to label %.preheader1503.2 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1503.2:                                 ; preds = %.invoke2786
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %127) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %127, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2637 unwind label %2632

2637:                                             ; preds = %.preheader1503.2
  %2638 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %127)
          to label %.invoke2785 unwind label %2632

.invoke2785:                                      ; preds = %2637
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  %.str.4..str.52789 = select i1 %2638, ptr @.str.4, ptr @.str.5
  %2639 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52789)
          to label %.preheader1503.3 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1503.3:                                 ; preds = %.invoke2785
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %127) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %127, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2640 unwind label %2632

2640:                                             ; preds = %.preheader1503.3
  %2641 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %127)
          to label %.invoke2784 unwind label %2632

.invoke2784:                                      ; preds = %2640
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  %.str.4..str.52790 = select i1 %2641, ptr @.str.4, ptr @.str.5
  %2642 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52790)
          to label %.preheader1503.4 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1503.4:                                 ; preds = %.invoke2784
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %127) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %127, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 4)
          to label %2643 unwind label %2632

2643:                                             ; preds = %.preheader1503.4
  %2644 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %127)
          to label %.invoke2783 unwind label %2632

.invoke2783:                                      ; preds = %2643
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %127) #6
  %.str.4..str.52791 = select i1 %2644, ptr @.str.4, ptr @.str.5
  %2645 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52791)
          to label %2646 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit

2646:                                             ; preds = %.invoke2783
  %2647 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1502.preheader unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1502.preheader:                         ; preds = %2646
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %128) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %128, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2648 unwind label %2652

2648:                                             ; preds = %.preheader1502.preheader
  %2649 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %128, i1 noundef zeroext true)
          to label %.preheader1502.1 unwind label %2652

.preheader1502.1:                                 ; preds = %2648
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %128) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %128) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %128, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2650 unwind label %2652

2650:                                             ; preds = %.preheader1502.1
  %2651 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %128, i1 noundef zeroext true)
          to label %.preheader1499.preheader unwind label %2652

.preheader1499.preheader:                         ; preds = %2650
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %128) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %129, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2654 unwind label %2657

2652:                                             ; preds = %2650, %.preheader1502.1, %2648, %.preheader1502.preheader
  %2653 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %128) #6
  br label %.loopexit.split-lp1492

2654:                                             ; preds = %.preheader1499.preheader
  %2655 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %129)
          to label %.invoke2782 unwind label %2657

.invoke2782:                                      ; preds = %2654
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  %.str.4..str.52792 = select i1 %2655, ptr @.str.4, ptr @.str.5
  %2656 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52792)
          to label %.preheader1499.1 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit

2657:                                             ; preds = %2668, %.preheader1499.4, %2665, %.preheader1499.3, %2662, %.preheader1499.2, %2659, %.preheader1499.1, %2654, %.preheader1499.preheader
  %2658 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  br label %.loopexit.split-lp1492

.preheader1499.1:                                 ; preds = %.invoke2782
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %129, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 1)
          to label %2659 unwind label %2657

2659:                                             ; preds = %.preheader1499.1
  %2660 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %129)
          to label %.invoke2781 unwind label %2657

.invoke2781:                                      ; preds = %2659
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  %.str.4..str.52793 = select i1 %2660, ptr @.str.4, ptr @.str.5
  %2661 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52793)
          to label %.preheader1499.2 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit

.preheader1499.2:                                 ; preds = %.invoke2781
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %129, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2662 unwind label %2657

2662:                                             ; preds = %.preheader1499.2
  %2663 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %129)
          to label %.invoke2780 unwind label %2657

.invoke2780:                                      ; preds = %2662
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  %.str.4..str.52794 = select i1 %2663, ptr @.str.4, ptr @.str.5
  %2664 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52794)
          to label %.preheader1499.3 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit

.preheader1499.3:                                 ; preds = %.invoke2780
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %129, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2665 unwind label %2657

2665:                                             ; preds = %.preheader1499.3
  %2666 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %129)
          to label %.invoke2779 unwind label %2657

.invoke2779:                                      ; preds = %2665
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  %.str.4..str.52795 = select i1 %2666, ptr @.str.4, ptr @.str.5
  %2667 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52795)
          to label %.preheader1499.4 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit

.preheader1499.4:                                 ; preds = %.invoke2779
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %129) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %129, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 4)
          to label %2668 unwind label %2657

2668:                                             ; preds = %.preheader1499.4
  %2669 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %129)
          to label %.invoke2778 unwind label %2657

.invoke2778:                                      ; preds = %2668
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %129) #6
  %.str.4..str.52796 = select i1 %2669, ptr @.str.4, ptr @.str.5
  %2670 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52796)
          to label %2671 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit

2671:                                             ; preds = %.invoke2778
  %2672 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2673 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2673:                                             ; preds = %2671
  %2674 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2675 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2675:                                             ; preds = %2673
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %130) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %130, ptr noundef nonnull align 8 dereferenceable(48) %126)
          to label %2676 unwind label %2682

2676:                                             ; preds = %2675
  %2677 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %126, ptr noundef nonnull align 8 dereferenceable(48) %130)
          to label %2678 unwind label %2684

2678:                                             ; preds = %2676
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %130) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %130) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %131) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2679 unwind label %2687

2679:                                             ; preds = %2678
  %2680 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %131)
          to label %.invoke2777 unwind label %2687

.invoke2777:                                      ; preds = %2679
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  %.str.4..str.52797 = select i1 %2680, ptr @.str.4, ptr @.str.5
  %2681 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52797)
          to label %2689 unwind label %.loopexit.split-lp1492.loopexit

2682:                                             ; preds = %2675
  %2683 = landingpad { ptr, i32 }
          cleanup
  br label %2686

2684:                                             ; preds = %2676
  %2685 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %130) #6
  br label %2686

2686:                                             ; preds = %2684, %2682
  %.pn1117 = phi { ptr, i32 } [ %2685, %2684 ], [ %2683, %2682 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %130) #6
  br label %.loopexit.split-lp1492

2687:                                             ; preds = %2702, %2701, %2698, %2697, %2694, %2693, %2690, %2689, %2679, %2678
  %2688 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  br label %.loopexit.split-lp1492

2689:                                             ; preds = %.invoke2777
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %131) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 1)
          to label %2690 unwind label %2687

2690:                                             ; preds = %2689
  %2691 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %131)
          to label %.invoke2776 unwind label %2687

.invoke2776:                                      ; preds = %2690
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  %.str.4..str.52798 = select i1 %2691, ptr @.str.4, ptr @.str.5
  %2692 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52798)
          to label %2693 unwind label %.loopexit.split-lp1492.loopexit

2693:                                             ; preds = %.invoke2776
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %131) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2694 unwind label %2687

2694:                                             ; preds = %2693
  %2695 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %131)
          to label %.invoke2775 unwind label %2687

.invoke2775:                                      ; preds = %2694
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  %.str.4..str.52799 = select i1 %2695, ptr @.str.4, ptr @.str.5
  %2696 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52799)
          to label %2697 unwind label %.loopexit.split-lp1492.loopexit

2697:                                             ; preds = %.invoke2775
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %131) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2698 unwind label %2687

2698:                                             ; preds = %2697
  %2699 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %131)
          to label %.invoke2774 unwind label %2687

.invoke2774:                                      ; preds = %2698
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  %.str.4..str.52800 = select i1 %2699, ptr @.str.4, ptr @.str.5
  %2700 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52800)
          to label %2701 unwind label %.loopexit.split-lp1492.loopexit

2701:                                             ; preds = %.invoke2774
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %131) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %131, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 4)
          to label %2702 unwind label %2687

2702:                                             ; preds = %2701
  %2703 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %131)
          to label %.invoke2773 unwind label %2687

.invoke2773:                                      ; preds = %2702
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %131) #6
  %.str.4..str.52801 = select i1 %2703, ptr @.str.4, ptr @.str.5
  %2704 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52801)
          to label %2705 unwind label %.loopexit.split-lp1492.loopexit

2705:                                             ; preds = %.invoke2773
  %2706 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1495.preheader unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1495.preheader:                         ; preds = %2705
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %132) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %132, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2707 unwind label %2711

2707:                                             ; preds = %.preheader1495.preheader
  %2708 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %132, i1 noundef zeroext false)
          to label %.preheader1495.1 unwind label %2711

.preheader1495.1:                                 ; preds = %2707
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %132) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %132) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %132, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2709 unwind label %2711

2709:                                             ; preds = %.preheader1495.1
  %2710 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %132, i1 noundef zeroext false)
          to label %.preheader1490.preheader unwind label %2711

.preheader1490.preheader:                         ; preds = %2709
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %132) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %133) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 0)
          to label %2713 unwind label %2716

2711:                                             ; preds = %2709, %.preheader1495.1, %2707, %.preheader1495.preheader
  %2712 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %132) #6
  br label %.loopexit.split-lp1492

2713:                                             ; preds = %.preheader1490.preheader
  %2714 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %133)
          to label %.invoke2772 unwind label %2716

.invoke2772:                                      ; preds = %2713
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  %.str.4..str.52802 = select i1 %2714, ptr @.str.4, ptr @.str.5
  %2715 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52802)
          to label %.preheader1490.1 unwind label %.loopexit1491

2716:                                             ; preds = %2727, %.preheader1490.4, %2724, %.preheader1490.3, %2721, %.preheader1490.2, %2718, %.preheader1490.1, %2713, %.preheader1490.preheader
  %2717 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  br label %.loopexit.split-lp1492

.preheader1490.1:                                 ; preds = %.invoke2772
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %133) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 1)
          to label %2718 unwind label %2716

2718:                                             ; preds = %.preheader1490.1
  %2719 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %133)
          to label %.invoke2771 unwind label %2716

.invoke2771:                                      ; preds = %2718
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  %.str.4..str.52803 = select i1 %2719, ptr @.str.4, ptr @.str.5
  %2720 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52803)
          to label %.preheader1490.2 unwind label %.loopexit1491

.preheader1490.2:                                 ; preds = %.invoke2771
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %133) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2721 unwind label %2716

2721:                                             ; preds = %.preheader1490.2
  %2722 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %133)
          to label %.invoke2770 unwind label %2716

.invoke2770:                                      ; preds = %2721
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  %.str.4..str.52804 = select i1 %2722, ptr @.str.4, ptr @.str.5
  %2723 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52804)
          to label %.preheader1490.3 unwind label %.loopexit1491

.preheader1490.3:                                 ; preds = %.invoke2770
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %133) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 3)
          to label %2724 unwind label %2716

2724:                                             ; preds = %.preheader1490.3
  %2725 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %133)
          to label %.invoke2769 unwind label %2716

.invoke2769:                                      ; preds = %2724
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  %.str.4..str.52805 = select i1 %2725, ptr @.str.4, ptr @.str.5
  %2726 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52805)
          to label %.preheader1490.4 unwind label %.loopexit1491

.preheader1490.4:                                 ; preds = %.invoke2769
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %133) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %133, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 4)
          to label %2727 unwind label %2716

2727:                                             ; preds = %.preheader1490.4
  %2728 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %133)
          to label %.invoke2768 unwind label %2716

.invoke2768:                                      ; preds = %2727
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %133) #6
  %.str.4..str.52806 = select i1 %2728, ptr @.str.4, ptr @.str.5
  %2729 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52806)
          to label %2730 unwind label %.loopexit1491

2730:                                             ; preds = %.invoke2768
  %2731 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2732 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2732:                                             ; preds = %2730
  %2733 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2734 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2734:                                             ; preds = %2732
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %134) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %134, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2735 unwind label %2759

2735:                                             ; preds = %2734
  %2736 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2733, ptr noundef nonnull align 8 dereferenceable(32) %134)
          to label %2737 unwind label %2761

2737:                                             ; preds = %2735
  %2738 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2736, ptr noundef nonnull @.str.3)
          to label %2739 unwind label %2761

2739:                                             ; preds = %2737
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %134) #6
  %2740 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %126, ptr noundef nonnull @.str.8)
          to label %2741 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2741:                                             ; preds = %2739
  %2742 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2743 unwind label %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2743:                                             ; preds = %2741
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %135) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %135, ptr noundef nonnull align 8 dereferenceable(48) %126, i32 noundef 2)
          to label %2744 unwind label %2764

2744:                                             ; preds = %2743
  %2745 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2742, ptr noundef nonnull align 8 dereferenceable(32) %135)
          to label %2746 unwind label %2766

2746:                                             ; preds = %2744
  %2747 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2745, ptr noundef nonnull @.str.3)
          to label %2748 unwind label %2766

2748:                                             ; preds = %2746
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %135) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %135) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %126) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %126) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %124) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %124) #6
  %2749 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %2750 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2749, ptr noundef nonnull @.str.2)
  %2751 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2750, i32 noundef 5)
  %2752 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2751, ptr noundef nonnull @.str.2)
  %2753 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2752, i32 noundef 13)
  %2754 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2753, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %136) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %137) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %137, i32 noundef 5, i32 noundef 13)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %136, ptr noundef nonnull align 4 dereferenceable(20) %137, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %137) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %138) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0, ptr noundef null)
          to label %.preheader1486.preheader unwind label %2770

.preheader1486.preheader:                         ; preds = %2748
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %139) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %139, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2755 unwind label %2772

2755:                                             ; preds = %.preheader1486.preheader
  %2756 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %139)
          to label %.invoke2826 unwind label %2772

.invoke2826:                                      ; preds = %2755
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  %2757 = select i1 %2756, ptr @.str.4, ptr @.str.5
  %2758 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2757)
          to label %.preheader1486.1 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit

2759:                                             ; preds = %2734
  %2760 = landingpad { ptr, i32 }
          cleanup
  br label %2763

2761:                                             ; preds = %2737, %2735
  %2762 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %134) #6
  br label %2763

2763:                                             ; preds = %2761, %2759
  %.pn1119 = phi { ptr, i32 } [ %2762, %2761 ], [ %2760, %2759 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %134) #6
  br label %.loopexit.split-lp1492

2764:                                             ; preds = %2743
  %2765 = landingpad { ptr, i32 }
          cleanup
  br label %2768

2766:                                             ; preds = %2746, %2744
  %2767 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %135) #6
  br label %2768

2768:                                             ; preds = %2766, %2764
  %.pn1121 = phi { ptr, i32 } [ %2767, %2766 ], [ %2765, %2764 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %135) #6
  br label %.loopexit.split-lp1492

.loopexit.split-lp1492:                           ; preds = %.loopexit1491, %.loopexit.split-lp1492.loopexit.split-lp.loopexit, %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1492.loopexit, %2768, %2763, %2716, %2711, %2687, %2686, %2657, %2652, %2632
  %.pn1240 = phi { ptr, i32 } [ %2633, %2632 ], [ %2653, %2652 ], [ %2658, %2657 ], [ %2688, %2687 ], [ %2712, %2711 ], [ %2717, %2716 ], [ %.pn1121, %2768 ], [ %.pn1119, %2763 ], [ %.pn1117, %2686 ], [ %lpad.loopexit1493, %.loopexit1491 ], [ %lpad.loopexit1496, %.loopexit.split-lp1492.loopexit ], [ %lpad.loopexit1500, %.loopexit.split-lp1492.loopexit.split-lp.loopexit ], [ %lpad.loopexit1504, %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1505, %.loopexit.split-lp1492.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %126) #6
  br label %2769

2769:                                             ; preds = %.loopexit.split-lp1492, %2630
  %.pn1240.pn = phi { ptr, i32 } [ %.pn1240, %.loopexit.split-lp1492 ], [ %2631, %2630 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %126) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %124) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %124) #6
  br label %5024

2770:                                             ; preds = %2748
  %2771 = landingpad { ptr, i32 }
          cleanup
  br label %2909

2772:                                             ; preds = %2783, %.preheader1486.4, %2780, %.preheader1486.3, %2777, %.preheader1486.2, %2774, %.preheader1486.1, %2755, %.preheader1486.preheader
  %2773 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  br label %.loopexit.split-lp1475

.loopexit1474:                                    ; preds = %.invoke2811, %.invoke2810, %.invoke2809, %.invoke2808, %.invoke2807
  %lpad.loopexit1476 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1475

.loopexit.split-lp1475.loopexit:                  ; preds = %.invoke2816, %.invoke2815, %.invoke2814, %.invoke2813, %.invoke2812
  %lpad.loopexit1479 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1475

.loopexit.split-lp1475.loopexit.split-lp.loopexit: ; preds = %.invoke2821, %.invoke2820, %.invoke2819, %.invoke2818, %.invoke2817
  %lpad.loopexit1483 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1475

.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2826, %.invoke2825, %.invoke2824, %.invoke2823, %.invoke2822
  %lpad.loopexit1487 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1475

.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %2881, %2879, %2872, %2870, %2845, %2813, %2811, %2786
  %lpad.loopexit.split-lp1488 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1475

.preheader1486.1:                                 ; preds = %.invoke2826
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %139) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %139, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 1)
          to label %2774 unwind label %2772

2774:                                             ; preds = %.preheader1486.1
  %2775 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %139)
          to label %.invoke2825 unwind label %2772

.invoke2825:                                      ; preds = %2774
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  %.str.4..str.52827 = select i1 %2775, ptr @.str.4, ptr @.str.5
  %2776 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52827)
          to label %.preheader1486.2 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1486.2:                                 ; preds = %.invoke2825
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %139) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %139, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2777 unwind label %2772

2777:                                             ; preds = %.preheader1486.2
  %2778 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %139)
          to label %.invoke2824 unwind label %2772

.invoke2824:                                      ; preds = %2777
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  %.str.4..str.52828 = select i1 %2778, ptr @.str.4, ptr @.str.5
  %2779 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52828)
          to label %.preheader1486.3 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1486.3:                                 ; preds = %.invoke2824
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %139) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %139, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2780 unwind label %2772

2780:                                             ; preds = %.preheader1486.3
  %2781 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %139)
          to label %.invoke2823 unwind label %2772

.invoke2823:                                      ; preds = %2780
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  %.str.4..str.52829 = select i1 %2781, ptr @.str.4, ptr @.str.5
  %2782 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52829)
          to label %.preheader1486.4 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit

.preheader1486.4:                                 ; preds = %.invoke2823
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %139) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %139, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 4)
          to label %2783 unwind label %2772

2783:                                             ; preds = %.preheader1486.4
  %2784 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %139)
          to label %.invoke2822 unwind label %2772

.invoke2822:                                      ; preds = %2783
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %139) #6
  %.str.4..str.52830 = select i1 %2784, ptr @.str.4, ptr @.str.5
  %2785 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52830)
          to label %2786 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit

2786:                                             ; preds = %.invoke2822
  %2787 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1485.preheader unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1485.preheader:                         ; preds = %2786
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %140) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %140, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2788 unwind label %2792

2788:                                             ; preds = %.preheader1485.preheader
  %2789 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %140, i1 noundef zeroext true)
          to label %.preheader1485.1 unwind label %2792

.preheader1485.1:                                 ; preds = %2788
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %140) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %140) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %140, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2790 unwind label %2792

2790:                                             ; preds = %.preheader1485.1
  %2791 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %140, i1 noundef zeroext true)
          to label %.preheader1482.preheader unwind label %2792

.preheader1482.preheader:                         ; preds = %2790
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %140) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %141) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %141, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2794 unwind label %2797

2792:                                             ; preds = %2790, %.preheader1485.1, %2788, %.preheader1485.preheader
  %2793 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %140) #6
  br label %.loopexit.split-lp1475

2794:                                             ; preds = %.preheader1482.preheader
  %2795 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %141)
          to label %.invoke2821 unwind label %2797

.invoke2821:                                      ; preds = %2794
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  %.str.4..str.52831 = select i1 %2795, ptr @.str.4, ptr @.str.5
  %2796 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52831)
          to label %.preheader1482.1 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit

2797:                                             ; preds = %2808, %.preheader1482.4, %2805, %.preheader1482.3, %2802, %.preheader1482.2, %2799, %.preheader1482.1, %2794, %.preheader1482.preheader
  %2798 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  br label %.loopexit.split-lp1475

.preheader1482.1:                                 ; preds = %.invoke2821
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %141) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %141, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 1)
          to label %2799 unwind label %2797

2799:                                             ; preds = %.preheader1482.1
  %2800 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %141)
          to label %.invoke2820 unwind label %2797

.invoke2820:                                      ; preds = %2799
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  %.str.4..str.52832 = select i1 %2800, ptr @.str.4, ptr @.str.5
  %2801 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52832)
          to label %.preheader1482.2 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit

.preheader1482.2:                                 ; preds = %.invoke2820
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %141) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %141, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2802 unwind label %2797

2802:                                             ; preds = %.preheader1482.2
  %2803 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %141)
          to label %.invoke2819 unwind label %2797

.invoke2819:                                      ; preds = %2802
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  %.str.4..str.52833 = select i1 %2803, ptr @.str.4, ptr @.str.5
  %2804 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52833)
          to label %.preheader1482.3 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit

.preheader1482.3:                                 ; preds = %.invoke2819
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %141) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %141, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2805 unwind label %2797

2805:                                             ; preds = %.preheader1482.3
  %2806 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %141)
          to label %.invoke2818 unwind label %2797

.invoke2818:                                      ; preds = %2805
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  %.str.4..str.52834 = select i1 %2806, ptr @.str.4, ptr @.str.5
  %2807 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52834)
          to label %.preheader1482.4 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit

.preheader1482.4:                                 ; preds = %.invoke2818
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %141) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %141, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 4)
          to label %2808 unwind label %2797

2808:                                             ; preds = %.preheader1482.4
  %2809 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %141)
          to label %.invoke2817 unwind label %2797

.invoke2817:                                      ; preds = %2808
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %141) #6
  %.str.4..str.52835 = select i1 %2809, ptr @.str.4, ptr @.str.5
  %2810 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52835)
          to label %2811 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit

2811:                                             ; preds = %.invoke2817
  %2812 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2813 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2813:                                             ; preds = %2811
  %2814 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2815 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2815:                                             ; preds = %2813
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %142) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %142, ptr noundef nonnull align 8 dereferenceable(48) %138)
          to label %2816 unwind label %2822

2816:                                             ; preds = %2815
  %2817 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %138, ptr noundef nonnull align 8 dereferenceable(48) %142)
          to label %2818 unwind label %2824

2818:                                             ; preds = %2816
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %142) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %142) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2819 unwind label %2827

2819:                                             ; preds = %2818
  %2820 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %.invoke2816 unwind label %2827

.invoke2816:                                      ; preds = %2819
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  %.str.4..str.52836 = select i1 %2820, ptr @.str.4, ptr @.str.5
  %2821 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52836)
          to label %2829 unwind label %.loopexit.split-lp1475.loopexit

2822:                                             ; preds = %2815
  %2823 = landingpad { ptr, i32 }
          cleanup
  br label %2826

2824:                                             ; preds = %2816
  %2825 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %142) #6
  br label %2826

2826:                                             ; preds = %2824, %2822
  %.pn1123 = phi { ptr, i32 } [ %2825, %2824 ], [ %2823, %2822 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %142) #6
  br label %.loopexit.split-lp1475

2827:                                             ; preds = %2842, %2841, %2838, %2837, %2834, %2833, %2830, %2829, %2819, %2818
  %2828 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  br label %.loopexit.split-lp1475

2829:                                             ; preds = %.invoke2816
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 1)
          to label %2830 unwind label %2827

2830:                                             ; preds = %2829
  %2831 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %.invoke2815 unwind label %2827

.invoke2815:                                      ; preds = %2830
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  %.str.4..str.52837 = select i1 %2831, ptr @.str.4, ptr @.str.5
  %2832 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52837)
          to label %2833 unwind label %.loopexit.split-lp1475.loopexit

2833:                                             ; preds = %.invoke2815
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2834 unwind label %2827

2834:                                             ; preds = %2833
  %2835 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %.invoke2814 unwind label %2827

.invoke2814:                                      ; preds = %2834
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  %.str.4..str.52838 = select i1 %2835, ptr @.str.4, ptr @.str.5
  %2836 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52838)
          to label %2837 unwind label %.loopexit.split-lp1475.loopexit

2837:                                             ; preds = %.invoke2814
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2838 unwind label %2827

2838:                                             ; preds = %2837
  %2839 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %.invoke2813 unwind label %2827

.invoke2813:                                      ; preds = %2838
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  %.str.4..str.52839 = select i1 %2839, ptr @.str.4, ptr @.str.5
  %2840 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52839)
          to label %2841 unwind label %.loopexit.split-lp1475.loopexit

2841:                                             ; preds = %.invoke2813
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %143) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %143, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 4)
          to label %2842 unwind label %2827

2842:                                             ; preds = %2841
  %2843 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %143)
          to label %.invoke2812 unwind label %2827

.invoke2812:                                      ; preds = %2842
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %143) #6
  %.str.4..str.52840 = select i1 %2843, ptr @.str.4, ptr @.str.5
  %2844 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52840)
          to label %2845 unwind label %.loopexit.split-lp1475.loopexit

2845:                                             ; preds = %.invoke2812
  %2846 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1478.preheader unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1478.preheader:                         ; preds = %2845
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %144) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %144, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2847 unwind label %2851

2847:                                             ; preds = %.preheader1478.preheader
  %2848 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %144, i1 noundef zeroext false)
          to label %.preheader1478.1 unwind label %2851

.preheader1478.1:                                 ; preds = %2847
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %144) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %144) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %144, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2849 unwind label %2851

2849:                                             ; preds = %.preheader1478.1
  %2850 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %144, i1 noundef zeroext false)
          to label %.preheader1473.preheader unwind label %2851

.preheader1473.preheader:                         ; preds = %2849
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %144) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %145) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 0)
          to label %2853 unwind label %2856

2851:                                             ; preds = %2849, %.preheader1478.1, %2847, %.preheader1478.preheader
  %2852 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %144) #6
  br label %.loopexit.split-lp1475

2853:                                             ; preds = %.preheader1473.preheader
  %2854 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %.invoke2811 unwind label %2856

.invoke2811:                                      ; preds = %2853
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  %.str.4..str.52841 = select i1 %2854, ptr @.str.4, ptr @.str.5
  %2855 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52841)
          to label %.preheader1473.1 unwind label %.loopexit1474

2856:                                             ; preds = %2867, %.preheader1473.4, %2864, %.preheader1473.3, %2861, %.preheader1473.2, %2858, %.preheader1473.1, %2853, %.preheader1473.preheader
  %2857 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  br label %.loopexit.split-lp1475

.preheader1473.1:                                 ; preds = %.invoke2811
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %145) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 1)
          to label %2858 unwind label %2856

2858:                                             ; preds = %.preheader1473.1
  %2859 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %.invoke2810 unwind label %2856

.invoke2810:                                      ; preds = %2858
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  %.str.4..str.52842 = select i1 %2859, ptr @.str.4, ptr @.str.5
  %2860 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52842)
          to label %.preheader1473.2 unwind label %.loopexit1474

.preheader1473.2:                                 ; preds = %.invoke2810
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %145) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2861 unwind label %2856

2861:                                             ; preds = %.preheader1473.2
  %2862 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %.invoke2809 unwind label %2856

.invoke2809:                                      ; preds = %2861
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  %.str.4..str.52843 = select i1 %2862, ptr @.str.4, ptr @.str.5
  %2863 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52843)
          to label %.preheader1473.3 unwind label %.loopexit1474

.preheader1473.3:                                 ; preds = %.invoke2809
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %145) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 3)
          to label %2864 unwind label %2856

2864:                                             ; preds = %.preheader1473.3
  %2865 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %.invoke2808 unwind label %2856

.invoke2808:                                      ; preds = %2864
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  %.str.4..str.52844 = select i1 %2865, ptr @.str.4, ptr @.str.5
  %2866 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52844)
          to label %.preheader1473.4 unwind label %.loopexit1474

.preheader1473.4:                                 ; preds = %.invoke2808
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %145) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %145, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 4)
          to label %2867 unwind label %2856

2867:                                             ; preds = %.preheader1473.4
  %2868 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %145)
          to label %.invoke2807 unwind label %2856

.invoke2807:                                      ; preds = %2867
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %145) #6
  %.str.4..str.52845 = select i1 %2868, ptr @.str.4, ptr @.str.5
  %2869 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52845)
          to label %2870 unwind label %.loopexit1474

2870:                                             ; preds = %.invoke2807
  %2871 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2872 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2872:                                             ; preds = %2870
  %2873 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2874 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2874:                                             ; preds = %2872
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %146) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %146, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2875 unwind label %2899

2875:                                             ; preds = %2874
  %2876 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2873, ptr noundef nonnull align 8 dereferenceable(32) %146)
          to label %2877 unwind label %2901

2877:                                             ; preds = %2875
  %2878 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2876, ptr noundef nonnull @.str.3)
          to label %2879 unwind label %2901

2879:                                             ; preds = %2877
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %146) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %146) #6
  %2880 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %138, ptr noundef nonnull @.str.8)
          to label %2881 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2881:                                             ; preds = %2879
  %2882 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %2883 unwind label %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2883:                                             ; preds = %2881
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %147) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %147, ptr noundef nonnull align 8 dereferenceable(48) %138, i32 noundef 2)
          to label %2884 unwind label %2904

2884:                                             ; preds = %2883
  %2885 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %2882, ptr noundef nonnull align 8 dereferenceable(32) %147)
          to label %2886 unwind label %2906

2886:                                             ; preds = %2884
  %2887 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2885, ptr noundef nonnull @.str.3)
          to label %2888 unwind label %2906

2888:                                             ; preds = %2886
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %147) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %138) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %138) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %136) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %136) #6
  %2889 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %2890 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2889, ptr noundef nonnull @.str.2)
  %2891 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2890, i32 noundef 65)
  %2892 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2891, ptr noundef nonnull @.str.2)
  %2893 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %2892, i32 noundef 65)
  %2894 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %2893, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %148) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %149) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %149, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %148, ptr noundef nonnull align 4 dereferenceable(20) %149, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %149) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %150) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 0, ptr noundef null)
          to label %.preheader1469 unwind label %2910

.preheader1469:                                   ; preds = %2888, %2914
  %.08531749 = phi i32 [ %2915, %2914 ], [ 0, %2888 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %151) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %151, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef %.08531749)
          to label %2895 unwind label %2912

2895:                                             ; preds = %.preheader1469
  %2896 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %151)
          to label %.invoke2849 unwind label %2912

.invoke2849:                                      ; preds = %2895
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %151) #6
  %2897 = select i1 %2896, ptr @.str.4, ptr @.str.5
  %2898 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %2897)
          to label %2914 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit

2899:                                             ; preds = %2874
  %2900 = landingpad { ptr, i32 }
          cleanup
  br label %2903

2901:                                             ; preds = %2877, %2875
  %2902 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %146) #6
  br label %2903

2903:                                             ; preds = %2901, %2899
  %.pn1125 = phi { ptr, i32 } [ %2902, %2901 ], [ %2900, %2899 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %146) #6
  br label %.loopexit.split-lp1475

2904:                                             ; preds = %2883
  %2905 = landingpad { ptr, i32 }
          cleanup
  br label %2908

2906:                                             ; preds = %2886, %2884
  %2907 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %147) #6
  br label %2908

2908:                                             ; preds = %2906, %2904
  %.pn1127 = phi { ptr, i32 } [ %2907, %2906 ], [ %2905, %2904 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %147) #6
  br label %.loopexit.split-lp1475

.loopexit.split-lp1475:                           ; preds = %.loopexit1474, %.loopexit.split-lp1475.loopexit.split-lp.loopexit, %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1475.loopexit, %2908, %2903, %2856, %2851, %2827, %2826, %2797, %2792, %2772
  %.pn1237 = phi { ptr, i32 } [ %2773, %2772 ], [ %2793, %2792 ], [ %2798, %2797 ], [ %2828, %2827 ], [ %2852, %2851 ], [ %2857, %2856 ], [ %.pn1127, %2908 ], [ %.pn1125, %2903 ], [ %.pn1123, %2826 ], [ %lpad.loopexit1476, %.loopexit1474 ], [ %lpad.loopexit1479, %.loopexit.split-lp1475.loopexit ], [ %lpad.loopexit1483, %.loopexit.split-lp1475.loopexit.split-lp.loopexit ], [ %lpad.loopexit1487, %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1488, %.loopexit.split-lp1475.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %138) #6
  br label %2909

2909:                                             ; preds = %.loopexit.split-lp1475, %2770
  %.pn1237.pn = phi { ptr, i32 } [ %.pn1237, %.loopexit.split-lp1475 ], [ %2771, %2770 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %138) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %136) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %136) #6
  br label %5024

2910:                                             ; preds = %2888
  %2911 = landingpad { ptr, i32 }
          cleanup
  br label %3086

2912:                                             ; preds = %2895, %.preheader1469
  %2913 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %151) #6
  br label %.loopexit.split-lp1458

.loopexit1457:                                    ; preds = %.invoke2846
  %lpad.loopexit1459 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1458

.loopexit.split-lp1458.loopexit:                  ; preds = %.invoke2847
  %lpad.loopexit1462 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1458

.loopexit.split-lp1458.loopexit.split-lp.loopexit: ; preds = %.invoke2848
  %lpad.loopexit1466 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1458

.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2849
  %lpad.loopexit1470 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1458

.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3058, %3056, %3049, %3047, %2992, %2973, %2971, %2916
  %lpad.loopexit.split-lp1471 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1458

2914:                                             ; preds = %.invoke2849
  %2915 = add nuw nsw i32 %.08531749, 1
  %exitcond.not = icmp eq i32 %2915, 65
  br i1 %exitcond.not, label %2916, label %.preheader1469, !llvm.loop !5

2916:                                             ; preds = %2914
  %2917 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1468.preheader unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1468.preheader:                         ; preds = %2916
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 0)
          to label %2918 unwind label %2962

2918:                                             ; preds = %.preheader1468.preheader
  %2919 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.1 unwind label %2962

.preheader1468.1:                                 ; preds = %2918
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 3)
          to label %2920 unwind label %2962

2920:                                             ; preds = %.preheader1468.1
  %2921 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.2 unwind label %2962

.preheader1468.2:                                 ; preds = %2920
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 6)
          to label %2922 unwind label %2962

2922:                                             ; preds = %.preheader1468.2
  %2923 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.3 unwind label %2962

.preheader1468.3:                                 ; preds = %2922
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 9)
          to label %2924 unwind label %2962

2924:                                             ; preds = %.preheader1468.3
  %2925 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.4 unwind label %2962

.preheader1468.4:                                 ; preds = %2924
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 12)
          to label %2926 unwind label %2962

2926:                                             ; preds = %.preheader1468.4
  %2927 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.5 unwind label %2962

.preheader1468.5:                                 ; preds = %2926
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 15)
          to label %2928 unwind label %2962

2928:                                             ; preds = %.preheader1468.5
  %2929 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.6 unwind label %2962

.preheader1468.6:                                 ; preds = %2928
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 18)
          to label %2930 unwind label %2962

2930:                                             ; preds = %.preheader1468.6
  %2931 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.7 unwind label %2962

.preheader1468.7:                                 ; preds = %2930
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 21)
          to label %2932 unwind label %2962

2932:                                             ; preds = %.preheader1468.7
  %2933 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.8 unwind label %2962

.preheader1468.8:                                 ; preds = %2932
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 24)
          to label %2934 unwind label %2962

2934:                                             ; preds = %.preheader1468.8
  %2935 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.9 unwind label %2962

.preheader1468.9:                                 ; preds = %2934
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 27)
          to label %2936 unwind label %2962

2936:                                             ; preds = %.preheader1468.9
  %2937 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.10 unwind label %2962

.preheader1468.10:                                ; preds = %2936
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 30)
          to label %2938 unwind label %2962

2938:                                             ; preds = %.preheader1468.10
  %2939 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.11 unwind label %2962

.preheader1468.11:                                ; preds = %2938
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 33)
          to label %2940 unwind label %2962

2940:                                             ; preds = %.preheader1468.11
  %2941 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.12 unwind label %2962

.preheader1468.12:                                ; preds = %2940
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 36)
          to label %2942 unwind label %2962

2942:                                             ; preds = %.preheader1468.12
  %2943 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.13 unwind label %2962

.preheader1468.13:                                ; preds = %2942
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 39)
          to label %2944 unwind label %2962

2944:                                             ; preds = %.preheader1468.13
  %2945 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.14 unwind label %2962

.preheader1468.14:                                ; preds = %2944
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 42)
          to label %2946 unwind label %2962

2946:                                             ; preds = %.preheader1468.14
  %2947 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.15 unwind label %2962

.preheader1468.15:                                ; preds = %2946
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 45)
          to label %2948 unwind label %2962

2948:                                             ; preds = %.preheader1468.15
  %2949 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.16 unwind label %2962

.preheader1468.16:                                ; preds = %2948
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 48)
          to label %2950 unwind label %2962

2950:                                             ; preds = %.preheader1468.16
  %2951 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.17 unwind label %2962

.preheader1468.17:                                ; preds = %2950
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 51)
          to label %2952 unwind label %2962

2952:                                             ; preds = %.preheader1468.17
  %2953 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.18 unwind label %2962

.preheader1468.18:                                ; preds = %2952
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 54)
          to label %2954 unwind label %2962

2954:                                             ; preds = %.preheader1468.18
  %2955 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.19 unwind label %2962

.preheader1468.19:                                ; preds = %2954
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 57)
          to label %2956 unwind label %2962

2956:                                             ; preds = %.preheader1468.19
  %2957 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.20 unwind label %2962

.preheader1468.20:                                ; preds = %2956
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 60)
          to label %2958 unwind label %2962

2958:                                             ; preds = %.preheader1468.20
  %2959 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1468.21 unwind label %2962

.preheader1468.21:                                ; preds = %2958
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %152) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %152, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 63)
          to label %2960 unwind label %2962

2960:                                             ; preds = %.preheader1468.21
  %2961 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %152, i1 noundef zeroext true)
          to label %.preheader1465.preheader unwind label %2962

.preheader1465.preheader:                         ; preds = %2960
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  br label %.preheader1465

2962:                                             ; preds = %2960, %.preheader1468.21, %2958, %.preheader1468.20, %2956, %.preheader1468.19, %2954, %.preheader1468.18, %2952, %.preheader1468.17, %2950, %.preheader1468.16, %2948, %.preheader1468.15, %2946, %.preheader1468.14, %2944, %.preheader1468.13, %2942, %.preheader1468.12, %2940, %.preheader1468.11, %2938, %.preheader1468.10, %2936, %.preheader1468.9, %2934, %.preheader1468.8, %2932, %.preheader1468.7, %2930, %.preheader1468.6, %2928, %.preheader1468.5, %2926, %.preheader1468.4, %2924, %.preheader1468.3, %2922, %.preheader1468.2, %2920, %.preheader1468.1, %2918, %.preheader1468.preheader
  %2963 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %152) #6
  br label %.loopexit.split-lp1458

.preheader1465:                                   ; preds = %.preheader1465.preheader, %2969
  %.28551751 = phi i32 [ %2970, %2969 ], [ 0, %.preheader1465.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %153) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %153, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef %.28551751)
          to label %2964 unwind label %2967

2964:                                             ; preds = %.preheader1465
  %2965 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %153)
          to label %.invoke2848 unwind label %2967

.invoke2848:                                      ; preds = %2964
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %153) #6
  %.str.4..str.52850 = select i1 %2965, ptr @.str.4, ptr @.str.5
  %2966 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52850)
          to label %2969 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit

2967:                                             ; preds = %2964, %.preheader1465
  %2968 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %153) #6
  br label %.loopexit.split-lp1458

2969:                                             ; preds = %.invoke2848
  %2970 = add nuw nsw i32 %.28551751, 1
  %exitcond1821.not = icmp eq i32 %2970, 65
  br i1 %exitcond1821.not, label %2971, label %.preheader1465, !llvm.loop !7

2971:                                             ; preds = %2969
  %2972 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %2973 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2973:                                             ; preds = %2971
  %2974 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 0)
          to label %2975 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

2975:                                             ; preds = %2973
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %154) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %154, ptr noundef nonnull align 8 dereferenceable(48) %150)
          to label %2976 unwind label %2983

2976:                                             ; preds = %2975
  %2977 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %150, ptr noundef nonnull align 8 dereferenceable(48) %154)
          to label %2978 unwind label %2985

2978:                                             ; preds = %2976
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %154) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %154) #6
  br label %2979

2979:                                             ; preds = %2978, %2990
  %.38561752 = phi i32 [ 0, %2978 ], [ %2991, %2990 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %155) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %155, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef %.38561752)
          to label %2980 unwind label %2988

2980:                                             ; preds = %2979
  %2981 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %155)
          to label %.invoke2847 unwind label %2988

.invoke2847:                                      ; preds = %2980
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %155) #6
  %.str.4..str.52851 = select i1 %2981, ptr @.str.4, ptr @.str.5
  %2982 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52851)
          to label %2990 unwind label %.loopexit.split-lp1458.loopexit

2983:                                             ; preds = %2975
  %2984 = landingpad { ptr, i32 }
          cleanup
  br label %2987

2985:                                             ; preds = %2976
  %2986 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %154) #6
  br label %2987

2987:                                             ; preds = %2985, %2983
  %.pn1129 = phi { ptr, i32 } [ %2986, %2985 ], [ %2984, %2983 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %154) #6
  br label %.loopexit.split-lp1458

2988:                                             ; preds = %2980, %2979
  %2989 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %155) #6
  br label %.loopexit.split-lp1458

2990:                                             ; preds = %.invoke2847
  %2991 = add nuw nsw i32 %.38561752, 1
  %exitcond1822.not = icmp eq i32 %2991, 65
  br i1 %exitcond1822.not, label %2992, label %2979, !llvm.loop !8

2992:                                             ; preds = %2990
  %2993 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1461.preheader unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1461.preheader:                         ; preds = %2992
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 0)
          to label %2994 unwind label %3038

2994:                                             ; preds = %.preheader1461.preheader
  %2995 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.1 unwind label %3038

.preheader1461.1:                                 ; preds = %2994
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 3)
          to label %2996 unwind label %3038

2996:                                             ; preds = %.preheader1461.1
  %2997 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.2 unwind label %3038

.preheader1461.2:                                 ; preds = %2996
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 6)
          to label %2998 unwind label %3038

2998:                                             ; preds = %.preheader1461.2
  %2999 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.3 unwind label %3038

.preheader1461.3:                                 ; preds = %2998
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 9)
          to label %3000 unwind label %3038

3000:                                             ; preds = %.preheader1461.3
  %3001 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.4 unwind label %3038

.preheader1461.4:                                 ; preds = %3000
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 12)
          to label %3002 unwind label %3038

3002:                                             ; preds = %.preheader1461.4
  %3003 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.5 unwind label %3038

.preheader1461.5:                                 ; preds = %3002
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 15)
          to label %3004 unwind label %3038

3004:                                             ; preds = %.preheader1461.5
  %3005 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.6 unwind label %3038

.preheader1461.6:                                 ; preds = %3004
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 18)
          to label %3006 unwind label %3038

3006:                                             ; preds = %.preheader1461.6
  %3007 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.7 unwind label %3038

.preheader1461.7:                                 ; preds = %3006
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 21)
          to label %3008 unwind label %3038

3008:                                             ; preds = %.preheader1461.7
  %3009 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.8 unwind label %3038

.preheader1461.8:                                 ; preds = %3008
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 24)
          to label %3010 unwind label %3038

3010:                                             ; preds = %.preheader1461.8
  %3011 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.9 unwind label %3038

.preheader1461.9:                                 ; preds = %3010
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 27)
          to label %3012 unwind label %3038

3012:                                             ; preds = %.preheader1461.9
  %3013 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.10 unwind label %3038

.preheader1461.10:                                ; preds = %3012
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 30)
          to label %3014 unwind label %3038

3014:                                             ; preds = %.preheader1461.10
  %3015 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.11 unwind label %3038

.preheader1461.11:                                ; preds = %3014
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 33)
          to label %3016 unwind label %3038

3016:                                             ; preds = %.preheader1461.11
  %3017 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.12 unwind label %3038

.preheader1461.12:                                ; preds = %3016
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 36)
          to label %3018 unwind label %3038

3018:                                             ; preds = %.preheader1461.12
  %3019 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.13 unwind label %3038

.preheader1461.13:                                ; preds = %3018
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 39)
          to label %3020 unwind label %3038

3020:                                             ; preds = %.preheader1461.13
  %3021 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.14 unwind label %3038

.preheader1461.14:                                ; preds = %3020
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 42)
          to label %3022 unwind label %3038

3022:                                             ; preds = %.preheader1461.14
  %3023 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.15 unwind label %3038

.preheader1461.15:                                ; preds = %3022
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 45)
          to label %3024 unwind label %3038

3024:                                             ; preds = %.preheader1461.15
  %3025 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.16 unwind label %3038

.preheader1461.16:                                ; preds = %3024
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 48)
          to label %3026 unwind label %3038

3026:                                             ; preds = %.preheader1461.16
  %3027 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.17 unwind label %3038

.preheader1461.17:                                ; preds = %3026
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 51)
          to label %3028 unwind label %3038

3028:                                             ; preds = %.preheader1461.17
  %3029 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.18 unwind label %3038

.preheader1461.18:                                ; preds = %3028
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 54)
          to label %3030 unwind label %3038

3030:                                             ; preds = %.preheader1461.18
  %3031 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.19 unwind label %3038

.preheader1461.19:                                ; preds = %3030
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 57)
          to label %3032 unwind label %3038

3032:                                             ; preds = %.preheader1461.19
  %3033 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.20 unwind label %3038

.preheader1461.20:                                ; preds = %3032
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 60)
          to label %3034 unwind label %3038

3034:                                             ; preds = %.preheader1461.20
  %3035 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1461.21 unwind label %3038

.preheader1461.21:                                ; preds = %3034
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %156) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %156, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 63)
          to label %3036 unwind label %3038

3036:                                             ; preds = %.preheader1461.21
  %3037 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %156, i1 noundef zeroext false)
          to label %.preheader1456.preheader unwind label %3038

.preheader1456.preheader:                         ; preds = %3036
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  br label %.preheader1456

3038:                                             ; preds = %3036, %.preheader1461.21, %3034, %.preheader1461.20, %3032, %.preheader1461.19, %3030, %.preheader1461.18, %3028, %.preheader1461.17, %3026, %.preheader1461.16, %3024, %.preheader1461.15, %3022, %.preheader1461.14, %3020, %.preheader1461.13, %3018, %.preheader1461.12, %3016, %.preheader1461.11, %3014, %.preheader1461.10, %3012, %.preheader1461.9, %3010, %.preheader1461.8, %3008, %.preheader1461.7, %3006, %.preheader1461.6, %3004, %.preheader1461.5, %3002, %.preheader1461.4, %3000, %.preheader1461.3, %2998, %.preheader1461.2, %2996, %.preheader1461.1, %2994, %.preheader1461.preheader
  %3039 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %156) #6
  br label %.loopexit.split-lp1458

.preheader1456:                                   ; preds = %.preheader1456.preheader, %3045
  %.58581754 = phi i32 [ %3046, %3045 ], [ 0, %.preheader1456.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %157) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %157, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef %.58581754)
          to label %3040 unwind label %3043

3040:                                             ; preds = %.preheader1456
  %3041 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %157)
          to label %.invoke2846 unwind label %3043

.invoke2846:                                      ; preds = %3040
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %157) #6
  %.str.4..str.52852 = select i1 %3041, ptr @.str.4, ptr @.str.5
  %3042 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52852)
          to label %3045 unwind label %.loopexit1457

3043:                                             ; preds = %3040, %.preheader1456
  %3044 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %157) #6
  br label %.loopexit.split-lp1458

3045:                                             ; preds = %.invoke2846
  %3046 = add nuw nsw i32 %.58581754, 1
  %exitcond1823.not = icmp eq i32 %3046, 65
  br i1 %exitcond1823.not, label %3047, label %.preheader1456, !llvm.loop !9

3047:                                             ; preds = %3045
  %3048 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3049 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3049:                                             ; preds = %3047
  %3050 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3051 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3051:                                             ; preds = %3049
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %158) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %158, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 2)
          to label %3052 unwind label %3076

3052:                                             ; preds = %3051
  %3053 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3050, ptr noundef nonnull align 8 dereferenceable(32) %158)
          to label %3054 unwind label %3078

3054:                                             ; preds = %3052
  %3055 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3053, ptr noundef nonnull @.str.3)
          to label %3056 unwind label %3078

3056:                                             ; preds = %3054
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %158) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %158) #6
  %3057 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %150, ptr noundef nonnull @.str.8)
          to label %3058 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3058:                                             ; preds = %3056
  %3059 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3060 unwind label %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3060:                                             ; preds = %3058
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %159) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %159, ptr noundef nonnull align 8 dereferenceable(48) %150, i32 noundef 2)
          to label %3061 unwind label %3081

3061:                                             ; preds = %3060
  %3062 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3059, ptr noundef nonnull align 8 dereferenceable(32) %159)
          to label %3063 unwind label %3083

3063:                                             ; preds = %3061
  %3064 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3062, ptr noundef nonnull @.str.3)
          to label %3065 unwind label %3083

3065:                                             ; preds = %3063
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %159) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %159) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %150) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %150) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %148) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %148) #6
  %3066 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %3067 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3066, ptr noundef nonnull @.str.2)
  %3068 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3067, i32 noundef 65)
  %3069 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3068, ptr noundef nonnull @.str.2)
  %3070 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3069, i32 noundef 65)
  %3071 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3070, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %160) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %161) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %161, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %160, ptr noundef nonnull align 4 dereferenceable(20) %161, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %161) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %162) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 0, ptr noundef null)
          to label %.preheader1452 unwind label %3087

.preheader1452:                                   ; preds = %3065, %3091
  %.08471755 = phi i32 [ %3092, %3091 ], [ 0, %3065 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %163) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %163, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef %.08471755)
          to label %3072 unwind label %3089

3072:                                             ; preds = %.preheader1452
  %3073 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %163)
          to label %.invoke2856 unwind label %3089

.invoke2856:                                      ; preds = %3072
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %163) #6
  %3074 = select i1 %3073, ptr @.str.4, ptr @.str.5
  %3075 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3074)
          to label %3091 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit

3076:                                             ; preds = %3051
  %3077 = landingpad { ptr, i32 }
          cleanup
  br label %3080

3078:                                             ; preds = %3054, %3052
  %3079 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %158) #6
  br label %3080

3080:                                             ; preds = %3078, %3076
  %.pn1131 = phi { ptr, i32 } [ %3079, %3078 ], [ %3077, %3076 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %158) #6
  br label %.loopexit.split-lp1458

3081:                                             ; preds = %3060
  %3082 = landingpad { ptr, i32 }
          cleanup
  br label %3085

3083:                                             ; preds = %3063, %3061
  %3084 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %159) #6
  br label %3085

3085:                                             ; preds = %3083, %3081
  %.pn1133 = phi { ptr, i32 } [ %3084, %3083 ], [ %3082, %3081 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %159) #6
  br label %.loopexit.split-lp1458

.loopexit.split-lp1458:                           ; preds = %.loopexit1457, %.loopexit.split-lp1458.loopexit.split-lp.loopexit, %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1458.loopexit, %3085, %3080, %3043, %3038, %2988, %2987, %2967, %2962, %2912
  %.pn1234 = phi { ptr, i32 } [ %2913, %2912 ], [ %2963, %2962 ], [ %2968, %2967 ], [ %2989, %2988 ], [ %3039, %3038 ], [ %3044, %3043 ], [ %.pn1133, %3085 ], [ %.pn1131, %3080 ], [ %.pn1129, %2987 ], [ %lpad.loopexit1459, %.loopexit1457 ], [ %lpad.loopexit1462, %.loopexit.split-lp1458.loopexit ], [ %lpad.loopexit1466, %.loopexit.split-lp1458.loopexit.split-lp.loopexit ], [ %lpad.loopexit1470, %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1471, %.loopexit.split-lp1458.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %150) #6
  br label %3086

3086:                                             ; preds = %.loopexit.split-lp1458, %2910
  %.pn1234.pn = phi { ptr, i32 } [ %.pn1234, %.loopexit.split-lp1458 ], [ %2911, %2910 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %150) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %148) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %148) #6
  br label %5024

3087:                                             ; preds = %3065
  %3088 = landingpad { ptr, i32 }
          cleanup
  br label %3263

3089:                                             ; preds = %3072, %.preheader1452
  %3090 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %163) #6
  br label %.loopexit.split-lp1441

.loopexit1440:                                    ; preds = %.invoke2853
  %lpad.loopexit1442 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1441

.loopexit.split-lp1441.loopexit:                  ; preds = %.invoke2854
  %lpad.loopexit1445 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1441

.loopexit.split-lp1441.loopexit.split-lp.loopexit: ; preds = %.invoke2855
  %lpad.loopexit1449 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1441

.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2856
  %lpad.loopexit1453 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1441

.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3235, %3233, %3226, %3224, %3169, %3150, %3148, %3093
  %lpad.loopexit.split-lp1454 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1441

3091:                                             ; preds = %.invoke2856
  %3092 = add nuw nsw i32 %.08471755, 1
  %exitcond1824.not = icmp eq i32 %3092, 65
  br i1 %exitcond1824.not, label %3093, label %.preheader1452, !llvm.loop !10

3093:                                             ; preds = %3091
  %3094 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1451.preheader unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1451.preheader:                         ; preds = %3093
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 0)
          to label %3095 unwind label %3139

3095:                                             ; preds = %.preheader1451.preheader
  %3096 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.1 unwind label %3139

.preheader1451.1:                                 ; preds = %3095
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 3)
          to label %3097 unwind label %3139

3097:                                             ; preds = %.preheader1451.1
  %3098 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.2 unwind label %3139

.preheader1451.2:                                 ; preds = %3097
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 6)
          to label %3099 unwind label %3139

3099:                                             ; preds = %.preheader1451.2
  %3100 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.3 unwind label %3139

.preheader1451.3:                                 ; preds = %3099
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 9)
          to label %3101 unwind label %3139

3101:                                             ; preds = %.preheader1451.3
  %3102 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.4 unwind label %3139

.preheader1451.4:                                 ; preds = %3101
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 12)
          to label %3103 unwind label %3139

3103:                                             ; preds = %.preheader1451.4
  %3104 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.5 unwind label %3139

.preheader1451.5:                                 ; preds = %3103
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 15)
          to label %3105 unwind label %3139

3105:                                             ; preds = %.preheader1451.5
  %3106 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.6 unwind label %3139

.preheader1451.6:                                 ; preds = %3105
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 18)
          to label %3107 unwind label %3139

3107:                                             ; preds = %.preheader1451.6
  %3108 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.7 unwind label %3139

.preheader1451.7:                                 ; preds = %3107
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 21)
          to label %3109 unwind label %3139

3109:                                             ; preds = %.preheader1451.7
  %3110 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.8 unwind label %3139

.preheader1451.8:                                 ; preds = %3109
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 24)
          to label %3111 unwind label %3139

3111:                                             ; preds = %.preheader1451.8
  %3112 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.9 unwind label %3139

.preheader1451.9:                                 ; preds = %3111
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 27)
          to label %3113 unwind label %3139

3113:                                             ; preds = %.preheader1451.9
  %3114 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.10 unwind label %3139

.preheader1451.10:                                ; preds = %3113
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 30)
          to label %3115 unwind label %3139

3115:                                             ; preds = %.preheader1451.10
  %3116 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.11 unwind label %3139

.preheader1451.11:                                ; preds = %3115
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 33)
          to label %3117 unwind label %3139

3117:                                             ; preds = %.preheader1451.11
  %3118 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.12 unwind label %3139

.preheader1451.12:                                ; preds = %3117
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 36)
          to label %3119 unwind label %3139

3119:                                             ; preds = %.preheader1451.12
  %3120 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.13 unwind label %3139

.preheader1451.13:                                ; preds = %3119
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 39)
          to label %3121 unwind label %3139

3121:                                             ; preds = %.preheader1451.13
  %3122 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.14 unwind label %3139

.preheader1451.14:                                ; preds = %3121
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 42)
          to label %3123 unwind label %3139

3123:                                             ; preds = %.preheader1451.14
  %3124 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.15 unwind label %3139

.preheader1451.15:                                ; preds = %3123
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 45)
          to label %3125 unwind label %3139

3125:                                             ; preds = %.preheader1451.15
  %3126 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.16 unwind label %3139

.preheader1451.16:                                ; preds = %3125
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 48)
          to label %3127 unwind label %3139

3127:                                             ; preds = %.preheader1451.16
  %3128 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.17 unwind label %3139

.preheader1451.17:                                ; preds = %3127
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 51)
          to label %3129 unwind label %3139

3129:                                             ; preds = %.preheader1451.17
  %3130 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.18 unwind label %3139

.preheader1451.18:                                ; preds = %3129
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 54)
          to label %3131 unwind label %3139

3131:                                             ; preds = %.preheader1451.18
  %3132 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.19 unwind label %3139

.preheader1451.19:                                ; preds = %3131
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 57)
          to label %3133 unwind label %3139

3133:                                             ; preds = %.preheader1451.19
  %3134 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.20 unwind label %3139

.preheader1451.20:                                ; preds = %3133
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 60)
          to label %3135 unwind label %3139

3135:                                             ; preds = %.preheader1451.20
  %3136 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1451.21 unwind label %3139

.preheader1451.21:                                ; preds = %3135
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %164) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %164, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 63)
          to label %3137 unwind label %3139

3137:                                             ; preds = %.preheader1451.21
  %3138 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %164, i1 noundef zeroext true)
          to label %.preheader1448.preheader unwind label %3139

.preheader1448.preheader:                         ; preds = %3137
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  br label %.preheader1448

3139:                                             ; preds = %3137, %.preheader1451.21, %3135, %.preheader1451.20, %3133, %.preheader1451.19, %3131, %.preheader1451.18, %3129, %.preheader1451.17, %3127, %.preheader1451.16, %3125, %.preheader1451.15, %3123, %.preheader1451.14, %3121, %.preheader1451.13, %3119, %.preheader1451.12, %3117, %.preheader1451.11, %3115, %.preheader1451.10, %3113, %.preheader1451.9, %3111, %.preheader1451.8, %3109, %.preheader1451.7, %3107, %.preheader1451.6, %3105, %.preheader1451.5, %3103, %.preheader1451.4, %3101, %.preheader1451.3, %3099, %.preheader1451.2, %3097, %.preheader1451.1, %3095, %.preheader1451.preheader
  %3140 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %164) #6
  br label %.loopexit.split-lp1441

.preheader1448:                                   ; preds = %.preheader1448.preheader, %3146
  %.28491757 = phi i32 [ %3147, %3146 ], [ 0, %.preheader1448.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %165) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %165, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef %.28491757)
          to label %3141 unwind label %3144

3141:                                             ; preds = %.preheader1448
  %3142 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %165)
          to label %.invoke2855 unwind label %3144

.invoke2855:                                      ; preds = %3141
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %165) #6
  %.str.4..str.52857 = select i1 %3142, ptr @.str.4, ptr @.str.5
  %3143 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52857)
          to label %3146 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit

3144:                                             ; preds = %3141, %.preheader1448
  %3145 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %165) #6
  br label %.loopexit.split-lp1441

3146:                                             ; preds = %.invoke2855
  %3147 = add nuw nsw i32 %.28491757, 1
  %exitcond1825.not = icmp eq i32 %3147, 65
  br i1 %exitcond1825.not, label %3148, label %.preheader1448, !llvm.loop !11

3148:                                             ; preds = %3146
  %3149 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3150 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3150:                                             ; preds = %3148
  %3151 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 0)
          to label %3152 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3152:                                             ; preds = %3150
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %166) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %166, ptr noundef nonnull align 8 dereferenceable(48) %162)
          to label %3153 unwind label %3160

3153:                                             ; preds = %3152
  %3154 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %162, ptr noundef nonnull align 8 dereferenceable(48) %166)
          to label %3155 unwind label %3162

3155:                                             ; preds = %3153
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %166) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %166) #6
  br label %3156

3156:                                             ; preds = %3155, %3167
  %.38501758 = phi i32 [ 0, %3155 ], [ %3168, %3167 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %167) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %167, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef %.38501758)
          to label %3157 unwind label %3165

3157:                                             ; preds = %3156
  %3158 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %167)
          to label %.invoke2854 unwind label %3165

.invoke2854:                                      ; preds = %3157
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %167) #6
  %.str.4..str.52858 = select i1 %3158, ptr @.str.4, ptr @.str.5
  %3159 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52858)
          to label %3167 unwind label %.loopexit.split-lp1441.loopexit

3160:                                             ; preds = %3152
  %3161 = landingpad { ptr, i32 }
          cleanup
  br label %3164

3162:                                             ; preds = %3153
  %3163 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %166) #6
  br label %3164

3164:                                             ; preds = %3162, %3160
  %.pn1135 = phi { ptr, i32 } [ %3163, %3162 ], [ %3161, %3160 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %166) #6
  br label %.loopexit.split-lp1441

3165:                                             ; preds = %3157, %3156
  %3166 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %167) #6
  br label %.loopexit.split-lp1441

3167:                                             ; preds = %.invoke2854
  %3168 = add nuw nsw i32 %.38501758, 1
  %exitcond1826.not = icmp eq i32 %3168, 65
  br i1 %exitcond1826.not, label %3169, label %3156, !llvm.loop !12

3169:                                             ; preds = %3167
  %3170 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1444.preheader unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1444.preheader:                         ; preds = %3169
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 0)
          to label %3171 unwind label %3215

3171:                                             ; preds = %.preheader1444.preheader
  %3172 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.1 unwind label %3215

.preheader1444.1:                                 ; preds = %3171
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 3)
          to label %3173 unwind label %3215

3173:                                             ; preds = %.preheader1444.1
  %3174 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.2 unwind label %3215

.preheader1444.2:                                 ; preds = %3173
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 6)
          to label %3175 unwind label %3215

3175:                                             ; preds = %.preheader1444.2
  %3176 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.3 unwind label %3215

.preheader1444.3:                                 ; preds = %3175
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 9)
          to label %3177 unwind label %3215

3177:                                             ; preds = %.preheader1444.3
  %3178 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.4 unwind label %3215

.preheader1444.4:                                 ; preds = %3177
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 12)
          to label %3179 unwind label %3215

3179:                                             ; preds = %.preheader1444.4
  %3180 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.5 unwind label %3215

.preheader1444.5:                                 ; preds = %3179
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 15)
          to label %3181 unwind label %3215

3181:                                             ; preds = %.preheader1444.5
  %3182 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.6 unwind label %3215

.preheader1444.6:                                 ; preds = %3181
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 18)
          to label %3183 unwind label %3215

3183:                                             ; preds = %.preheader1444.6
  %3184 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.7 unwind label %3215

.preheader1444.7:                                 ; preds = %3183
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 21)
          to label %3185 unwind label %3215

3185:                                             ; preds = %.preheader1444.7
  %3186 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.8 unwind label %3215

.preheader1444.8:                                 ; preds = %3185
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 24)
          to label %3187 unwind label %3215

3187:                                             ; preds = %.preheader1444.8
  %3188 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.9 unwind label %3215

.preheader1444.9:                                 ; preds = %3187
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 27)
          to label %3189 unwind label %3215

3189:                                             ; preds = %.preheader1444.9
  %3190 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.10 unwind label %3215

.preheader1444.10:                                ; preds = %3189
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 30)
          to label %3191 unwind label %3215

3191:                                             ; preds = %.preheader1444.10
  %3192 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.11 unwind label %3215

.preheader1444.11:                                ; preds = %3191
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 33)
          to label %3193 unwind label %3215

3193:                                             ; preds = %.preheader1444.11
  %3194 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.12 unwind label %3215

.preheader1444.12:                                ; preds = %3193
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 36)
          to label %3195 unwind label %3215

3195:                                             ; preds = %.preheader1444.12
  %3196 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.13 unwind label %3215

.preheader1444.13:                                ; preds = %3195
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 39)
          to label %3197 unwind label %3215

3197:                                             ; preds = %.preheader1444.13
  %3198 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.14 unwind label %3215

.preheader1444.14:                                ; preds = %3197
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 42)
          to label %3199 unwind label %3215

3199:                                             ; preds = %.preheader1444.14
  %3200 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.15 unwind label %3215

.preheader1444.15:                                ; preds = %3199
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 45)
          to label %3201 unwind label %3215

3201:                                             ; preds = %.preheader1444.15
  %3202 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.16 unwind label %3215

.preheader1444.16:                                ; preds = %3201
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 48)
          to label %3203 unwind label %3215

3203:                                             ; preds = %.preheader1444.16
  %3204 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.17 unwind label %3215

.preheader1444.17:                                ; preds = %3203
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 51)
          to label %3205 unwind label %3215

3205:                                             ; preds = %.preheader1444.17
  %3206 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.18 unwind label %3215

.preheader1444.18:                                ; preds = %3205
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 54)
          to label %3207 unwind label %3215

3207:                                             ; preds = %.preheader1444.18
  %3208 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.19 unwind label %3215

.preheader1444.19:                                ; preds = %3207
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 57)
          to label %3209 unwind label %3215

3209:                                             ; preds = %.preheader1444.19
  %3210 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.20 unwind label %3215

.preheader1444.20:                                ; preds = %3209
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 60)
          to label %3211 unwind label %3215

3211:                                             ; preds = %.preheader1444.20
  %3212 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1444.21 unwind label %3215

.preheader1444.21:                                ; preds = %3211
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %168) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %168, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 63)
          to label %3213 unwind label %3215

3213:                                             ; preds = %.preheader1444.21
  %3214 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %168, i1 noundef zeroext false)
          to label %.preheader1439.preheader unwind label %3215

.preheader1439.preheader:                         ; preds = %3213
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  br label %.preheader1439

3215:                                             ; preds = %3213, %.preheader1444.21, %3211, %.preheader1444.20, %3209, %.preheader1444.19, %3207, %.preheader1444.18, %3205, %.preheader1444.17, %3203, %.preheader1444.16, %3201, %.preheader1444.15, %3199, %.preheader1444.14, %3197, %.preheader1444.13, %3195, %.preheader1444.12, %3193, %.preheader1444.11, %3191, %.preheader1444.10, %3189, %.preheader1444.9, %3187, %.preheader1444.8, %3185, %.preheader1444.7, %3183, %.preheader1444.6, %3181, %.preheader1444.5, %3179, %.preheader1444.4, %3177, %.preheader1444.3, %3175, %.preheader1444.2, %3173, %.preheader1444.1, %3171, %.preheader1444.preheader
  %3216 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %168) #6
  br label %.loopexit.split-lp1441

.preheader1439:                                   ; preds = %.preheader1439.preheader, %3222
  %.58521760 = phi i32 [ %3223, %3222 ], [ 0, %.preheader1439.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %169) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %169, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef %.58521760)
          to label %3217 unwind label %3220

3217:                                             ; preds = %.preheader1439
  %3218 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %169)
          to label %.invoke2853 unwind label %3220

.invoke2853:                                      ; preds = %3217
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %169) #6
  %.str.4..str.52859 = select i1 %3218, ptr @.str.4, ptr @.str.5
  %3219 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52859)
          to label %3222 unwind label %.loopexit1440

3220:                                             ; preds = %3217, %.preheader1439
  %3221 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %169) #6
  br label %.loopexit.split-lp1441

3222:                                             ; preds = %.invoke2853
  %3223 = add nuw nsw i32 %.58521760, 1
  %exitcond1827.not = icmp eq i32 %3223, 65
  br i1 %exitcond1827.not, label %3224, label %.preheader1439, !llvm.loop !13

3224:                                             ; preds = %3222
  %3225 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3226 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3226:                                             ; preds = %3224
  %3227 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3228 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3228:                                             ; preds = %3226
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %170) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %170, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 2)
          to label %3229 unwind label %3253

3229:                                             ; preds = %3228
  %3230 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3227, ptr noundef nonnull align 8 dereferenceable(32) %170)
          to label %3231 unwind label %3255

3231:                                             ; preds = %3229
  %3232 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3230, ptr noundef nonnull @.str.3)
          to label %3233 unwind label %3255

3233:                                             ; preds = %3231
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %170) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %170) #6
  %3234 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %162, ptr noundef nonnull @.str.8)
          to label %3235 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3235:                                             ; preds = %3233
  %3236 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3237 unwind label %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3237:                                             ; preds = %3235
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %171) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %171, ptr noundef nonnull align 8 dereferenceable(48) %162, i32 noundef 2)
          to label %3238 unwind label %3258

3238:                                             ; preds = %3237
  %3239 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3236, ptr noundef nonnull align 8 dereferenceable(32) %171)
          to label %3240 unwind label %3260

3240:                                             ; preds = %3238
  %3241 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3239, ptr noundef nonnull @.str.3)
          to label %3242 unwind label %3260

3242:                                             ; preds = %3240
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %171) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %162) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %162) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %160) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %160) #6
  %3243 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %3244 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3243, ptr noundef nonnull @.str.2)
  %3245 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3244, i32 noundef 65)
  %3246 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3245, ptr noundef nonnull @.str.2)
  %3247 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3246, i32 noundef 65)
  %3248 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3247, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %172) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %173) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %173, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %172, ptr noundef nonnull align 4 dereferenceable(20) %173, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %173) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %174) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 0, ptr noundef null)
          to label %.preheader1435 unwind label %3264

.preheader1435:                                   ; preds = %3242, %3268
  %.08411761 = phi i32 [ %3269, %3268 ], [ 0, %3242 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %175) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %175, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef %.08411761)
          to label %3249 unwind label %3266

3249:                                             ; preds = %.preheader1435
  %3250 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %175)
          to label %.invoke2863 unwind label %3266

.invoke2863:                                      ; preds = %3249
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %175) #6
  %3251 = select i1 %3250, ptr @.str.4, ptr @.str.5
  %3252 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3251)
          to label %3268 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit

3253:                                             ; preds = %3228
  %3254 = landingpad { ptr, i32 }
          cleanup
  br label %3257

3255:                                             ; preds = %3231, %3229
  %3256 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %170) #6
  br label %3257

3257:                                             ; preds = %3255, %3253
  %.pn1137 = phi { ptr, i32 } [ %3256, %3255 ], [ %3254, %3253 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %170) #6
  br label %.loopexit.split-lp1441

3258:                                             ; preds = %3237
  %3259 = landingpad { ptr, i32 }
          cleanup
  br label %3262

3260:                                             ; preds = %3240, %3238
  %3261 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %171) #6
  br label %3262

3262:                                             ; preds = %3260, %3258
  %.pn1139 = phi { ptr, i32 } [ %3261, %3260 ], [ %3259, %3258 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %171) #6
  br label %.loopexit.split-lp1441

.loopexit.split-lp1441:                           ; preds = %.loopexit1440, %.loopexit.split-lp1441.loopexit.split-lp.loopexit, %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1441.loopexit, %3262, %3257, %3220, %3215, %3165, %3164, %3144, %3139, %3089
  %.pn1231 = phi { ptr, i32 } [ %3090, %3089 ], [ %3140, %3139 ], [ %3145, %3144 ], [ %3166, %3165 ], [ %3216, %3215 ], [ %3221, %3220 ], [ %.pn1139, %3262 ], [ %.pn1137, %3257 ], [ %.pn1135, %3164 ], [ %lpad.loopexit1442, %.loopexit1440 ], [ %lpad.loopexit1445, %.loopexit.split-lp1441.loopexit ], [ %lpad.loopexit1449, %.loopexit.split-lp1441.loopexit.split-lp.loopexit ], [ %lpad.loopexit1453, %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1454, %.loopexit.split-lp1441.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %162) #6
  br label %3263

3263:                                             ; preds = %.loopexit.split-lp1441, %3087
  %.pn1231.pn = phi { ptr, i32 } [ %.pn1231, %.loopexit.split-lp1441 ], [ %3088, %3087 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %162) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %160) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %160) #6
  br label %5024

3264:                                             ; preds = %3242
  %3265 = landingpad { ptr, i32 }
          cleanup
  br label %3440

3266:                                             ; preds = %3249, %.preheader1435
  %3267 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %175) #6
  br label %.loopexit.split-lp1424

.loopexit1423:                                    ; preds = %.invoke2860
  %lpad.loopexit1425 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1424

.loopexit.split-lp1424.loopexit:                  ; preds = %.invoke2861
  %lpad.loopexit1428 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1424

.loopexit.split-lp1424.loopexit.split-lp.loopexit: ; preds = %.invoke2862
  %lpad.loopexit1432 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1424

.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2863
  %lpad.loopexit1436 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1424

.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3412, %3410, %3403, %3401, %3346, %3327, %3325, %3270
  %lpad.loopexit.split-lp1437 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1424

3268:                                             ; preds = %.invoke2863
  %3269 = add nuw nsw i32 %.08411761, 1
  %exitcond1828.not = icmp eq i32 %3269, 65
  br i1 %exitcond1828.not, label %3270, label %.preheader1435, !llvm.loop !14

3270:                                             ; preds = %3268
  %3271 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1434.preheader unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1434.preheader:                         ; preds = %3270
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 0)
          to label %3272 unwind label %3316

3272:                                             ; preds = %.preheader1434.preheader
  %3273 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.1 unwind label %3316

.preheader1434.1:                                 ; preds = %3272
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 3)
          to label %3274 unwind label %3316

3274:                                             ; preds = %.preheader1434.1
  %3275 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.2 unwind label %3316

.preheader1434.2:                                 ; preds = %3274
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 6)
          to label %3276 unwind label %3316

3276:                                             ; preds = %.preheader1434.2
  %3277 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.3 unwind label %3316

.preheader1434.3:                                 ; preds = %3276
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 9)
          to label %3278 unwind label %3316

3278:                                             ; preds = %.preheader1434.3
  %3279 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.4 unwind label %3316

.preheader1434.4:                                 ; preds = %3278
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 12)
          to label %3280 unwind label %3316

3280:                                             ; preds = %.preheader1434.4
  %3281 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.5 unwind label %3316

.preheader1434.5:                                 ; preds = %3280
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 15)
          to label %3282 unwind label %3316

3282:                                             ; preds = %.preheader1434.5
  %3283 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.6 unwind label %3316

.preheader1434.6:                                 ; preds = %3282
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 18)
          to label %3284 unwind label %3316

3284:                                             ; preds = %.preheader1434.6
  %3285 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.7 unwind label %3316

.preheader1434.7:                                 ; preds = %3284
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 21)
          to label %3286 unwind label %3316

3286:                                             ; preds = %.preheader1434.7
  %3287 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.8 unwind label %3316

.preheader1434.8:                                 ; preds = %3286
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 24)
          to label %3288 unwind label %3316

3288:                                             ; preds = %.preheader1434.8
  %3289 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.9 unwind label %3316

.preheader1434.9:                                 ; preds = %3288
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 27)
          to label %3290 unwind label %3316

3290:                                             ; preds = %.preheader1434.9
  %3291 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.10 unwind label %3316

.preheader1434.10:                                ; preds = %3290
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 30)
          to label %3292 unwind label %3316

3292:                                             ; preds = %.preheader1434.10
  %3293 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.11 unwind label %3316

.preheader1434.11:                                ; preds = %3292
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 33)
          to label %3294 unwind label %3316

3294:                                             ; preds = %.preheader1434.11
  %3295 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.12 unwind label %3316

.preheader1434.12:                                ; preds = %3294
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 36)
          to label %3296 unwind label %3316

3296:                                             ; preds = %.preheader1434.12
  %3297 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.13 unwind label %3316

.preheader1434.13:                                ; preds = %3296
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 39)
          to label %3298 unwind label %3316

3298:                                             ; preds = %.preheader1434.13
  %3299 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.14 unwind label %3316

.preheader1434.14:                                ; preds = %3298
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 42)
          to label %3300 unwind label %3316

3300:                                             ; preds = %.preheader1434.14
  %3301 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.15 unwind label %3316

.preheader1434.15:                                ; preds = %3300
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 45)
          to label %3302 unwind label %3316

3302:                                             ; preds = %.preheader1434.15
  %3303 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.16 unwind label %3316

.preheader1434.16:                                ; preds = %3302
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 48)
          to label %3304 unwind label %3316

3304:                                             ; preds = %.preheader1434.16
  %3305 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.17 unwind label %3316

.preheader1434.17:                                ; preds = %3304
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 51)
          to label %3306 unwind label %3316

3306:                                             ; preds = %.preheader1434.17
  %3307 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.18 unwind label %3316

.preheader1434.18:                                ; preds = %3306
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 54)
          to label %3308 unwind label %3316

3308:                                             ; preds = %.preheader1434.18
  %3309 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.19 unwind label %3316

.preheader1434.19:                                ; preds = %3308
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 57)
          to label %3310 unwind label %3316

3310:                                             ; preds = %.preheader1434.19
  %3311 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.20 unwind label %3316

.preheader1434.20:                                ; preds = %3310
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 60)
          to label %3312 unwind label %3316

3312:                                             ; preds = %.preheader1434.20
  %3313 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1434.21 unwind label %3316

.preheader1434.21:                                ; preds = %3312
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %176) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %176, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 63)
          to label %3314 unwind label %3316

3314:                                             ; preds = %.preheader1434.21
  %3315 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %176, i1 noundef zeroext true)
          to label %.preheader1431.preheader unwind label %3316

.preheader1431.preheader:                         ; preds = %3314
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  br label %.preheader1431

3316:                                             ; preds = %3314, %.preheader1434.21, %3312, %.preheader1434.20, %3310, %.preheader1434.19, %3308, %.preheader1434.18, %3306, %.preheader1434.17, %3304, %.preheader1434.16, %3302, %.preheader1434.15, %3300, %.preheader1434.14, %3298, %.preheader1434.13, %3296, %.preheader1434.12, %3294, %.preheader1434.11, %3292, %.preheader1434.10, %3290, %.preheader1434.9, %3288, %.preheader1434.8, %3286, %.preheader1434.7, %3284, %.preheader1434.6, %3282, %.preheader1434.5, %3280, %.preheader1434.4, %3278, %.preheader1434.3, %3276, %.preheader1434.2, %3274, %.preheader1434.1, %3272, %.preheader1434.preheader
  %3317 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %176) #6
  br label %.loopexit.split-lp1424

.preheader1431:                                   ; preds = %.preheader1431.preheader, %3323
  %.28431763 = phi i32 [ %3324, %3323 ], [ 0, %.preheader1431.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %177) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %177, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef %.28431763)
          to label %3318 unwind label %3321

3318:                                             ; preds = %.preheader1431
  %3319 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %177)
          to label %.invoke2862 unwind label %3321

.invoke2862:                                      ; preds = %3318
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %177) #6
  %.str.4..str.52864 = select i1 %3319, ptr @.str.4, ptr @.str.5
  %3320 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52864)
          to label %3323 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit

3321:                                             ; preds = %3318, %.preheader1431
  %3322 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %177) #6
  br label %.loopexit.split-lp1424

3323:                                             ; preds = %.invoke2862
  %3324 = add nuw nsw i32 %.28431763, 1
  %exitcond1829.not = icmp eq i32 %3324, 65
  br i1 %exitcond1829.not, label %3325, label %.preheader1431, !llvm.loop !15

3325:                                             ; preds = %3323
  %3326 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3327 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3327:                                             ; preds = %3325
  %3328 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 0)
          to label %3329 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3329:                                             ; preds = %3327
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %178) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %178, ptr noundef nonnull align 8 dereferenceable(48) %174)
          to label %3330 unwind label %3337

3330:                                             ; preds = %3329
  %3331 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %174, ptr noundef nonnull align 8 dereferenceable(48) %178)
          to label %3332 unwind label %3339

3332:                                             ; preds = %3330
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %178) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %178) #6
  br label %3333

3333:                                             ; preds = %3332, %3344
  %.38441764 = phi i32 [ 0, %3332 ], [ %3345, %3344 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %179) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %179, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef %.38441764)
          to label %3334 unwind label %3342

3334:                                             ; preds = %3333
  %3335 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %179)
          to label %.invoke2861 unwind label %3342

.invoke2861:                                      ; preds = %3334
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %179) #6
  %.str.4..str.52865 = select i1 %3335, ptr @.str.4, ptr @.str.5
  %3336 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52865)
          to label %3344 unwind label %.loopexit.split-lp1424.loopexit

3337:                                             ; preds = %3329
  %3338 = landingpad { ptr, i32 }
          cleanup
  br label %3341

3339:                                             ; preds = %3330
  %3340 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %178) #6
  br label %3341

3341:                                             ; preds = %3339, %3337
  %.pn1141 = phi { ptr, i32 } [ %3340, %3339 ], [ %3338, %3337 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %178) #6
  br label %.loopexit.split-lp1424

3342:                                             ; preds = %3334, %3333
  %3343 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %179) #6
  br label %.loopexit.split-lp1424

3344:                                             ; preds = %.invoke2861
  %3345 = add nuw nsw i32 %.38441764, 1
  %exitcond1830.not = icmp eq i32 %3345, 65
  br i1 %exitcond1830.not, label %3346, label %3333, !llvm.loop !16

3346:                                             ; preds = %3344
  %3347 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1427.preheader unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1427.preheader:                         ; preds = %3346
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 0)
          to label %3348 unwind label %3392

3348:                                             ; preds = %.preheader1427.preheader
  %3349 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.1 unwind label %3392

.preheader1427.1:                                 ; preds = %3348
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 3)
          to label %3350 unwind label %3392

3350:                                             ; preds = %.preheader1427.1
  %3351 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.2 unwind label %3392

.preheader1427.2:                                 ; preds = %3350
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 6)
          to label %3352 unwind label %3392

3352:                                             ; preds = %.preheader1427.2
  %3353 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.3 unwind label %3392

.preheader1427.3:                                 ; preds = %3352
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 9)
          to label %3354 unwind label %3392

3354:                                             ; preds = %.preheader1427.3
  %3355 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.4 unwind label %3392

.preheader1427.4:                                 ; preds = %3354
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 12)
          to label %3356 unwind label %3392

3356:                                             ; preds = %.preheader1427.4
  %3357 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.5 unwind label %3392

.preheader1427.5:                                 ; preds = %3356
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 15)
          to label %3358 unwind label %3392

3358:                                             ; preds = %.preheader1427.5
  %3359 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.6 unwind label %3392

.preheader1427.6:                                 ; preds = %3358
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 18)
          to label %3360 unwind label %3392

3360:                                             ; preds = %.preheader1427.6
  %3361 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.7 unwind label %3392

.preheader1427.7:                                 ; preds = %3360
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 21)
          to label %3362 unwind label %3392

3362:                                             ; preds = %.preheader1427.7
  %3363 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.8 unwind label %3392

.preheader1427.8:                                 ; preds = %3362
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 24)
          to label %3364 unwind label %3392

3364:                                             ; preds = %.preheader1427.8
  %3365 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.9 unwind label %3392

.preheader1427.9:                                 ; preds = %3364
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 27)
          to label %3366 unwind label %3392

3366:                                             ; preds = %.preheader1427.9
  %3367 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.10 unwind label %3392

.preheader1427.10:                                ; preds = %3366
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 30)
          to label %3368 unwind label %3392

3368:                                             ; preds = %.preheader1427.10
  %3369 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.11 unwind label %3392

.preheader1427.11:                                ; preds = %3368
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 33)
          to label %3370 unwind label %3392

3370:                                             ; preds = %.preheader1427.11
  %3371 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.12 unwind label %3392

.preheader1427.12:                                ; preds = %3370
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 36)
          to label %3372 unwind label %3392

3372:                                             ; preds = %.preheader1427.12
  %3373 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.13 unwind label %3392

.preheader1427.13:                                ; preds = %3372
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 39)
          to label %3374 unwind label %3392

3374:                                             ; preds = %.preheader1427.13
  %3375 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.14 unwind label %3392

.preheader1427.14:                                ; preds = %3374
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 42)
          to label %3376 unwind label %3392

3376:                                             ; preds = %.preheader1427.14
  %3377 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.15 unwind label %3392

.preheader1427.15:                                ; preds = %3376
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 45)
          to label %3378 unwind label %3392

3378:                                             ; preds = %.preheader1427.15
  %3379 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.16 unwind label %3392

.preheader1427.16:                                ; preds = %3378
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 48)
          to label %3380 unwind label %3392

3380:                                             ; preds = %.preheader1427.16
  %3381 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.17 unwind label %3392

.preheader1427.17:                                ; preds = %3380
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 51)
          to label %3382 unwind label %3392

3382:                                             ; preds = %.preheader1427.17
  %3383 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.18 unwind label %3392

.preheader1427.18:                                ; preds = %3382
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 54)
          to label %3384 unwind label %3392

3384:                                             ; preds = %.preheader1427.18
  %3385 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.19 unwind label %3392

.preheader1427.19:                                ; preds = %3384
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 57)
          to label %3386 unwind label %3392

3386:                                             ; preds = %.preheader1427.19
  %3387 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.20 unwind label %3392

.preheader1427.20:                                ; preds = %3386
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 60)
          to label %3388 unwind label %3392

3388:                                             ; preds = %.preheader1427.20
  %3389 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1427.21 unwind label %3392

.preheader1427.21:                                ; preds = %3388
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %180) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %180, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 63)
          to label %3390 unwind label %3392

3390:                                             ; preds = %.preheader1427.21
  %3391 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %180, i1 noundef zeroext false)
          to label %.preheader1422.preheader unwind label %3392

.preheader1422.preheader:                         ; preds = %3390
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  br label %.preheader1422

3392:                                             ; preds = %3390, %.preheader1427.21, %3388, %.preheader1427.20, %3386, %.preheader1427.19, %3384, %.preheader1427.18, %3382, %.preheader1427.17, %3380, %.preheader1427.16, %3378, %.preheader1427.15, %3376, %.preheader1427.14, %3374, %.preheader1427.13, %3372, %.preheader1427.12, %3370, %.preheader1427.11, %3368, %.preheader1427.10, %3366, %.preheader1427.9, %3364, %.preheader1427.8, %3362, %.preheader1427.7, %3360, %.preheader1427.6, %3358, %.preheader1427.5, %3356, %.preheader1427.4, %3354, %.preheader1427.3, %3352, %.preheader1427.2, %3350, %.preheader1427.1, %3348, %.preheader1427.preheader
  %3393 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %180) #6
  br label %.loopexit.split-lp1424

.preheader1422:                                   ; preds = %.preheader1422.preheader, %3399
  %.58461766 = phi i32 [ %3400, %3399 ], [ 0, %.preheader1422.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %181) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %181, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef %.58461766)
          to label %3394 unwind label %3397

3394:                                             ; preds = %.preheader1422
  %3395 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %181)
          to label %.invoke2860 unwind label %3397

.invoke2860:                                      ; preds = %3394
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %181) #6
  %.str.4..str.52866 = select i1 %3395, ptr @.str.4, ptr @.str.5
  %3396 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52866)
          to label %3399 unwind label %.loopexit1423

3397:                                             ; preds = %3394, %.preheader1422
  %3398 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %181) #6
  br label %.loopexit.split-lp1424

3399:                                             ; preds = %.invoke2860
  %3400 = add nuw nsw i32 %.58461766, 1
  %exitcond1831.not = icmp eq i32 %3400, 65
  br i1 %exitcond1831.not, label %3401, label %.preheader1422, !llvm.loop !17

3401:                                             ; preds = %3399
  %3402 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3403 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3403:                                             ; preds = %3401
  %3404 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3405 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3405:                                             ; preds = %3403
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %182) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %182, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 2)
          to label %3406 unwind label %3430

3406:                                             ; preds = %3405
  %3407 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3404, ptr noundef nonnull align 8 dereferenceable(32) %182)
          to label %3408 unwind label %3432

3408:                                             ; preds = %3406
  %3409 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3407, ptr noundef nonnull @.str.3)
          to label %3410 unwind label %3432

3410:                                             ; preds = %3408
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %182) #6
  %3411 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %174, ptr noundef nonnull @.str.8)
          to label %3412 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3412:                                             ; preds = %3410
  %3413 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3414 unwind label %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3414:                                             ; preds = %3412
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %183) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %183, ptr noundef nonnull align 8 dereferenceable(48) %174, i32 noundef 2)
          to label %3415 unwind label %3435

3415:                                             ; preds = %3414
  %3416 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3413, ptr noundef nonnull align 8 dereferenceable(32) %183)
          to label %3417 unwind label %3437

3417:                                             ; preds = %3415
  %3418 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3416, ptr noundef nonnull @.str.3)
          to label %3419 unwind label %3437

3419:                                             ; preds = %3417
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %183) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %183) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %174) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %174) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %172) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %172) #6
  %3420 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %3421 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3420, ptr noundef nonnull @.str.2)
  %3422 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3421, i32 noundef 65)
  %3423 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3422, ptr noundef nonnull @.str.2)
  %3424 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3423, i32 noundef 65)
  %3425 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3424, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %184) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %185) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %185, i32 noundef 65, i32 noundef 65)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %184, ptr noundef nonnull align 4 dereferenceable(20) %185, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %185) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %186) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 0, ptr noundef null)
          to label %.preheader1418 unwind label %3441

.preheader1418:                                   ; preds = %3419, %3445
  %.08351767 = phi i32 [ %3446, %3445 ], [ 0, %3419 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %187) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %187, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef %.08351767)
          to label %3426 unwind label %3443

3426:                                             ; preds = %.preheader1418
  %3427 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %187)
          to label %.invoke2870 unwind label %3443

.invoke2870:                                      ; preds = %3426
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %187) #6
  %3428 = select i1 %3427, ptr @.str.4, ptr @.str.5
  %3429 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3428)
          to label %3445 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit

3430:                                             ; preds = %3405
  %3431 = landingpad { ptr, i32 }
          cleanup
  br label %3434

3432:                                             ; preds = %3408, %3406
  %3433 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %182) #6
  br label %3434

3434:                                             ; preds = %3432, %3430
  %.pn1143 = phi { ptr, i32 } [ %3433, %3432 ], [ %3431, %3430 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %182) #6
  br label %.loopexit.split-lp1424

3435:                                             ; preds = %3414
  %3436 = landingpad { ptr, i32 }
          cleanup
  br label %3439

3437:                                             ; preds = %3417, %3415
  %3438 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %183) #6
  br label %3439

3439:                                             ; preds = %3437, %3435
  %.pn1145 = phi { ptr, i32 } [ %3438, %3437 ], [ %3436, %3435 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %183) #6
  br label %.loopexit.split-lp1424

.loopexit.split-lp1424:                           ; preds = %.loopexit1423, %.loopexit.split-lp1424.loopexit.split-lp.loopexit, %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1424.loopexit, %3439, %3434, %3397, %3392, %3342, %3341, %3321, %3316, %3266
  %.pn1228 = phi { ptr, i32 } [ %3267, %3266 ], [ %3317, %3316 ], [ %3322, %3321 ], [ %3343, %3342 ], [ %3393, %3392 ], [ %3398, %3397 ], [ %.pn1145, %3439 ], [ %.pn1143, %3434 ], [ %.pn1141, %3341 ], [ %lpad.loopexit1425, %.loopexit1423 ], [ %lpad.loopexit1428, %.loopexit.split-lp1424.loopexit ], [ %lpad.loopexit1432, %.loopexit.split-lp1424.loopexit.split-lp.loopexit ], [ %lpad.loopexit1436, %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1437, %.loopexit.split-lp1424.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %174) #6
  br label %3440

3440:                                             ; preds = %.loopexit.split-lp1424, %3264
  %.pn1228.pn = phi { ptr, i32 } [ %.pn1228, %.loopexit.split-lp1424 ], [ %3265, %3264 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %174) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %172) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %172) #6
  br label %5024

3441:                                             ; preds = %3419
  %3442 = landingpad { ptr, i32 }
          cleanup
  br label %3617

3443:                                             ; preds = %3426, %.preheader1418
  %3444 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %187) #6
  br label %.loopexit.split-lp1407

.loopexit1406:                                    ; preds = %.invoke2867
  %lpad.loopexit1408 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1407

.loopexit.split-lp1407.loopexit:                  ; preds = %.invoke2868
  %lpad.loopexit1411 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1407

.loopexit.split-lp1407.loopexit.split-lp.loopexit: ; preds = %.invoke2869
  %lpad.loopexit1415 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1407

.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2870
  %lpad.loopexit1419 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1407

.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3589, %3587, %3580, %3578, %3523, %3504, %3502, %3447
  %lpad.loopexit.split-lp1420 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1407

3445:                                             ; preds = %.invoke2870
  %3446 = add nuw nsw i32 %.08351767, 1
  %exitcond1832.not = icmp eq i32 %3446, 65
  br i1 %exitcond1832.not, label %3447, label %.preheader1418, !llvm.loop !18

3447:                                             ; preds = %3445
  %3448 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1417.preheader unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1417.preheader:                         ; preds = %3447
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 0)
          to label %3449 unwind label %3493

3449:                                             ; preds = %.preheader1417.preheader
  %3450 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.1 unwind label %3493

.preheader1417.1:                                 ; preds = %3449
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 3)
          to label %3451 unwind label %3493

3451:                                             ; preds = %.preheader1417.1
  %3452 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.2 unwind label %3493

.preheader1417.2:                                 ; preds = %3451
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 6)
          to label %3453 unwind label %3493

3453:                                             ; preds = %.preheader1417.2
  %3454 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.3 unwind label %3493

.preheader1417.3:                                 ; preds = %3453
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 9)
          to label %3455 unwind label %3493

3455:                                             ; preds = %.preheader1417.3
  %3456 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.4 unwind label %3493

.preheader1417.4:                                 ; preds = %3455
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 12)
          to label %3457 unwind label %3493

3457:                                             ; preds = %.preheader1417.4
  %3458 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.5 unwind label %3493

.preheader1417.5:                                 ; preds = %3457
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 15)
          to label %3459 unwind label %3493

3459:                                             ; preds = %.preheader1417.5
  %3460 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.6 unwind label %3493

.preheader1417.6:                                 ; preds = %3459
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 18)
          to label %3461 unwind label %3493

3461:                                             ; preds = %.preheader1417.6
  %3462 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.7 unwind label %3493

.preheader1417.7:                                 ; preds = %3461
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 21)
          to label %3463 unwind label %3493

3463:                                             ; preds = %.preheader1417.7
  %3464 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.8 unwind label %3493

.preheader1417.8:                                 ; preds = %3463
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 24)
          to label %3465 unwind label %3493

3465:                                             ; preds = %.preheader1417.8
  %3466 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.9 unwind label %3493

.preheader1417.9:                                 ; preds = %3465
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 27)
          to label %3467 unwind label %3493

3467:                                             ; preds = %.preheader1417.9
  %3468 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.10 unwind label %3493

.preheader1417.10:                                ; preds = %3467
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 30)
          to label %3469 unwind label %3493

3469:                                             ; preds = %.preheader1417.10
  %3470 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.11 unwind label %3493

.preheader1417.11:                                ; preds = %3469
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 33)
          to label %3471 unwind label %3493

3471:                                             ; preds = %.preheader1417.11
  %3472 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.12 unwind label %3493

.preheader1417.12:                                ; preds = %3471
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 36)
          to label %3473 unwind label %3493

3473:                                             ; preds = %.preheader1417.12
  %3474 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.13 unwind label %3493

.preheader1417.13:                                ; preds = %3473
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 39)
          to label %3475 unwind label %3493

3475:                                             ; preds = %.preheader1417.13
  %3476 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.14 unwind label %3493

.preheader1417.14:                                ; preds = %3475
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 42)
          to label %3477 unwind label %3493

3477:                                             ; preds = %.preheader1417.14
  %3478 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.15 unwind label %3493

.preheader1417.15:                                ; preds = %3477
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 45)
          to label %3479 unwind label %3493

3479:                                             ; preds = %.preheader1417.15
  %3480 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.16 unwind label %3493

.preheader1417.16:                                ; preds = %3479
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 48)
          to label %3481 unwind label %3493

3481:                                             ; preds = %.preheader1417.16
  %3482 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.17 unwind label %3493

.preheader1417.17:                                ; preds = %3481
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 51)
          to label %3483 unwind label %3493

3483:                                             ; preds = %.preheader1417.17
  %3484 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.18 unwind label %3493

.preheader1417.18:                                ; preds = %3483
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 54)
          to label %3485 unwind label %3493

3485:                                             ; preds = %.preheader1417.18
  %3486 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.19 unwind label %3493

.preheader1417.19:                                ; preds = %3485
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 57)
          to label %3487 unwind label %3493

3487:                                             ; preds = %.preheader1417.19
  %3488 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.20 unwind label %3493

.preheader1417.20:                                ; preds = %3487
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 60)
          to label %3489 unwind label %3493

3489:                                             ; preds = %.preheader1417.20
  %3490 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1417.21 unwind label %3493

.preheader1417.21:                                ; preds = %3489
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %188) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %188, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 63)
          to label %3491 unwind label %3493

3491:                                             ; preds = %.preheader1417.21
  %3492 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %188, i1 noundef zeroext true)
          to label %.preheader1414.preheader unwind label %3493

.preheader1414.preheader:                         ; preds = %3491
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  br label %.preheader1414

3493:                                             ; preds = %3491, %.preheader1417.21, %3489, %.preheader1417.20, %3487, %.preheader1417.19, %3485, %.preheader1417.18, %3483, %.preheader1417.17, %3481, %.preheader1417.16, %3479, %.preheader1417.15, %3477, %.preheader1417.14, %3475, %.preheader1417.13, %3473, %.preheader1417.12, %3471, %.preheader1417.11, %3469, %.preheader1417.10, %3467, %.preheader1417.9, %3465, %.preheader1417.8, %3463, %.preheader1417.7, %3461, %.preheader1417.6, %3459, %.preheader1417.5, %3457, %.preheader1417.4, %3455, %.preheader1417.3, %3453, %.preheader1417.2, %3451, %.preheader1417.1, %3449, %.preheader1417.preheader
  %3494 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %188) #6
  br label %.loopexit.split-lp1407

.preheader1414:                                   ; preds = %.preheader1414.preheader, %3500
  %.28371769 = phi i32 [ %3501, %3500 ], [ 0, %.preheader1414.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %189) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %189, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef %.28371769)
          to label %3495 unwind label %3498

3495:                                             ; preds = %.preheader1414
  %3496 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %189)
          to label %.invoke2869 unwind label %3498

.invoke2869:                                      ; preds = %3495
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %189) #6
  %.str.4..str.52871 = select i1 %3496, ptr @.str.4, ptr @.str.5
  %3497 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52871)
          to label %3500 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit

3498:                                             ; preds = %3495, %.preheader1414
  %3499 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %189) #6
  br label %.loopexit.split-lp1407

3500:                                             ; preds = %.invoke2869
  %3501 = add nuw nsw i32 %.28371769, 1
  %exitcond1833.not = icmp eq i32 %3501, 65
  br i1 %exitcond1833.not, label %3502, label %.preheader1414, !llvm.loop !19

3502:                                             ; preds = %3500
  %3503 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3504 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3504:                                             ; preds = %3502
  %3505 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 0)
          to label %3506 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3506:                                             ; preds = %3504
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %190) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %190, ptr noundef nonnull align 8 dereferenceable(48) %186)
          to label %3507 unwind label %3514

3507:                                             ; preds = %3506
  %3508 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %186, ptr noundef nonnull align 8 dereferenceable(48) %190)
          to label %3509 unwind label %3516

3509:                                             ; preds = %3507
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %190) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %190) #6
  br label %3510

3510:                                             ; preds = %3509, %3521
  %.38381770 = phi i32 [ 0, %3509 ], [ %3522, %3521 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %191) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %191, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef %.38381770)
          to label %3511 unwind label %3519

3511:                                             ; preds = %3510
  %3512 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %191)
          to label %.invoke2868 unwind label %3519

.invoke2868:                                      ; preds = %3511
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %191) #6
  %.str.4..str.52872 = select i1 %3512, ptr @.str.4, ptr @.str.5
  %3513 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52872)
          to label %3521 unwind label %.loopexit.split-lp1407.loopexit

3514:                                             ; preds = %3506
  %3515 = landingpad { ptr, i32 }
          cleanup
  br label %3518

3516:                                             ; preds = %3507
  %3517 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %190) #6
  br label %3518

3518:                                             ; preds = %3516, %3514
  %.pn1147 = phi { ptr, i32 } [ %3517, %3516 ], [ %3515, %3514 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %190) #6
  br label %.loopexit.split-lp1407

3519:                                             ; preds = %3511, %3510
  %3520 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %191) #6
  br label %.loopexit.split-lp1407

3521:                                             ; preds = %.invoke2868
  %3522 = add nuw nsw i32 %.38381770, 1
  %exitcond1834.not = icmp eq i32 %3522, 65
  br i1 %exitcond1834.not, label %3523, label %3510, !llvm.loop !20

3523:                                             ; preds = %3521
  %3524 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1410.preheader unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1410.preheader:                         ; preds = %3523
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 0)
          to label %3525 unwind label %3569

3525:                                             ; preds = %.preheader1410.preheader
  %3526 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.1 unwind label %3569

.preheader1410.1:                                 ; preds = %3525
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 3)
          to label %3527 unwind label %3569

3527:                                             ; preds = %.preheader1410.1
  %3528 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.2 unwind label %3569

.preheader1410.2:                                 ; preds = %3527
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 6)
          to label %3529 unwind label %3569

3529:                                             ; preds = %.preheader1410.2
  %3530 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.3 unwind label %3569

.preheader1410.3:                                 ; preds = %3529
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 9)
          to label %3531 unwind label %3569

3531:                                             ; preds = %.preheader1410.3
  %3532 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.4 unwind label %3569

.preheader1410.4:                                 ; preds = %3531
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 12)
          to label %3533 unwind label %3569

3533:                                             ; preds = %.preheader1410.4
  %3534 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.5 unwind label %3569

.preheader1410.5:                                 ; preds = %3533
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 15)
          to label %3535 unwind label %3569

3535:                                             ; preds = %.preheader1410.5
  %3536 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.6 unwind label %3569

.preheader1410.6:                                 ; preds = %3535
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 18)
          to label %3537 unwind label %3569

3537:                                             ; preds = %.preheader1410.6
  %3538 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.7 unwind label %3569

.preheader1410.7:                                 ; preds = %3537
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 21)
          to label %3539 unwind label %3569

3539:                                             ; preds = %.preheader1410.7
  %3540 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.8 unwind label %3569

.preheader1410.8:                                 ; preds = %3539
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 24)
          to label %3541 unwind label %3569

3541:                                             ; preds = %.preheader1410.8
  %3542 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.9 unwind label %3569

.preheader1410.9:                                 ; preds = %3541
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 27)
          to label %3543 unwind label %3569

3543:                                             ; preds = %.preheader1410.9
  %3544 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.10 unwind label %3569

.preheader1410.10:                                ; preds = %3543
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 30)
          to label %3545 unwind label %3569

3545:                                             ; preds = %.preheader1410.10
  %3546 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.11 unwind label %3569

.preheader1410.11:                                ; preds = %3545
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 33)
          to label %3547 unwind label %3569

3547:                                             ; preds = %.preheader1410.11
  %3548 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.12 unwind label %3569

.preheader1410.12:                                ; preds = %3547
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 36)
          to label %3549 unwind label %3569

3549:                                             ; preds = %.preheader1410.12
  %3550 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.13 unwind label %3569

.preheader1410.13:                                ; preds = %3549
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 39)
          to label %3551 unwind label %3569

3551:                                             ; preds = %.preheader1410.13
  %3552 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.14 unwind label %3569

.preheader1410.14:                                ; preds = %3551
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 42)
          to label %3553 unwind label %3569

3553:                                             ; preds = %.preheader1410.14
  %3554 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.15 unwind label %3569

.preheader1410.15:                                ; preds = %3553
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 45)
          to label %3555 unwind label %3569

3555:                                             ; preds = %.preheader1410.15
  %3556 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.16 unwind label %3569

.preheader1410.16:                                ; preds = %3555
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 48)
          to label %3557 unwind label %3569

3557:                                             ; preds = %.preheader1410.16
  %3558 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.17 unwind label %3569

.preheader1410.17:                                ; preds = %3557
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 51)
          to label %3559 unwind label %3569

3559:                                             ; preds = %.preheader1410.17
  %3560 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.18 unwind label %3569

.preheader1410.18:                                ; preds = %3559
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 54)
          to label %3561 unwind label %3569

3561:                                             ; preds = %.preheader1410.18
  %3562 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.19 unwind label %3569

.preheader1410.19:                                ; preds = %3561
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 57)
          to label %3563 unwind label %3569

3563:                                             ; preds = %.preheader1410.19
  %3564 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.20 unwind label %3569

.preheader1410.20:                                ; preds = %3563
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 60)
          to label %3565 unwind label %3569

3565:                                             ; preds = %.preheader1410.20
  %3566 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1410.21 unwind label %3569

.preheader1410.21:                                ; preds = %3565
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %192) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %192, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 63)
          to label %3567 unwind label %3569

3567:                                             ; preds = %.preheader1410.21
  %3568 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %192, i1 noundef zeroext false)
          to label %.preheader1405.preheader unwind label %3569

.preheader1405.preheader:                         ; preds = %3567
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  br label %.preheader1405

3569:                                             ; preds = %3567, %.preheader1410.21, %3565, %.preheader1410.20, %3563, %.preheader1410.19, %3561, %.preheader1410.18, %3559, %.preheader1410.17, %3557, %.preheader1410.16, %3555, %.preheader1410.15, %3553, %.preheader1410.14, %3551, %.preheader1410.13, %3549, %.preheader1410.12, %3547, %.preheader1410.11, %3545, %.preheader1410.10, %3543, %.preheader1410.9, %3541, %.preheader1410.8, %3539, %.preheader1410.7, %3537, %.preheader1410.6, %3535, %.preheader1410.5, %3533, %.preheader1410.4, %3531, %.preheader1410.3, %3529, %.preheader1410.2, %3527, %.preheader1410.1, %3525, %.preheader1410.preheader
  %3570 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %192) #6
  br label %.loopexit.split-lp1407

.preheader1405:                                   ; preds = %.preheader1405.preheader, %3576
  %.58401772 = phi i32 [ %3577, %3576 ], [ 0, %.preheader1405.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %193) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %193, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef %.58401772)
          to label %3571 unwind label %3574

3571:                                             ; preds = %.preheader1405
  %3572 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %193)
          to label %.invoke2867 unwind label %3574

.invoke2867:                                      ; preds = %3571
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %193) #6
  %.str.4..str.52873 = select i1 %3572, ptr @.str.4, ptr @.str.5
  %3573 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52873)
          to label %3576 unwind label %.loopexit1406

3574:                                             ; preds = %3571, %.preheader1405
  %3575 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %193) #6
  br label %.loopexit.split-lp1407

3576:                                             ; preds = %.invoke2867
  %3577 = add nuw nsw i32 %.58401772, 1
  %exitcond1835.not = icmp eq i32 %3577, 65
  br i1 %exitcond1835.not, label %3578, label %.preheader1405, !llvm.loop !21

3578:                                             ; preds = %3576
  %3579 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3580 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3580:                                             ; preds = %3578
  %3581 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3582 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3582:                                             ; preds = %3580
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %194) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %194, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 2)
          to label %3583 unwind label %3607

3583:                                             ; preds = %3582
  %3584 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3581, ptr noundef nonnull align 8 dereferenceable(32) %194)
          to label %3585 unwind label %3609

3585:                                             ; preds = %3583
  %3586 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3584, ptr noundef nonnull @.str.3)
          to label %3587 unwind label %3609

3587:                                             ; preds = %3585
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %194) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %194) #6
  %3588 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %186, ptr noundef nonnull @.str.8)
          to label %3589 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3589:                                             ; preds = %3587
  %3590 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3591 unwind label %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3591:                                             ; preds = %3589
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %195) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %195, ptr noundef nonnull align 8 dereferenceable(48) %186, i32 noundef 2)
          to label %3592 unwind label %3612

3592:                                             ; preds = %3591
  %3593 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3590, ptr noundef nonnull align 8 dereferenceable(32) %195)
          to label %3594 unwind label %3614

3594:                                             ; preds = %3592
  %3595 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3593, ptr noundef nonnull @.str.3)
          to label %3596 unwind label %3614

3596:                                             ; preds = %3594
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %195) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %195) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %186) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %186) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %184) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %184) #6
  %3597 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %3598 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3597, ptr noundef nonnull @.str.2)
  %3599 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3598, i32 noundef 65)
  %3600 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3599, ptr noundef nonnull @.str.2)
  %3601 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3600, i32 noundef 33)
  %3602 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3601, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %196) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %197) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %197, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %196, ptr noundef nonnull align 4 dereferenceable(20) %197, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %197) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %198) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 0, ptr noundef null)
          to label %.preheader1401 unwind label %3618

.preheader1401:                                   ; preds = %3596, %3622
  %.08291773 = phi i32 [ %3623, %3622 ], [ 0, %3596 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %199) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %199, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef %.08291773)
          to label %3603 unwind label %3620

3603:                                             ; preds = %.preheader1401
  %3604 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %199)
          to label %.invoke2877 unwind label %3620

.invoke2877:                                      ; preds = %3603
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %199) #6
  %3605 = select i1 %3604, ptr @.str.4, ptr @.str.5
  %3606 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3605)
          to label %3622 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit

3607:                                             ; preds = %3582
  %3608 = landingpad { ptr, i32 }
          cleanup
  br label %3611

3609:                                             ; preds = %3585, %3583
  %3610 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %194) #6
  br label %3611

3611:                                             ; preds = %3609, %3607
  %.pn1149 = phi { ptr, i32 } [ %3610, %3609 ], [ %3608, %3607 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %194) #6
  br label %.loopexit.split-lp1407

3612:                                             ; preds = %3591
  %3613 = landingpad { ptr, i32 }
          cleanup
  br label %3616

3614:                                             ; preds = %3594, %3592
  %3615 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %195) #6
  br label %3616

3616:                                             ; preds = %3614, %3612
  %.pn1151 = phi { ptr, i32 } [ %3615, %3614 ], [ %3613, %3612 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %195) #6
  br label %.loopexit.split-lp1407

.loopexit.split-lp1407:                           ; preds = %.loopexit1406, %.loopexit.split-lp1407.loopexit.split-lp.loopexit, %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1407.loopexit, %3616, %3611, %3574, %3569, %3519, %3518, %3498, %3493, %3443
  %.pn1225 = phi { ptr, i32 } [ %3444, %3443 ], [ %3494, %3493 ], [ %3499, %3498 ], [ %3520, %3519 ], [ %3570, %3569 ], [ %3575, %3574 ], [ %.pn1151, %3616 ], [ %.pn1149, %3611 ], [ %.pn1147, %3518 ], [ %lpad.loopexit1408, %.loopexit1406 ], [ %lpad.loopexit1411, %.loopexit.split-lp1407.loopexit ], [ %lpad.loopexit1415, %.loopexit.split-lp1407.loopexit.split-lp.loopexit ], [ %lpad.loopexit1419, %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1420, %.loopexit.split-lp1407.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %186) #6
  br label %3617

3617:                                             ; preds = %.loopexit.split-lp1407, %3441
  %.pn1225.pn = phi { ptr, i32 } [ %.pn1225, %.loopexit.split-lp1407 ], [ %3442, %3441 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %186) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %184) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %184) #6
  br label %5024

3618:                                             ; preds = %3596
  %3619 = landingpad { ptr, i32 }
          cleanup
  br label %3794

3620:                                             ; preds = %3603, %.preheader1401
  %3621 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %199) #6
  br label %.loopexit.split-lp1390

.loopexit1389:                                    ; preds = %.invoke2874
  %lpad.loopexit1391 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1390

.loopexit.split-lp1390.loopexit:                  ; preds = %.invoke2875
  %lpad.loopexit1394 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1390

.loopexit.split-lp1390.loopexit.split-lp.loopexit: ; preds = %.invoke2876
  %lpad.loopexit1398 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1390

.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2877
  %lpad.loopexit1402 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1390

.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3766, %3764, %3757, %3755, %3700, %3681, %3679, %3624
  %lpad.loopexit.split-lp1403 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1390

3622:                                             ; preds = %.invoke2877
  %3623 = add nuw nsw i32 %.08291773, 1
  %exitcond1836.not = icmp eq i32 %3623, 65
  br i1 %exitcond1836.not, label %3624, label %.preheader1401, !llvm.loop !22

3624:                                             ; preds = %3622
  %3625 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1400.preheader unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1400.preheader:                         ; preds = %3624
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 0)
          to label %3626 unwind label %3670

3626:                                             ; preds = %.preheader1400.preheader
  %3627 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.1 unwind label %3670

.preheader1400.1:                                 ; preds = %3626
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 3)
          to label %3628 unwind label %3670

3628:                                             ; preds = %.preheader1400.1
  %3629 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.2 unwind label %3670

.preheader1400.2:                                 ; preds = %3628
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 6)
          to label %3630 unwind label %3670

3630:                                             ; preds = %.preheader1400.2
  %3631 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.3 unwind label %3670

.preheader1400.3:                                 ; preds = %3630
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 9)
          to label %3632 unwind label %3670

3632:                                             ; preds = %.preheader1400.3
  %3633 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.4 unwind label %3670

.preheader1400.4:                                 ; preds = %3632
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 12)
          to label %3634 unwind label %3670

3634:                                             ; preds = %.preheader1400.4
  %3635 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.5 unwind label %3670

.preheader1400.5:                                 ; preds = %3634
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 15)
          to label %3636 unwind label %3670

3636:                                             ; preds = %.preheader1400.5
  %3637 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.6 unwind label %3670

.preheader1400.6:                                 ; preds = %3636
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 18)
          to label %3638 unwind label %3670

3638:                                             ; preds = %.preheader1400.6
  %3639 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.7 unwind label %3670

.preheader1400.7:                                 ; preds = %3638
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 21)
          to label %3640 unwind label %3670

3640:                                             ; preds = %.preheader1400.7
  %3641 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.8 unwind label %3670

.preheader1400.8:                                 ; preds = %3640
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 24)
          to label %3642 unwind label %3670

3642:                                             ; preds = %.preheader1400.8
  %3643 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.9 unwind label %3670

.preheader1400.9:                                 ; preds = %3642
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 27)
          to label %3644 unwind label %3670

3644:                                             ; preds = %.preheader1400.9
  %3645 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.10 unwind label %3670

.preheader1400.10:                                ; preds = %3644
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 30)
          to label %3646 unwind label %3670

3646:                                             ; preds = %.preheader1400.10
  %3647 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.11 unwind label %3670

.preheader1400.11:                                ; preds = %3646
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 33)
          to label %3648 unwind label %3670

3648:                                             ; preds = %.preheader1400.11
  %3649 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.12 unwind label %3670

.preheader1400.12:                                ; preds = %3648
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 36)
          to label %3650 unwind label %3670

3650:                                             ; preds = %.preheader1400.12
  %3651 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.13 unwind label %3670

.preheader1400.13:                                ; preds = %3650
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 39)
          to label %3652 unwind label %3670

3652:                                             ; preds = %.preheader1400.13
  %3653 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.14 unwind label %3670

.preheader1400.14:                                ; preds = %3652
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 42)
          to label %3654 unwind label %3670

3654:                                             ; preds = %.preheader1400.14
  %3655 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.15 unwind label %3670

.preheader1400.15:                                ; preds = %3654
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 45)
          to label %3656 unwind label %3670

3656:                                             ; preds = %.preheader1400.15
  %3657 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.16 unwind label %3670

.preheader1400.16:                                ; preds = %3656
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 48)
          to label %3658 unwind label %3670

3658:                                             ; preds = %.preheader1400.16
  %3659 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.17 unwind label %3670

.preheader1400.17:                                ; preds = %3658
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 51)
          to label %3660 unwind label %3670

3660:                                             ; preds = %.preheader1400.17
  %3661 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.18 unwind label %3670

.preheader1400.18:                                ; preds = %3660
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 54)
          to label %3662 unwind label %3670

3662:                                             ; preds = %.preheader1400.18
  %3663 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.19 unwind label %3670

.preheader1400.19:                                ; preds = %3662
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 57)
          to label %3664 unwind label %3670

3664:                                             ; preds = %.preheader1400.19
  %3665 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.20 unwind label %3670

.preheader1400.20:                                ; preds = %3664
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 60)
          to label %3666 unwind label %3670

3666:                                             ; preds = %.preheader1400.20
  %3667 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1400.21 unwind label %3670

.preheader1400.21:                                ; preds = %3666
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %200) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %200, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 63)
          to label %3668 unwind label %3670

3668:                                             ; preds = %.preheader1400.21
  %3669 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %200, i1 noundef zeroext true)
          to label %.preheader1397.preheader unwind label %3670

.preheader1397.preheader:                         ; preds = %3668
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  br label %.preheader1397

3670:                                             ; preds = %3668, %.preheader1400.21, %3666, %.preheader1400.20, %3664, %.preheader1400.19, %3662, %.preheader1400.18, %3660, %.preheader1400.17, %3658, %.preheader1400.16, %3656, %.preheader1400.15, %3654, %.preheader1400.14, %3652, %.preheader1400.13, %3650, %.preheader1400.12, %3648, %.preheader1400.11, %3646, %.preheader1400.10, %3644, %.preheader1400.9, %3642, %.preheader1400.8, %3640, %.preheader1400.7, %3638, %.preheader1400.6, %3636, %.preheader1400.5, %3634, %.preheader1400.4, %3632, %.preheader1400.3, %3630, %.preheader1400.2, %3628, %.preheader1400.1, %3626, %.preheader1400.preheader
  %3671 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %200) #6
  br label %.loopexit.split-lp1390

.preheader1397:                                   ; preds = %.preheader1397.preheader, %3677
  %.28311775 = phi i32 [ %3678, %3677 ], [ 0, %.preheader1397.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %201) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %201, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef %.28311775)
          to label %3672 unwind label %3675

3672:                                             ; preds = %.preheader1397
  %3673 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %201)
          to label %.invoke2876 unwind label %3675

.invoke2876:                                      ; preds = %3672
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %201) #6
  %.str.4..str.52878 = select i1 %3673, ptr @.str.4, ptr @.str.5
  %3674 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52878)
          to label %3677 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit

3675:                                             ; preds = %3672, %.preheader1397
  %3676 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %201) #6
  br label %.loopexit.split-lp1390

3677:                                             ; preds = %.invoke2876
  %3678 = add nuw nsw i32 %.28311775, 1
  %exitcond1837.not = icmp eq i32 %3678, 65
  br i1 %exitcond1837.not, label %3679, label %.preheader1397, !llvm.loop !23

3679:                                             ; preds = %3677
  %3680 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3681 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3681:                                             ; preds = %3679
  %3682 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 0)
          to label %3683 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3683:                                             ; preds = %3681
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %202) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %202, ptr noundef nonnull align 8 dereferenceable(48) %198)
          to label %3684 unwind label %3691

3684:                                             ; preds = %3683
  %3685 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %198, ptr noundef nonnull align 8 dereferenceable(48) %202)
          to label %3686 unwind label %3693

3686:                                             ; preds = %3684
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %202) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %202) #6
  br label %3687

3687:                                             ; preds = %3686, %3698
  %.38321776 = phi i32 [ 0, %3686 ], [ %3699, %3698 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %203) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %203, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef %.38321776)
          to label %3688 unwind label %3696

3688:                                             ; preds = %3687
  %3689 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %203)
          to label %.invoke2875 unwind label %3696

.invoke2875:                                      ; preds = %3688
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %203) #6
  %.str.4..str.52879 = select i1 %3689, ptr @.str.4, ptr @.str.5
  %3690 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52879)
          to label %3698 unwind label %.loopexit.split-lp1390.loopexit

3691:                                             ; preds = %3683
  %3692 = landingpad { ptr, i32 }
          cleanup
  br label %3695

3693:                                             ; preds = %3684
  %3694 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %202) #6
  br label %3695

3695:                                             ; preds = %3693, %3691
  %.pn1153 = phi { ptr, i32 } [ %3694, %3693 ], [ %3692, %3691 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %202) #6
  br label %.loopexit.split-lp1390

3696:                                             ; preds = %3688, %3687
  %3697 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %203) #6
  br label %.loopexit.split-lp1390

3698:                                             ; preds = %.invoke2875
  %3699 = add nuw nsw i32 %.38321776, 1
  %exitcond1838.not = icmp eq i32 %3699, 65
  br i1 %exitcond1838.not, label %3700, label %3687, !llvm.loop !24

3700:                                             ; preds = %3698
  %3701 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1393.preheader unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1393.preheader:                         ; preds = %3700
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 0)
          to label %3702 unwind label %3746

3702:                                             ; preds = %.preheader1393.preheader
  %3703 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.1 unwind label %3746

.preheader1393.1:                                 ; preds = %3702
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 3)
          to label %3704 unwind label %3746

3704:                                             ; preds = %.preheader1393.1
  %3705 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.2 unwind label %3746

.preheader1393.2:                                 ; preds = %3704
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 6)
          to label %3706 unwind label %3746

3706:                                             ; preds = %.preheader1393.2
  %3707 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.3 unwind label %3746

.preheader1393.3:                                 ; preds = %3706
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 9)
          to label %3708 unwind label %3746

3708:                                             ; preds = %.preheader1393.3
  %3709 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.4 unwind label %3746

.preheader1393.4:                                 ; preds = %3708
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 12)
          to label %3710 unwind label %3746

3710:                                             ; preds = %.preheader1393.4
  %3711 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.5 unwind label %3746

.preheader1393.5:                                 ; preds = %3710
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 15)
          to label %3712 unwind label %3746

3712:                                             ; preds = %.preheader1393.5
  %3713 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.6 unwind label %3746

.preheader1393.6:                                 ; preds = %3712
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 18)
          to label %3714 unwind label %3746

3714:                                             ; preds = %.preheader1393.6
  %3715 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.7 unwind label %3746

.preheader1393.7:                                 ; preds = %3714
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 21)
          to label %3716 unwind label %3746

3716:                                             ; preds = %.preheader1393.7
  %3717 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.8 unwind label %3746

.preheader1393.8:                                 ; preds = %3716
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 24)
          to label %3718 unwind label %3746

3718:                                             ; preds = %.preheader1393.8
  %3719 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.9 unwind label %3746

.preheader1393.9:                                 ; preds = %3718
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 27)
          to label %3720 unwind label %3746

3720:                                             ; preds = %.preheader1393.9
  %3721 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.10 unwind label %3746

.preheader1393.10:                                ; preds = %3720
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 30)
          to label %3722 unwind label %3746

3722:                                             ; preds = %.preheader1393.10
  %3723 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.11 unwind label %3746

.preheader1393.11:                                ; preds = %3722
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 33)
          to label %3724 unwind label %3746

3724:                                             ; preds = %.preheader1393.11
  %3725 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.12 unwind label %3746

.preheader1393.12:                                ; preds = %3724
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 36)
          to label %3726 unwind label %3746

3726:                                             ; preds = %.preheader1393.12
  %3727 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.13 unwind label %3746

.preheader1393.13:                                ; preds = %3726
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 39)
          to label %3728 unwind label %3746

3728:                                             ; preds = %.preheader1393.13
  %3729 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.14 unwind label %3746

.preheader1393.14:                                ; preds = %3728
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 42)
          to label %3730 unwind label %3746

3730:                                             ; preds = %.preheader1393.14
  %3731 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.15 unwind label %3746

.preheader1393.15:                                ; preds = %3730
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 45)
          to label %3732 unwind label %3746

3732:                                             ; preds = %.preheader1393.15
  %3733 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.16 unwind label %3746

.preheader1393.16:                                ; preds = %3732
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 48)
          to label %3734 unwind label %3746

3734:                                             ; preds = %.preheader1393.16
  %3735 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.17 unwind label %3746

.preheader1393.17:                                ; preds = %3734
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 51)
          to label %3736 unwind label %3746

3736:                                             ; preds = %.preheader1393.17
  %3737 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.18 unwind label %3746

.preheader1393.18:                                ; preds = %3736
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 54)
          to label %3738 unwind label %3746

3738:                                             ; preds = %.preheader1393.18
  %3739 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.19 unwind label %3746

.preheader1393.19:                                ; preds = %3738
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 57)
          to label %3740 unwind label %3746

3740:                                             ; preds = %.preheader1393.19
  %3741 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.20 unwind label %3746

.preheader1393.20:                                ; preds = %3740
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 60)
          to label %3742 unwind label %3746

3742:                                             ; preds = %.preheader1393.20
  %3743 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1393.21 unwind label %3746

.preheader1393.21:                                ; preds = %3742
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %204) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %204, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 63)
          to label %3744 unwind label %3746

3744:                                             ; preds = %.preheader1393.21
  %3745 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %204, i1 noundef zeroext false)
          to label %.preheader1388.preheader unwind label %3746

.preheader1388.preheader:                         ; preds = %3744
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  br label %.preheader1388

3746:                                             ; preds = %3744, %.preheader1393.21, %3742, %.preheader1393.20, %3740, %.preheader1393.19, %3738, %.preheader1393.18, %3736, %.preheader1393.17, %3734, %.preheader1393.16, %3732, %.preheader1393.15, %3730, %.preheader1393.14, %3728, %.preheader1393.13, %3726, %.preheader1393.12, %3724, %.preheader1393.11, %3722, %.preheader1393.10, %3720, %.preheader1393.9, %3718, %.preheader1393.8, %3716, %.preheader1393.7, %3714, %.preheader1393.6, %3712, %.preheader1393.5, %3710, %.preheader1393.4, %3708, %.preheader1393.3, %3706, %.preheader1393.2, %3704, %.preheader1393.1, %3702, %.preheader1393.preheader
  %3747 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %204) #6
  br label %.loopexit.split-lp1390

.preheader1388:                                   ; preds = %.preheader1388.preheader, %3753
  %.58341778 = phi i32 [ %3754, %3753 ], [ 0, %.preheader1388.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %205) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %205, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef %.58341778)
          to label %3748 unwind label %3751

3748:                                             ; preds = %.preheader1388
  %3749 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %205)
          to label %.invoke2874 unwind label %3751

.invoke2874:                                      ; preds = %3748
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %205) #6
  %.str.4..str.52880 = select i1 %3749, ptr @.str.4, ptr @.str.5
  %3750 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52880)
          to label %3753 unwind label %.loopexit1389

3751:                                             ; preds = %3748, %.preheader1388
  %3752 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %205) #6
  br label %.loopexit.split-lp1390

3753:                                             ; preds = %.invoke2874
  %3754 = add nuw nsw i32 %.58341778, 1
  %exitcond1839.not = icmp eq i32 %3754, 65
  br i1 %exitcond1839.not, label %3755, label %.preheader1388, !llvm.loop !25

3755:                                             ; preds = %3753
  %3756 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3757 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3757:                                             ; preds = %3755
  %3758 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3759 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3759:                                             ; preds = %3757
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %206) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %206, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 2)
          to label %3760 unwind label %3784

3760:                                             ; preds = %3759
  %3761 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3758, ptr noundef nonnull align 8 dereferenceable(32) %206)
          to label %3762 unwind label %3786

3762:                                             ; preds = %3760
  %3763 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3761, ptr noundef nonnull @.str.3)
          to label %3764 unwind label %3786

3764:                                             ; preds = %3762
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %206) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %206) #6
  %3765 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %198, ptr noundef nonnull @.str.8)
          to label %3766 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3766:                                             ; preds = %3764
  %3767 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3768 unwind label %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3768:                                             ; preds = %3766
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %207) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %207, ptr noundef nonnull align 8 dereferenceable(48) %198, i32 noundef 2)
          to label %3769 unwind label %3789

3769:                                             ; preds = %3768
  %3770 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3767, ptr noundef nonnull align 8 dereferenceable(32) %207)
          to label %3771 unwind label %3791

3771:                                             ; preds = %3769
  %3772 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3770, ptr noundef nonnull @.str.3)
          to label %3773 unwind label %3791

3773:                                             ; preds = %3771
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %207) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %207) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %198) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %198) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %196) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %196) #6
  %3774 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %3775 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3774, ptr noundef nonnull @.str.2)
  %3776 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3775, i32 noundef 65)
  %3777 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3776, ptr noundef nonnull @.str.2)
  %3778 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3777, i32 noundef 33)
  %3779 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3778, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %208) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %209) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %209, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %208, ptr noundef nonnull align 4 dereferenceable(20) %209, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %209) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %210) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 0, ptr noundef null)
          to label %.preheader1384 unwind label %3795

.preheader1384:                                   ; preds = %3773, %3799
  %.08231779 = phi i32 [ %3800, %3799 ], [ 0, %3773 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %211) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %211, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef %.08231779)
          to label %3780 unwind label %3797

3780:                                             ; preds = %.preheader1384
  %3781 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %211)
          to label %.invoke2884 unwind label %3797

.invoke2884:                                      ; preds = %3780
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %211) #6
  %3782 = select i1 %3781, ptr @.str.4, ptr @.str.5
  %3783 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3782)
          to label %3799 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit

3784:                                             ; preds = %3759
  %3785 = landingpad { ptr, i32 }
          cleanup
  br label %3788

3786:                                             ; preds = %3762, %3760
  %3787 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %206) #6
  br label %3788

3788:                                             ; preds = %3786, %3784
  %.pn1155 = phi { ptr, i32 } [ %3787, %3786 ], [ %3785, %3784 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %206) #6
  br label %.loopexit.split-lp1390

3789:                                             ; preds = %3768
  %3790 = landingpad { ptr, i32 }
          cleanup
  br label %3793

3791:                                             ; preds = %3771, %3769
  %3792 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %207) #6
  br label %3793

3793:                                             ; preds = %3791, %3789
  %.pn1157 = phi { ptr, i32 } [ %3792, %3791 ], [ %3790, %3789 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %207) #6
  br label %.loopexit.split-lp1390

.loopexit.split-lp1390:                           ; preds = %.loopexit1389, %.loopexit.split-lp1390.loopexit.split-lp.loopexit, %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1390.loopexit, %3793, %3788, %3751, %3746, %3696, %3695, %3675, %3670, %3620
  %.pn1222 = phi { ptr, i32 } [ %3621, %3620 ], [ %3671, %3670 ], [ %3676, %3675 ], [ %3697, %3696 ], [ %3747, %3746 ], [ %3752, %3751 ], [ %.pn1157, %3793 ], [ %.pn1155, %3788 ], [ %.pn1153, %3695 ], [ %lpad.loopexit1391, %.loopexit1389 ], [ %lpad.loopexit1394, %.loopexit.split-lp1390.loopexit ], [ %lpad.loopexit1398, %.loopexit.split-lp1390.loopexit.split-lp.loopexit ], [ %lpad.loopexit1402, %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1403, %.loopexit.split-lp1390.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %198) #6
  br label %3794

3794:                                             ; preds = %.loopexit.split-lp1390, %3618
  %.pn1222.pn = phi { ptr, i32 } [ %.pn1222, %.loopexit.split-lp1390 ], [ %3619, %3618 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %198) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %196) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %196) #6
  br label %5024

3795:                                             ; preds = %3773
  %3796 = landingpad { ptr, i32 }
          cleanup
  br label %3971

3797:                                             ; preds = %3780, %.preheader1384
  %3798 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %211) #6
  br label %.loopexit.split-lp1373

.loopexit1372:                                    ; preds = %.invoke2881
  %lpad.loopexit1374 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1373

.loopexit.split-lp1373.loopexit:                  ; preds = %.invoke2882
  %lpad.loopexit1377 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1373

.loopexit.split-lp1373.loopexit.split-lp.loopexit: ; preds = %.invoke2883
  %lpad.loopexit1381 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1373

.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2884
  %lpad.loopexit1385 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1373

.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %3943, %3941, %3934, %3932, %3877, %3858, %3856, %3801
  %lpad.loopexit.split-lp1386 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1373

3799:                                             ; preds = %.invoke2884
  %3800 = add nuw nsw i32 %.08231779, 1
  %exitcond1840.not = icmp eq i32 %3800, 65
  br i1 %exitcond1840.not, label %3801, label %.preheader1384, !llvm.loop !26

3801:                                             ; preds = %3799
  %3802 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1383.preheader unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1383.preheader:                         ; preds = %3801
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 0)
          to label %3803 unwind label %3847

3803:                                             ; preds = %.preheader1383.preheader
  %3804 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.1 unwind label %3847

.preheader1383.1:                                 ; preds = %3803
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 3)
          to label %3805 unwind label %3847

3805:                                             ; preds = %.preheader1383.1
  %3806 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.2 unwind label %3847

.preheader1383.2:                                 ; preds = %3805
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 6)
          to label %3807 unwind label %3847

3807:                                             ; preds = %.preheader1383.2
  %3808 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.3 unwind label %3847

.preheader1383.3:                                 ; preds = %3807
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 9)
          to label %3809 unwind label %3847

3809:                                             ; preds = %.preheader1383.3
  %3810 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.4 unwind label %3847

.preheader1383.4:                                 ; preds = %3809
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 12)
          to label %3811 unwind label %3847

3811:                                             ; preds = %.preheader1383.4
  %3812 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.5 unwind label %3847

.preheader1383.5:                                 ; preds = %3811
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 15)
          to label %3813 unwind label %3847

3813:                                             ; preds = %.preheader1383.5
  %3814 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.6 unwind label %3847

.preheader1383.6:                                 ; preds = %3813
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 18)
          to label %3815 unwind label %3847

3815:                                             ; preds = %.preheader1383.6
  %3816 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.7 unwind label %3847

.preheader1383.7:                                 ; preds = %3815
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 21)
          to label %3817 unwind label %3847

3817:                                             ; preds = %.preheader1383.7
  %3818 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.8 unwind label %3847

.preheader1383.8:                                 ; preds = %3817
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 24)
          to label %3819 unwind label %3847

3819:                                             ; preds = %.preheader1383.8
  %3820 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.9 unwind label %3847

.preheader1383.9:                                 ; preds = %3819
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 27)
          to label %3821 unwind label %3847

3821:                                             ; preds = %.preheader1383.9
  %3822 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.10 unwind label %3847

.preheader1383.10:                                ; preds = %3821
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 30)
          to label %3823 unwind label %3847

3823:                                             ; preds = %.preheader1383.10
  %3824 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.11 unwind label %3847

.preheader1383.11:                                ; preds = %3823
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 33)
          to label %3825 unwind label %3847

3825:                                             ; preds = %.preheader1383.11
  %3826 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.12 unwind label %3847

.preheader1383.12:                                ; preds = %3825
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 36)
          to label %3827 unwind label %3847

3827:                                             ; preds = %.preheader1383.12
  %3828 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.13 unwind label %3847

.preheader1383.13:                                ; preds = %3827
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 39)
          to label %3829 unwind label %3847

3829:                                             ; preds = %.preheader1383.13
  %3830 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.14 unwind label %3847

.preheader1383.14:                                ; preds = %3829
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 42)
          to label %3831 unwind label %3847

3831:                                             ; preds = %.preheader1383.14
  %3832 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.15 unwind label %3847

.preheader1383.15:                                ; preds = %3831
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 45)
          to label %3833 unwind label %3847

3833:                                             ; preds = %.preheader1383.15
  %3834 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.16 unwind label %3847

.preheader1383.16:                                ; preds = %3833
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 48)
          to label %3835 unwind label %3847

3835:                                             ; preds = %.preheader1383.16
  %3836 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.17 unwind label %3847

.preheader1383.17:                                ; preds = %3835
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 51)
          to label %3837 unwind label %3847

3837:                                             ; preds = %.preheader1383.17
  %3838 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.18 unwind label %3847

.preheader1383.18:                                ; preds = %3837
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 54)
          to label %3839 unwind label %3847

3839:                                             ; preds = %.preheader1383.18
  %3840 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.19 unwind label %3847

.preheader1383.19:                                ; preds = %3839
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 57)
          to label %3841 unwind label %3847

3841:                                             ; preds = %.preheader1383.19
  %3842 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.20 unwind label %3847

.preheader1383.20:                                ; preds = %3841
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 60)
          to label %3843 unwind label %3847

3843:                                             ; preds = %.preheader1383.20
  %3844 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1383.21 unwind label %3847

.preheader1383.21:                                ; preds = %3843
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %212) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %212, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 63)
          to label %3845 unwind label %3847

3845:                                             ; preds = %.preheader1383.21
  %3846 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %212, i1 noundef zeroext true)
          to label %.preheader1380.preheader unwind label %3847

.preheader1380.preheader:                         ; preds = %3845
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  br label %.preheader1380

3847:                                             ; preds = %3845, %.preheader1383.21, %3843, %.preheader1383.20, %3841, %.preheader1383.19, %3839, %.preheader1383.18, %3837, %.preheader1383.17, %3835, %.preheader1383.16, %3833, %.preheader1383.15, %3831, %.preheader1383.14, %3829, %.preheader1383.13, %3827, %.preheader1383.12, %3825, %.preheader1383.11, %3823, %.preheader1383.10, %3821, %.preheader1383.9, %3819, %.preheader1383.8, %3817, %.preheader1383.7, %3815, %.preheader1383.6, %3813, %.preheader1383.5, %3811, %.preheader1383.4, %3809, %.preheader1383.3, %3807, %.preheader1383.2, %3805, %.preheader1383.1, %3803, %.preheader1383.preheader
  %3848 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %212) #6
  br label %.loopexit.split-lp1373

.preheader1380:                                   ; preds = %.preheader1380.preheader, %3854
  %.28251781 = phi i32 [ %3855, %3854 ], [ 0, %.preheader1380.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %213) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %213, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef %.28251781)
          to label %3849 unwind label %3852

3849:                                             ; preds = %.preheader1380
  %3850 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %213)
          to label %.invoke2883 unwind label %3852

.invoke2883:                                      ; preds = %3849
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %213) #6
  %.str.4..str.52885 = select i1 %3850, ptr @.str.4, ptr @.str.5
  %3851 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52885)
          to label %3854 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit

3852:                                             ; preds = %3849, %.preheader1380
  %3853 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %213) #6
  br label %.loopexit.split-lp1373

3854:                                             ; preds = %.invoke2883
  %3855 = add nuw nsw i32 %.28251781, 1
  %exitcond1841.not = icmp eq i32 %3855, 65
  br i1 %exitcond1841.not, label %3856, label %.preheader1380, !llvm.loop !27

3856:                                             ; preds = %3854
  %3857 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3858 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3858:                                             ; preds = %3856
  %3859 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 0)
          to label %3860 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3860:                                             ; preds = %3858
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %214) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %214, ptr noundef nonnull align 8 dereferenceable(48) %210)
          to label %3861 unwind label %3868

3861:                                             ; preds = %3860
  %3862 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %210, ptr noundef nonnull align 8 dereferenceable(48) %214)
          to label %3863 unwind label %3870

3863:                                             ; preds = %3861
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %214) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %214) #6
  br label %3864

3864:                                             ; preds = %3863, %3875
  %.38261782 = phi i32 [ 0, %3863 ], [ %3876, %3875 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %215) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %215, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef %.38261782)
          to label %3865 unwind label %3873

3865:                                             ; preds = %3864
  %3866 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %215)
          to label %.invoke2882 unwind label %3873

.invoke2882:                                      ; preds = %3865
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %215) #6
  %.str.4..str.52886 = select i1 %3866, ptr @.str.4, ptr @.str.5
  %3867 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52886)
          to label %3875 unwind label %.loopexit.split-lp1373.loopexit

3868:                                             ; preds = %3860
  %3869 = landingpad { ptr, i32 }
          cleanup
  br label %3872

3870:                                             ; preds = %3861
  %3871 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %214) #6
  br label %3872

3872:                                             ; preds = %3870, %3868
  %.pn1159 = phi { ptr, i32 } [ %3871, %3870 ], [ %3869, %3868 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %214) #6
  br label %.loopexit.split-lp1373

3873:                                             ; preds = %3865, %3864
  %3874 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %215) #6
  br label %.loopexit.split-lp1373

3875:                                             ; preds = %.invoke2882
  %3876 = add nuw nsw i32 %.38261782, 1
  %exitcond1842.not = icmp eq i32 %3876, 65
  br i1 %exitcond1842.not, label %3877, label %3864, !llvm.loop !28

3877:                                             ; preds = %3875
  %3878 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1376.preheader unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1376.preheader:                         ; preds = %3877
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 0)
          to label %3879 unwind label %3923

3879:                                             ; preds = %.preheader1376.preheader
  %3880 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.1 unwind label %3923

.preheader1376.1:                                 ; preds = %3879
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 3)
          to label %3881 unwind label %3923

3881:                                             ; preds = %.preheader1376.1
  %3882 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.2 unwind label %3923

.preheader1376.2:                                 ; preds = %3881
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 6)
          to label %3883 unwind label %3923

3883:                                             ; preds = %.preheader1376.2
  %3884 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.3 unwind label %3923

.preheader1376.3:                                 ; preds = %3883
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 9)
          to label %3885 unwind label %3923

3885:                                             ; preds = %.preheader1376.3
  %3886 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.4 unwind label %3923

.preheader1376.4:                                 ; preds = %3885
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 12)
          to label %3887 unwind label %3923

3887:                                             ; preds = %.preheader1376.4
  %3888 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.5 unwind label %3923

.preheader1376.5:                                 ; preds = %3887
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 15)
          to label %3889 unwind label %3923

3889:                                             ; preds = %.preheader1376.5
  %3890 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.6 unwind label %3923

.preheader1376.6:                                 ; preds = %3889
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 18)
          to label %3891 unwind label %3923

3891:                                             ; preds = %.preheader1376.6
  %3892 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.7 unwind label %3923

.preheader1376.7:                                 ; preds = %3891
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 21)
          to label %3893 unwind label %3923

3893:                                             ; preds = %.preheader1376.7
  %3894 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.8 unwind label %3923

.preheader1376.8:                                 ; preds = %3893
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 24)
          to label %3895 unwind label %3923

3895:                                             ; preds = %.preheader1376.8
  %3896 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.9 unwind label %3923

.preheader1376.9:                                 ; preds = %3895
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 27)
          to label %3897 unwind label %3923

3897:                                             ; preds = %.preheader1376.9
  %3898 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.10 unwind label %3923

.preheader1376.10:                                ; preds = %3897
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 30)
          to label %3899 unwind label %3923

3899:                                             ; preds = %.preheader1376.10
  %3900 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.11 unwind label %3923

.preheader1376.11:                                ; preds = %3899
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 33)
          to label %3901 unwind label %3923

3901:                                             ; preds = %.preheader1376.11
  %3902 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.12 unwind label %3923

.preheader1376.12:                                ; preds = %3901
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 36)
          to label %3903 unwind label %3923

3903:                                             ; preds = %.preheader1376.12
  %3904 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.13 unwind label %3923

.preheader1376.13:                                ; preds = %3903
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 39)
          to label %3905 unwind label %3923

3905:                                             ; preds = %.preheader1376.13
  %3906 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.14 unwind label %3923

.preheader1376.14:                                ; preds = %3905
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 42)
          to label %3907 unwind label %3923

3907:                                             ; preds = %.preheader1376.14
  %3908 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.15 unwind label %3923

.preheader1376.15:                                ; preds = %3907
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 45)
          to label %3909 unwind label %3923

3909:                                             ; preds = %.preheader1376.15
  %3910 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.16 unwind label %3923

.preheader1376.16:                                ; preds = %3909
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 48)
          to label %3911 unwind label %3923

3911:                                             ; preds = %.preheader1376.16
  %3912 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.17 unwind label %3923

.preheader1376.17:                                ; preds = %3911
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 51)
          to label %3913 unwind label %3923

3913:                                             ; preds = %.preheader1376.17
  %3914 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.18 unwind label %3923

.preheader1376.18:                                ; preds = %3913
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 54)
          to label %3915 unwind label %3923

3915:                                             ; preds = %.preheader1376.18
  %3916 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.19 unwind label %3923

.preheader1376.19:                                ; preds = %3915
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 57)
          to label %3917 unwind label %3923

3917:                                             ; preds = %.preheader1376.19
  %3918 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.20 unwind label %3923

.preheader1376.20:                                ; preds = %3917
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 60)
          to label %3919 unwind label %3923

3919:                                             ; preds = %.preheader1376.20
  %3920 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1376.21 unwind label %3923

.preheader1376.21:                                ; preds = %3919
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %216) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %216, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 63)
          to label %3921 unwind label %3923

3921:                                             ; preds = %.preheader1376.21
  %3922 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %216, i1 noundef zeroext false)
          to label %.preheader1371.preheader unwind label %3923

.preheader1371.preheader:                         ; preds = %3921
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  br label %.preheader1371

3923:                                             ; preds = %3921, %.preheader1376.21, %3919, %.preheader1376.20, %3917, %.preheader1376.19, %3915, %.preheader1376.18, %3913, %.preheader1376.17, %3911, %.preheader1376.16, %3909, %.preheader1376.15, %3907, %.preheader1376.14, %3905, %.preheader1376.13, %3903, %.preheader1376.12, %3901, %.preheader1376.11, %3899, %.preheader1376.10, %3897, %.preheader1376.9, %3895, %.preheader1376.8, %3893, %.preheader1376.7, %3891, %.preheader1376.6, %3889, %.preheader1376.5, %3887, %.preheader1376.4, %3885, %.preheader1376.3, %3883, %.preheader1376.2, %3881, %.preheader1376.1, %3879, %.preheader1376.preheader
  %3924 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %216) #6
  br label %.loopexit.split-lp1373

.preheader1371:                                   ; preds = %.preheader1371.preheader, %3930
  %.58281784 = phi i32 [ %3931, %3930 ], [ 0, %.preheader1371.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %217) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %217, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef %.58281784)
          to label %3925 unwind label %3928

3925:                                             ; preds = %.preheader1371
  %3926 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %217)
          to label %.invoke2881 unwind label %3928

.invoke2881:                                      ; preds = %3925
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %217) #6
  %.str.4..str.52887 = select i1 %3926, ptr @.str.4, ptr @.str.5
  %3927 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52887)
          to label %3930 unwind label %.loopexit1372

3928:                                             ; preds = %3925, %.preheader1371
  %3929 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %217) #6
  br label %.loopexit.split-lp1373

3930:                                             ; preds = %.invoke2881
  %3931 = add nuw nsw i32 %.58281784, 1
  %exitcond1843.not = icmp eq i32 %3931, 65
  br i1 %exitcond1843.not, label %3932, label %.preheader1371, !llvm.loop !29

3932:                                             ; preds = %3930
  %3933 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %3934 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3934:                                             ; preds = %3932
  %3935 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3936 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3936:                                             ; preds = %3934
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %218) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %218, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 2)
          to label %3937 unwind label %3961

3937:                                             ; preds = %3936
  %3938 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3935, ptr noundef nonnull align 8 dereferenceable(32) %218)
          to label %3939 unwind label %3963

3939:                                             ; preds = %3937
  %3940 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3938, ptr noundef nonnull @.str.3)
          to label %3941 unwind label %3963

3941:                                             ; preds = %3939
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %218) #6
  %3942 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %210, ptr noundef nonnull @.str.8)
          to label %3943 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3943:                                             ; preds = %3941
  %3944 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %3945 unwind label %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

3945:                                             ; preds = %3943
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %219) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %219, ptr noundef nonnull align 8 dereferenceable(48) %210, i32 noundef 2)
          to label %3946 unwind label %3966

3946:                                             ; preds = %3945
  %3947 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %3944, ptr noundef nonnull align 8 dereferenceable(32) %219)
          to label %3948 unwind label %3968

3948:                                             ; preds = %3946
  %3949 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3947, ptr noundef nonnull @.str.3)
          to label %3950 unwind label %3968

3950:                                             ; preds = %3948
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %219) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %219) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %210) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %210) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %208) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %208) #6
  %3951 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %3952 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3951, ptr noundef nonnull @.str.2)
  %3953 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3952, i32 noundef 65)
  %3954 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3953, ptr noundef nonnull @.str.2)
  %3955 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %3954, i32 noundef 33)
  %3956 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %3955, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %220) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %221) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %221, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %220, ptr noundef nonnull align 4 dereferenceable(20) %221, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %221) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %222) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 0, ptr noundef null)
          to label %.preheader1367 unwind label %3972

.preheader1367:                                   ; preds = %3950, %3976
  %.08171785 = phi i32 [ %3977, %3976 ], [ 0, %3950 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %223) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %223, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef %.08171785)
          to label %3957 unwind label %3974

3957:                                             ; preds = %.preheader1367
  %3958 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %223)
          to label %.invoke2891 unwind label %3974

.invoke2891:                                      ; preds = %3957
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %223) #6
  %3959 = select i1 %3958, ptr @.str.4, ptr @.str.5
  %3960 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %3959)
          to label %3976 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit

3961:                                             ; preds = %3936
  %3962 = landingpad { ptr, i32 }
          cleanup
  br label %3965

3963:                                             ; preds = %3939, %3937
  %3964 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #6
  br label %3965

3965:                                             ; preds = %3963, %3961
  %.pn1161 = phi { ptr, i32 } [ %3964, %3963 ], [ %3962, %3961 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %218) #6
  br label %.loopexit.split-lp1373

3966:                                             ; preds = %3945
  %3967 = landingpad { ptr, i32 }
          cleanup
  br label %3970

3968:                                             ; preds = %3948, %3946
  %3969 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %219) #6
  br label %3970

3970:                                             ; preds = %3968, %3966
  %.pn1163 = phi { ptr, i32 } [ %3969, %3968 ], [ %3967, %3966 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %219) #6
  br label %.loopexit.split-lp1373

.loopexit.split-lp1373:                           ; preds = %.loopexit1372, %.loopexit.split-lp1373.loopexit.split-lp.loopexit, %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1373.loopexit, %3970, %3965, %3928, %3923, %3873, %3872, %3852, %3847, %3797
  %.pn1219 = phi { ptr, i32 } [ %3798, %3797 ], [ %3848, %3847 ], [ %3853, %3852 ], [ %3874, %3873 ], [ %3924, %3923 ], [ %3929, %3928 ], [ %.pn1163, %3970 ], [ %.pn1161, %3965 ], [ %.pn1159, %3872 ], [ %lpad.loopexit1374, %.loopexit1372 ], [ %lpad.loopexit1377, %.loopexit.split-lp1373.loopexit ], [ %lpad.loopexit1381, %.loopexit.split-lp1373.loopexit.split-lp.loopexit ], [ %lpad.loopexit1385, %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1386, %.loopexit.split-lp1373.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %210) #6
  br label %3971

3971:                                             ; preds = %.loopexit.split-lp1373, %3795
  %.pn1219.pn = phi { ptr, i32 } [ %.pn1219, %.loopexit.split-lp1373 ], [ %3796, %3795 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %210) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %208) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %208) #6
  br label %5024

3972:                                             ; preds = %3950
  %3973 = landingpad { ptr, i32 }
          cleanup
  br label %4148

3974:                                             ; preds = %3957, %.preheader1367
  %3975 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %223) #6
  br label %.loopexit.split-lp1356

.loopexit1355:                                    ; preds = %.invoke2888
  %lpad.loopexit1357 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1356

.loopexit.split-lp1356.loopexit:                  ; preds = %.invoke2889
  %lpad.loopexit1360 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1356

.loopexit.split-lp1356.loopexit.split-lp.loopexit: ; preds = %.invoke2890
  %lpad.loopexit1364 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1356

.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2891
  %lpad.loopexit1368 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1356

.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %4120, %4118, %4111, %4109, %4054, %4035, %4033, %3978
  %lpad.loopexit.split-lp1369 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1356

3976:                                             ; preds = %.invoke2891
  %3977 = add nuw nsw i32 %.08171785, 1
  %exitcond1844.not = icmp eq i32 %3977, 65
  br i1 %exitcond1844.not, label %3978, label %.preheader1367, !llvm.loop !30

3978:                                             ; preds = %3976
  %3979 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1366.preheader unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1366.preheader:                         ; preds = %3978
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 0)
          to label %3980 unwind label %4024

3980:                                             ; preds = %.preheader1366.preheader
  %3981 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.1 unwind label %4024

.preheader1366.1:                                 ; preds = %3980
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 3)
          to label %3982 unwind label %4024

3982:                                             ; preds = %.preheader1366.1
  %3983 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.2 unwind label %4024

.preheader1366.2:                                 ; preds = %3982
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 6)
          to label %3984 unwind label %4024

3984:                                             ; preds = %.preheader1366.2
  %3985 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.3 unwind label %4024

.preheader1366.3:                                 ; preds = %3984
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 9)
          to label %3986 unwind label %4024

3986:                                             ; preds = %.preheader1366.3
  %3987 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.4 unwind label %4024

.preheader1366.4:                                 ; preds = %3986
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 12)
          to label %3988 unwind label %4024

3988:                                             ; preds = %.preheader1366.4
  %3989 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.5 unwind label %4024

.preheader1366.5:                                 ; preds = %3988
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 15)
          to label %3990 unwind label %4024

3990:                                             ; preds = %.preheader1366.5
  %3991 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.6 unwind label %4024

.preheader1366.6:                                 ; preds = %3990
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 18)
          to label %3992 unwind label %4024

3992:                                             ; preds = %.preheader1366.6
  %3993 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.7 unwind label %4024

.preheader1366.7:                                 ; preds = %3992
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 21)
          to label %3994 unwind label %4024

3994:                                             ; preds = %.preheader1366.7
  %3995 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.8 unwind label %4024

.preheader1366.8:                                 ; preds = %3994
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 24)
          to label %3996 unwind label %4024

3996:                                             ; preds = %.preheader1366.8
  %3997 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.9 unwind label %4024

.preheader1366.9:                                 ; preds = %3996
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 27)
          to label %3998 unwind label %4024

3998:                                             ; preds = %.preheader1366.9
  %3999 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.10 unwind label %4024

.preheader1366.10:                                ; preds = %3998
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 30)
          to label %4000 unwind label %4024

4000:                                             ; preds = %.preheader1366.10
  %4001 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.11 unwind label %4024

.preheader1366.11:                                ; preds = %4000
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 33)
          to label %4002 unwind label %4024

4002:                                             ; preds = %.preheader1366.11
  %4003 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.12 unwind label %4024

.preheader1366.12:                                ; preds = %4002
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 36)
          to label %4004 unwind label %4024

4004:                                             ; preds = %.preheader1366.12
  %4005 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.13 unwind label %4024

.preheader1366.13:                                ; preds = %4004
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 39)
          to label %4006 unwind label %4024

4006:                                             ; preds = %.preheader1366.13
  %4007 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.14 unwind label %4024

.preheader1366.14:                                ; preds = %4006
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 42)
          to label %4008 unwind label %4024

4008:                                             ; preds = %.preheader1366.14
  %4009 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.15 unwind label %4024

.preheader1366.15:                                ; preds = %4008
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 45)
          to label %4010 unwind label %4024

4010:                                             ; preds = %.preheader1366.15
  %4011 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.16 unwind label %4024

.preheader1366.16:                                ; preds = %4010
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 48)
          to label %4012 unwind label %4024

4012:                                             ; preds = %.preheader1366.16
  %4013 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.17 unwind label %4024

.preheader1366.17:                                ; preds = %4012
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 51)
          to label %4014 unwind label %4024

4014:                                             ; preds = %.preheader1366.17
  %4015 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.18 unwind label %4024

.preheader1366.18:                                ; preds = %4014
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 54)
          to label %4016 unwind label %4024

4016:                                             ; preds = %.preheader1366.18
  %4017 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.19 unwind label %4024

.preheader1366.19:                                ; preds = %4016
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 57)
          to label %4018 unwind label %4024

4018:                                             ; preds = %.preheader1366.19
  %4019 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.20 unwind label %4024

.preheader1366.20:                                ; preds = %4018
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 60)
          to label %4020 unwind label %4024

4020:                                             ; preds = %.preheader1366.20
  %4021 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1366.21 unwind label %4024

.preheader1366.21:                                ; preds = %4020
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %224) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %224, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 63)
          to label %4022 unwind label %4024

4022:                                             ; preds = %.preheader1366.21
  %4023 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %224, i1 noundef zeroext true)
          to label %.preheader1363.preheader unwind label %4024

.preheader1363.preheader:                         ; preds = %4022
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  br label %.preheader1363

4024:                                             ; preds = %4022, %.preheader1366.21, %4020, %.preheader1366.20, %4018, %.preheader1366.19, %4016, %.preheader1366.18, %4014, %.preheader1366.17, %4012, %.preheader1366.16, %4010, %.preheader1366.15, %4008, %.preheader1366.14, %4006, %.preheader1366.13, %4004, %.preheader1366.12, %4002, %.preheader1366.11, %4000, %.preheader1366.10, %3998, %.preheader1366.9, %3996, %.preheader1366.8, %3994, %.preheader1366.7, %3992, %.preheader1366.6, %3990, %.preheader1366.5, %3988, %.preheader1366.4, %3986, %.preheader1366.3, %3984, %.preheader1366.2, %3982, %.preheader1366.1, %3980, %.preheader1366.preheader
  %4025 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %224) #6
  br label %.loopexit.split-lp1356

.preheader1363:                                   ; preds = %.preheader1363.preheader, %4031
  %.28191787 = phi i32 [ %4032, %4031 ], [ 0, %.preheader1363.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %225) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %225, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef %.28191787)
          to label %4026 unwind label %4029

4026:                                             ; preds = %.preheader1363
  %4027 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %225)
          to label %.invoke2890 unwind label %4029

.invoke2890:                                      ; preds = %4026
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %225) #6
  %.str.4..str.52892 = select i1 %4027, ptr @.str.4, ptr @.str.5
  %4028 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52892)
          to label %4031 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit

4029:                                             ; preds = %4026, %.preheader1363
  %4030 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %225) #6
  br label %.loopexit.split-lp1356

4031:                                             ; preds = %.invoke2890
  %4032 = add nuw nsw i32 %.28191787, 1
  %exitcond1845.not = icmp eq i32 %4032, 65
  br i1 %exitcond1845.not, label %4033, label %.preheader1363, !llvm.loop !31

4033:                                             ; preds = %4031
  %4034 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4035 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4035:                                             ; preds = %4033
  %4036 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 0)
          to label %4037 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4037:                                             ; preds = %4035
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %226) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %226, ptr noundef nonnull align 8 dereferenceable(48) %222)
          to label %4038 unwind label %4045

4038:                                             ; preds = %4037
  %4039 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %222, ptr noundef nonnull align 8 dereferenceable(48) %226)
          to label %4040 unwind label %4047

4040:                                             ; preds = %4038
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %226) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %226) #6
  br label %4041

4041:                                             ; preds = %4040, %4052
  %.38201788 = phi i32 [ 0, %4040 ], [ %4053, %4052 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %227) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %227, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef %.38201788)
          to label %4042 unwind label %4050

4042:                                             ; preds = %4041
  %4043 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %227)
          to label %.invoke2889 unwind label %4050

.invoke2889:                                      ; preds = %4042
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %227) #6
  %.str.4..str.52893 = select i1 %4043, ptr @.str.4, ptr @.str.5
  %4044 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52893)
          to label %4052 unwind label %.loopexit.split-lp1356.loopexit

4045:                                             ; preds = %4037
  %4046 = landingpad { ptr, i32 }
          cleanup
  br label %4049

4047:                                             ; preds = %4038
  %4048 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %226) #6
  br label %4049

4049:                                             ; preds = %4047, %4045
  %.pn1165 = phi { ptr, i32 } [ %4048, %4047 ], [ %4046, %4045 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %226) #6
  br label %.loopexit.split-lp1356

4050:                                             ; preds = %4042, %4041
  %4051 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %227) #6
  br label %.loopexit.split-lp1356

4052:                                             ; preds = %.invoke2889
  %4053 = add nuw nsw i32 %.38201788, 1
  %exitcond1846.not = icmp eq i32 %4053, 65
  br i1 %exitcond1846.not, label %4054, label %4041, !llvm.loop !32

4054:                                             ; preds = %4052
  %4055 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1359.preheader unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1359.preheader:                         ; preds = %4054
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 0)
          to label %4056 unwind label %4100

4056:                                             ; preds = %.preheader1359.preheader
  %4057 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.1 unwind label %4100

.preheader1359.1:                                 ; preds = %4056
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 3)
          to label %4058 unwind label %4100

4058:                                             ; preds = %.preheader1359.1
  %4059 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.2 unwind label %4100

.preheader1359.2:                                 ; preds = %4058
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 6)
          to label %4060 unwind label %4100

4060:                                             ; preds = %.preheader1359.2
  %4061 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.3 unwind label %4100

.preheader1359.3:                                 ; preds = %4060
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 9)
          to label %4062 unwind label %4100

4062:                                             ; preds = %.preheader1359.3
  %4063 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.4 unwind label %4100

.preheader1359.4:                                 ; preds = %4062
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 12)
          to label %4064 unwind label %4100

4064:                                             ; preds = %.preheader1359.4
  %4065 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.5 unwind label %4100

.preheader1359.5:                                 ; preds = %4064
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 15)
          to label %4066 unwind label %4100

4066:                                             ; preds = %.preheader1359.5
  %4067 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.6 unwind label %4100

.preheader1359.6:                                 ; preds = %4066
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 18)
          to label %4068 unwind label %4100

4068:                                             ; preds = %.preheader1359.6
  %4069 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.7 unwind label %4100

.preheader1359.7:                                 ; preds = %4068
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 21)
          to label %4070 unwind label %4100

4070:                                             ; preds = %.preheader1359.7
  %4071 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.8 unwind label %4100

.preheader1359.8:                                 ; preds = %4070
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 24)
          to label %4072 unwind label %4100

4072:                                             ; preds = %.preheader1359.8
  %4073 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.9 unwind label %4100

.preheader1359.9:                                 ; preds = %4072
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 27)
          to label %4074 unwind label %4100

4074:                                             ; preds = %.preheader1359.9
  %4075 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.10 unwind label %4100

.preheader1359.10:                                ; preds = %4074
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 30)
          to label %4076 unwind label %4100

4076:                                             ; preds = %.preheader1359.10
  %4077 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.11 unwind label %4100

.preheader1359.11:                                ; preds = %4076
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 33)
          to label %4078 unwind label %4100

4078:                                             ; preds = %.preheader1359.11
  %4079 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.12 unwind label %4100

.preheader1359.12:                                ; preds = %4078
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 36)
          to label %4080 unwind label %4100

4080:                                             ; preds = %.preheader1359.12
  %4081 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.13 unwind label %4100

.preheader1359.13:                                ; preds = %4080
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 39)
          to label %4082 unwind label %4100

4082:                                             ; preds = %.preheader1359.13
  %4083 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.14 unwind label %4100

.preheader1359.14:                                ; preds = %4082
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 42)
          to label %4084 unwind label %4100

4084:                                             ; preds = %.preheader1359.14
  %4085 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.15 unwind label %4100

.preheader1359.15:                                ; preds = %4084
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 45)
          to label %4086 unwind label %4100

4086:                                             ; preds = %.preheader1359.15
  %4087 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.16 unwind label %4100

.preheader1359.16:                                ; preds = %4086
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 48)
          to label %4088 unwind label %4100

4088:                                             ; preds = %.preheader1359.16
  %4089 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.17 unwind label %4100

.preheader1359.17:                                ; preds = %4088
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 51)
          to label %4090 unwind label %4100

4090:                                             ; preds = %.preheader1359.17
  %4091 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.18 unwind label %4100

.preheader1359.18:                                ; preds = %4090
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 54)
          to label %4092 unwind label %4100

4092:                                             ; preds = %.preheader1359.18
  %4093 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.19 unwind label %4100

.preheader1359.19:                                ; preds = %4092
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 57)
          to label %4094 unwind label %4100

4094:                                             ; preds = %.preheader1359.19
  %4095 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.20 unwind label %4100

.preheader1359.20:                                ; preds = %4094
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 60)
          to label %4096 unwind label %4100

4096:                                             ; preds = %.preheader1359.20
  %4097 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1359.21 unwind label %4100

.preheader1359.21:                                ; preds = %4096
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %228) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %228, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 63)
          to label %4098 unwind label %4100

4098:                                             ; preds = %.preheader1359.21
  %4099 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %228, i1 noundef zeroext false)
          to label %.preheader1354.preheader unwind label %4100

.preheader1354.preheader:                         ; preds = %4098
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  br label %.preheader1354

4100:                                             ; preds = %4098, %.preheader1359.21, %4096, %.preheader1359.20, %4094, %.preheader1359.19, %4092, %.preheader1359.18, %4090, %.preheader1359.17, %4088, %.preheader1359.16, %4086, %.preheader1359.15, %4084, %.preheader1359.14, %4082, %.preheader1359.13, %4080, %.preheader1359.12, %4078, %.preheader1359.11, %4076, %.preheader1359.10, %4074, %.preheader1359.9, %4072, %.preheader1359.8, %4070, %.preheader1359.7, %4068, %.preheader1359.6, %4066, %.preheader1359.5, %4064, %.preheader1359.4, %4062, %.preheader1359.3, %4060, %.preheader1359.2, %4058, %.preheader1359.1, %4056, %.preheader1359.preheader
  %4101 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %228) #6
  br label %.loopexit.split-lp1356

.preheader1354:                                   ; preds = %.preheader1354.preheader, %4107
  %.58221790 = phi i32 [ %4108, %4107 ], [ 0, %.preheader1354.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %229) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %229, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef %.58221790)
          to label %4102 unwind label %4105

4102:                                             ; preds = %.preheader1354
  %4103 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %229)
          to label %.invoke2888 unwind label %4105

.invoke2888:                                      ; preds = %4102
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %229) #6
  %.str.4..str.52894 = select i1 %4103, ptr @.str.4, ptr @.str.5
  %4104 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52894)
          to label %4107 unwind label %.loopexit1355

4105:                                             ; preds = %4102, %.preheader1354
  %4106 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %229) #6
  br label %.loopexit.split-lp1356

4107:                                             ; preds = %.invoke2888
  %4108 = add nuw nsw i32 %.58221790, 1
  %exitcond1847.not = icmp eq i32 %4108, 65
  br i1 %exitcond1847.not, label %4109, label %.preheader1354, !llvm.loop !33

4109:                                             ; preds = %4107
  %4110 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4111 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4111:                                             ; preds = %4109
  %4112 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4113 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4113:                                             ; preds = %4111
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %230) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %230, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 2)
          to label %4114 unwind label %4138

4114:                                             ; preds = %4113
  %4115 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4112, ptr noundef nonnull align 8 dereferenceable(32) %230)
          to label %4116 unwind label %4140

4116:                                             ; preds = %4114
  %4117 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4115, ptr noundef nonnull @.str.3)
          to label %4118 unwind label %4140

4118:                                             ; preds = %4116
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %230) #6
  %4119 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %222, ptr noundef nonnull @.str.8)
          to label %4120 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4120:                                             ; preds = %4118
  %4121 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4122 unwind label %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4122:                                             ; preds = %4120
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %231) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %231, ptr noundef nonnull align 8 dereferenceable(48) %222, i32 noundef 2)
          to label %4123 unwind label %4143

4123:                                             ; preds = %4122
  %4124 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4121, ptr noundef nonnull align 8 dereferenceable(32) %231)
          to label %4125 unwind label %4145

4125:                                             ; preds = %4123
  %4126 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4124, ptr noundef nonnull @.str.3)
          to label %4127 unwind label %4145

4127:                                             ; preds = %4125
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %231) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %231) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %222) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %222) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %220) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %220) #6
  %4128 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %4129 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4128, ptr noundef nonnull @.str.2)
  %4130 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4129, i32 noundef 65)
  %4131 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4130, ptr noundef nonnull @.str.2)
  %4132 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4131, i32 noundef 33)
  %4133 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4132, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %232) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %233) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %233, i32 noundef 65, i32 noundef 33)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %232, ptr noundef nonnull align 4 dereferenceable(20) %233, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %233) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %234) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 0, ptr noundef null)
          to label %.preheader1350 unwind label %4149

.preheader1350:                                   ; preds = %4127, %4153
  %.08111791 = phi i32 [ %4154, %4153 ], [ 0, %4127 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %235) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %235, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef %.08111791)
          to label %4134 unwind label %4151

4134:                                             ; preds = %.preheader1350
  %4135 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %235)
          to label %.invoke2898 unwind label %4151

.invoke2898:                                      ; preds = %4134
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %235) #6
  %4136 = select i1 %4135, ptr @.str.4, ptr @.str.5
  %4137 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %4136)
          to label %4153 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit

4138:                                             ; preds = %4113
  %4139 = landingpad { ptr, i32 }
          cleanup
  br label %4142

4140:                                             ; preds = %4116, %4114
  %4141 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #6
  br label %4142

4142:                                             ; preds = %4140, %4138
  %.pn1167 = phi { ptr, i32 } [ %4141, %4140 ], [ %4139, %4138 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %230) #6
  br label %.loopexit.split-lp1356

4143:                                             ; preds = %4122
  %4144 = landingpad { ptr, i32 }
          cleanup
  br label %4147

4145:                                             ; preds = %4125, %4123
  %4146 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %231) #6
  br label %4147

4147:                                             ; preds = %4145, %4143
  %.pn1169 = phi { ptr, i32 } [ %4146, %4145 ], [ %4144, %4143 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %231) #6
  br label %.loopexit.split-lp1356

.loopexit.split-lp1356:                           ; preds = %.loopexit1355, %.loopexit.split-lp1356.loopexit.split-lp.loopexit, %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1356.loopexit, %4147, %4142, %4105, %4100, %4050, %4049, %4029, %4024, %3974
  %.pn1216 = phi { ptr, i32 } [ %3975, %3974 ], [ %4025, %4024 ], [ %4030, %4029 ], [ %4051, %4050 ], [ %4101, %4100 ], [ %4106, %4105 ], [ %.pn1169, %4147 ], [ %.pn1167, %4142 ], [ %.pn1165, %4049 ], [ %lpad.loopexit1357, %.loopexit1355 ], [ %lpad.loopexit1360, %.loopexit.split-lp1356.loopexit ], [ %lpad.loopexit1364, %.loopexit.split-lp1356.loopexit.split-lp.loopexit ], [ %lpad.loopexit1368, %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1369, %.loopexit.split-lp1356.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %222) #6
  br label %4148

4148:                                             ; preds = %.loopexit.split-lp1356, %3972
  %.pn1216.pn = phi { ptr, i32 } [ %.pn1216, %.loopexit.split-lp1356 ], [ %3973, %3972 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %222) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %220) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %220) #6
  br label %5024

4149:                                             ; preds = %4127
  %4150 = landingpad { ptr, i32 }
          cleanup
  br label %4325

4151:                                             ; preds = %4134, %.preheader1350
  %4152 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %235) #6
  br label %.loopexit.split-lp1339

.loopexit1338:                                    ; preds = %.invoke2895
  %lpad.loopexit1340 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1339

.loopexit.split-lp1339.loopexit:                  ; preds = %.invoke2896
  %lpad.loopexit1343 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1339

.loopexit.split-lp1339.loopexit.split-lp.loopexit: ; preds = %.invoke2897
  %lpad.loopexit1347 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1339

.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2898
  %lpad.loopexit1351 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1339

.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %4297, %4295, %4288, %4286, %4231, %4212, %4210, %4155
  %lpad.loopexit.split-lp1352 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1339

4153:                                             ; preds = %.invoke2898
  %4154 = add nuw nsw i32 %.08111791, 1
  %exitcond1848.not = icmp eq i32 %4154, 65
  br i1 %exitcond1848.not, label %4155, label %.preheader1350, !llvm.loop !34

4155:                                             ; preds = %4153
  %4156 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1349.preheader unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1349.preheader:                         ; preds = %4155
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 0)
          to label %4157 unwind label %4201

4157:                                             ; preds = %.preheader1349.preheader
  %4158 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.1 unwind label %4201

.preheader1349.1:                                 ; preds = %4157
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 3)
          to label %4159 unwind label %4201

4159:                                             ; preds = %.preheader1349.1
  %4160 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.2 unwind label %4201

.preheader1349.2:                                 ; preds = %4159
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 6)
          to label %4161 unwind label %4201

4161:                                             ; preds = %.preheader1349.2
  %4162 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.3 unwind label %4201

.preheader1349.3:                                 ; preds = %4161
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 9)
          to label %4163 unwind label %4201

4163:                                             ; preds = %.preheader1349.3
  %4164 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.4 unwind label %4201

.preheader1349.4:                                 ; preds = %4163
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 12)
          to label %4165 unwind label %4201

4165:                                             ; preds = %.preheader1349.4
  %4166 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.5 unwind label %4201

.preheader1349.5:                                 ; preds = %4165
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 15)
          to label %4167 unwind label %4201

4167:                                             ; preds = %.preheader1349.5
  %4168 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.6 unwind label %4201

.preheader1349.6:                                 ; preds = %4167
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 18)
          to label %4169 unwind label %4201

4169:                                             ; preds = %.preheader1349.6
  %4170 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.7 unwind label %4201

.preheader1349.7:                                 ; preds = %4169
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 21)
          to label %4171 unwind label %4201

4171:                                             ; preds = %.preheader1349.7
  %4172 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.8 unwind label %4201

.preheader1349.8:                                 ; preds = %4171
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 24)
          to label %4173 unwind label %4201

4173:                                             ; preds = %.preheader1349.8
  %4174 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.9 unwind label %4201

.preheader1349.9:                                 ; preds = %4173
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 27)
          to label %4175 unwind label %4201

4175:                                             ; preds = %.preheader1349.9
  %4176 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.10 unwind label %4201

.preheader1349.10:                                ; preds = %4175
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 30)
          to label %4177 unwind label %4201

4177:                                             ; preds = %.preheader1349.10
  %4178 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.11 unwind label %4201

.preheader1349.11:                                ; preds = %4177
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 33)
          to label %4179 unwind label %4201

4179:                                             ; preds = %.preheader1349.11
  %4180 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.12 unwind label %4201

.preheader1349.12:                                ; preds = %4179
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 36)
          to label %4181 unwind label %4201

4181:                                             ; preds = %.preheader1349.12
  %4182 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.13 unwind label %4201

.preheader1349.13:                                ; preds = %4181
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 39)
          to label %4183 unwind label %4201

4183:                                             ; preds = %.preheader1349.13
  %4184 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.14 unwind label %4201

.preheader1349.14:                                ; preds = %4183
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 42)
          to label %4185 unwind label %4201

4185:                                             ; preds = %.preheader1349.14
  %4186 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.15 unwind label %4201

.preheader1349.15:                                ; preds = %4185
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 45)
          to label %4187 unwind label %4201

4187:                                             ; preds = %.preheader1349.15
  %4188 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.16 unwind label %4201

.preheader1349.16:                                ; preds = %4187
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 48)
          to label %4189 unwind label %4201

4189:                                             ; preds = %.preheader1349.16
  %4190 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.17 unwind label %4201

.preheader1349.17:                                ; preds = %4189
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 51)
          to label %4191 unwind label %4201

4191:                                             ; preds = %.preheader1349.17
  %4192 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.18 unwind label %4201

.preheader1349.18:                                ; preds = %4191
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 54)
          to label %4193 unwind label %4201

4193:                                             ; preds = %.preheader1349.18
  %4194 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.19 unwind label %4201

.preheader1349.19:                                ; preds = %4193
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 57)
          to label %4195 unwind label %4201

4195:                                             ; preds = %.preheader1349.19
  %4196 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.20 unwind label %4201

.preheader1349.20:                                ; preds = %4195
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 60)
          to label %4197 unwind label %4201

4197:                                             ; preds = %.preheader1349.20
  %4198 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1349.21 unwind label %4201

.preheader1349.21:                                ; preds = %4197
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %236) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %236, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 63)
          to label %4199 unwind label %4201

4199:                                             ; preds = %.preheader1349.21
  %4200 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %236, i1 noundef zeroext true)
          to label %.preheader1346.preheader unwind label %4201

.preheader1346.preheader:                         ; preds = %4199
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  br label %.preheader1346

4201:                                             ; preds = %4199, %.preheader1349.21, %4197, %.preheader1349.20, %4195, %.preheader1349.19, %4193, %.preheader1349.18, %4191, %.preheader1349.17, %4189, %.preheader1349.16, %4187, %.preheader1349.15, %4185, %.preheader1349.14, %4183, %.preheader1349.13, %4181, %.preheader1349.12, %4179, %.preheader1349.11, %4177, %.preheader1349.10, %4175, %.preheader1349.9, %4173, %.preheader1349.8, %4171, %.preheader1349.7, %4169, %.preheader1349.6, %4167, %.preheader1349.5, %4165, %.preheader1349.4, %4163, %.preheader1349.3, %4161, %.preheader1349.2, %4159, %.preheader1349.1, %4157, %.preheader1349.preheader
  %4202 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %236) #6
  br label %.loopexit.split-lp1339

.preheader1346:                                   ; preds = %.preheader1346.preheader, %4208
  %.28131793 = phi i32 [ %4209, %4208 ], [ 0, %.preheader1346.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %237) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %237, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef %.28131793)
          to label %4203 unwind label %4206

4203:                                             ; preds = %.preheader1346
  %4204 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %237)
          to label %.invoke2897 unwind label %4206

.invoke2897:                                      ; preds = %4203
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %237) #6
  %.str.4..str.52899 = select i1 %4204, ptr @.str.4, ptr @.str.5
  %4205 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52899)
          to label %4208 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit

4206:                                             ; preds = %4203, %.preheader1346
  %4207 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %237) #6
  br label %.loopexit.split-lp1339

4208:                                             ; preds = %.invoke2897
  %4209 = add nuw nsw i32 %.28131793, 1
  %exitcond1849.not = icmp eq i32 %4209, 65
  br i1 %exitcond1849.not, label %4210, label %.preheader1346, !llvm.loop !35

4210:                                             ; preds = %4208
  %4211 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4212 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4212:                                             ; preds = %4210
  %4213 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 0)
          to label %4214 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4214:                                             ; preds = %4212
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %238) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %238, ptr noundef nonnull align 8 dereferenceable(48) %234)
          to label %4215 unwind label %4222

4215:                                             ; preds = %4214
  %4216 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %234, ptr noundef nonnull align 8 dereferenceable(48) %238)
          to label %4217 unwind label %4224

4217:                                             ; preds = %4215
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %238) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %238) #6
  br label %4218

4218:                                             ; preds = %4217, %4229
  %.38141794 = phi i32 [ 0, %4217 ], [ %4230, %4229 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %239) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %239, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef %.38141794)
          to label %4219 unwind label %4227

4219:                                             ; preds = %4218
  %4220 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %239)
          to label %.invoke2896 unwind label %4227

.invoke2896:                                      ; preds = %4219
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %239) #6
  %.str.4..str.52900 = select i1 %4220, ptr @.str.4, ptr @.str.5
  %4221 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52900)
          to label %4229 unwind label %.loopexit.split-lp1339.loopexit

4222:                                             ; preds = %4214
  %4223 = landingpad { ptr, i32 }
          cleanup
  br label %4226

4224:                                             ; preds = %4215
  %4225 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %238) #6
  br label %4226

4226:                                             ; preds = %4224, %4222
  %.pn1171 = phi { ptr, i32 } [ %4225, %4224 ], [ %4223, %4222 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %238) #6
  br label %.loopexit.split-lp1339

4227:                                             ; preds = %4219, %4218
  %4228 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %239) #6
  br label %.loopexit.split-lp1339

4229:                                             ; preds = %.invoke2896
  %4230 = add nuw nsw i32 %.38141794, 1
  %exitcond1850.not = icmp eq i32 %4230, 65
  br i1 %exitcond1850.not, label %4231, label %4218, !llvm.loop !36

4231:                                             ; preds = %4229
  %4232 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1342.preheader unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1342.preheader:                         ; preds = %4231
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 0)
          to label %4233 unwind label %4277

4233:                                             ; preds = %.preheader1342.preheader
  %4234 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.1 unwind label %4277

.preheader1342.1:                                 ; preds = %4233
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 3)
          to label %4235 unwind label %4277

4235:                                             ; preds = %.preheader1342.1
  %4236 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.2 unwind label %4277

.preheader1342.2:                                 ; preds = %4235
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 6)
          to label %4237 unwind label %4277

4237:                                             ; preds = %.preheader1342.2
  %4238 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.3 unwind label %4277

.preheader1342.3:                                 ; preds = %4237
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 9)
          to label %4239 unwind label %4277

4239:                                             ; preds = %.preheader1342.3
  %4240 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.4 unwind label %4277

.preheader1342.4:                                 ; preds = %4239
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 12)
          to label %4241 unwind label %4277

4241:                                             ; preds = %.preheader1342.4
  %4242 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.5 unwind label %4277

.preheader1342.5:                                 ; preds = %4241
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 15)
          to label %4243 unwind label %4277

4243:                                             ; preds = %.preheader1342.5
  %4244 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.6 unwind label %4277

.preheader1342.6:                                 ; preds = %4243
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 18)
          to label %4245 unwind label %4277

4245:                                             ; preds = %.preheader1342.6
  %4246 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.7 unwind label %4277

.preheader1342.7:                                 ; preds = %4245
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 21)
          to label %4247 unwind label %4277

4247:                                             ; preds = %.preheader1342.7
  %4248 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.8 unwind label %4277

.preheader1342.8:                                 ; preds = %4247
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 24)
          to label %4249 unwind label %4277

4249:                                             ; preds = %.preheader1342.8
  %4250 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.9 unwind label %4277

.preheader1342.9:                                 ; preds = %4249
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 27)
          to label %4251 unwind label %4277

4251:                                             ; preds = %.preheader1342.9
  %4252 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.10 unwind label %4277

.preheader1342.10:                                ; preds = %4251
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 30)
          to label %4253 unwind label %4277

4253:                                             ; preds = %.preheader1342.10
  %4254 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.11 unwind label %4277

.preheader1342.11:                                ; preds = %4253
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 33)
          to label %4255 unwind label %4277

4255:                                             ; preds = %.preheader1342.11
  %4256 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.12 unwind label %4277

.preheader1342.12:                                ; preds = %4255
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 36)
          to label %4257 unwind label %4277

4257:                                             ; preds = %.preheader1342.12
  %4258 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.13 unwind label %4277

.preheader1342.13:                                ; preds = %4257
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 39)
          to label %4259 unwind label %4277

4259:                                             ; preds = %.preheader1342.13
  %4260 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.14 unwind label %4277

.preheader1342.14:                                ; preds = %4259
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 42)
          to label %4261 unwind label %4277

4261:                                             ; preds = %.preheader1342.14
  %4262 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.15 unwind label %4277

.preheader1342.15:                                ; preds = %4261
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 45)
          to label %4263 unwind label %4277

4263:                                             ; preds = %.preheader1342.15
  %4264 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.16 unwind label %4277

.preheader1342.16:                                ; preds = %4263
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 48)
          to label %4265 unwind label %4277

4265:                                             ; preds = %.preheader1342.16
  %4266 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.17 unwind label %4277

.preheader1342.17:                                ; preds = %4265
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 51)
          to label %4267 unwind label %4277

4267:                                             ; preds = %.preheader1342.17
  %4268 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.18 unwind label %4277

.preheader1342.18:                                ; preds = %4267
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 54)
          to label %4269 unwind label %4277

4269:                                             ; preds = %.preheader1342.18
  %4270 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.19 unwind label %4277

.preheader1342.19:                                ; preds = %4269
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 57)
          to label %4271 unwind label %4277

4271:                                             ; preds = %.preheader1342.19
  %4272 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.20 unwind label %4277

.preheader1342.20:                                ; preds = %4271
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 60)
          to label %4273 unwind label %4277

4273:                                             ; preds = %.preheader1342.20
  %4274 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1342.21 unwind label %4277

.preheader1342.21:                                ; preds = %4273
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %240) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %240, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 63)
          to label %4275 unwind label %4277

4275:                                             ; preds = %.preheader1342.21
  %4276 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %240, i1 noundef zeroext false)
          to label %.preheader1337.preheader unwind label %4277

.preheader1337.preheader:                         ; preds = %4275
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  br label %.preheader1337

4277:                                             ; preds = %4275, %.preheader1342.21, %4273, %.preheader1342.20, %4271, %.preheader1342.19, %4269, %.preheader1342.18, %4267, %.preheader1342.17, %4265, %.preheader1342.16, %4263, %.preheader1342.15, %4261, %.preheader1342.14, %4259, %.preheader1342.13, %4257, %.preheader1342.12, %4255, %.preheader1342.11, %4253, %.preheader1342.10, %4251, %.preheader1342.9, %4249, %.preheader1342.8, %4247, %.preheader1342.7, %4245, %.preheader1342.6, %4243, %.preheader1342.5, %4241, %.preheader1342.4, %4239, %.preheader1342.3, %4237, %.preheader1342.2, %4235, %.preheader1342.1, %4233, %.preheader1342.preheader
  %4278 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %240) #6
  br label %.loopexit.split-lp1339

.preheader1337:                                   ; preds = %.preheader1337.preheader, %4284
  %.58161796 = phi i32 [ %4285, %4284 ], [ 0, %.preheader1337.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %241) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %241, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef %.58161796)
          to label %4279 unwind label %4282

4279:                                             ; preds = %.preheader1337
  %4280 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %241)
          to label %.invoke2895 unwind label %4282

.invoke2895:                                      ; preds = %4279
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %241) #6
  %.str.4..str.52901 = select i1 %4280, ptr @.str.4, ptr @.str.5
  %4281 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52901)
          to label %4284 unwind label %.loopexit1338

4282:                                             ; preds = %4279, %.preheader1337
  %4283 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %241) #6
  br label %.loopexit.split-lp1339

4284:                                             ; preds = %.invoke2895
  %4285 = add nuw nsw i32 %.58161796, 1
  %exitcond1851.not = icmp eq i32 %4285, 65
  br i1 %exitcond1851.not, label %4286, label %.preheader1337, !llvm.loop !37

4286:                                             ; preds = %4284
  %4287 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4288 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4288:                                             ; preds = %4286
  %4289 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4290 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4290:                                             ; preds = %4288
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %242) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %242, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 2)
          to label %4291 unwind label %4315

4291:                                             ; preds = %4290
  %4292 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4289, ptr noundef nonnull align 8 dereferenceable(32) %242)
          to label %4293 unwind label %4317

4293:                                             ; preds = %4291
  %4294 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4292, ptr noundef nonnull @.str.3)
          to label %4295 unwind label %4317

4295:                                             ; preds = %4293
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %242) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %242) #6
  %4296 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %234, ptr noundef nonnull @.str.8)
          to label %4297 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4297:                                             ; preds = %4295
  %4298 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4299 unwind label %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4299:                                             ; preds = %4297
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %243) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %243, ptr noundef nonnull align 8 dereferenceable(48) %234, i32 noundef 2)
          to label %4300 unwind label %4320

4300:                                             ; preds = %4299
  %4301 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4298, ptr noundef nonnull align 8 dereferenceable(32) %243)
          to label %4302 unwind label %4322

4302:                                             ; preds = %4300
  %4303 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4301, ptr noundef nonnull @.str.3)
          to label %4304 unwind label %4322

4304:                                             ; preds = %4302
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %243) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %243) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %234) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %234) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %232) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %232) #6
  %4305 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str)
  %4306 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4305, ptr noundef nonnull @.str.2)
  %4307 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4306, i32 noundef 65)
  %4308 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4307, ptr noundef nonnull @.str.2)
  %4309 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4308, i32 noundef 111)
  %4310 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4309, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %244) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %245) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %245, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %244, ptr noundef nonnull align 4 dereferenceable(20) %245, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %245) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %246) #6
  invoke void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 0, ptr noundef null)
          to label %.preheader1333 unwind label %4326

.preheader1333:                                   ; preds = %4304, %4330
  %.08051797 = phi i32 [ %4331, %4330 ], [ 0, %4304 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %247) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %247, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef %.08051797)
          to label %4311 unwind label %4328

4311:                                             ; preds = %.preheader1333
  %4312 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %247)
          to label %.invoke2905 unwind label %4328

.invoke2905:                                      ; preds = %4311
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %247) #6
  %4313 = select i1 %4312, ptr @.str.4, ptr @.str.5
  %4314 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %4313)
          to label %4330 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit

4315:                                             ; preds = %4290
  %4316 = landingpad { ptr, i32 }
          cleanup
  br label %4319

4317:                                             ; preds = %4293, %4291
  %4318 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %242) #6
  br label %4319

4319:                                             ; preds = %4317, %4315
  %.pn1173 = phi { ptr, i32 } [ %4318, %4317 ], [ %4316, %4315 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %242) #6
  br label %.loopexit.split-lp1339

4320:                                             ; preds = %4299
  %4321 = landingpad { ptr, i32 }
          cleanup
  br label %4324

4322:                                             ; preds = %4302, %4300
  %4323 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %243) #6
  br label %4324

4324:                                             ; preds = %4322, %4320
  %.pn1175 = phi { ptr, i32 } [ %4323, %4322 ], [ %4321, %4320 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %243) #6
  br label %.loopexit.split-lp1339

.loopexit.split-lp1339:                           ; preds = %.loopexit1338, %.loopexit.split-lp1339.loopexit.split-lp.loopexit, %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1339.loopexit, %4324, %4319, %4282, %4277, %4227, %4226, %4206, %4201, %4151
  %.pn1213 = phi { ptr, i32 } [ %4152, %4151 ], [ %4202, %4201 ], [ %4207, %4206 ], [ %4228, %4227 ], [ %4278, %4277 ], [ %4283, %4282 ], [ %.pn1175, %4324 ], [ %.pn1173, %4319 ], [ %.pn1171, %4226 ], [ %lpad.loopexit1340, %.loopexit1338 ], [ %lpad.loopexit1343, %.loopexit.split-lp1339.loopexit ], [ %lpad.loopexit1347, %.loopexit.split-lp1339.loopexit.split-lp.loopexit ], [ %lpad.loopexit1351, %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1352, %.loopexit.split-lp1339.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %234) #6
  br label %4325

4325:                                             ; preds = %.loopexit.split-lp1339, %4149
  %.pn1213.pn = phi { ptr, i32 } [ %.pn1213, %.loopexit.split-lp1339 ], [ %4150, %4149 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %234) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %232) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %232) #6
  br label %5024

4326:                                             ; preds = %4304
  %4327 = landingpad { ptr, i32 }
          cleanup
  br label %4502

4328:                                             ; preds = %4311, %.preheader1333
  %4329 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %247) #6
  br label %.loopexit.split-lp1322

.loopexit1321:                                    ; preds = %.invoke2902
  %lpad.loopexit1323 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1322

.loopexit.split-lp1322.loopexit:                  ; preds = %.invoke2903
  %lpad.loopexit1326 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1322

.loopexit.split-lp1322.loopexit.split-lp.loopexit: ; preds = %.invoke2904
  %lpad.loopexit1330 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1322

.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2905
  %lpad.loopexit1334 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1322

.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %4474, %4472, %4465, %4463, %4408, %4389, %4387, %4332
  %lpad.loopexit.split-lp1335 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1322

4330:                                             ; preds = %.invoke2905
  %4331 = add nuw nsw i32 %.08051797, 1
  %exitcond1852.not = icmp eq i32 %4331, 65
  br i1 %exitcond1852.not, label %4332, label %.preheader1333, !llvm.loop !38

4332:                                             ; preds = %4330
  %4333 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1332.preheader unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1332.preheader:                         ; preds = %4332
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 0)
          to label %4334 unwind label %4378

4334:                                             ; preds = %.preheader1332.preheader
  %4335 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.1 unwind label %4378

.preheader1332.1:                                 ; preds = %4334
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 3)
          to label %4336 unwind label %4378

4336:                                             ; preds = %.preheader1332.1
  %4337 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.2 unwind label %4378

.preheader1332.2:                                 ; preds = %4336
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 6)
          to label %4338 unwind label %4378

4338:                                             ; preds = %.preheader1332.2
  %4339 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.3 unwind label %4378

.preheader1332.3:                                 ; preds = %4338
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 9)
          to label %4340 unwind label %4378

4340:                                             ; preds = %.preheader1332.3
  %4341 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.4 unwind label %4378

.preheader1332.4:                                 ; preds = %4340
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 12)
          to label %4342 unwind label %4378

4342:                                             ; preds = %.preheader1332.4
  %4343 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.5 unwind label %4378

.preheader1332.5:                                 ; preds = %4342
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 15)
          to label %4344 unwind label %4378

4344:                                             ; preds = %.preheader1332.5
  %4345 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.6 unwind label %4378

.preheader1332.6:                                 ; preds = %4344
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 18)
          to label %4346 unwind label %4378

4346:                                             ; preds = %.preheader1332.6
  %4347 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.7 unwind label %4378

.preheader1332.7:                                 ; preds = %4346
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 21)
          to label %4348 unwind label %4378

4348:                                             ; preds = %.preheader1332.7
  %4349 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.8 unwind label %4378

.preheader1332.8:                                 ; preds = %4348
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 24)
          to label %4350 unwind label %4378

4350:                                             ; preds = %.preheader1332.8
  %4351 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.9 unwind label %4378

.preheader1332.9:                                 ; preds = %4350
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 27)
          to label %4352 unwind label %4378

4352:                                             ; preds = %.preheader1332.9
  %4353 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.10 unwind label %4378

.preheader1332.10:                                ; preds = %4352
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 30)
          to label %4354 unwind label %4378

4354:                                             ; preds = %.preheader1332.10
  %4355 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.11 unwind label %4378

.preheader1332.11:                                ; preds = %4354
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 33)
          to label %4356 unwind label %4378

4356:                                             ; preds = %.preheader1332.11
  %4357 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.12 unwind label %4378

.preheader1332.12:                                ; preds = %4356
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 36)
          to label %4358 unwind label %4378

4358:                                             ; preds = %.preheader1332.12
  %4359 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.13 unwind label %4378

.preheader1332.13:                                ; preds = %4358
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 39)
          to label %4360 unwind label %4378

4360:                                             ; preds = %.preheader1332.13
  %4361 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.14 unwind label %4378

.preheader1332.14:                                ; preds = %4360
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 42)
          to label %4362 unwind label %4378

4362:                                             ; preds = %.preheader1332.14
  %4363 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.15 unwind label %4378

.preheader1332.15:                                ; preds = %4362
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 45)
          to label %4364 unwind label %4378

4364:                                             ; preds = %.preheader1332.15
  %4365 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.16 unwind label %4378

.preheader1332.16:                                ; preds = %4364
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 48)
          to label %4366 unwind label %4378

4366:                                             ; preds = %.preheader1332.16
  %4367 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.17 unwind label %4378

.preheader1332.17:                                ; preds = %4366
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 51)
          to label %4368 unwind label %4378

4368:                                             ; preds = %.preheader1332.17
  %4369 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.18 unwind label %4378

.preheader1332.18:                                ; preds = %4368
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 54)
          to label %4370 unwind label %4378

4370:                                             ; preds = %.preheader1332.18
  %4371 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.19 unwind label %4378

.preheader1332.19:                                ; preds = %4370
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 57)
          to label %4372 unwind label %4378

4372:                                             ; preds = %.preheader1332.19
  %4373 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.20 unwind label %4378

.preheader1332.20:                                ; preds = %4372
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 60)
          to label %4374 unwind label %4378

4374:                                             ; preds = %.preheader1332.20
  %4375 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1332.21 unwind label %4378

.preheader1332.21:                                ; preds = %4374
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %248) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %248, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 63)
          to label %4376 unwind label %4378

4376:                                             ; preds = %.preheader1332.21
  %4377 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %248, i1 noundef zeroext true)
          to label %.preheader1329.preheader unwind label %4378

.preheader1329.preheader:                         ; preds = %4376
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  br label %.preheader1329

4378:                                             ; preds = %4376, %.preheader1332.21, %4374, %.preheader1332.20, %4372, %.preheader1332.19, %4370, %.preheader1332.18, %4368, %.preheader1332.17, %4366, %.preheader1332.16, %4364, %.preheader1332.15, %4362, %.preheader1332.14, %4360, %.preheader1332.13, %4358, %.preheader1332.12, %4356, %.preheader1332.11, %4354, %.preheader1332.10, %4352, %.preheader1332.9, %4350, %.preheader1332.8, %4348, %.preheader1332.7, %4346, %.preheader1332.6, %4344, %.preheader1332.5, %4342, %.preheader1332.4, %4340, %.preheader1332.3, %4338, %.preheader1332.2, %4336, %.preheader1332.1, %4334, %.preheader1332.preheader
  %4379 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %248) #6
  br label %.loopexit.split-lp1322

.preheader1329:                                   ; preds = %.preheader1329.preheader, %4385
  %.28071799 = phi i32 [ %4386, %4385 ], [ 0, %.preheader1329.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %249) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %249, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef %.28071799)
          to label %4380 unwind label %4383

4380:                                             ; preds = %.preheader1329
  %4381 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %249)
          to label %.invoke2904 unwind label %4383

.invoke2904:                                      ; preds = %4380
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %249) #6
  %.str.4..str.52906 = select i1 %4381, ptr @.str.4, ptr @.str.5
  %4382 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52906)
          to label %4385 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit

4383:                                             ; preds = %4380, %.preheader1329
  %4384 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %249) #6
  br label %.loopexit.split-lp1322

4385:                                             ; preds = %.invoke2904
  %4386 = add nuw nsw i32 %.28071799, 1
  %exitcond1853.not = icmp eq i32 %4386, 65
  br i1 %exitcond1853.not, label %4387, label %.preheader1329, !llvm.loop !39

4387:                                             ; preds = %4385
  %4388 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4389 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4389:                                             ; preds = %4387
  %4390 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 0)
          to label %4391 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4391:                                             ; preds = %4389
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %250) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %250, ptr noundef nonnull align 8 dereferenceable(48) %246)
          to label %4392 unwind label %4399

4392:                                             ; preds = %4391
  %4393 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %246, ptr noundef nonnull align 8 dereferenceable(48) %250)
          to label %4394 unwind label %4401

4394:                                             ; preds = %4392
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %250) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %250) #6
  br label %4395

4395:                                             ; preds = %4394, %4406
  %.38081800 = phi i32 [ 0, %4394 ], [ %4407, %4406 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %251) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %251, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef %.38081800)
          to label %4396 unwind label %4404

4396:                                             ; preds = %4395
  %4397 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %251)
          to label %.invoke2903 unwind label %4404

.invoke2903:                                      ; preds = %4396
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %251) #6
  %.str.4..str.52907 = select i1 %4397, ptr @.str.4, ptr @.str.5
  %4398 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52907)
          to label %4406 unwind label %.loopexit.split-lp1322.loopexit

4399:                                             ; preds = %4391
  %4400 = landingpad { ptr, i32 }
          cleanup
  br label %4403

4401:                                             ; preds = %4392
  %4402 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %250) #6
  br label %4403

4403:                                             ; preds = %4401, %4399
  %.pn1177 = phi { ptr, i32 } [ %4402, %4401 ], [ %4400, %4399 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %250) #6
  br label %.loopexit.split-lp1322

4404:                                             ; preds = %4396, %4395
  %4405 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %251) #6
  br label %.loopexit.split-lp1322

4406:                                             ; preds = %.invoke2903
  %4407 = add nuw nsw i32 %.38081800, 1
  %exitcond1854.not = icmp eq i32 %4407, 65
  br i1 %exitcond1854.not, label %4408, label %4395, !llvm.loop !40

4408:                                             ; preds = %4406
  %4409 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1325.preheader unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1325.preheader:                         ; preds = %4408
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 0)
          to label %4410 unwind label %4454

4410:                                             ; preds = %.preheader1325.preheader
  %4411 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.1 unwind label %4454

.preheader1325.1:                                 ; preds = %4410
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 3)
          to label %4412 unwind label %4454

4412:                                             ; preds = %.preheader1325.1
  %4413 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.2 unwind label %4454

.preheader1325.2:                                 ; preds = %4412
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 6)
          to label %4414 unwind label %4454

4414:                                             ; preds = %.preheader1325.2
  %4415 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.3 unwind label %4454

.preheader1325.3:                                 ; preds = %4414
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 9)
          to label %4416 unwind label %4454

4416:                                             ; preds = %.preheader1325.3
  %4417 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.4 unwind label %4454

.preheader1325.4:                                 ; preds = %4416
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 12)
          to label %4418 unwind label %4454

4418:                                             ; preds = %.preheader1325.4
  %4419 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.5 unwind label %4454

.preheader1325.5:                                 ; preds = %4418
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 15)
          to label %4420 unwind label %4454

4420:                                             ; preds = %.preheader1325.5
  %4421 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.6 unwind label %4454

.preheader1325.6:                                 ; preds = %4420
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 18)
          to label %4422 unwind label %4454

4422:                                             ; preds = %.preheader1325.6
  %4423 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.7 unwind label %4454

.preheader1325.7:                                 ; preds = %4422
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 21)
          to label %4424 unwind label %4454

4424:                                             ; preds = %.preheader1325.7
  %4425 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.8 unwind label %4454

.preheader1325.8:                                 ; preds = %4424
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 24)
          to label %4426 unwind label %4454

4426:                                             ; preds = %.preheader1325.8
  %4427 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.9 unwind label %4454

.preheader1325.9:                                 ; preds = %4426
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 27)
          to label %4428 unwind label %4454

4428:                                             ; preds = %.preheader1325.9
  %4429 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.10 unwind label %4454

.preheader1325.10:                                ; preds = %4428
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 30)
          to label %4430 unwind label %4454

4430:                                             ; preds = %.preheader1325.10
  %4431 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.11 unwind label %4454

.preheader1325.11:                                ; preds = %4430
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 33)
          to label %4432 unwind label %4454

4432:                                             ; preds = %.preheader1325.11
  %4433 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.12 unwind label %4454

.preheader1325.12:                                ; preds = %4432
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 36)
          to label %4434 unwind label %4454

4434:                                             ; preds = %.preheader1325.12
  %4435 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.13 unwind label %4454

.preheader1325.13:                                ; preds = %4434
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 39)
          to label %4436 unwind label %4454

4436:                                             ; preds = %.preheader1325.13
  %4437 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.14 unwind label %4454

.preheader1325.14:                                ; preds = %4436
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 42)
          to label %4438 unwind label %4454

4438:                                             ; preds = %.preheader1325.14
  %4439 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.15 unwind label %4454

.preheader1325.15:                                ; preds = %4438
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 45)
          to label %4440 unwind label %4454

4440:                                             ; preds = %.preheader1325.15
  %4441 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.16 unwind label %4454

.preheader1325.16:                                ; preds = %4440
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 48)
          to label %4442 unwind label %4454

4442:                                             ; preds = %.preheader1325.16
  %4443 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.17 unwind label %4454

.preheader1325.17:                                ; preds = %4442
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 51)
          to label %4444 unwind label %4454

4444:                                             ; preds = %.preheader1325.17
  %4445 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.18 unwind label %4454

.preheader1325.18:                                ; preds = %4444
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 54)
          to label %4446 unwind label %4454

4446:                                             ; preds = %.preheader1325.18
  %4447 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.19 unwind label %4454

.preheader1325.19:                                ; preds = %4446
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 57)
          to label %4448 unwind label %4454

4448:                                             ; preds = %.preheader1325.19
  %4449 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.20 unwind label %4454

.preheader1325.20:                                ; preds = %4448
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 60)
          to label %4450 unwind label %4454

4450:                                             ; preds = %.preheader1325.20
  %4451 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1325.21 unwind label %4454

.preheader1325.21:                                ; preds = %4450
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %252) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %252, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 63)
          to label %4452 unwind label %4454

4452:                                             ; preds = %.preheader1325.21
  %4453 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %252, i1 noundef zeroext false)
          to label %.preheader1320.preheader unwind label %4454

.preheader1320.preheader:                         ; preds = %4452
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  br label %.preheader1320

4454:                                             ; preds = %4452, %.preheader1325.21, %4450, %.preheader1325.20, %4448, %.preheader1325.19, %4446, %.preheader1325.18, %4444, %.preheader1325.17, %4442, %.preheader1325.16, %4440, %.preheader1325.15, %4438, %.preheader1325.14, %4436, %.preheader1325.13, %4434, %.preheader1325.12, %4432, %.preheader1325.11, %4430, %.preheader1325.10, %4428, %.preheader1325.9, %4426, %.preheader1325.8, %4424, %.preheader1325.7, %4422, %.preheader1325.6, %4420, %.preheader1325.5, %4418, %.preheader1325.4, %4416, %.preheader1325.3, %4414, %.preheader1325.2, %4412, %.preheader1325.1, %4410, %.preheader1325.preheader
  %4455 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %252) #6
  br label %.loopexit.split-lp1322

.preheader1320:                                   ; preds = %.preheader1320.preheader, %4461
  %.58101802 = phi i32 [ %4462, %4461 ], [ 0, %.preheader1320.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %253) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %253, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef %.58101802)
          to label %4456 unwind label %4459

4456:                                             ; preds = %.preheader1320
  %4457 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %253)
          to label %.invoke2902 unwind label %4459

.invoke2902:                                      ; preds = %4456
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %253) #6
  %.str.4..str.52908 = select i1 %4457, ptr @.str.4, ptr @.str.5
  %4458 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52908)
          to label %4461 unwind label %.loopexit1321

4459:                                             ; preds = %4456, %.preheader1320
  %4460 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %253) #6
  br label %.loopexit.split-lp1322

4461:                                             ; preds = %.invoke2902
  %4462 = add nuw nsw i32 %.58101802, 1
  %exitcond1855.not = icmp eq i32 %4462, 65
  br i1 %exitcond1855.not, label %4463, label %.preheader1320, !llvm.loop !41

4463:                                             ; preds = %4461
  %4464 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4465 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4465:                                             ; preds = %4463
  %4466 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4467 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4467:                                             ; preds = %4465
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %254) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %254, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 2)
          to label %4468 unwind label %4492

4468:                                             ; preds = %4467
  %4469 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4466, ptr noundef nonnull align 8 dereferenceable(32) %254)
          to label %4470 unwind label %4494

4470:                                             ; preds = %4468
  %4471 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4469, ptr noundef nonnull @.str.3)
          to label %4472 unwind label %4494

4472:                                             ; preds = %4470
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %254) #6
  %4473 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %246, ptr noundef nonnull @.str.8)
          to label %4474 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4474:                                             ; preds = %4472
  %4475 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4476 unwind label %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4476:                                             ; preds = %4474
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %255) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %255, ptr noundef nonnull align 8 dereferenceable(48) %246, i32 noundef 2)
          to label %4477 unwind label %4497

4477:                                             ; preds = %4476
  %4478 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4475, ptr noundef nonnull align 8 dereferenceable(32) %255)
          to label %4479 unwind label %4499

4479:                                             ; preds = %4477
  %4480 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4478, ptr noundef nonnull @.str.3)
          to label %4481 unwind label %4499

4481:                                             ; preds = %4479
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %255) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %255) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %246) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %246) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %244) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %244) #6
  %4482 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.9)
  %4483 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4482, ptr noundef nonnull @.str.2)
  %4484 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4483, i32 noundef 65)
  %4485 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4484, ptr noundef nonnull @.str.2)
  %4486 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4485, i32 noundef 111)
  %4487 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4486, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %256) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %257) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %257, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %256, ptr noundef nonnull align 4 dereferenceable(20) %257, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %257) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %258) #6
  invoke void @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0, ptr noundef null)
          to label %.preheader1316 unwind label %4503

.preheader1316:                                   ; preds = %4481, %4507
  %.07991803 = phi i32 [ %4508, %4507 ], [ 0, %4481 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %259) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %259, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %.07991803)
          to label %4488 unwind label %4505

4488:                                             ; preds = %.preheader1316
  %4489 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %259)
          to label %.invoke2912 unwind label %4505

.invoke2912:                                      ; preds = %4488
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %259) #6
  %4490 = select i1 %4489, ptr @.str.4, ptr @.str.5
  %4491 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %4490)
          to label %4507 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit

4492:                                             ; preds = %4467
  %4493 = landingpad { ptr, i32 }
          cleanup
  br label %4496

4494:                                             ; preds = %4470, %4468
  %4495 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %254) #6
  br label %4496

4496:                                             ; preds = %4494, %4492
  %.pn1179 = phi { ptr, i32 } [ %4495, %4494 ], [ %4493, %4492 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %254) #6
  br label %.loopexit.split-lp1322

4497:                                             ; preds = %4476
  %4498 = landingpad { ptr, i32 }
          cleanup
  br label %4501

4499:                                             ; preds = %4479, %4477
  %4500 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %255) #6
  br label %4501

4501:                                             ; preds = %4499, %4497
  %.pn1181 = phi { ptr, i32 } [ %4500, %4499 ], [ %4498, %4497 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %255) #6
  br label %.loopexit.split-lp1322

.loopexit.split-lp1322:                           ; preds = %.loopexit1321, %.loopexit.split-lp1322.loopexit.split-lp.loopexit, %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1322.loopexit, %4501, %4496, %4459, %4454, %4404, %4403, %4383, %4378, %4328
  %.pn1210 = phi { ptr, i32 } [ %4329, %4328 ], [ %4379, %4378 ], [ %4384, %4383 ], [ %4405, %4404 ], [ %4455, %4454 ], [ %4460, %4459 ], [ %.pn1181, %4501 ], [ %.pn1179, %4496 ], [ %.pn1177, %4403 ], [ %lpad.loopexit1323, %.loopexit1321 ], [ %lpad.loopexit1326, %.loopexit.split-lp1322.loopexit ], [ %lpad.loopexit1330, %.loopexit.split-lp1322.loopexit.split-lp.loopexit ], [ %lpad.loopexit1334, %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1335, %.loopexit.split-lp1322.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %246) #6
  br label %4502

4502:                                             ; preds = %.loopexit.split-lp1322, %4326
  %.pn1210.pn = phi { ptr, i32 } [ %.pn1210, %.loopexit.split-lp1322 ], [ %4327, %4326 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %246) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %244) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %244) #6
  br label %5024

4503:                                             ; preds = %4481
  %4504 = landingpad { ptr, i32 }
          cleanup
  br label %4679

4505:                                             ; preds = %4488, %.preheader1316
  %4506 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %259) #6
  br label %.loopexit.split-lp1305

.loopexit1304:                                    ; preds = %.invoke2909
  %lpad.loopexit1306 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1305

.loopexit.split-lp1305.loopexit:                  ; preds = %.invoke2910
  %lpad.loopexit1309 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1305

.loopexit.split-lp1305.loopexit.split-lp.loopexit: ; preds = %.invoke2911
  %lpad.loopexit1313 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1305

.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2912
  %lpad.loopexit1317 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1305

.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %4651, %4649, %4642, %4640, %4585, %4566, %4564, %4509
  %lpad.loopexit.split-lp1318 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1305

4507:                                             ; preds = %.invoke2912
  %4508 = add nuw nsw i32 %.07991803, 1
  %exitcond1856.not = icmp eq i32 %4508, 65
  br i1 %exitcond1856.not, label %4509, label %.preheader1316, !llvm.loop !42

4509:                                             ; preds = %4507
  %4510 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1315.preheader unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1315.preheader:                         ; preds = %4509
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0)
          to label %4511 unwind label %4555

4511:                                             ; preds = %.preheader1315.preheader
  %4512 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.1 unwind label %4555

.preheader1315.1:                                 ; preds = %4511
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 3)
          to label %4513 unwind label %4555

4513:                                             ; preds = %.preheader1315.1
  %4514 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.2 unwind label %4555

.preheader1315.2:                                 ; preds = %4513
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 6)
          to label %4515 unwind label %4555

4515:                                             ; preds = %.preheader1315.2
  %4516 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.3 unwind label %4555

.preheader1315.3:                                 ; preds = %4515
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 9)
          to label %4517 unwind label %4555

4517:                                             ; preds = %.preheader1315.3
  %4518 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.4 unwind label %4555

.preheader1315.4:                                 ; preds = %4517
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 12)
          to label %4519 unwind label %4555

4519:                                             ; preds = %.preheader1315.4
  %4520 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.5 unwind label %4555

.preheader1315.5:                                 ; preds = %4519
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 15)
          to label %4521 unwind label %4555

4521:                                             ; preds = %.preheader1315.5
  %4522 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.6 unwind label %4555

.preheader1315.6:                                 ; preds = %4521
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 18)
          to label %4523 unwind label %4555

4523:                                             ; preds = %.preheader1315.6
  %4524 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.7 unwind label %4555

.preheader1315.7:                                 ; preds = %4523
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 21)
          to label %4525 unwind label %4555

4525:                                             ; preds = %.preheader1315.7
  %4526 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.8 unwind label %4555

.preheader1315.8:                                 ; preds = %4525
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 24)
          to label %4527 unwind label %4555

4527:                                             ; preds = %.preheader1315.8
  %4528 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.9 unwind label %4555

.preheader1315.9:                                 ; preds = %4527
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 27)
          to label %4529 unwind label %4555

4529:                                             ; preds = %.preheader1315.9
  %4530 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.10 unwind label %4555

.preheader1315.10:                                ; preds = %4529
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 30)
          to label %4531 unwind label %4555

4531:                                             ; preds = %.preheader1315.10
  %4532 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.11 unwind label %4555

.preheader1315.11:                                ; preds = %4531
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 33)
          to label %4533 unwind label %4555

4533:                                             ; preds = %.preheader1315.11
  %4534 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.12 unwind label %4555

.preheader1315.12:                                ; preds = %4533
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 36)
          to label %4535 unwind label %4555

4535:                                             ; preds = %.preheader1315.12
  %4536 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.13 unwind label %4555

.preheader1315.13:                                ; preds = %4535
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 39)
          to label %4537 unwind label %4555

4537:                                             ; preds = %.preheader1315.13
  %4538 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.14 unwind label %4555

.preheader1315.14:                                ; preds = %4537
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 42)
          to label %4539 unwind label %4555

4539:                                             ; preds = %.preheader1315.14
  %4540 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.15 unwind label %4555

.preheader1315.15:                                ; preds = %4539
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 45)
          to label %4541 unwind label %4555

4541:                                             ; preds = %.preheader1315.15
  %4542 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.16 unwind label %4555

.preheader1315.16:                                ; preds = %4541
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 48)
          to label %4543 unwind label %4555

4543:                                             ; preds = %.preheader1315.16
  %4544 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.17 unwind label %4555

.preheader1315.17:                                ; preds = %4543
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 51)
          to label %4545 unwind label %4555

4545:                                             ; preds = %.preheader1315.17
  %4546 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.18 unwind label %4555

.preheader1315.18:                                ; preds = %4545
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 54)
          to label %4547 unwind label %4555

4547:                                             ; preds = %.preheader1315.18
  %4548 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.19 unwind label %4555

.preheader1315.19:                                ; preds = %4547
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 57)
          to label %4549 unwind label %4555

4549:                                             ; preds = %.preheader1315.19
  %4550 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.20 unwind label %4555

.preheader1315.20:                                ; preds = %4549
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 60)
          to label %4551 unwind label %4555

4551:                                             ; preds = %.preheader1315.20
  %4552 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1315.21 unwind label %4555

.preheader1315.21:                                ; preds = %4551
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %260) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %260, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 63)
          to label %4553 unwind label %4555

4553:                                             ; preds = %.preheader1315.21
  %4554 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %260, i1 noundef zeroext true)
          to label %.preheader1312.preheader unwind label %4555

.preheader1312.preheader:                         ; preds = %4553
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  br label %.preheader1312

4555:                                             ; preds = %4553, %.preheader1315.21, %4551, %.preheader1315.20, %4549, %.preheader1315.19, %4547, %.preheader1315.18, %4545, %.preheader1315.17, %4543, %.preheader1315.16, %4541, %.preheader1315.15, %4539, %.preheader1315.14, %4537, %.preheader1315.13, %4535, %.preheader1315.12, %4533, %.preheader1315.11, %4531, %.preheader1315.10, %4529, %.preheader1315.9, %4527, %.preheader1315.8, %4525, %.preheader1315.7, %4523, %.preheader1315.6, %4521, %.preheader1315.5, %4519, %.preheader1315.4, %4517, %.preheader1315.3, %4515, %.preheader1315.2, %4513, %.preheader1315.1, %4511, %.preheader1315.preheader
  %4556 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %260) #6
  br label %.loopexit.split-lp1305

.preheader1312:                                   ; preds = %.preheader1312.preheader, %4562
  %.28011805 = phi i32 [ %4563, %4562 ], [ 0, %.preheader1312.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %261) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %261, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %.28011805)
          to label %4557 unwind label %4560

4557:                                             ; preds = %.preheader1312
  %4558 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %261)
          to label %.invoke2911 unwind label %4560

.invoke2911:                                      ; preds = %4557
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %261) #6
  %.str.4..str.52913 = select i1 %4558, ptr @.str.4, ptr @.str.5
  %4559 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52913)
          to label %4562 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit

4560:                                             ; preds = %4557, %.preheader1312
  %4561 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %261) #6
  br label %.loopexit.split-lp1305

4562:                                             ; preds = %.invoke2911
  %4563 = add nuw nsw i32 %.28011805, 1
  %exitcond1857.not = icmp eq i32 %4563, 65
  br i1 %exitcond1857.not, label %4564, label %.preheader1312, !llvm.loop !43

4564:                                             ; preds = %4562
  %4565 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4566 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4566:                                             ; preds = %4564
  %4567 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0)
          to label %4568 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4568:                                             ; preds = %4566
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %262) #6
  invoke void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fix") align 8 %262, ptr noundef nonnull align 8 dereferenceable(48) %258)
          to label %4569 unwind label %4576

4569:                                             ; preds = %4568
  %4570 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %258, ptr noundef nonnull align 8 dereferenceable(48) %262)
          to label %4571 unwind label %4578

4571:                                             ; preds = %4569
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %262) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %262) #6
  br label %4572

4572:                                             ; preds = %4571, %4583
  %.38021806 = phi i32 [ 0, %4571 ], [ %4584, %4583 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %263) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %263, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %.38021806)
          to label %4573 unwind label %4581

4573:                                             ; preds = %4572
  %4574 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %263)
          to label %.invoke2910 unwind label %4581

.invoke2910:                                      ; preds = %4573
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %263) #6
  %.str.4..str.52914 = select i1 %4574, ptr @.str.4, ptr @.str.5
  %4575 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52914)
          to label %4583 unwind label %.loopexit.split-lp1305.loopexit

4576:                                             ; preds = %4568
  %4577 = landingpad { ptr, i32 }
          cleanup
  br label %4580

4578:                                             ; preds = %4569
  %4579 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %262) #6
  br label %4580

4580:                                             ; preds = %4578, %4576
  %.pn1183 = phi { ptr, i32 } [ %4579, %4578 ], [ %4577, %4576 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %262) #6
  br label %.loopexit.split-lp1305

4581:                                             ; preds = %4573, %4572
  %4582 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %263) #6
  br label %.loopexit.split-lp1305

4583:                                             ; preds = %.invoke2910
  %4584 = add nuw nsw i32 %.38021806, 1
  %exitcond1858.not = icmp eq i32 %4584, 65
  br i1 %exitcond1858.not, label %4585, label %4572, !llvm.loop !44

4585:                                             ; preds = %4583
  %4586 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1308.preheader unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1308.preheader:                         ; preds = %4585
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 0)
          to label %4587 unwind label %4631

4587:                                             ; preds = %.preheader1308.preheader
  %4588 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.1 unwind label %4631

.preheader1308.1:                                 ; preds = %4587
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 3)
          to label %4589 unwind label %4631

4589:                                             ; preds = %.preheader1308.1
  %4590 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.2 unwind label %4631

.preheader1308.2:                                 ; preds = %4589
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 6)
          to label %4591 unwind label %4631

4591:                                             ; preds = %.preheader1308.2
  %4592 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.3 unwind label %4631

.preheader1308.3:                                 ; preds = %4591
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 9)
          to label %4593 unwind label %4631

4593:                                             ; preds = %.preheader1308.3
  %4594 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.4 unwind label %4631

.preheader1308.4:                                 ; preds = %4593
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 12)
          to label %4595 unwind label %4631

4595:                                             ; preds = %.preheader1308.4
  %4596 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.5 unwind label %4631

.preheader1308.5:                                 ; preds = %4595
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 15)
          to label %4597 unwind label %4631

4597:                                             ; preds = %.preheader1308.5
  %4598 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.6 unwind label %4631

.preheader1308.6:                                 ; preds = %4597
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 18)
          to label %4599 unwind label %4631

4599:                                             ; preds = %.preheader1308.6
  %4600 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.7 unwind label %4631

.preheader1308.7:                                 ; preds = %4599
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 21)
          to label %4601 unwind label %4631

4601:                                             ; preds = %.preheader1308.7
  %4602 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.8 unwind label %4631

.preheader1308.8:                                 ; preds = %4601
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 24)
          to label %4603 unwind label %4631

4603:                                             ; preds = %.preheader1308.8
  %4604 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.9 unwind label %4631

.preheader1308.9:                                 ; preds = %4603
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 27)
          to label %4605 unwind label %4631

4605:                                             ; preds = %.preheader1308.9
  %4606 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.10 unwind label %4631

.preheader1308.10:                                ; preds = %4605
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 30)
          to label %4607 unwind label %4631

4607:                                             ; preds = %.preheader1308.10
  %4608 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.11 unwind label %4631

.preheader1308.11:                                ; preds = %4607
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 33)
          to label %4609 unwind label %4631

4609:                                             ; preds = %.preheader1308.11
  %4610 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.12 unwind label %4631

.preheader1308.12:                                ; preds = %4609
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 36)
          to label %4611 unwind label %4631

4611:                                             ; preds = %.preheader1308.12
  %4612 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.13 unwind label %4631

.preheader1308.13:                                ; preds = %4611
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 39)
          to label %4613 unwind label %4631

4613:                                             ; preds = %.preheader1308.13
  %4614 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.14 unwind label %4631

.preheader1308.14:                                ; preds = %4613
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 42)
          to label %4615 unwind label %4631

4615:                                             ; preds = %.preheader1308.14
  %4616 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.15 unwind label %4631

.preheader1308.15:                                ; preds = %4615
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 45)
          to label %4617 unwind label %4631

4617:                                             ; preds = %.preheader1308.15
  %4618 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.16 unwind label %4631

.preheader1308.16:                                ; preds = %4617
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 48)
          to label %4619 unwind label %4631

4619:                                             ; preds = %.preheader1308.16
  %4620 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.17 unwind label %4631

.preheader1308.17:                                ; preds = %4619
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 51)
          to label %4621 unwind label %4631

4621:                                             ; preds = %.preheader1308.17
  %4622 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.18 unwind label %4631

.preheader1308.18:                                ; preds = %4621
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 54)
          to label %4623 unwind label %4631

4623:                                             ; preds = %.preheader1308.18
  %4624 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.19 unwind label %4631

.preheader1308.19:                                ; preds = %4623
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 57)
          to label %4625 unwind label %4631

4625:                                             ; preds = %.preheader1308.19
  %4626 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.20 unwind label %4631

.preheader1308.20:                                ; preds = %4625
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 60)
          to label %4627 unwind label %4631

4627:                                             ; preds = %.preheader1308.20
  %4628 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1308.21 unwind label %4631

.preheader1308.21:                                ; preds = %4627
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %264) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %264, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 63)
          to label %4629 unwind label %4631

4629:                                             ; preds = %.preheader1308.21
  %4630 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %264, i1 noundef zeroext false)
          to label %.preheader1303.preheader unwind label %4631

.preheader1303.preheader:                         ; preds = %4629
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  br label %.preheader1303

4631:                                             ; preds = %4629, %.preheader1308.21, %4627, %.preheader1308.20, %4625, %.preheader1308.19, %4623, %.preheader1308.18, %4621, %.preheader1308.17, %4619, %.preheader1308.16, %4617, %.preheader1308.15, %4615, %.preheader1308.14, %4613, %.preheader1308.13, %4611, %.preheader1308.12, %4609, %.preheader1308.11, %4607, %.preheader1308.10, %4605, %.preheader1308.9, %4603, %.preheader1308.8, %4601, %.preheader1308.7, %4599, %.preheader1308.6, %4597, %.preheader1308.5, %4595, %.preheader1308.4, %4593, %.preheader1308.3, %4591, %.preheader1308.2, %4589, %.preheader1308.1, %4587, %.preheader1308.preheader
  %4632 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %264) #6
  br label %.loopexit.split-lp1305

.preheader1303:                                   ; preds = %.preheader1303.preheader, %4638
  %.58041808 = phi i32 [ %4639, %4638 ], [ 0, %.preheader1303.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %265) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %265, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef %.58041808)
          to label %4633 unwind label %4636

4633:                                             ; preds = %.preheader1303
  %4634 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %265)
          to label %.invoke2909 unwind label %4636

.invoke2909:                                      ; preds = %4633
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %265) #6
  %.str.4..str.52915 = select i1 %4634, ptr @.str.4, ptr @.str.5
  %4635 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52915)
          to label %4638 unwind label %.loopexit1304

4636:                                             ; preds = %4633, %.preheader1303
  %4637 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %265) #6
  br label %.loopexit.split-lp1305

4638:                                             ; preds = %.invoke2909
  %4639 = add nuw nsw i32 %.58041808, 1
  %exitcond1859.not = icmp eq i32 %4639, 65
  br i1 %exitcond1859.not, label %4640, label %.preheader1303, !llvm.loop !45

4640:                                             ; preds = %4638
  %4641 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4642 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4642:                                             ; preds = %4640
  %4643 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4644 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4644:                                             ; preds = %4642
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %266) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %266, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 2)
          to label %4645 unwind label %4669

4645:                                             ; preds = %4644
  %4646 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4643, ptr noundef nonnull align 8 dereferenceable(32) %266)
          to label %4647 unwind label %4671

4647:                                             ; preds = %4645
  %4648 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4646, ptr noundef nonnull @.str.3)
          to label %4649 unwind label %4671

4649:                                             ; preds = %4647
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %266) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %266) #6
  %4650 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %258, ptr noundef nonnull @.str.8)
          to label %4651 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4651:                                             ; preds = %4649
  %4652 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4653 unwind label %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4653:                                             ; preds = %4651
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %267) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %267, ptr noundef nonnull align 8 dereferenceable(48) %258, i32 noundef 2)
          to label %4654 unwind label %4674

4654:                                             ; preds = %4653
  %4655 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4652, ptr noundef nonnull align 8 dereferenceable(32) %267)
          to label %4656 unwind label %4676

4656:                                             ; preds = %4654
  %4657 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4655, ptr noundef nonnull @.str.3)
          to label %4658 unwind label %4676

4658:                                             ; preds = %4656
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %267) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %258) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %258) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %256) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %256) #6
  %4659 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.10)
  %4660 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4659, ptr noundef nonnull @.str.2)
  %4661 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4660, i32 noundef 65)
  %4662 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4661, ptr noundef nonnull @.str.2)
  %4663 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4662, i32 noundef 111)
  %4664 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4663, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %268) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %269) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %269, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %268, ptr noundef nonnull align 4 dereferenceable(20) %269, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %269) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %270) #6
  invoke void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 0, ptr noundef null)
          to label %.preheader1299 unwind label %4680

.preheader1299:                                   ; preds = %4658, %4684
  %.07931809 = phi i32 [ %4685, %4684 ], [ 0, %4658 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %271) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %271, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef %.07931809)
          to label %4665 unwind label %4682

4665:                                             ; preds = %.preheader1299
  %4666 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %271)
          to label %.invoke2919 unwind label %4682

.invoke2919:                                      ; preds = %4665
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %271) #6
  %4667 = select i1 %4666, ptr @.str.4, ptr @.str.5
  %4668 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %4667)
          to label %4684 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit

4669:                                             ; preds = %4644
  %4670 = landingpad { ptr, i32 }
          cleanup
  br label %4673

4671:                                             ; preds = %4647, %4645
  %4672 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %266) #6
  br label %4673

4673:                                             ; preds = %4671, %4669
  %.pn1185 = phi { ptr, i32 } [ %4672, %4671 ], [ %4670, %4669 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %266) #6
  br label %.loopexit.split-lp1305

4674:                                             ; preds = %4653
  %4675 = landingpad { ptr, i32 }
          cleanup
  br label %4678

4676:                                             ; preds = %4656, %4654
  %4677 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #6
  br label %4678

4678:                                             ; preds = %4676, %4674
  %.pn1187 = phi { ptr, i32 } [ %4677, %4676 ], [ %4675, %4674 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %267) #6
  br label %.loopexit.split-lp1305

.loopexit.split-lp1305:                           ; preds = %.loopexit1304, %.loopexit.split-lp1305.loopexit.split-lp.loopexit, %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1305.loopexit, %4678, %4673, %4636, %4631, %4581, %4580, %4560, %4555, %4505
  %.pn1207 = phi { ptr, i32 } [ %4506, %4505 ], [ %4556, %4555 ], [ %4561, %4560 ], [ %4582, %4581 ], [ %4632, %4631 ], [ %4637, %4636 ], [ %.pn1187, %4678 ], [ %.pn1185, %4673 ], [ %.pn1183, %4580 ], [ %lpad.loopexit1306, %.loopexit1304 ], [ %lpad.loopexit1309, %.loopexit.split-lp1305.loopexit ], [ %lpad.loopexit1313, %.loopexit.split-lp1305.loopexit.split-lp.loopexit ], [ %lpad.loopexit1317, %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1318, %.loopexit.split-lp1305.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %258) #6
  br label %4679

4679:                                             ; preds = %.loopexit.split-lp1305, %4503
  %.pn1207.pn = phi { ptr, i32 } [ %.pn1207, %.loopexit.split-lp1305 ], [ %4504, %4503 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %258) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %256) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %256) #6
  br label %5024

4680:                                             ; preds = %4658
  %4681 = landingpad { ptr, i32 }
          cleanup
  br label %4856

4682:                                             ; preds = %4665, %.preheader1299
  %4683 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %271) #6
  br label %.loopexit.split-lp1288

.loopexit1287:                                    ; preds = %.invoke2916
  %lpad.loopexit1289 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1288

.loopexit.split-lp1288.loopexit:                  ; preds = %.invoke2917
  %lpad.loopexit1292 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1288

.loopexit.split-lp1288.loopexit.split-lp.loopexit: ; preds = %.invoke2918
  %lpad.loopexit1296 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1288

.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit: ; preds = %.invoke2919
  %lpad.loopexit1300 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1288

.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %4828, %4826, %4819, %4817, %4762, %4743, %4741, %4686
  %lpad.loopexit.split-lp1301 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp1288

4684:                                             ; preds = %.invoke2919
  %4685 = add nuw nsw i32 %.07931809, 1
  %exitcond1860.not = icmp eq i32 %4685, 65
  br i1 %exitcond1860.not, label %4686, label %.preheader1299, !llvm.loop !46

4686:                                             ; preds = %4684
  %4687 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1298.preheader unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1298.preheader:                         ; preds = %4686
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 0)
          to label %4688 unwind label %4732

4688:                                             ; preds = %.preheader1298.preheader
  %4689 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.1 unwind label %4732

.preheader1298.1:                                 ; preds = %4688
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 3)
          to label %4690 unwind label %4732

4690:                                             ; preds = %.preheader1298.1
  %4691 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.2 unwind label %4732

.preheader1298.2:                                 ; preds = %4690
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 6)
          to label %4692 unwind label %4732

4692:                                             ; preds = %.preheader1298.2
  %4693 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.3 unwind label %4732

.preheader1298.3:                                 ; preds = %4692
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 9)
          to label %4694 unwind label %4732

4694:                                             ; preds = %.preheader1298.3
  %4695 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.4 unwind label %4732

.preheader1298.4:                                 ; preds = %4694
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 12)
          to label %4696 unwind label %4732

4696:                                             ; preds = %.preheader1298.4
  %4697 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.5 unwind label %4732

.preheader1298.5:                                 ; preds = %4696
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 15)
          to label %4698 unwind label %4732

4698:                                             ; preds = %.preheader1298.5
  %4699 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.6 unwind label %4732

.preheader1298.6:                                 ; preds = %4698
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 18)
          to label %4700 unwind label %4732

4700:                                             ; preds = %.preheader1298.6
  %4701 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.7 unwind label %4732

.preheader1298.7:                                 ; preds = %4700
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 21)
          to label %4702 unwind label %4732

4702:                                             ; preds = %.preheader1298.7
  %4703 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.8 unwind label %4732

.preheader1298.8:                                 ; preds = %4702
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 24)
          to label %4704 unwind label %4732

4704:                                             ; preds = %.preheader1298.8
  %4705 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.9 unwind label %4732

.preheader1298.9:                                 ; preds = %4704
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 27)
          to label %4706 unwind label %4732

4706:                                             ; preds = %.preheader1298.9
  %4707 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.10 unwind label %4732

.preheader1298.10:                                ; preds = %4706
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 30)
          to label %4708 unwind label %4732

4708:                                             ; preds = %.preheader1298.10
  %4709 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.11 unwind label %4732

.preheader1298.11:                                ; preds = %4708
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 33)
          to label %4710 unwind label %4732

4710:                                             ; preds = %.preheader1298.11
  %4711 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.12 unwind label %4732

.preheader1298.12:                                ; preds = %4710
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 36)
          to label %4712 unwind label %4732

4712:                                             ; preds = %.preheader1298.12
  %4713 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.13 unwind label %4732

.preheader1298.13:                                ; preds = %4712
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 39)
          to label %4714 unwind label %4732

4714:                                             ; preds = %.preheader1298.13
  %4715 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.14 unwind label %4732

.preheader1298.14:                                ; preds = %4714
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 42)
          to label %4716 unwind label %4732

4716:                                             ; preds = %.preheader1298.14
  %4717 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.15 unwind label %4732

.preheader1298.15:                                ; preds = %4716
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 45)
          to label %4718 unwind label %4732

4718:                                             ; preds = %.preheader1298.15
  %4719 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.16 unwind label %4732

.preheader1298.16:                                ; preds = %4718
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 48)
          to label %4720 unwind label %4732

4720:                                             ; preds = %.preheader1298.16
  %4721 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.17 unwind label %4732

.preheader1298.17:                                ; preds = %4720
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 51)
          to label %4722 unwind label %4732

4722:                                             ; preds = %.preheader1298.17
  %4723 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.18 unwind label %4732

.preheader1298.18:                                ; preds = %4722
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 54)
          to label %4724 unwind label %4732

4724:                                             ; preds = %.preheader1298.18
  %4725 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.19 unwind label %4732

.preheader1298.19:                                ; preds = %4724
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 57)
          to label %4726 unwind label %4732

4726:                                             ; preds = %.preheader1298.19
  %4727 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.20 unwind label %4732

.preheader1298.20:                                ; preds = %4726
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 60)
          to label %4728 unwind label %4732

4728:                                             ; preds = %.preheader1298.20
  %4729 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1298.21 unwind label %4732

.preheader1298.21:                                ; preds = %4728
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %272) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %272, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 63)
          to label %4730 unwind label %4732

4730:                                             ; preds = %.preheader1298.21
  %4731 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %272, i1 noundef zeroext true)
          to label %.preheader1295.preheader unwind label %4732

.preheader1295.preheader:                         ; preds = %4730
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  br label %.preheader1295

4732:                                             ; preds = %4730, %.preheader1298.21, %4728, %.preheader1298.20, %4726, %.preheader1298.19, %4724, %.preheader1298.18, %4722, %.preheader1298.17, %4720, %.preheader1298.16, %4718, %.preheader1298.15, %4716, %.preheader1298.14, %4714, %.preheader1298.13, %4712, %.preheader1298.12, %4710, %.preheader1298.11, %4708, %.preheader1298.10, %4706, %.preheader1298.9, %4704, %.preheader1298.8, %4702, %.preheader1298.7, %4700, %.preheader1298.6, %4698, %.preheader1298.5, %4696, %.preheader1298.4, %4694, %.preheader1298.3, %4692, %.preheader1298.2, %4690, %.preheader1298.1, %4688, %.preheader1298.preheader
  %4733 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %272) #6
  br label %.loopexit.split-lp1288

.preheader1295:                                   ; preds = %.preheader1295.preheader, %4739
  %.27951811 = phi i32 [ %4740, %4739 ], [ 0, %.preheader1295.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %273) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %273, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef %.27951811)
          to label %4734 unwind label %4737

4734:                                             ; preds = %.preheader1295
  %4735 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %273)
          to label %.invoke2918 unwind label %4737

.invoke2918:                                      ; preds = %4734
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %273) #6
  %.str.4..str.52920 = select i1 %4735, ptr @.str.4, ptr @.str.5
  %4736 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52920)
          to label %4739 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit

4737:                                             ; preds = %4734, %.preheader1295
  %4738 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %273) #6
  br label %.loopexit.split-lp1288

4739:                                             ; preds = %.invoke2918
  %4740 = add nuw nsw i32 %.27951811, 1
  %exitcond1861.not = icmp eq i32 %4740, 65
  br i1 %exitcond1861.not, label %4741, label %.preheader1295, !llvm.loop !47

4741:                                             ; preds = %4739
  %4742 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4743 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4743:                                             ; preds = %4741
  %4744 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 0)
          to label %4745 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4745:                                             ; preds = %4743
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %274) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %274, ptr noundef nonnull align 8 dereferenceable(48) %270)
          to label %4746 unwind label %4753

4746:                                             ; preds = %4745
  %4747 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSERKS0_(ptr noundef nonnull align 8 dereferenceable(48) %270, ptr noundef nonnull align 8 dereferenceable(48) %274)
          to label %4748 unwind label %4755

4748:                                             ; preds = %4746
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %274) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %274) #6
  br label %4749

4749:                                             ; preds = %4748, %4760
  %.37961812 = phi i32 [ 0, %4748 ], [ %4761, %4760 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %275) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %275, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef %.37961812)
          to label %4750 unwind label %4758

4750:                                             ; preds = %4749
  %4751 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %275)
          to label %.invoke2917 unwind label %4758

.invoke2917:                                      ; preds = %4750
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %275) #6
  %.str.4..str.52921 = select i1 %4751, ptr @.str.4, ptr @.str.5
  %4752 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52921)
          to label %4760 unwind label %.loopexit.split-lp1288.loopexit

4753:                                             ; preds = %4745
  %4754 = landingpad { ptr, i32 }
          cleanup
  br label %4757

4755:                                             ; preds = %4746
  %4756 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %274) #6
  br label %4757

4757:                                             ; preds = %4755, %4753
  %.pn1189 = phi { ptr, i32 } [ %4756, %4755 ], [ %4754, %4753 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %274) #6
  br label %.loopexit.split-lp1288

4758:                                             ; preds = %4750, %4749
  %4759 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %275) #6
  br label %.loopexit.split-lp1288

4760:                                             ; preds = %.invoke2917
  %4761 = add nuw nsw i32 %.37961812, 1
  %exitcond1862.not = icmp eq i32 %4761, 65
  br i1 %exitcond1862.not, label %4762, label %4749, !llvm.loop !48

4762:                                             ; preds = %4760
  %4763 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1291.preheader unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1291.preheader:                         ; preds = %4762
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 0)
          to label %4764 unwind label %4808

4764:                                             ; preds = %.preheader1291.preheader
  %4765 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.1 unwind label %4808

.preheader1291.1:                                 ; preds = %4764
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 3)
          to label %4766 unwind label %4808

4766:                                             ; preds = %.preheader1291.1
  %4767 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.2 unwind label %4808

.preheader1291.2:                                 ; preds = %4766
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 6)
          to label %4768 unwind label %4808

4768:                                             ; preds = %.preheader1291.2
  %4769 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.3 unwind label %4808

.preheader1291.3:                                 ; preds = %4768
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 9)
          to label %4770 unwind label %4808

4770:                                             ; preds = %.preheader1291.3
  %4771 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.4 unwind label %4808

.preheader1291.4:                                 ; preds = %4770
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 12)
          to label %4772 unwind label %4808

4772:                                             ; preds = %.preheader1291.4
  %4773 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.5 unwind label %4808

.preheader1291.5:                                 ; preds = %4772
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 15)
          to label %4774 unwind label %4808

4774:                                             ; preds = %.preheader1291.5
  %4775 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.6 unwind label %4808

.preheader1291.6:                                 ; preds = %4774
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 18)
          to label %4776 unwind label %4808

4776:                                             ; preds = %.preheader1291.6
  %4777 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.7 unwind label %4808

.preheader1291.7:                                 ; preds = %4776
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 21)
          to label %4778 unwind label %4808

4778:                                             ; preds = %.preheader1291.7
  %4779 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.8 unwind label %4808

.preheader1291.8:                                 ; preds = %4778
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 24)
          to label %4780 unwind label %4808

4780:                                             ; preds = %.preheader1291.8
  %4781 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.9 unwind label %4808

.preheader1291.9:                                 ; preds = %4780
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 27)
          to label %4782 unwind label %4808

4782:                                             ; preds = %.preheader1291.9
  %4783 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.10 unwind label %4808

.preheader1291.10:                                ; preds = %4782
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 30)
          to label %4784 unwind label %4808

4784:                                             ; preds = %.preheader1291.10
  %4785 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.11 unwind label %4808

.preheader1291.11:                                ; preds = %4784
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 33)
          to label %4786 unwind label %4808

4786:                                             ; preds = %.preheader1291.11
  %4787 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.12 unwind label %4808

.preheader1291.12:                                ; preds = %4786
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 36)
          to label %4788 unwind label %4808

4788:                                             ; preds = %.preheader1291.12
  %4789 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.13 unwind label %4808

.preheader1291.13:                                ; preds = %4788
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 39)
          to label %4790 unwind label %4808

4790:                                             ; preds = %.preheader1291.13
  %4791 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.14 unwind label %4808

.preheader1291.14:                                ; preds = %4790
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 42)
          to label %4792 unwind label %4808

4792:                                             ; preds = %.preheader1291.14
  %4793 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.15 unwind label %4808

.preheader1291.15:                                ; preds = %4792
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 45)
          to label %4794 unwind label %4808

4794:                                             ; preds = %.preheader1291.15
  %4795 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.16 unwind label %4808

.preheader1291.16:                                ; preds = %4794
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 48)
          to label %4796 unwind label %4808

4796:                                             ; preds = %.preheader1291.16
  %4797 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.17 unwind label %4808

.preheader1291.17:                                ; preds = %4796
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 51)
          to label %4798 unwind label %4808

4798:                                             ; preds = %.preheader1291.17
  %4799 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.18 unwind label %4808

.preheader1291.18:                                ; preds = %4798
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 54)
          to label %4800 unwind label %4808

4800:                                             ; preds = %.preheader1291.18
  %4801 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.19 unwind label %4808

.preheader1291.19:                                ; preds = %4800
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 57)
          to label %4802 unwind label %4808

4802:                                             ; preds = %.preheader1291.19
  %4803 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.20 unwind label %4808

.preheader1291.20:                                ; preds = %4802
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 60)
          to label %4804 unwind label %4808

4804:                                             ; preds = %.preheader1291.20
  %4805 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1291.21 unwind label %4808

.preheader1291.21:                                ; preds = %4804
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %276) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %276, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 63)
          to label %4806 unwind label %4808

4806:                                             ; preds = %.preheader1291.21
  %4807 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %276, i1 noundef zeroext false)
          to label %.preheader1286.preheader unwind label %4808

.preheader1286.preheader:                         ; preds = %4806
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  br label %.preheader1286

4808:                                             ; preds = %4806, %.preheader1291.21, %4804, %.preheader1291.20, %4802, %.preheader1291.19, %4800, %.preheader1291.18, %4798, %.preheader1291.17, %4796, %.preheader1291.16, %4794, %.preheader1291.15, %4792, %.preheader1291.14, %4790, %.preheader1291.13, %4788, %.preheader1291.12, %4786, %.preheader1291.11, %4784, %.preheader1291.10, %4782, %.preheader1291.9, %4780, %.preheader1291.8, %4778, %.preheader1291.7, %4776, %.preheader1291.6, %4774, %.preheader1291.5, %4772, %.preheader1291.4, %4770, %.preheader1291.3, %4768, %.preheader1291.2, %4766, %.preheader1291.1, %4764, %.preheader1291.preheader
  %4809 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %276) #6
  br label %.loopexit.split-lp1288

.preheader1286:                                   ; preds = %.preheader1286.preheader, %4815
  %.57981814 = phi i32 [ %4816, %4815 ], [ 0, %.preheader1286.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %277) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %277, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef %.57981814)
          to label %4810 unwind label %4813

4810:                                             ; preds = %.preheader1286
  %4811 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %277)
          to label %.invoke2916 unwind label %4813

.invoke2916:                                      ; preds = %4810
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %277) #6
  %.str.4..str.52922 = select i1 %4811, ptr @.str.4, ptr @.str.5
  %4812 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52922)
          to label %4815 unwind label %.loopexit1287

4813:                                             ; preds = %4810, %.preheader1286
  %4814 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %277) #6
  br label %.loopexit.split-lp1288

4815:                                             ; preds = %.invoke2916
  %4816 = add nuw nsw i32 %.57981814, 1
  %exitcond1863.not = icmp eq i32 %4816, 65
  br i1 %exitcond1863.not, label %4817, label %.preheader1286, !llvm.loop !49

4817:                                             ; preds = %4815
  %4818 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4819 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4819:                                             ; preds = %4817
  %4820 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4821 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4821:                                             ; preds = %4819
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %278) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %278, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 2)
          to label %4822 unwind label %4846

4822:                                             ; preds = %4821
  %4823 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4820, ptr noundef nonnull align 8 dereferenceable(32) %278)
          to label %4824 unwind label %4848

4824:                                             ; preds = %4822
  %4825 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4823, ptr noundef nonnull @.str.3)
          to label %4826 unwind label %4848

4826:                                             ; preds = %4824
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %278) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %278) #6
  %4827 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %270, ptr noundef nonnull @.str.8)
          to label %4828 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4828:                                             ; preds = %4826
  %4829 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4830 unwind label %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4830:                                             ; preds = %4828
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %279) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %279, ptr noundef nonnull align 8 dereferenceable(48) %270, i32 noundef 2)
          to label %4831 unwind label %4851

4831:                                             ; preds = %4830
  %4832 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4829, ptr noundef nonnull align 8 dereferenceable(32) %279)
          to label %4833 unwind label %4853

4833:                                             ; preds = %4831
  %4834 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4832, ptr noundef nonnull @.str.3)
          to label %4835 unwind label %4853

4835:                                             ; preds = %4833
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %279) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %279) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %270) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %270) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %268) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %268) #6
  %4836 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.11)
  %4837 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4836, ptr noundef nonnull @.str.2)
  %4838 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4837, i32 noundef 65)
  %4839 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4838, ptr noundef nonnull @.str.2)
  %4840 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8) %4839, i32 noundef 111)
  %4841 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %4840, ptr noundef nonnull @.str.3)
  call void @llvm.lifetime.start.p0(i64 40, ptr nonnull %280) #6
  call void @llvm.lifetime.start.p0(i64 20, ptr nonnull %281) #6
  call void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20) %281, i32 noundef 65, i32 noundef 111)
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEEC2ERKS1_NS_16sc_context_beginE(ptr noundef nonnull align 8 dereferenceable(40) %280, ptr noundef nonnull align 4 dereferenceable(20) %281, i32 noundef 0)
  call void @llvm.lifetime.end.p0(i64 20, ptr nonnull %281) #6
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %282) #6
  invoke void @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 0, ptr noundef null)
          to label %.preheader1282 unwind label %4857

.preheader1282:                                   ; preds = %4835, %4861
  %.01815 = phi i32 [ %4862, %4861 ], [ 0, %4835 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %283) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %283, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef %.01815)
          to label %4842 unwind label %4859

4842:                                             ; preds = %.preheader1282
  %4843 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %283)
          to label %.invoke2926 unwind label %4859

.invoke2926:                                      ; preds = %4842
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %283) #6
  %4844 = select i1 %4843, ptr @.str.4, ptr @.str.5
  %4845 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %4844)
          to label %4861 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit

4846:                                             ; preds = %4821
  %4847 = landingpad { ptr, i32 }
          cleanup
  br label %4850

4848:                                             ; preds = %4824, %4822
  %4849 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %278) #6
  br label %4850

4850:                                             ; preds = %4848, %4846
  %.pn1191 = phi { ptr, i32 } [ %4849, %4848 ], [ %4847, %4846 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %278) #6
  br label %.loopexit.split-lp1288

4851:                                             ; preds = %4830
  %4852 = landingpad { ptr, i32 }
          cleanup
  br label %4855

4853:                                             ; preds = %4833, %4831
  %4854 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %279) #6
  br label %4855

4855:                                             ; preds = %4853, %4851
  %.pn1193 = phi { ptr, i32 } [ %4854, %4853 ], [ %4852, %4851 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %279) #6
  br label %.loopexit.split-lp1288

.loopexit.split-lp1288:                           ; preds = %.loopexit1287, %.loopexit.split-lp1288.loopexit.split-lp.loopexit, %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp1288.loopexit, %4855, %4850, %4813, %4808, %4758, %4757, %4737, %4732, %4682
  %.pn1204 = phi { ptr, i32 } [ %4683, %4682 ], [ %4733, %4732 ], [ %4738, %4737 ], [ %4759, %4758 ], [ %4809, %4808 ], [ %4814, %4813 ], [ %.pn1193, %4855 ], [ %.pn1191, %4850 ], [ %.pn1189, %4757 ], [ %lpad.loopexit1289, %.loopexit1287 ], [ %lpad.loopexit1292, %.loopexit.split-lp1288.loopexit ], [ %lpad.loopexit1296, %.loopexit.split-lp1288.loopexit.split-lp.loopexit ], [ %lpad.loopexit1300, %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1301, %.loopexit.split-lp1288.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %270) #6
  br label %4856

4856:                                             ; preds = %.loopexit.split-lp1288, %4680
  %.pn1204.pn = phi { ptr, i32 } [ %.pn1204, %.loopexit.split-lp1288 ], [ %4681, %4680 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %270) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %268) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %268) #6
  br label %5024

4857:                                             ; preds = %4835
  %4858 = landingpad { ptr, i32 }
          cleanup
  br label %5023

4859:                                             ; preds = %4842, %.preheader1282
  %4860 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %283) #6
  br label %.loopexit.split-lp

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

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

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

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

.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp: ; preds = %5005, %5003, %4996, %4994, %4939, %4920, %4918, %4863
  %lpad.loopexit.split-lp1284 = landingpad { ptr, i32 }
          cleanup
  br label %.loopexit.split-lp

4861:                                             ; preds = %.invoke2926
  %4862 = add nuw nsw i32 %.01815, 1
  %exitcond1864.not = icmp eq i32 %4862, 65
  br i1 %exitcond1864.not, label %4863, label %.preheader1282, !llvm.loop !50

4863:                                             ; preds = %4861
  %4864 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1281.preheader unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1281.preheader:                         ; preds = %4863
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 0)
          to label %4865 unwind label %4909

4865:                                             ; preds = %.preheader1281.preheader
  %4866 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.1 unwind label %4909

.preheader1281.1:                                 ; preds = %4865
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 3)
          to label %4867 unwind label %4909

4867:                                             ; preds = %.preheader1281.1
  %4868 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.2 unwind label %4909

.preheader1281.2:                                 ; preds = %4867
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 6)
          to label %4869 unwind label %4909

4869:                                             ; preds = %.preheader1281.2
  %4870 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.3 unwind label %4909

.preheader1281.3:                                 ; preds = %4869
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 9)
          to label %4871 unwind label %4909

4871:                                             ; preds = %.preheader1281.3
  %4872 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.4 unwind label %4909

.preheader1281.4:                                 ; preds = %4871
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 12)
          to label %4873 unwind label %4909

4873:                                             ; preds = %.preheader1281.4
  %4874 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.5 unwind label %4909

.preheader1281.5:                                 ; preds = %4873
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 15)
          to label %4875 unwind label %4909

4875:                                             ; preds = %.preheader1281.5
  %4876 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.6 unwind label %4909

.preheader1281.6:                                 ; preds = %4875
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 18)
          to label %4877 unwind label %4909

4877:                                             ; preds = %.preheader1281.6
  %4878 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.7 unwind label %4909

.preheader1281.7:                                 ; preds = %4877
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 21)
          to label %4879 unwind label %4909

4879:                                             ; preds = %.preheader1281.7
  %4880 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.8 unwind label %4909

.preheader1281.8:                                 ; preds = %4879
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 24)
          to label %4881 unwind label %4909

4881:                                             ; preds = %.preheader1281.8
  %4882 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.9 unwind label %4909

.preheader1281.9:                                 ; preds = %4881
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 27)
          to label %4883 unwind label %4909

4883:                                             ; preds = %.preheader1281.9
  %4884 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.10 unwind label %4909

.preheader1281.10:                                ; preds = %4883
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 30)
          to label %4885 unwind label %4909

4885:                                             ; preds = %.preheader1281.10
  %4886 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.11 unwind label %4909

.preheader1281.11:                                ; preds = %4885
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 33)
          to label %4887 unwind label %4909

4887:                                             ; preds = %.preheader1281.11
  %4888 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.12 unwind label %4909

.preheader1281.12:                                ; preds = %4887
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 36)
          to label %4889 unwind label %4909

4889:                                             ; preds = %.preheader1281.12
  %4890 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.13 unwind label %4909

.preheader1281.13:                                ; preds = %4889
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 39)
          to label %4891 unwind label %4909

4891:                                             ; preds = %.preheader1281.13
  %4892 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.14 unwind label %4909

.preheader1281.14:                                ; preds = %4891
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 42)
          to label %4893 unwind label %4909

4893:                                             ; preds = %.preheader1281.14
  %4894 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.15 unwind label %4909

.preheader1281.15:                                ; preds = %4893
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 45)
          to label %4895 unwind label %4909

4895:                                             ; preds = %.preheader1281.15
  %4896 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.16 unwind label %4909

.preheader1281.16:                                ; preds = %4895
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 48)
          to label %4897 unwind label %4909

4897:                                             ; preds = %.preheader1281.16
  %4898 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.17 unwind label %4909

.preheader1281.17:                                ; preds = %4897
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 51)
          to label %4899 unwind label %4909

4899:                                             ; preds = %.preheader1281.17
  %4900 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.18 unwind label %4909

.preheader1281.18:                                ; preds = %4899
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 54)
          to label %4901 unwind label %4909

4901:                                             ; preds = %.preheader1281.18
  %4902 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.19 unwind label %4909

.preheader1281.19:                                ; preds = %4901
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 57)
          to label %4903 unwind label %4909

4903:                                             ; preds = %.preheader1281.19
  %4904 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.20 unwind label %4909

.preheader1281.20:                                ; preds = %4903
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 60)
          to label %4905 unwind label %4909

4905:                                             ; preds = %.preheader1281.20
  %4906 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1281.21 unwind label %4909

.preheader1281.21:                                ; preds = %4905
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %284) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %284, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 63)
          to label %4907 unwind label %4909

4907:                                             ; preds = %.preheader1281.21
  %4908 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %284, i1 noundef zeroext true)
          to label %.preheader1278.preheader unwind label %4909

.preheader1278.preheader:                         ; preds = %4907
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  br label %.preheader1278

4909:                                             ; preds = %4907, %.preheader1281.21, %4905, %.preheader1281.20, %4903, %.preheader1281.19, %4901, %.preheader1281.18, %4899, %.preheader1281.17, %4897, %.preheader1281.16, %4895, %.preheader1281.15, %4893, %.preheader1281.14, %4891, %.preheader1281.13, %4889, %.preheader1281.12, %4887, %.preheader1281.11, %4885, %.preheader1281.10, %4883, %.preheader1281.9, %4881, %.preheader1281.8, %4879, %.preheader1281.7, %4877, %.preheader1281.6, %4875, %.preheader1281.5, %4873, %.preheader1281.4, %4871, %.preheader1281.3, %4869, %.preheader1281.2, %4867, %.preheader1281.1, %4865, %.preheader1281.preheader
  %4910 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %284) #6
  br label %.loopexit.split-lp

.preheader1278:                                   ; preds = %.preheader1278.preheader, %4916
  %.21817 = phi i32 [ %4917, %4916 ], [ 0, %.preheader1278.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %285) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %285, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef %.21817)
          to label %4911 unwind label %4914

4911:                                             ; preds = %.preheader1278
  %4912 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %285)
          to label %.invoke2925 unwind label %4914

.invoke2925:                                      ; preds = %4911
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %285) #6
  %.str.4..str.52927 = select i1 %4912, ptr @.str.4, ptr @.str.5
  %4913 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52927)
          to label %4916 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit

4914:                                             ; preds = %4911, %.preheader1278
  %4915 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %285) #6
  br label %.loopexit.split-lp

4916:                                             ; preds = %.invoke2925
  %4917 = add nuw nsw i32 %.21817, 1
  %exitcond1865.not = icmp eq i32 %4917, 65
  br i1 %exitcond1865.not, label %4918, label %.preheader1278, !llvm.loop !51

4918:                                             ; preds = %4916
  %4919 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4920 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4920:                                             ; preds = %4918
  %4921 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 0)
          to label %4922 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4922:                                             ; preds = %4920
  call void @llvm.lifetime.start.p0(i64 48, ptr nonnull %286) #6
  invoke void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_ufix") align 8 %286, ptr noundef nonnull align 8 dereferenceable(48) %282)
          to label %4923 unwind label %4930

4923:                                             ; preds = %4922
  %4924 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSERKNS_8sc_fxnumE(ptr noundef nonnull align 8 dereferenceable(48) %282, ptr noundef nonnull align 8 dereferenceable(48) %286)
          to label %4925 unwind label %4932

4925:                                             ; preds = %4923
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %286) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %286) #6
  br label %4926

4926:                                             ; preds = %4925, %4937
  %.31818 = phi i32 [ 0, %4925 ], [ %4938, %4937 ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %287) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %287, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef %.31818)
          to label %4927 unwind label %4935

4927:                                             ; preds = %4926
  %4928 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %287)
          to label %.invoke2924 unwind label %4935

.invoke2924:                                      ; preds = %4927
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %287) #6
  %.str.4..str.52928 = select i1 %4928, ptr @.str.4, ptr @.str.5
  %4929 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52928)
          to label %4937 unwind label %.loopexit.split-lp.loopexit

4930:                                             ; preds = %4922
  %4931 = landingpad { ptr, i32 }
          cleanup
  br label %4934

4932:                                             ; preds = %4923
  %4933 = landingpad { ptr, i32 }
          cleanup
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %286) #6
  br label %4934

4934:                                             ; preds = %4932, %4930
  %.pn1195 = phi { ptr, i32 } [ %4933, %4932 ], [ %4931, %4930 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %286) #6
  br label %.loopexit.split-lp

4935:                                             ; preds = %4927, %4926
  %4936 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %287) #6
  br label %.loopexit.split-lp

4937:                                             ; preds = %.invoke2924
  %4938 = add nuw nsw i32 %.31818, 1
  %exitcond1866.not = icmp eq i32 %4938, 65
  br i1 %exitcond1866.not, label %4939, label %4926, !llvm.loop !52

4939:                                             ; preds = %4937
  %4940 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.6)
          to label %.preheader1274.preheader unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

.preheader1274.preheader:                         ; preds = %4939
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 0)
          to label %4941 unwind label %4985

4941:                                             ; preds = %.preheader1274.preheader
  %4942 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.1 unwind label %4985

.preheader1274.1:                                 ; preds = %4941
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 3)
          to label %4943 unwind label %4985

4943:                                             ; preds = %.preheader1274.1
  %4944 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.2 unwind label %4985

.preheader1274.2:                                 ; preds = %4943
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 6)
          to label %4945 unwind label %4985

4945:                                             ; preds = %.preheader1274.2
  %4946 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.3 unwind label %4985

.preheader1274.3:                                 ; preds = %4945
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 9)
          to label %4947 unwind label %4985

4947:                                             ; preds = %.preheader1274.3
  %4948 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.4 unwind label %4985

.preheader1274.4:                                 ; preds = %4947
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 12)
          to label %4949 unwind label %4985

4949:                                             ; preds = %.preheader1274.4
  %4950 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.5 unwind label %4985

.preheader1274.5:                                 ; preds = %4949
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 15)
          to label %4951 unwind label %4985

4951:                                             ; preds = %.preheader1274.5
  %4952 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.6 unwind label %4985

.preheader1274.6:                                 ; preds = %4951
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 18)
          to label %4953 unwind label %4985

4953:                                             ; preds = %.preheader1274.6
  %4954 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.7 unwind label %4985

.preheader1274.7:                                 ; preds = %4953
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 21)
          to label %4955 unwind label %4985

4955:                                             ; preds = %.preheader1274.7
  %4956 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.8 unwind label %4985

.preheader1274.8:                                 ; preds = %4955
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 24)
          to label %4957 unwind label %4985

4957:                                             ; preds = %.preheader1274.8
  %4958 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.9 unwind label %4985

.preheader1274.9:                                 ; preds = %4957
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 27)
          to label %4959 unwind label %4985

4959:                                             ; preds = %.preheader1274.9
  %4960 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.10 unwind label %4985

.preheader1274.10:                                ; preds = %4959
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 30)
          to label %4961 unwind label %4985

4961:                                             ; preds = %.preheader1274.10
  %4962 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.11 unwind label %4985

.preheader1274.11:                                ; preds = %4961
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 33)
          to label %4963 unwind label %4985

4963:                                             ; preds = %.preheader1274.11
  %4964 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.12 unwind label %4985

.preheader1274.12:                                ; preds = %4963
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 36)
          to label %4965 unwind label %4985

4965:                                             ; preds = %.preheader1274.12
  %4966 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.13 unwind label %4985

.preheader1274.13:                                ; preds = %4965
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 39)
          to label %4967 unwind label %4985

4967:                                             ; preds = %.preheader1274.13
  %4968 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.14 unwind label %4985

.preheader1274.14:                                ; preds = %4967
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 42)
          to label %4969 unwind label %4985

4969:                                             ; preds = %.preheader1274.14
  %4970 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.15 unwind label %4985

.preheader1274.15:                                ; preds = %4969
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 45)
          to label %4971 unwind label %4985

4971:                                             ; preds = %.preheader1274.15
  %4972 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.16 unwind label %4985

.preheader1274.16:                                ; preds = %4971
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 48)
          to label %4973 unwind label %4985

4973:                                             ; preds = %.preheader1274.16
  %4974 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.17 unwind label %4985

.preheader1274.17:                                ; preds = %4973
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 51)
          to label %4975 unwind label %4985

4975:                                             ; preds = %.preheader1274.17
  %4976 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.18 unwind label %4985

.preheader1274.18:                                ; preds = %4975
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 54)
          to label %4977 unwind label %4985

4977:                                             ; preds = %.preheader1274.18
  %4978 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.19 unwind label %4985

.preheader1274.19:                                ; preds = %4977
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 57)
          to label %4979 unwind label %4985

4979:                                             ; preds = %.preheader1274.19
  %4980 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.20 unwind label %4985

.preheader1274.20:                                ; preds = %4979
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 60)
          to label %4981 unwind label %4985

4981:                                             ; preds = %.preheader1274.20
  %4982 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader1274.21 unwind label %4985

.preheader1274.21:                                ; preds = %4981
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %288) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %288, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 63)
          to label %4983 unwind label %4985

4983:                                             ; preds = %.preheader1274.21
  %4984 = invoke noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12) %288, i1 noundef zeroext false)
          to label %.preheader.preheader unwind label %4985

.preheader.preheader:                             ; preds = %4983
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  br label %.preheader

4985:                                             ; preds = %4983, %.preheader1274.21, %4981, %.preheader1274.20, %4979, %.preheader1274.19, %4977, %.preheader1274.18, %4975, %.preheader1274.17, %4973, %.preheader1274.16, %4971, %.preheader1274.15, %4969, %.preheader1274.14, %4967, %.preheader1274.13, %4965, %.preheader1274.12, %4963, %.preheader1274.11, %4961, %.preheader1274.10, %4959, %.preheader1274.9, %4957, %.preheader1274.8, %4955, %.preheader1274.7, %4953, %.preheader1274.6, %4951, %.preheader1274.5, %4949, %.preheader1274.4, %4947, %.preheader1274.3, %4945, %.preheader1274.2, %4943, %.preheader1274.1, %4941, %.preheader1274.preheader
  %4986 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %288) #6
  br label %.loopexit.split-lp

.preheader:                                       ; preds = %.preheader.preheader, %4992
  %.51820 = phi i32 [ %4993, %4992 ], [ 0, %.preheader.preheader ]
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %289) #6
  invoke void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind nonnull writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8 %289, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef %.51820)
          to label %4987 unwind label %4990

4987:                                             ; preds = %.preheader
  %4988 = invoke noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12) %289)
          to label %.invoke2923 unwind label %4990

.invoke2923:                                      ; preds = %4987
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %289) #6
  %.str.4..str.52929 = select i1 %4988, ptr @.str.4, ptr @.str.5
  %4989 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull %.str.4..str.52929)
          to label %4992 unwind label %.loopexit

4990:                                             ; preds = %4987, %.preheader
  %4991 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %289) #6
  br label %.loopexit.split-lp

4992:                                             ; preds = %.invoke2923
  %4993 = add nuw nsw i32 %.51820, 1
  %exitcond1867.not = icmp eq i32 %4993, 65
  br i1 %exitcond1867.not, label %4994, label %.preheader, !llvm.loop !53

4994:                                             ; preds = %4992
  %4995 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.3)
          to label %4996 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4996:                                             ; preds = %4994
  %4997 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %4998 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

4998:                                             ; preds = %4996
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %290) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %290, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 2)
          to label %4999 unwind label %5013

4999:                                             ; preds = %4998
  %5000 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %4997, ptr noundef nonnull align 8 dereferenceable(32) %290)
          to label %5001 unwind label %5015

5001:                                             ; preds = %4999
  %5002 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5000, ptr noundef nonnull @.str.3)
          to label %5003 unwind label %5015

5003:                                             ; preds = %5001
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %290) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %290) #6
  %5004 = invoke noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEPKc(ptr noundef nonnull align 8 dereferenceable(48) %282, ptr noundef nonnull @.str.8)
          to label %5005 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

5005:                                             ; preds = %5003
  %5006 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %0, ptr noundef nonnull @.str.7)
          to label %5007 unwind label %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp

5007:                                             ; preds = %5005
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %291) #6
  invoke void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %291, ptr noundef nonnull align 8 dereferenceable(48) %282, i32 noundef 2)
          to label %5008 unwind label %5018

5008:                                             ; preds = %5007
  %5009 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKNSt7__cxx1112basic_stringIS4_S5_T1_EE(ptr noundef nonnull align 8 dereferenceable(8) %5006, ptr noundef nonnull align 8 dereferenceable(32) %291)
          to label %5010 unwind label %5020

5010:                                             ; preds = %5008
  %5011 = invoke noundef nonnull align 8 dereferenceable(8) ptr @_ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc(ptr noundef nonnull align 8 dereferenceable(8) %5009, ptr noundef nonnull @.str.3)
          to label %5012 unwind label %5020

5012:                                             ; preds = %5010
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %291) #6
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %291) #6
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %282) #6
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %282) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %280) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %280) #6
  ret void

5013:                                             ; preds = %4998
  %5014 = landingpad { ptr, i32 }
          cleanup
  br label %5017

5015:                                             ; preds = %5001, %4999
  %5016 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %290) #6
  br label %5017

5017:                                             ; preds = %5015, %5013
  %.pn1197 = phi { ptr, i32 } [ %5016, %5015 ], [ %5014, %5013 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %290) #6
  br label %.loopexit.split-lp

5018:                                             ; preds = %5007
  %5019 = landingpad { ptr, i32 }
          cleanup
  br label %5022

5020:                                             ; preds = %5010, %5008
  %5021 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %291) #6
  br label %5022

5022:                                             ; preds = %5020, %5018
  %.pn1199 = phi { ptr, i32 } [ %5021, %5020 ], [ %5019, %5018 ]
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %291) #6
  br label %.loopexit.split-lp

.loopexit.split-lp:                               ; preds = %.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit, %.loopexit.split-lp.loopexit, %5022, %5017, %4990, %4985, %4935, %4934, %4914, %4909, %4859
  %.pn1201 = phi { ptr, i32 } [ %4860, %4859 ], [ %4910, %4909 ], [ %4915, %4914 ], [ %4936, %4935 ], [ %4986, %4985 ], [ %4991, %4990 ], [ %.pn1199, %5022 ], [ %.pn1197, %5017 ], [ %.pn1195, %4934 ], [ %lpad.loopexit, %.loopexit ], [ %lpad.loopexit1275, %.loopexit.split-lp.loopexit ], [ %lpad.loopexit1279, %.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit1283, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit ], [ %lpad.loopexit.split-lp1284, %.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp.loopexit.split-lp ]
  call void @_ZN5sc_dt8sc_fxnumD2Ev(ptr noundef nonnull align 8 dereferenceable(48) %282) #6
  br label %5023

5023:                                             ; preds = %.loopexit.split-lp, %4857
  %.pn1201.pn = phi { ptr, i32 } [ %.pn1201, %.loopexit.split-lp ], [ %4858, %4857 ]
  call void @llvm.lifetime.end.p0(i64 48, ptr nonnull %282) #6
  call void @_ZN5sc_dt10sc_contextINS_16sc_fxtype_paramsEED2Ev(ptr noundef nonnull align 8 dereferenceable(40) %280) #6
  call void @llvm.lifetime.end.p0(i64 40, ptr nonnull %280) #6
  br label %5024

5024:                                             ; preds = %5023, %4856, %4679, %4502, %4325, %4148, %3971, %3794, %3617, %3440, %3263, %3086, %2909, %2769, %2629, %2489, %2349, %2093, %1837, %1581, %1325, %1069, %813, %557
  %.pn1270.pn.pn = phi { ptr, i32 } [ %.pn1270.pn, %557 ], [ %.pn1267.pn, %813 ], [ %.pn1264.pn, %1069 ], [ %.pn1261.pn, %1325 ], [ %.pn1258.pn, %1581 ], [ %.pn1255.pn, %1837 ], [ %.pn1252.pn, %2093 ], [ %.pn1249.pn, %2349 ], [ %.pn1246.pn, %2489 ], [ %.pn1243.pn, %2629 ], [ %.pn1240.pn, %2769 ], [ %.pn1237.pn, %2909 ], [ %.pn1234.pn, %3086 ], [ %.pn1231.pn, %3263 ], [ %.pn1228.pn, %3440 ], [ %.pn1225.pn, %3617 ], [ %.pn1222.pn, %3794 ], [ %.pn1219.pn, %3971 ], [ %.pn1216.pn, %4148 ], [ %.pn1213.pn, %4325 ], [ %.pn1210.pn, %4502 ], [ %.pn1207.pn, %4679 ], [ %.pn1204.pn, %4856 ], [ %.pn1201.pn, %5023 ]
  resume { ptr, i32 } %.pn1270.pn.pn
}

; 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 #1

declare noundef nonnull align 8 dereferenceable(8) ptr @_ZNSolsEi(ptr noundef nonnull align 8 dereferenceable(8), i32 noundef) local_unnamed_addr #2

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt16sc_fxtype_paramsC2Eii(ptr noundef nonnull align 4 dereferenceable(20), i32 noundef, i32 noundef) unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt6sc_fixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fxnumixEi(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_fxnum_bitref") align 8, ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZNK5sc_dt15sc_fxnum_bitrefcvbEv(ptr noundef nonnull align 8 dereferenceable(12)) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(12) ptr @_ZN5sc_dt15sc_fxnum_bitrefaSEb(ptr noundef nonnull align 8 dereferenceable(12), i1 noundef zeroext) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt6sc_fixaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5sc_dt6sc_fixcoEv(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_fix") align 8, ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #1 align 2

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

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

declare void @_ZNK5sc_dt8sc_fxnum9to_stringB5cxx11ENS_9sc_numrepE(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #2

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

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt7sc_ufixC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt7sc_ufixaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZNK5sc_dt7sc_ufixcoEv(ptr dead_on_unwind noalias writable sret(%"class.sc_dt::sc_ufix") align 8, ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi13ELi0ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi5ELi13ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi65ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi33ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt8sc_fixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEC2EiPNS_17sc_fxnum_observerE(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef, ptr noundef) unnamed_addr #1 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef nonnull align 8 dereferenceable(48) ptr @_ZN5sc_dt9sc_ufixedILi65ELi111ELNS_9sc_q_modeE5ELNS_9sc_o_modeE3ELi0EEaSEi(ptr noundef nonnull align 8 dereferenceable(48), i32 noundef) local_unnamed_addr #1 align 2

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

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

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

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

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = distinct !{!5, !6}
!6 = !{!"llvm.loop.mustprogress"}
!7 = distinct !{!7, !6}
!8 = distinct !{!8, !6}
!9 = distinct !{!9, !6}
!10 = distinct !{!10, !6}
!11 = distinct !{!11, !6}
!12 = distinct !{!12, !6}
!13 = distinct !{!13, !6}
!14 = distinct !{!14, !6}
!15 = distinct !{!15, !6}
!16 = distinct !{!16, !6}
!17 = distinct !{!17, !6}
!18 = distinct !{!18, !6}
!19 = distinct !{!19, !6}
!20 = distinct !{!20, !6}
!21 = distinct !{!21, !6}
!22 = distinct !{!22, !6}
!23 = distinct !{!23, !6}
!24 = distinct !{!24, !6}
!25 = distinct !{!25, !6}
!26 = distinct !{!26, !6}
!27 = distinct !{!27, !6}
!28 = distinct !{!28, !6}
!29 = distinct !{!29, !6}
!30 = distinct !{!30, !6}
!31 = distinct !{!31, !6}
!32 = distinct !{!32, !6}
!33 = distinct !{!33, !6}
!34 = distinct !{!34, !6}
!35 = distinct !{!35, !6}
!36 = distinct !{!36, !6}
!37 = distinct !{!37, !6}
!38 = distinct !{!38, !6}
!39 = distinct !{!39, !6}
!40 = distinct !{!40, !6}
!41 = distinct !{!41, !6}
!42 = distinct !{!42, !6}
!43 = distinct !{!43, !6}
!44 = distinct !{!44, !6}
!45 = distinct !{!45, !6}
!46 = distinct !{!46, !6}
!47 = distinct !{!47, !6}
!48 = distinct !{!48, !6}
!49 = distinct !{!49, !6}
!50 = distinct !{!50, !6}
!51 = distinct !{!51, !6}
!52 = distinct !{!52, !6}
!53 = distinct !{!53, !6}


; Effective O3 passes: GVNPass,GlobalOptPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,SROAPass,SimplifyCFGPass,TailCallElimPass