Body::Array{Float64,1}
│╻ size335 1 ── %1 = (Base.arraysize)(s_path, 1)::Int64
│╻ getproperty336 │ %2 = (Base.getfield)(res, :cdp)::ContinuousDP{1,Array{Float64,1},Array{Float64,1},Tf,Tg,Tlb,Tub} where Tub<:Function where Tlb<:Function where Tg<:Function where Tf<:Function
││ │ %3 = (Base.getfield)(%2, :weights)::Array{Float64,1}
│╻ cumsum │ invoke Core.kwfunc(Base.cumsum::Any)
││ │ %5 = Base.cumsum::typeof(cumsum)
││╻╷╷╷╷ #cumsum │ %6 = (Base.slt_int)(0, 1)::Bool
│││┃│││ isempty └─── goto #3 if not %6
││││┃││ iterate 2 ── goto #4
│││││┃│ iterate 3 ── invoke Base.getindex(()::Tuple{}, 1::Int64)
││││││┃ iterate └─── $(Expr(:unreachable))
││││││ 4 ┄─ goto #5
││││╻ iterate 5 ── goto #6
││││ 6 ── goto #7
│││ 7 ── %14 = invoke Base.:(#cumsum#572)(1::Int64, %5::Function, %3::Array{Float64,1})::Array{Float64,1}
│││ └─── goto #8
││ 8 ── goto #9
│╻ -337 9 ── %17 = (Base.sub_int)(%1, 1)::Int64
││╻╷╷╷ rand │ %18 = $(Expr(:foreigncall, :(:jl_alloc_array_1d), Array{Float64,1}, svec(Any, Int64), :(:ccall), 2, Array{Float64,1}, :(%17), :(%17)))::Array{Float64,1}
│││╻╷ rand! │ %19 = (Base.arraylen)(%18)::Int64
││││╻ rand! │ %20 = (Base.mul_int)(8, %19)::Int64
│││││╻ _rand! │ %21 = (Base.arraylen)(%18)::Int64
││││││╻ * │ %22 = (Base.mul_int)(8, %21)::Int64
││││││╻ <= │ %23 = (Base.sle_int)(%20, %22)::Bool
││││││ └─── goto #11 if not %23
││││││ 10 ─ goto #12
│ 11 ─ nothing
││││││ 12 ┄ %27 = φ (#10 => true, #11 => false)::Bool
││││││ └─── goto #14 if not %27
││││││╻ macro expansion 13 ─ %29 = $(Expr(:gc_preserve_begin, :(%18)))
│││││││╻╷ pointer │ %30 = $(Expr(:foreigncall, :(:jl_array_ptr), Ptr{Float64}, svec(Any), :(:ccall), 1, :(%18)))::Ptr{Float64}
│││││││╻ Type │ %31 = %new(Random.UnsafeView{Float64}, %30, %19)::Random.UnsafeView{Float64}
│││││││ │ invoke Random.rand!(_2::MersenneTwister, %31::Random.UnsafeView{Float64}, $(QuoteNode(Random.SamplerTrivial{Random.CloseOpen01{Float64},Float64}(Random.CloseOpen01{Float64}())))::Random.SamplerTrivial{Random.CloseOpen01{Float64},Float64})
│││││││ │ $(Expr(:gc_preserve_end, :(%29)))
│││││││ └─── goto #15
││││││╻ Type 14 ─ %35 = %new(Core.AssertionError, "sizeof(Float64) * n64 <= sizeof(T) * length(A) && isbitstype(T)")::AssertionError
││││││ │ (Base.throw)(%35)
││││││ └─── $(Expr(:unreachable))
│││││ 15 ┄ goto #16
││││ 16 ─ goto #17
│││ 17 ─ goto #18
││ 18 ─ goto #19
│╻ -338 19 ─ %42 = (Base.sub_int)(%1, 1)::Int64
││╻ Type │ %43 = $(Expr(:foreigncall, :(:jl_alloc_array_1d), Array{Int64,1}, svec(Any, Int64), :(:ccall), 2, Array{Int64,1}, :(%42), :(%42)))::Array{Int64,1}
│╻ -339 │ %44 = (Base.sub_int)(%1, 1)::Int64
││╻╷╷╷ Type │ %45 = (Base.sle_int)(1, %44)::Bool
│││╻ unitrange_last │ (Base.sub_int)(%44, 1)
││││ │ %47 = (Base.ifelse)(%45, %44, 0)::Int64
││╻╷╷ isempty │ %48 = (Base.slt_int)(%47, 1)::Bool
││ └─── goto #21 if not %48
││ 20 ─ goto #22
││ 21 ─ goto #22
│ 22 ┄ %52 = φ (#20 => true, #21 => false)::Bool
│ │ %53 = φ (#21 => 1)::Int64
│ │ %54 = φ (#21 => 1)::Int64
│ │ %55 = (Base.not_int)(%52)::Bool
│ └─── goto #38 if not %55
│ 23 ┄ %57 = φ (#22 => %53, #37 => %92)::Int64
│ │ %58 = φ (#22 => %54, #37 => %93)::Int64
│╻ getindex340 │ %59 = (Base.arrayref)(true, %18, %57)::Float64
││╻╷╷╷╷ #searchsortedlast#5 │ %60 = (Base.arraysize)(%14, 1)::Int64
│││╻╷╷╷ searchsortedlast │ %61 = (Base.slt_int)(%60, 0)::Bool
││││┃│││││ axes │ %62 = (Base.ifelse)(%61, 0, %60)::Int64
││││╻╷ searchsortedlast └─── %63 = (Base.add_int)(%62, 1)::Int64
││││╻ searchsortedlast 24 ┄ %64 = φ (#23 => 0, #28 => %78)::Int64
│││││ │ %65 = φ (#23 => %63, #28 => %79)::Int64
│││││╻ - │ %66 = (Base.sub_int)(%65, 1)::Int64
│││││╻ < │ %67 = (Base.slt_int)(%64, %66)::Bool
│││││ └─── goto #29 if not %67
│││││╻ + 25 ─ %69 = (Base.add_int)(%64, %65)::Int64
││││││╻ >>> │ %70 = (Base.lshr_int)(%69, 0x0000000000000001)::Int64
││││││╻ << │ %71 = (Base.shl_int)(%69, 0xffffffffffffffff)::Int64
││││││ │ %72 = (Base.ifelse)(true, %70, %71)::Int64
│││││╻ getindex │ %73 = (Base.arrayref)(false, %14, %72)::Float64
││││││╻ isless │ %74 = (Base.fpislt)(%59, %73)::Bool
│││││ └─── goto #27 if not %74
│││││ 26 ─ goto #28
│ 27 ─ nothing
│││││ 28 ┄ %78 = φ (#26 => %64, #27 => %72)::Int64
│││││ │ %79 = φ (#26 => %72, #27 => %65)::Int64
│││││ └─── goto #24
│││││ 29 ─ goto #30
││││ 30 ─ goto #31
│││ 31 ─ goto #32
││ 32 ─ goto #33
│╻ + 33 ─ %85 = (Base.add_int)(%64, 1)::Int64
│╻ setindex! │ (Base.arrayset)(true, %43, %85, %57)
││╻ == │ %87 = (%58 === %47)::Bool
││ └─── goto #35 if not %87
││ 34 ─ goto #36
││╻ + 35 ─ %90 = (Base.add_int)(%58, 1)::Int64
│╻ iterate └─── goto #36
│ 36 ┄ %92 = φ (#35 => %90)::Int64
│ │ %93 = φ (#35 => %90)::Int64
│ │ %94 = φ (#34 => true, #35 => false)::Bool
│ │ %95 = (Base.not_int)(%94)::Bool
│ └─── goto #38 if not %95
│ 37 ─ goto #23
│╻ getproperty343 38 ─ %98 = (Base.getfield)(res, :eval_nodes_coord)::Tuple{Array{Float64,1}}
││╻ getindex │ %99 = (Base.getfield)(%98, 1, true)::Array{Float64,1}
││╻ Type │ %100 = invoke LinParams{Array{Float64,1}}(%99::Array{Float64,1}, 0::Int64)::LinParams{Array{Float64,1}}
││ │ %101 = (Core.tuple)(%100)::Tuple{LinParams{Array{Float64,1}}}
││╻╷╷ _Basis │ %102 = %new(Basis{1,Tuple{LinParams{Array{Float64,1}}}}, %101)::Basis{1,Tuple{LinParams{Array{Float64,1}}}}
│╻ getproperty344 │ %103 = (Base.getfield)(res, :X)::Array{Float64,1}
││╻ Type │ %104 = invoke BasisMatrices.BasisMatrix(BasisMatrices.Nothing::Type{Nothing}, %102::Basis{1,Tuple{LinParams{Array{Float64,1}}}}, $(QuoteNode(Tensor()))::Tensor)::BasisMatrix{Tensor,SparseArrays.SparseMatrixCSC{Float64,Int64}}
││╻ Type │ %105 = invoke BasisMatrices.get_coefs(%102::Basis{1,Tuple{LinParams{Array{Float64,1}}}}, %104::BasisMatrix{Tensor,SparseArrays.SparseMatrixCSC{Float64,Int64}}, %103::Array{Float64,1})::Array{Float64,1}
│╻╷ axes346 │ %106 = (Base.arraysize)(s_path, 1)::Int64
││╻╷╷╷ map │ %107 = (Base.slt_int)(%106, 0)::Bool
│││┃││ Type │ (Base.ifelse)(%107, 0, %106)
│╻ getproperty347 │ %109 = (Base.getfield)(res, :cdp)::ContinuousDP{1,Array{Float64,1},Array{Float64,1},Tf,Tg,Tlb,Tub} where Tub<:Function where Tlb<:Function where Tg<:Function where Tf<:Function
││ │ %110 = (Base.getfield)(%109, :shocks)::Array{Float64,1}
││╻ size │ %111 = (Base.arraysize)(%110, 1)::Int64
│││╻╷╷╷ Type │ %112 = (Base.slt_int)(%111, 0)::Bool
││││┃│ Type │ (Base.ifelse)(%112, 0, %111)
│╻ setindex!348 │ (Base.arrayset)(true, s_path, s_init, 1)
│╻ -349 │ %115 = (Base.sub_int)(%1, 1)::Int64
││╻╷╷╷ Type │ %116 = (Base.sle_int)(1, %115)::Bool
│││╻ unitrange_last │ (Base.sub_int)(%115, 1)
││││ │ %118 = (Base.ifelse)(%116, %115, 0)::Int64
││╻╷╷ isempty │ %119 = (Base.slt_int)(%118, 1)::Bool
││ └─── goto #40 if not %119
││ 39 ─ goto #41
││ 40 ─ goto #41
│ 41 ┄ %123 = φ (#39 => true, #40 => false)::Bool
│ │ %124 = φ (#40 => 1)::Int64
│ │ %125 = φ (#40 => 1)::Int64
│ │ %126 = (Base.not_int)(%123)::Bool
│ └─── goto #47 if not %126
│ 42 ┄ %128 = φ (#41 => %124, #46 => %149)::Int64
│ │ %129 = φ (#41 => %125, #46 => %150)::Int64
│╻ getindex350 │ %130 = (Base.arrayref)(true, s_path, %128)::Float64
│╻╷╷╷╷╷╷ Interpoland351 │ %131 = $(Expr(:foreigncall, :(:jl_alloc_array_2d), Array{Float64,2}, svec(Any, Int64, Int64), :(:ccall), 3, Array{Float64,2}, 1, 1, 1, 1))::Array{Float64,2}
││┃│││ Interpoland │ %132 = invoke Base.fill!(%131::Array{Float64,2}, %130::Float64)::Array{Float64,2}
│││┃ funeval │ %133 = invoke BasisMatrices.funeval(%105::Array{Float64,1}, %102::Basis{1,Tuple{LinParams{Array{Float64,1}}}}, %132::Array{Float64,2}, 0::Int64)::Array{Float64,2}
││││╻ getindex │ %134 = (Base.arrayref)(true, %133, 1)::Float64
│╻ getindex352 │ %135 = (Base.arrayref)(true, %43, %128)::Int64
│╻ getproperty │ %136 = (Base.getfield)(res, :cdp)::ContinuousDP{1,Array{Float64,1},Array{Float64,1},Tf,Tg,Tlb,Tub} where Tub<:Function where Tlb<:Function where Tg<:Function where Tf<:Function
││ │ %137 = (Base.getfield)(%136, :shocks)::Array{Float64,1}
│╻ getindex │ %138 = (Base.arrayref)(true, %137, %135)::Float64
│╻ +353 │ %139 = (Base.add_int)(%128, 1)::Int64
│╻ getproperty │ %140 = (Base.getfield)(res, :cdp)::ContinuousDP{1,Array{Float64,1},Array{Float64,1},Tf,Tg,Tlb,Tub} where Tub<:Function where Tlb<:Function where Tg<:Function where Tf<:Function
││ │ %141 = (Base.getfield)(%140, :g)::Function
│ │ %142 = (%141)(%130, %134, %138)::Any
│ │ (Base.setindex!)(s_path, %142, %139)
││╻ == │ %144 = (%129 === %118)::Bool
││ └─── goto #44 if not %144
││ 43 ─ goto #45
││╻ + 44 ─ %147 = (Base.add_int)(%129, 1)::Int64
│╻ iterate └─── goto #45
│ 45 ┄ %149 = φ (#44 => %147)::Int64
│ │ %150 = φ (#44 => %147)::Int64
│ │ %151 = φ (#43 => true, #44 => false)::Bool
│ │ %152 = (Base.not_int)(%151)::Bool
│ └─── goto #47 if not %152
│ 46 ─ goto #42
│ 356 47 ─ return s_path