julia> A = Tensor(SparseList(Element(0.0)), [2.0, 0.0, 3.0, 0.0, 4.0, 0.0, 5.0, 0.0, 6.0, 0.0])
10-Tensor
└─ SparseList (0.0) [1:10]
   ├─ [1]: 2.0
   ├─ [3]: 3.0
   ├─ ⋮
   ├─ [7]: 5.0
   └─ [9]: 6.0

julia> B = Tensor(Dense(Element(0.0)), fill(1.1, 10))
10-Tensor
└─ Dense [1:10]
   ├─ [1]: 1.1
   ├─ [2]: 1.1
   ├─ ⋮
   ├─ [9]: 1.1
   └─ [10]: 1.1

julia> @finch_code for i = _
        B[i] += A[i]
    end
quote
    B_lvl = (ex.bodies[1]).body.lhs.tns.bind.lvl
    B_lvl_val = B_lvl.lvl.val
    A_lvl = (ex.bodies[1]).body.rhs.tns.bind.lvl
    A_lvl_ptr = A_lvl.ptr
    A_lvl_idx = A_lvl.idx
    A_lvl_val = A_lvl.lvl.val
    A_lvl.shape == B_lvl.shape || throw(DimensionMismatch("mismatched dimension limits ($(A_lvl.shape) != $(B_lvl.shape))"))
    A_lvl_q = A_lvl_ptr[1]
    A_lvl_q_stop = A_lvl_ptr[1 + 1]
    if A_lvl_q < A_lvl_q_stop
        A_lvl_i1 = A_lvl_idx[A_lvl_q_stop - 1]
    else
        A_lvl_i1 = 0
    end
    phase_stop = min(A_lvl.shape, A_lvl_i1)
    if phase_stop >= 1
        if A_lvl_idx[A_lvl_q] < 1
            A_lvl_q = Finch.scansearch(A_lvl_idx, 1, A_lvl_q, A_lvl_q_stop - 1)
        end
        while true
            A_lvl_i = A_lvl_idx[A_lvl_q]
            if A_lvl_i < phase_stop
                A_lvl_2_val = A_lvl_val[A_lvl_q]
                B_lvl_q = (1 - 1) * B_lvl.shape + A_lvl_i
                B_lvl_val[B_lvl_q] = A_lvl_2_val + B_lvl_val[B_lvl_q]
                A_lvl_q += 1
            else
                phase_stop_3 = min(phase_stop, A_lvl_i)
                if A_lvl_i == phase_stop_3
                    A_lvl_2_val = A_lvl_val[A_lvl_q]
                    B_lvl_q = (1 - 1) * B_lvl.shape + phase_stop_3
                    B_lvl_val[B_lvl_q] += A_lvl_2_val
                    A_lvl_q += 1
                end
                break
            end
        end
    end
    result = ()
    resize!(B_lvl_val, B_lvl.shape)
    result
end
julia> @finch for i = _
        B[i] += A[i]
    end
NamedTuple()

