diff --git a/docs/examples/bfs.jl b/docs/examples/bfs.jl index 13b7eff29..5038bae13 100644 --- a/docs/examples/bfs.jl +++ b/docs/examples/bfs.jl @@ -12,6 +12,7 @@ function bfs(edges, source=5) F = Tensor(SparseByteMap(Pattern()), n) _F = Tensor(SparseByteMap(Pattern()), n) @finch F[source] = true + F_nnz = 1 V = Tensor(Dense(Element(false)), n) @finch V[source] = true @@ -19,7 +20,7 @@ function bfs(edges, source=5) P = Tensor(Dense(Element(0)), n) @finch P[source] = source - while countstored(F) > 0 + while F_nnz > 0 @finch begin _F .= false for j=_, k=_ @@ -29,8 +30,17 @@ function bfs(edges, source=5) end end end - @finch for k=_; V[k] |= _F[k] end + c = Scalar(0) + @finch begin + for k=_ + let _f = _F[k] + V[k] |= _f + c[] += _f + end + end + end (F, _F) = (_F, F) + F_nnz = c[] end return P end \ No newline at end of file diff --git a/src/looplets/steppers.jl b/src/looplets/steppers.jl index 59a9d3fca..5c4ee2823 100644 --- a/src/looplets/steppers.jl +++ b/src/looplets/steppers.jl @@ -100,7 +100,7 @@ function lower(root::FinchNode, ctx::AbstractCompiler, style::StepperStyle) push!(ctx.code.preamble, stepper_seek(node.val, ctx, root.ext)) end - if style.count == 1 + if style.count == 1 && !query(call(==, measure(root.ext.val), get_smallest_measure(root.ext.val)), ctx) body_2 = contain(ctx) do ctx_2 push!(ctx_2.code.preamble, :($i0 = $i)) i1 = freshen(ctx_2.code, i) diff --git a/src/symbolic/analyze_bounds.jl b/src/symbolic/analyze_bounds.jl index a32b39e24..ceddcab76 100644 --- a/src/symbolic/analyze_bounds.jl +++ b/src/symbolic/analyze_bounds.jl @@ -68,11 +68,11 @@ function get_bounds_rules(alg, shash) end), (@rule call(max, ~a1..., call(min, ~a2...), ~a3..., call(min, ~a4...), ~a5...) => if !(isdisjoint(a2, a4)) - call(max, a1..., call(min, intersect(a2, a4)..., call(max, call(min, setdiff(a2, a4)...), call(min, setdiff(a4, a2)...)), a3..., a5...)) + call(max, a1..., call(min, intersect(a2, a4)..., call(max, call(min, setdiff(a2, a4)...), call(min, setdiff(a4, a2)...))), a3..., a5...) end), (@rule call(min, ~a1..., call(max, ~a2...), ~a3..., call(max, ~a4...), ~a5...) => if !(isdisjoint(a2, a4)) - call(min, a1..., call(max, intersect(a2, a4)..., call(min, call(max, setdiff(a2, a4)...), call(max, setdiff(a4, a2)...)), a3..., a5...)) + call(min, a1..., call(max, intersect(a2, a4)..., call(min, call(max, setdiff(a2, a4)...), call(max, setdiff(a4, a2)...))), a3..., a5...) end), (@rule call(min, ~a1..., call(max), ~a2...) => call(min, a1..., a2...)), diff --git a/src/tensors/levels/sparsebytemaplevels.jl b/src/tensors/levels/sparsebytemaplevels.jl index 6b8023adc..df9020b17 100644 --- a/src/tensors/levels/sparsebytemaplevels.jl +++ b/src/tensors/levels/sparsebytemaplevels.jl @@ -69,7 +69,7 @@ Base.resize!(lvl::SparseByteMapLevel{Ti}, dims...) where {Ti} = SparseByteMapLevel{Ti}(resize!(lvl.lvl, dims[1:end-1]...), dims[end], lvl.ptr, lvl.tbl, lvl.srt) function countstored_level(lvl::SparseByteMapLevel, pos) - countstored_level(lvl.lvl, lvl.ptr[pos + 1] - 1) + countstored_level(lvl.lvl, pos * lvl.shape) end function Base.show(io::IO, lvl::SparseByteMapLevel{Ti, Ptr, Tbl, Srt, Lvl},) where {Ti, Ptr, Tbl, Srt, Lvl} diff --git a/src/tensors/levels/sparselevels.jl b/src/tensors/levels/sparselevels.jl index e8e44affa..0f7c0216c 100644 --- a/src/tensors/levels/sparselevels.jl +++ b/src/tensors/levels/sparselevels.jl @@ -86,7 +86,7 @@ function subtable_seek(tbl, subtbl, state, i, j) end function subtable_seek(tbl::DictTable, (p, start, stop), q, i, j) - q = Finch.scansearch(tbl.idx, j, q, stop) + q = Finch.scansearch(tbl.idx, j, q, stop - 1) return (tbl.idx[q], q) end @@ -175,7 +175,19 @@ function moveto(lvl::SparseLevel{Ti, Tbl, Lvl}, Tm) where {Ti, Tbl, Lvl} end function countstored_level(lvl::SparseLevel, pos) - countstored_level(lvl.lvl, lvl.ptr[pos + 1] - 1) + pos == 0 && return countstored_level(lvl.lvl, pos) + subtbl = table_query(lvl.tbl, pos) + start, stop, state = subtable_init(lvl.tbl, subtbl) + if start <= stop + i, qos = subtable_get(lvl.tbl, subtbl, state) + if i < stop + i, state = subtable_seek(lvl.tbl, subtbl, state, start, stop) + i, qos = subtable_get(lvl.tbl, subtbl, state) + end + countstored_level(lvl.lvl, qos) + else + 0 + end end pattern!(lvl::SparseLevel{Ti}) where {Ti} = diff --git a/src/tensors/levels/sparserlelevels.jl b/src/tensors/levels/sparserlelevels.jl index 319f197d4..d229768e1 100644 --- a/src/tensors/levels/sparserlelevels.jl +++ b/src/tensors/levels/sparserlelevels.jl @@ -64,7 +64,7 @@ pattern!(lvl::SparseRLELevel{Ti}) where {Ti} = SparseRLELevel{Ti}(pattern!(lvl.lvl), lvl.shape, lvl.ptr, lvl.left, lvl.right, pattern!(lvl.buf); merge = getmerge(lvl)) function countstored_level(lvl::SparseRLELevel, pos) - countstored_level(lvl.lvl, lvl.left[lvl.ptr[pos + 1]]-1) + countstored_level(lvl.lvl, lvl.ptr[pos + 1]-1) end redefault!(lvl::SparseRLELevel{Ti}, init) where {Ti} = diff --git a/src/transforms/scopes.jl b/src/transforms/scopes.jl index 1ac94d29a..355898496 100644 --- a/src/transforms/scopes.jl +++ b/src/transforms/scopes.jl @@ -51,10 +51,12 @@ function (ctx::ScopeVisitor)(node::FinchNode) if node.lhs.kind != variable throw(ScopeError("cannot define a non-variable $node.lhs")) end + #TODO why not just freshen variables? + rhs = ctx(node.rhs) var = node.lhs haskey(ctx.vars, var) && throw(ScopeError("In node $(node) variable $(var) is already bound.")) ctx.vars[var] = node.rhs - define(node.lhs, node.rhs, open_scope(node.body, ctx)) + define(node.lhs, rhs, open_scope(node.body, ctx)) elseif istree(node) return similarterm(node, operation(node), map(ctx, arguments(node))) else diff --git a/test/reference32/representation/DenseRLELazy_representation.txt b/test/reference32/representation/DenseRLELazy_representation.txt index 9dec59c4c..a74a9c15d 100644 --- a/test/reference32/representation/DenseRLELazy_representation.txt +++ b/test/reference32/representation/DenseRLELazy_representation.txt @@ -2,26 +2,38 @@ DenseRLELazy representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0]), 5, [1, 2], [5], Element{false, Bool, Int32}(Bool[0]); merge = false)) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]); merge = false)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1]), 6, [1, 6], [1, 2, 3, 5, 6], Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1]); merge = false)) +countstored: 5 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0]), 6, [1, 4], [2, 3, 6], Element{false, Bool, Int32}(Bool[0, 1, 0]); merge = false)) +countstored: 3 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]), 1111, [1, 453], [1, 2, 3, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1111], Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]); merge = false)) +countstored: 452 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 12], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]); merge = false)) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 7], [1, 2, 3, 4, 5, 6], Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]); merge = false)) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0]), 4, [1, 2], [4], Element{0.0, Float64, Int32}([0.0]); merge = false)) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0]), 5, [1, 2], [5], Element{0.0, Float64, Int32}([0.0]); merge = false)) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5], Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]); merge = false)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 3.0, 0.0]), 9, [1, 9], [1, 2, 3, 4, 5, 7, 8, 9], Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 3.0, 0.0]); merge = false)) +countstored: 8 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]), 1111, [1, 9], [1, 2, 3, 554, 555, 665, 666, 1111], Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]); merge = false)) +countstored: 8 diff --git a/test/reference32/representation/DenseRLELazy{Dense}_representation.txt b/test/reference32/representation/DenseRLELazy{Dense}_representation.txt index 01fd0f886..96ace4673 100644 --- a/test/reference32/representation/DenseRLELazy{Dense}_representation.txt +++ b/test/reference32/representation/DenseRLELazy{Dense}_representation.txt @@ -2,16 +2,23 @@ DenseRLELazy{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5), 5, [1, 2], [5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge = false)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge = false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge = false)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge = false)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = false)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = false)) +countstored: 25 diff --git a/test/reference32/representation/DenseRLELazy{SparseList}_representation.txt b/test/reference32/representation/DenseRLELazy{SparseList}_representation.txt index 0ae5ca621..4fd7fd1af 100644 --- a/test/reference32/representation/DenseRLELazy{SparseList}_representation.txt +++ b/test/reference32/representation/DenseRLELazy{SparseList}_representation.txt @@ -2,16 +2,23 @@ DenseRLELazy{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[]), 5, [1, 2], [5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge = false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge = false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge = false)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge = false)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), 5, [1, 2], [5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = false)) +countstored: 8 diff --git a/test/reference32/representation/DenseRLE_representation.txt b/test/reference32/representation/DenseRLE_representation.txt index c58be7bd9..499b8df6c 100644 --- a/test/reference32/representation/DenseRLE_representation.txt +++ b/test/reference32/representation/DenseRLE_representation.txt @@ -2,26 +2,38 @@ DenseRLE representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0]), 5, [1, 2], [5], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1]), 5, [1, 2], [5], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1]), 6, [1, 5], [1, 3, 5, 6], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 4 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0]), 6, [1, 4], [2, 3, 6], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 3 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1, 0]), 1111, [1, 8], [1, 3, 554, 999, 1000, 1001, 1111], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 7 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1]), 11, [1, 7], [1, 3, 4, 9, 10, 11], Element{false, Bool, Int32}(Bool[]); merge = true)) +countstored: 6 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 0.0, 3.0]), 6, [1, 5], [1, 3, 4, 6], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0]), 4, [1, 2], [4], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0]), 5, [1, 2], [5], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0]), 5, [1, 2], [5], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 2.0, 0.0, 3.0, 0.0]), 9, [1, 7], [1, 3, 5, 7, 8, 9], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 6 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]), 1111, [1, 9], [1, 2, 3, 554, 555, 665, 666, 1111], Element{0.0, Float64, Int32}(Float64[]); merge = true)) +countstored: 8 diff --git a/test/reference32/representation/DenseRLE{Dense}_representation.txt b/test/reference32/representation/DenseRLE{Dense}_representation.txt index 95a1fe943..1ace0d795 100644 --- a/test/reference32/representation/DenseRLE{Dense}_representation.txt +++ b/test/reference32/representation/DenseRLE{Dense}_representation.txt @@ -2,16 +2,23 @@ DenseRLE{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5), 5, [1, 2], [5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge = true)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge = true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge = true)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge = true)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = true)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge = true)) +countstored: 25 diff --git a/test/reference32/representation/DenseRLE{SparseList}_representation.txt b/test/reference32/representation/DenseRLE{SparseList}_representation.txt index f374d94ca..e516120e5 100644 --- a/test/reference32/representation/DenseRLE{SparseList}_representation.txt +++ b/test/reference32/representation/DenseRLE{SparseList}_representation.txt @@ -2,16 +2,23 @@ DenseRLE{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[]), 5, [1, 2], [5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge = true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge = true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge = true)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge = true)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), 5, [1, 2], [5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge = true)) +countstored: 8 diff --git a/test/reference32/representation/Dense_representation.txt b/test/reference32/representation/Dense_representation.txt index 8ae721e89..c842f1199 100644 --- a/test/reference32/representation/Dense_representation.txt +++ b/test/reference32/representation/Dense_representation.txt @@ -2,26 +2,38 @@ Dense representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5)) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 1]), 6)) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0]), 6)) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111)) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11)) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6)) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0]), 4)) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9)) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111)) +countstored: 1111 diff --git a/test/reference32/representation/Dense{Atomic}_representation.txt b/test/reference32/representation/Dense{Atomic}_representation.txt index 1d19ab786..ee87d386f 100644 --- a/test/reference32/representation/Dense{Atomic}_representation.txt +++ b/test/reference32/representation/Dense{Atomic}_representation.txt @@ -2,26 +2,38 @@ Dense{Atomic} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 1]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111), [Base.Threads.SpinLock(0)])) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Atomic(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11), [Base.Threads.SpinLock(0)])) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0]), 4), [Base.Threads.SpinLock(0)])) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9), [Base.Threads.SpinLock(0)])) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111), [Base.Threads.SpinLock(0)])) +countstored: 1111 diff --git a/test/reference32/representation/Dense{DenseRLELazy}_representation.txt b/test/reference32/representation/Dense{DenseRLELazy}_representation.txt index a5dabf2a1..c412299a9 100644 --- a/test/reference32/representation/Dense{DenseRLELazy}_representation.txt +++ b/test/reference32/representation/Dense{DenseRLELazy}_representation.txt @@ -2,16 +2,23 @@ Dense{DenseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge = false), 5)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[]); merge = false), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 0, 1, 0, 1, 0]), 4, [1, 4, 6, 7, 9], [2, 3, 4, 3, 4, 4, 1, 4], Element{false, Bool, Int32}(Bool[]); merge = false), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 4, 8, 11, 15], [2, 3, 4, 1, 2, 3, 4, 2, 3, 4, 1, 2, 3, 4], Element{false, Bool, Int32}(Bool[]); merge = false), 4)) +countstored: 14 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5)) +countstored: 17 diff --git a/test/reference32/representation/Dense{DenseRLE}_representation.txt b/test/reference32/representation/Dense{DenseRLE}_representation.txt index 8c4c054fe..d05b0aa75 100644 --- a/test/reference32/representation/Dense{DenseRLE}_representation.txt +++ b/test/reference32/representation/Dense{DenseRLE}_representation.txt @@ -2,16 +2,23 @@ Dense{DenseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge = true), 5)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge = true), 5)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 0, 1, 0, 1, 0]), 4, [1, 4, 6, 7, 9], [2, 3, 4, 3, 4, 4, 1, 4], Element{false, Bool, Int32}(Bool[]); merge = true), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]), 4, [1, 4, 7, 10, 13], [2, 3, 4, 1, 2, 4, 2, 3, 4, 1, 2, 4], Element{false, Bool, Int32}(Bool[]); merge = true), 4)) +countstored: 12 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5)) +countstored: 17 diff --git a/test/reference32/representation/Dense{Dense}_representation.txt b/test/reference32/representation/Dense{Dense}_representation.txt index dbf342667..26f8c10de 100644 --- a/test/reference32/representation/Dense{Dense}_representation.txt +++ b/test/reference32/representation/Dense{Dense}_representation.txt @@ -2,30 +2,44 @@ Dense{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5)) +countstored: 25 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4)) +countstored: 16 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 diff --git a/test/reference32/representation/Dense{Separate}_representation.txt b/test/reference32/representation/Dense{Separate}_representation.txt index 64c1d56b7..304f3a5dc 100644 --- a/test/reference32/representation/Dense{Separate}_representation.txt +++ b/test/reference32/representation/Dense{Separate}_representation.txt @@ -2,26 +2,38 @@ Dense{Separate} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5)])) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5)])) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 6), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 1]), 6)])) +countstored: 1 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 6), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0]), 6)])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 1111), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111)])) +countstored: 1 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 11), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11)])) +countstored: 1 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 6), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6)])) +countstored: 1 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0]), 4)])) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)])) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5)])) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 9), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9)])) +countstored: 1 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 1111), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111)])) +countstored: 1 diff --git a/test/reference32/representation/Dense{SparseBand}_representation.txt b/test/reference32/representation/Dense{SparseBand}_representation.txt index 4c7c48a59..3a687a043 100644 --- a/test/reference32/representation/Dense{SparseBand}_representation.txt +++ b/test/reference32/representation/Dense{SparseBand}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseBand} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[], [1]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 0, 1, 1, 1, 1, 0, 1, 1]), 4, [1, 2, 3, 4, 5], [3, 4, 3, 4], [1, 2, 6, 7, 11]), 4)) +countstored: 10 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[], [1]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 0.0, 1.0, 2.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0, 3.0]), 5, [1, 2, 3, 4, 5, 6], [3, 3, 3, 4, 1], [1, 2, 5, 8, 12, 13]), 5)) +countstored: 12 diff --git a/test/reference32/representation/Dense{SparseByteMap}_representation.txt b/test/reference32/representation/Dense{SparseByteMap}_representation.txt index 430ce3208..9ae84fee7 100644 --- a/test/reference32/representation/Dense{SparseByteMap}_representation.txt +++ b/test/reference32/representation/Dense{SparseByteMap}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseByteMap} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5, [1, 0, 0, 0, 0, 0], Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], Tuple{Int32, Int32}[]), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4, [1, 2, 3, 3, 4], Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0], [(1, 3), (2, 4), (4, 1)]), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 2, 5, 6, 9], Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1], [(1, 3), (2, 1), (2, 3), (2, 4), (3, 3), (4, 1), (4, 3), (4, 4)]), 4)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 0, 0, 0, 0, 0], Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], Tuple{Int32, Int32}[]), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 4, 6, 8, 9], Bool[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0], [(1, 3), (2, 1), (2, 3), (3, 1), (3, 3), (4, 1), (4, 4), (5, 1)]), 5)) +countstored: 25 diff --git a/test/reference32/representation/Dense{SparseDict}_representation.txt b/test/reference32/representation/Dense{SparseDict}_representation.txt index 27d8459cc..b1f77ec30 100644 --- a/test/reference32/representation/Dense{SparseDict}_representation.txt +++ b/test/reference32/representation/Dense{SparseDict}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseDict} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1, 1, 1, 1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}())), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((3, 2) => 12, (3, 4) => 14, (1, 5) => 5, (1, 3) => 3, (3, 1) => 11, (4, 3) => 18, (4, 5) => 20, (1, 2) => 2, (4, 2) => 17, (1, 4) => 4, (4, 4) => 19, (1, 1) => 1, (4, 1) => 16, (2, 5) => 10, (2, 3) => 8, (5, 5) => 25, (5, 3) => 23, (2, 2) => 7, (5, 2) => 22, (2, 4) => 9, (2, 1) => 6, (5, 4) => 24, (5, 1) => 21, (3, 5) => 15, (3, 3) => 13))), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3], Dict((1, 3) => 1, (4, 1) => 3, (2, 4) => 2))), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 1) => 2, (2, 3) => 3, (4, 4) => 8, (1, 3) => 1, (3, 3) => 5, (4, 1) => 6, (4, 3) => 7, (2, 4) => 4))), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1, 1, 1, 1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}())), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((3, 2) => 12, (3, 4) => 14, (1, 5) => 5, (1, 3) => 3, (3, 1) => 11, (4, 3) => 18, (4, 5) => 20, (1, 2) => 2, (4, 2) => 17, (1, 4) => 4, (4, 4) => 19, (1, 1) => 1, (4, 1) => 16, (2, 5) => 10, (2, 3) => 8, (5, 5) => 25, (5, 3) => 23, (2, 2) => 7, (5, 2) => 22, (2, 4) => 9, (2, 1) => 6, (5, 4) => 24, (5, 1) => 21, (3, 5) => 15, (3, 3) => 13))), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 1) => 2, (2, 3) => 3, (5, 1) => 8, (4, 4) => 7, (1, 3) => 1, (3, 1) => 4, (3, 3) => 5, (4, 1) => 6))), 5)) +countstored: 8 diff --git a/test/reference32/representation/Dense{SparseList{Separate}}_representation.txt b/test/reference32/representation/Dense{SparseList{Separate}}_representation.txt index f4d811f5c..21245fb77 100644 --- a/test/reference32/representation/Dense{SparseList{Separate}}_representation.txt +++ b/test/reference32/representation/Dense{SparseList{Separate}}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseList{Separate}} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0])]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1])]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([3.0]), Element{0.0, Float64, Int32}([3.0])]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 diff --git a/test/reference32/representation/Dense{SparseList}_representation.txt b/test/reference32/representation/Dense{SparseList}_representation.txt index 1960946ab..ce81c6cf6 100644 --- a/test/reference32/representation/Dense{SparseList}_representation.txt +++ b/test/reference32/representation/Dense{SparseList}_representation.txt @@ -2,30 +2,44 @@ Dense{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 diff --git a/test/reference32/representation/Dense{SparseRLELazy}_representation.txt b/test/reference32/representation/Dense{SparseRLELazy}_representation.txt index 213c86f6c..bc6f0ca45 100644 --- a/test/reference32/representation/Dense{SparseRLELazy}_representation.txt +++ b/test/reference32/representation/Dense{SparseRLELazy}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =false), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[]); merge =false), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int32}(Bool[]); merge =false), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [3, 1, 3, 4, 3, 1, 3, 4], Element{false, Bool, Int32}(Bool[]); merge =false), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5)) +countstored: 8 diff --git a/test/reference32/representation/Dense{SparseRLE}_representation.txt b/test/reference32/representation/Dense{SparseRLE}_representation.txt index 9622ecb93..10d02054b 100644 --- a/test/reference32/representation/Dense{SparseRLE}_representation.txt +++ b/test/reference32/representation/Dense{SparseRLE}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =true), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge =true), 5)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int32}(Bool[]); merge =true), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 3, 3, 1, 3], [3, 1, 4, 3, 1, 4], Element{false, Bool, Int32}(Bool[]); merge =true), 4)) +countstored: 6 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5)) +countstored: 8 diff --git a/test/reference32/representation/Dense{SparseVBL}_representation.txt b/test/reference32/representation/Dense{SparseVBL}_representation.txt index 1a338b5df..36049a466 100644 --- a/test/reference32/representation/Dense{SparseVBL}_representation.txt +++ b/test/reference32/representation/Dense{SparseVBL}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseVBL} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[], [1]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 4, 3, 1, 4], [1, 2, 3, 5, 6, 7, 9]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[], [1]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9]), 5)) +countstored: 8 diff --git a/test/reference32/representation/SparseBand_representation.txt b/test/reference32/representation/SparseBand_representation.txt index 1b23f904c..46adcf57e 100644 --- a/test/reference32/representation/SparseBand_representation.txt +++ b/test/reference32/representation/SparseBand_representation.txt @@ -2,26 +2,38 @@ SparseBand representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 0, 0, 1]), 6, [1, 2], [6], [1, 6])) +countstored: 5 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3], [1, 2])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]), 1111, [1, 2], [1001], [1, 1001])) +countstored: 1000 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 2], [11], [1, 11])) +countstored: 10 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 2], [6], [1, 6])) +countstored: 5 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, [1, 1], Int32[], [1])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2], [5], [1, 6])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0]), 9, [1, 2], [8], [1, 8])) +countstored: 7 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0]), 1111, [1, 2], [666], [1, 666])) +countstored: 665 diff --git a/test/reference32/representation/SparseBand{Dense}_representation.txt b/test/reference32/representation/SparseBand{Dense}_representation.txt index 0970a1981..7125b2aac 100644 --- a/test/reference32/representation/SparseBand{Dense}_representation.txt +++ b/test/reference32/representation/SparseBand{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseBand{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 diff --git a/test/reference32/representation/SparseBand{SparseList}_representation.txt b/test/reference32/representation/SparseBand{SparseList}_representation.txt index 622f179c2..c5c0fad7f 100644 --- a/test/reference32/representation/SparseBand{SparseList}_representation.txt +++ b/test/reference32/representation/SparseBand{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseBand{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 2], [4], [1, 5])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 2], [4], [1, 5])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 8 diff --git a/test/reference32/representation/SparseByteMap_representation.txt b/test/reference32/representation/SparseByteMap_representation.txt index 816aa0271..018b6c6b9 100644 --- a/test/reference32/representation/SparseByteMap_representation.txt +++ b/test/reference32/representation/SparseByteMap_representation.txt @@ -2,26 +2,38 @@ SparseByteMap representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 1]), 6, [1, 4], Bool[0, 1, 1, 0, 0, 1], [(1, 2), (1, 3), (1, 6)])) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0]), 6, [1, 2], Bool[0, 0, 1, 0, 0, 0], [(1, 3)])) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111, [1, 449], Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [(1, 2), (1, 3), (1, 555), (1, 556), (1, 557), (1, 558), (1, 559), (1, 560), (1, 561), (1, 562), (1, 563), (1, 564), (1, 565), (1, 566), (1, 567), (1, 568), (1, 569), (1, 570), (1, 571), (1, 572), (1, 573), (1, 574), (1, 575), (1, 576), (1, 577), (1, 578), (1, 579), (1, 580), (1, 581), (1, 582), (1, 583), (1, 584), (1, 585), (1, 586), (1, 587), (1, 588), (1, 589), (1, 590), (1, 591), (1, 592), (1, 593), (1, 594), (1, 595), (1, 596), (1, 597), (1, 598), (1, 599), (1, 600), (1, 601), (1, 602), (1, 603), (1, 604), (1, 605), (1, 606), (1, 607), (1, 608), (1, 609), (1, 610), (1, 611), (1, 612), (1, 613), (1, 614), (1, 615), (1, 616), (1, 617), (1, 618), (1, 619), (1, 620), (1, 621), (1, 622), (1, 623), (1, 624), (1, 625), (1, 626), (1, 627), (1, 628), (1, 629), (1, 630), (1, 631), (1, 632), (1, 633), (1, 634), (1, 635), (1, 636), (1, 637), (1, 638), (1, 639), (1, 640), (1, 641), (1, 642), (1, 643), (1, 644), (1, 645), (1, 646), (1, 647), (1, 648), (1, 649), (1, 650), (1, 651), (1, 652), (1, 653), (1, 654), (1, 655), (1, 656), (1, 657), (1, 658), (1, 659), (1, 660), (1, 661), (1, 662), (1, 663), (1, 664), (1, 665), (1, 666), (1, 667), (1, 668), (1, 669), (1, 670), (1, 671), (1, 672), (1, 673), (1, 674), (1, 675), (1, 676), (1, 677), (1, 678), (1, 679), (1, 680), (1, 681), (1, 682), (1, 683), (1, 684), (1, 685), (1, 686), (1, 687), (1, 688), (1, 689), (1, 690), (1, 691), (1, 692), (1, 693), (1, 694), (1, 695), (1, 696), (1, 697), (1, 698), (1, 699), (1, 700), (1, 701), (1, 702), (1, 703), (1, 704), (1, 705), (1, 706), (1, 707), (1, 708), (1, 709), (1, 710), (1, 711), (1, 712), (1, 713), (1, 714), (1, 715), (1, 716), (1, 717), (1, 718), (1, 719), (1, 720), (1, 721), (1, 722), (1, 723), (1, 724), (1, 725), (1, 726), (1, 727), (1, 728), (1, 729), (1, 730), (1, 731), (1, 732), (1, 733), (1, 734), (1, 735), (1, 736), (1, 737), (1, 738), (1, 739), (1, 740), (1, 741), (1, 742), (1, 743), (1, 744), (1, 745), (1, 746), (1, 747), (1, 748), (1, 749), (1, 750), (1, 751), (1, 752), (1, 753), (1, 754), (1, 755), (1, 756), (1, 757), (1, 758), (1, 759), (1, 760), (1, 761), (1, 762), (1, 763), (1, 764), (1, 765), (1, 766), (1, 767), (1, 768), (1, 769), (1, 770), (1, 771), (1, 772), (1, 773), (1, 774), (1, 775), (1, 776), (1, 777), (1, 778), (1, 779), (1, 780), (1, 781), (1, 782), (1, 783), (1, 784), (1, 785), (1, 786), (1, 787), (1, 788), (1, 789), (1, 790), (1, 791), (1, 792), (1, 793), (1, 794), (1, 795), (1, 796), (1, 797), (1, 798), (1, 799), (1, 800), (1, 801), (1, 802), (1, 803), (1, 804), (1, 805), (1, 806), (1, 807), (1, 808), (1, 809), (1, 810), (1, 811), (1, 812), (1, 813), (1, 814), (1, 815), (1, 816), (1, 817), (1, 818), (1, 819), (1, 820), (1, 821), (1, 822), (1, 823), (1, 824), (1, 825), (1, 826), (1, 827), (1, 828), (1, 829), (1, 830), (1, 831), (1, 832), (1, 833), (1, 834), (1, 835), (1, 836), (1, 837), (1, 838), (1, 839), (1, 840), (1, 841), (1, 842), (1, 843), (1, 844), (1, 845), (1, 846), (1, 847), (1, 848), (1, 849), (1, 850), (1, 851), (1, 852), (1, 853), (1, 854), (1, 855), (1, 856), (1, 857), (1, 858), (1, 859), (1, 860), (1, 861), (1, 862), (1, 863), (1, 864), (1, 865), (1, 866), (1, 867), (1, 868), (1, 869), (1, 870), (1, 871), (1, 872), (1, 873), (1, 874), (1, 875), (1, 876), (1, 877), (1, 878), (1, 879), (1, 880), (1, 881), (1, 882), (1, 883), (1, 884), (1, 885), (1, 886), (1, 887), (1, 888), (1, 889), (1, 890), (1, 891), (1, 892), (1, 893), (1, 894), (1, 895), (1, 896), (1, 897), (1, 898), (1, 899), (1, 900), (1, 901), (1, 902), (1, 903), (1, 904), (1, 905), (1, 906), (1, 907), (1, 908), (1, 909), (1, 910), (1, 911), (1, 912), (1, 913), (1, 914), (1, 915), (1, 916), (1, 917), (1, 918), (1, 919), (1, 920), (1, 921), (1, 922), (1, 923), (1, 924), (1, 925), (1, 926), (1, 927), (1, 928), (1, 929), (1, 930), (1, 931), (1, 932), (1, 933), (1, 934), (1, 935), (1, 936), (1, 937), (1, 938), (1, 939), (1, 940), (1, 941), (1, 942), (1, 943), (1, 944), (1, 945), (1, 946), (1, 947), (1, 948), (1, 949), (1, 950), (1, 951), (1, 952), (1, 953), (1, 954), (1, 955), (1, 956), (1, 957), (1, 958), (1, 959), (1, 960), (1, 961), (1, 962), (1, 963), (1, 964), (1, 965), (1, 966), (1, 967), (1, 968), (1, 969), (1, 970), (1, 971), (1, 972), (1, 973), (1, 974), (1, 975), (1, 976), (1, 977), (1, 978), (1, 979), (1, 980), (1, 981), (1, 982), (1, 983), (1, 984), (1, 985), (1, 986), (1, 987), (1, 988), (1, 989), (1, 990), (1, 991), (1, 992), (1, 993), (1, 994), (1, 995), (1, 996), (1, 997), (1, 998), (1, 999), (1, 1001)])) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 9], Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1], [(1, 2), (1, 3), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9), (1, 11)])) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 5], Bool[0, 1, 1, 0, 1, 1], [(1, 2), (1, 3), (1, 5), (1, 6)])) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0]), 4, [1, 0], Bool[0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9, [1, 6], Bool[0, 1, 1, 1, 1, 0, 0, 1, 0], [(1, 2), (1, 3), (1, 4), (1, 5), (1, 8)])) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111, [1, 5], Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [(1, 2), (1, 3), (1, 555), (1, 666)])) +countstored: 1111 diff --git a/test/reference32/representation/SparseByteMap{Dense}_representation.txt b/test/reference32/representation/SparseByteMap{Dense}_representation.txt index 11d85880c..55cd863c0 100644 --- a/test/reference32/representation/SparseByteMap{Dense}_representation.txt +++ b/test/reference32/representation/SparseByteMap{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseByteMap{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 4], Bool[1, 1, 0, 1], [(1, 1), (1, 2), (1, 4)])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], Bool[1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4)])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 diff --git a/test/reference32/representation/SparseByteMap{SparseList}_representation.txt b/test/reference32/representation/SparseByteMap{SparseList}_representation.txt index ded8ea382..744c8aa40 100644 --- a/test/reference32/representation/SparseByteMap{SparseList}_representation.txt +++ b/test/reference32/representation/SparseByteMap{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseByteMap{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 4], Bool[1, 1, 0, 1], [(1, 1), (1, 2), (1, 4)])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], Bool[1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4)])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int32[]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int32, Int32}[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 8 diff --git a/test/reference32/representation/SparseCOO{1}_representation.txt b/test/reference32/representation/SparseCOO{1}_representation.txt index f6210e185..4200b902b 100644 --- a/test/reference32/representation/SparseCOO{1}_representation.txt +++ b/test/reference32/representation/SparseCOO{1}_representation.txt @@ -2,26 +2,38 @@ SparseCOO{1} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[]), (5,), [1, 1], (Int32[], ) )) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), (5,), [1, 6], ([1, 2, 3, 4, 5], ) )) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1]), (6,), [1, 4], ([2, 3, 6], ) )) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1]), (6,), [1, 2], ([3], ) )) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (1111,), [1, 449], ([2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], ) )) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (11,), [1, 9], ([2, 3, 5, 6, 7, 8, 9, 11], ) )) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), (6,), [1, 5], ([2, 3, 5, 6], ) )) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}(Float64[]), (4,), [1, 1], (Int32[], ) )) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}(Float64[]), (5,), [1, 1], (Int32[], ) )) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), (5,), [1, 6], ([1, 2, 3, 4, 5], ) )) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), (9,), [1, 6], ([2, 3, 4, 5, 8], ) )) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), (1111,), [1, 5], ([2, 3, 555, 666], ) )) +countstored: 4 diff --git a/test/reference32/representation/SparseCOO{2}_representation.txt b/test/reference32/representation/SparseCOO{2}_representation.txt index f64f89a22..d5c9d5f57 100644 --- a/test/reference32/representation/SparseCOO{2}_representation.txt +++ b/test/reference32/representation/SparseCOO{2}_representation.txt @@ -2,16 +2,23 @@ SparseCOO{2} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[]), (5, 5), [1, 1], (Int32[], Int32[], ) )) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (5, 5), [1, 26], ([1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5], ) )) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1]), (4, 4), [1, 4], ([3, 4, 1], [1, 2, 4], ) )) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (4, 4), [1, 9], ([3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 2, 2, 3, 4, 4, 4], ) )) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}(Float64[]), (5, 5), [1, 1], (Int32[], Int32[], ) )) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), (5, 5), [1, 26], ([1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5], ) )) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseCOO{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), (5, 5), [1, 9], ([3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 2, 3, 3, 4, 4, 5], ) )) +countstored: 8 diff --git a/test/reference32/representation/SparseDict_representation.txt b/test/reference32/representation/SparseDict_representation.txt index c1c65d764..c26c52848 100644 --- a/test/reference32/representation/SparseDict_representation.txt +++ b/test/reference32/representation/SparseDict_representation.txt @@ -2,26 +2,38 @@ SparseDict representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 6, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 4], [2, 3, 6], [1, 2, 3], Dict((1, 2) => 1, (1, 6) => 3, (1, 3) => 2)))) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2], [3], [1], Dict((1, 3) => 1)))) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448], Dict((1, 704) => 152, (1, 918) => 366, (1, 986) => 434, (1, 581) => 29, (1, 833) => 281, (1, 597) => 45, (1, 575) => 23, (1, 590) => 38, (1, 595) => 43, (1, 573) => 21, (1, 632) => 80, (1, 698) => 146, (1, 886) => 334, (1, 952) => 400, (1, 750) => 198, (1, 801) => 249, (1, 656) => 104, (1, 572) => 20, (1, 670) => 118, (1, 795) => 243, (1, 808) => 256, (1, 864) => 312, (1, 785) => 233, (1, 614) => 62, (1, 774) => 222, (1, 860) => 308, (1, 927) => 375, (1, 680) => 128, (1, 797) => 245, (1, 813) => 261, (1, 596) => 44, (1, 746) => 194, (1, 966) => 414, (1, 661) => 109, (1, 630) => 78, (1, 888) => 336, (1, 843) => 291, (1, 646) => 94, (1, 904) => 352, (1, 849) => 297, (1, 620) => 68, (1, 722) => 170, (1, 930) => 378, (1, 946) => 394, (1, 606) => 54, (1, 838) => 286, (1, 787) => 235, (1, 856) => 304, (1, 637) => 85, (1, 622) => 70, (1, 644) => 92, (1, 872) => 320, (1, 691) => 139, (1, 861) => 309, (1, 802) => 250, (1, 786) => 234, (1, 668) => 116, (1, 824) => 272, (1, 560) => 8, (1, 822) => 270, (1, 968) => 416, (1, 570) => 18, (1, 613) => 61, (1, 775) => 223, (1, 589) => 37, (1, 965) => 413, (1, 987) => 435, (1, 677) => 125, (1, 812) => 260, (1, 981) => 429, (1, 898) => 346, (1, 584) => 32, (1, 2) => 1, (1, 703) => 151, (1, 953) => 401, (1, 769) => 217, (1, 936) => 384, (1, 917) => 365, (1, 947) => 395, (1, 988) => 436, (1, 831) => 279, (1, 751) => 199, (1, 615) => 63, (1, 850) => 298, (1, 562) => 10, (1, 869) => 317, (1, 792) => 240, (1, 727) => 175, (1, 934) => 382, (1, 702) => 150, (1, 745) => 193, (1, 851) => 299, (1, 994) => 442, (1, 857) => 305, (1, 591) => 39, (1, 726) => 174, (1, 937) => 385, (1, 811) => 259, (1, 883) => 331, (1, 697) => 145, (1, 629) => 77, (1, 779) => 227, (1, 895) => 343, (1, 908) => 356, (1, 821) => 269, (1, 956) => 404, (1, 653) => 101, (1, 901) => 349, (1, 790) => 238, (1, 809) => 257, (1, 840) => 288, (1, 859) => 307, (1, 905) => 353, (1, 899) => 347, (1, 627) => 75, (1, 605) => 53, (1, 949) => 397, (1, 943) => 391, (1, 803) => 251, (1, 603) => 51, (1, 651) => 99, (1, 912) => 360, (1, 892) => 340, (1, 725) => 173, (1, 826) => 274, (1, 909) => 357, (1, 958) => 406, (1, 866) => 314, (1, 749) => 197, (1, 970) => 418, (1, 675) => 123, (1, 854) => 302, (1, 891) => 339, (1, 814) => 262, (1, 897) => 345, (1, 767) => 215, (1, 960) => 408, (1, 910) => 358, (1, 568) => 16, (1, 894) => 342, (1, 982) => 430, (1, 577) => 25, (1, 906) => 354, (1, 818) => 266, (1, 555) => 3, (1, 701) => 149, (1, 929) => 377, (1, 922) => 370, (1, 561) => 9, (1, 587) => 35, (1, 671) => 119, (1, 724) => 172, (1, 844) => 292, (1, 862) => 310, (1, 923) => 371, (1, 569) => 17, (1, 757) => 205, (1, 941) => 389, (1, 945) => 393, (1, 579) => 27, (1, 939) => 387, (1, 611) => 59, (1, 663) => 111, (1, 739) => 187, (1, 748) => 196, (1, 932) => 380, (1, 919) => 367, (1, 635) => 83, (1, 954) => 402, (1, 974) => 422, (1, 925) => 373, (1, 648) => 96, (1, 806) => 254, (1, 881) => 329, (1, 639) => 87, (1, 816) => 264, (1, 942) => 390, (1, 566) => 14, (1, 913) => 361, (1, 772) => 220, (1, 604) => 52, (1, 688) => 136, (1, 672) => 120, (1, 580) => 28, (1, 874) => 322, (1, 893) => 341, (1, 957) => 405, (1, 884) => 332, (1, 967) => 415, (1, 659) => 107, (1, 975) => 423, (1, 940) => 388, (1, 973) => 421, (1, 715) => 163, (1, 798) => 246, (1, 914) => 362, (1, 564) => 12, (1, 585) => 33, (1, 1001) => 448, (1, 980) => 428, (1, 652) => 100, (1, 709) => 157, (1, 633) => 81, (1, 961) => 409, (1, 991) => 439, (1, 763) => 211, (1, 810) => 258, (1, 658) => 106, (1, 599) => 47, (1, 902) => 350, (1, 733) => 181, (1, 556) => 4, (1, 628) => 76, (1, 609) => 57, (1, 950) => 398, (1, 846) => 294, (1, 634) => 82, (1, 841) => 289, (1, 623) => 71, (1, 805) => 253, (1, 796) => 244, (1, 858) => 306, (1, 576) => 24, (1, 885) => 333, (1, 799) => 247, (1, 660) => 108, (1, 783) => 231, (1, 610) => 58, (1, 676) => 124, (1, 717) => 165, (1, 647) => 95, (1, 839) => 287, (1, 567) => 15, (1, 586) => 34, (1, 978) => 426, (1, 996) => 444, (1, 640) => 88, (1, 696) => 144, (1, 674) => 122, (1, 636) => 84, (1, 723) => 171, (1, 601) => 49, (1, 693) => 141, (1, 847) => 295, (1, 921) => 369, (1, 853) => 301, (1, 915) => 363, (1, 964) => 412, (1, 695) => 143, (1, 612) => 60, (1, 616) => 64, (1, 574) => 22, (1, 820) => 268, (1, 626) => 74, (1, 720) => 168, (1, 876) => 324, (1, 765) => 213, (1, 699) => 147, (1, 791) => 239, (1, 933) => 381, (1, 997) => 445, (1, 848) => 296, (1, 719) => 167, (1, 756) => 204, (1, 657) => 105, (1, 588) => 36, (1, 916) => 364, (1, 807) => 255, (1, 963) => 411, (1, 759) => 207, (1, 938) => 386, (1, 877) => 325, (1, 900) => 348, (1, 641) => 89, (1, 650) => 98, (1, 681) => 129, (1, 770) => 218, (1, 969) => 417, (1, 664) => 112, (1, 983) => 431, (1, 741) => 189, (1, 743) => 191, (1, 999) => 447, (1, 735) => 183, (1, 685) => 133, (1, 665) => 113, (1, 793) => 241, (1, 868) => 316, (1, 855) => 303, (1, 773) => 221, (1, 711) => 159, (1, 764) => 212, (1, 926) => 374, (1, 683) => 131, (1, 708) => 156, (1, 602) => 50, (1, 624) => 72, (1, 682) => 130, (1, 710) => 158, (1, 800) => 248, (1, 766) => 214, (1, 836) => 284, (1, 3) => 2, (1, 890) => 338, (1, 959) => 407, (1, 687) => 135, (1, 593) => 41, (1, 732) => 180, (1, 736) => 184, (1, 829) => 277, (1, 837) => 285, (1, 740) => 188, (1, 948) => 396, (1, 995) => 443, (1, 592) => 40, (1, 707) => 155, (1, 712) => 160, (1, 823) => 271, (1, 878) => 326, (1, 911) => 359, (1, 600) => 48, (1, 804) => 252, (1, 758) => 206, (1, 617) => 65, (1, 760) => 208, (1, 686) => 134, (1, 700) => 148, (1, 863) => 311, (1, 976) => 424, (1, 744) => 192, (1, 788) => 236, (1, 673) => 121, (1, 716) => 164, (1, 731) => 179, (1, 817) => 265, (1, 755) => 203, (1, 867) => 315, (1, 873) => 321, (1, 718) => 166, (1, 747) => 195, (1, 896) => 344, (1, 971) => 419, (1, 931) => 379, (1, 889) => 337, (1, 768) => 216, (1, 771) => 219, (1, 985) => 433, (1, 684) => 132, (1, 742) => 190, (1, 776) => 224, (1, 649) => 97, (1, 692) => 140, (1, 734) => 182, (1, 852) => 300, (1, 815) => 263, (1, 944) => 392, (1, 582) => 30, (1, 625) => 73, (1, 865) => 313, (1, 557) => 5, (1, 924) => 372, (1, 558) => 6, (1, 690) => 138, (1, 903) => 351, (1, 880) => 328, (1, 780) => 228, (1, 834) => 282, (1, 979) => 427, (1, 992) => 440, (1, 871) => 319, (1, 714) => 162, (1, 753) => 201, (1, 631) => 79, (1, 669) => 117, (1, 645) => 93, (1, 781) => 229, (1, 870) => 318, (1, 777) => 225, (1, 738) => 186, (1, 972) => 420, (1, 998) => 446, (1, 962) => 410, (1, 571) => 19, (1, 607) => 55, (1, 694) => 142, (1, 721) => 169, (1, 754) => 202, (1, 832) => 280, (1, 762) => 210, (1, 993) => 441, (1, 977) => 425, (1, 935) => 383, (1, 618) => 66, (1, 679) => 127, (1, 778) => 226, (1, 563) => 11, (1, 920) => 368, (1, 737) => 185, (1, 655) => 103, (1, 828) => 276, (1, 594) => 42, (1, 842) => 290, (1, 989) => 437, (1, 907) => 355, (1, 761) => 209, (1, 830) => 278, (1, 730) => 178, (1, 951) => 399, (1, 928) => 376, (1, 583) => 31, (1, 598) => 46, (1, 706) => 154, (1, 643) => 91, (1, 887) => 335, (1, 666) => 114, (1, 729) => 177, (1, 689) => 137, (1, 619) => 67, (1, 782) => 230, (1, 565) => 13, (1, 794) => 242, (1, 559) => 7, (1, 654) => 102, (1, 642) => 90, (1, 705) => 153, (1, 713) => 161, (1, 955) => 403, (1, 638) => 86, (1, 990) => 438, (1, 678) => 126, (1, 667) => 115, (1, 835) => 283, (1, 875) => 323, (1, 752) => 200, (1, 608) => 56, (1, 728) => 176, (1, 789) => 237, (1, 662) => 110, (1, 879) => 327, (1, 621) => 69, (1, 784) => 232, (1, 819) => 267, (1, 578) => 26, (1, 827) => 275, (1, 845) => 293, (1, 825) => 273, (1, 984) => 432, (1, 882) => 330)))) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 9], [2, 3, 5, 6, 7, 8, 9, 11], [1, 2, 3, 4, 5, 6, 7, 8], Dict((1, 2) => 1, (1, 9) => 7, (1, 7) => 5, (1, 6) => 4, (1, 11) => 8, (1, 5) => 3, (1, 3) => 2, (1, 8) => 6)))) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), 6, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 5], [2, 3, 5, 6], [1, 2, 3, 4], Dict((1, 2) => 1, (1, 6) => 4, (1, 5) => 3, (1, 3) => 2)))) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [2, 3, 4, 5, 8], [1, 2, 3, 4, 5], Dict((1, 2) => 1, (1, 4) => 3, (1, 5) => 4, (1, 3) => 2, (1, 8) => 5)))) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), 1111, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 5], [2, 3, 555, 666], [1, 2, 3, 4], Dict((1, 2) => 1, (1, 666) => 4, (1, 3) => 2, (1, 555) => 3)))) +countstored: 4 diff --git a/test/reference32/representation/SparseDict{Dense}_representation.txt b/test/reference32/representation/SparseDict{Dense}_representation.txt index 5178e6c43..ff0652e34 100644 --- a/test/reference32/representation/SparseDict{Dense}_representation.txt +++ b/test/reference32/representation/SparseDict{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseDict{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 4], [1, 2, 4], [1, 2, 3], Dict((1, 2) => 2, (1, 4) => 3, (1, 1) => 1)))) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dict((1, 2) => 2, (1, 4) => 4, (1, 1) => 1, (1, 3) => 3)))) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 25 diff --git a/test/reference32/representation/SparseDict{SparseList}_representation.txt b/test/reference32/representation/SparseDict{SparseList}_representation.txt index 113467a81..967303a5e 100644 --- a/test/reference32/representation/SparseDict{SparseList}_representation.txt +++ b/test/reference32/representation/SparseDict{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseDict{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 4], [1, 2, 4], [1, 2, 3], Dict((1, 2) => 2, (1, 4) => 3, (1, 1) => 1)))) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dict((1, 2) => 2, (1, 4) => 4, (1, 1) => 1, (1, 3) => 3)))) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}()))) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 4) => 4, (1, 5) => 5, (1, 1) => 1, (1, 3) => 3)))) +countstored: 8 diff --git a/test/reference32/representation/SparseHash{1}_representation.txt b/test/reference32/representation/SparseHash{1}_representation.txt index 26720c873..42c0b5e27 100644 --- a/test/reference32/representation/SparseHash{1}_representation.txt +++ b/test/reference32/representation/SparseHash{1}_representation.txt @@ -2,26 +2,38 @@ SparseHash{1} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[]), (5,), [1, 1], Dict{Tuple{Int32, Tuple{Int32}}, Int32}(), Pair{Tuple{Int32, Tuple{Int32}}, Int32}[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), (5,), [1, 6], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5), [(1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1]), (6,), [1, 4], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (6,)) => 3), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (6,)) => 3])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1]), (6,), [1, 2], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (3,)) => 1), [(1, (3,)) => 1])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (1111,), [1, 449], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (556,)) => 4, (1, (557,)) => 5, (1, (558,)) => 6, (1, (559,)) => 7, (1, (560,)) => 8, (1, (561,)) => 9, (1, (562,)) => 10, (1, (563,)) => 11, (1, (564,)) => 12, (1, (565,)) => 13, (1, (566,)) => 14, (1, (567,)) => 15, (1, (568,)) => 16, (1, (569,)) => 17, (1, (570,)) => 18, (1, (571,)) => 19, (1, (572,)) => 20, (1, (573,)) => 21, (1, (574,)) => 22, (1, (575,)) => 23, (1, (576,)) => 24, (1, (577,)) => 25, (1, (578,)) => 26, (1, (579,)) => 27, (1, (580,)) => 28, (1, (581,)) => 29, (1, (582,)) => 30, (1, (583,)) => 31, (1, (584,)) => 32, (1, (585,)) => 33, (1, (586,)) => 34, (1, (587,)) => 35, (1, (588,)) => 36, (1, (589,)) => 37, (1, (590,)) => 38, (1, (591,)) => 39, (1, (592,)) => 40, (1, (593,)) => 41, (1, (594,)) => 42, (1, (595,)) => 43, (1, (596,)) => 44, (1, (597,)) => 45, (1, (598,)) => 46, (1, (599,)) => 47, (1, (600,)) => 48, (1, (601,)) => 49, (1, (602,)) => 50, (1, (603,)) => 51, (1, (604,)) => 52, (1, (605,)) => 53, (1, (606,)) => 54, (1, (607,)) => 55, (1, (608,)) => 56, (1, (609,)) => 57, (1, (610,)) => 58, (1, (611,)) => 59, (1, (612,)) => 60, (1, (613,)) => 61, (1, (614,)) => 62, (1, (615,)) => 63, (1, (616,)) => 64, (1, (617,)) => 65, (1, (618,)) => 66, (1, (619,)) => 67, (1, (620,)) => 68, (1, (621,)) => 69, (1, (622,)) => 70, (1, (623,)) => 71, (1, (624,)) => 72, (1, (625,)) => 73, (1, (626,)) => 74, (1, (627,)) => 75, (1, (628,)) => 76, (1, (629,)) => 77, (1, (630,)) => 78, (1, (631,)) => 79, (1, (632,)) => 80, (1, (633,)) => 81, (1, (634,)) => 82, (1, (635,)) => 83, (1, (636,)) => 84, (1, (637,)) => 85, (1, (638,)) => 86, (1, (639,)) => 87, (1, (640,)) => 88, (1, (641,)) => 89, (1, (642,)) => 90, (1, (643,)) => 91, (1, (644,)) => 92, (1, (645,)) => 93, (1, (646,)) => 94, (1, (647,)) => 95, (1, (648,)) => 96, (1, (649,)) => 97, (1, (650,)) => 98, (1, (651,)) => 99, (1, (652,)) => 100, (1, (653,)) => 101, (1, (654,)) => 102, (1, (655,)) => 103, (1, (656,)) => 104, (1, (657,)) => 105, (1, (658,)) => 106, (1, (659,)) => 107, (1, (660,)) => 108, (1, (661,)) => 109, (1, (662,)) => 110, (1, (663,)) => 111, (1, (664,)) => 112, (1, (665,)) => 113, (1, (666,)) => 114, (1, (667,)) => 115, (1, (668,)) => 116, (1, (669,)) => 117, (1, (670,)) => 118, (1, (671,)) => 119, (1, (672,)) => 120, (1, (673,)) => 121, (1, (674,)) => 122, (1, (675,)) => 123, (1, (676,)) => 124, (1, (677,)) => 125, (1, (678,)) => 126, (1, (679,)) => 127, (1, (680,)) => 128, (1, (681,)) => 129, (1, (682,)) => 130, (1, (683,)) => 131, (1, (684,)) => 132, (1, (685,)) => 133, (1, (686,)) => 134, (1, (687,)) => 135, (1, (688,)) => 136, (1, (689,)) => 137, (1, (690,)) => 138, (1, (691,)) => 139, (1, (692,)) => 140, (1, (693,)) => 141, (1, (694,)) => 142, (1, (695,)) => 143, (1, (696,)) => 144, (1, (697,)) => 145, (1, (698,)) => 146, (1, (699,)) => 147, (1, (700,)) => 148, (1, (701,)) => 149, (1, (702,)) => 150, (1, (703,)) => 151, (1, (704,)) => 152, (1, (705,)) => 153, (1, (706,)) => 154, (1, (707,)) => 155, (1, (708,)) => 156, (1, (709,)) => 157, (1, (710,)) => 158, (1, (711,)) => 159, (1, (712,)) => 160, (1, (713,)) => 161, (1, (714,)) => 162, (1, (715,)) => 163, (1, (716,)) => 164, (1, (717,)) => 165, (1, (718,)) => 166, (1, (719,)) => 167, (1, (720,)) => 168, (1, (721,)) => 169, (1, (722,)) => 170, (1, (723,)) => 171, (1, (724,)) => 172, (1, (725,)) => 173, (1, (726,)) => 174, (1, (727,)) => 175, (1, (728,)) => 176, (1, (729,)) => 177, (1, (730,)) => 178, (1, (731,)) => 179, (1, (732,)) => 180, (1, (733,)) => 181, (1, (734,)) => 182, (1, (735,)) => 183, (1, (736,)) => 184, (1, (737,)) => 185, (1, (738,)) => 186, (1, (739,)) => 187, (1, (740,)) => 188, (1, (741,)) => 189, (1, (742,)) => 190, (1, (743,)) => 191, (1, (744,)) => 192, (1, (745,)) => 193, (1, (746,)) => 194, (1, (747,)) => 195, (1, (748,)) => 196, (1, (749,)) => 197, (1, (750,)) => 198, (1, (751,)) => 199, (1, (752,)) => 200, (1, (753,)) => 201, (1, (754,)) => 202, (1, (755,)) => 203, (1, (756,)) => 204, (1, (757,)) => 205, (1, (758,)) => 206, (1, (759,)) => 207, (1, (760,)) => 208, (1, (761,)) => 209, (1, (762,)) => 210, (1, (763,)) => 211, (1, (764,)) => 212, (1, (765,)) => 213, (1, (766,)) => 214, (1, (767,)) => 215, (1, (768,)) => 216, (1, (769,)) => 217, (1, (770,)) => 218, (1, (771,)) => 219, (1, (772,)) => 220, (1, (773,)) => 221, (1, (774,)) => 222, (1, (775,)) => 223, (1, (776,)) => 224, (1, (777,)) => 225, (1, (778,)) => 226, (1, (779,)) => 227, (1, (780,)) => 228, (1, (781,)) => 229, (1, (782,)) => 230, (1, (783,)) => 231, (1, (784,)) => 232, (1, (785,)) => 233, (1, (786,)) => 234, (1, (787,)) => 235, (1, (788,)) => 236, (1, (789,)) => 237, (1, (790,)) => 238, (1, (791,)) => 239, (1, (792,)) => 240, (1, (793,)) => 241, (1, (794,)) => 242, (1, (795,)) => 243, (1, (796,)) => 244, (1, (797,)) => 245, (1, (798,)) => 246, (1, (799,)) => 247, (1, (800,)) => 248, (1, (801,)) => 249, (1, (802,)) => 250, (1, (803,)) => 251, (1, (804,)) => 252, (1, (805,)) => 253, (1, (806,)) => 254, (1, (807,)) => 255, (1, (808,)) => 256, (1, (809,)) => 257, (1, (810,)) => 258, (1, (811,)) => 259, (1, (812,)) => 260, (1, (813,)) => 261, (1, (814,)) => 262, (1, (815,)) => 263, (1, (816,)) => 264, (1, (817,)) => 265, (1, (818,)) => 266, (1, (819,)) => 267, (1, (820,)) => 268, (1, (821,)) => 269, (1, (822,)) => 270, (1, (823,)) => 271, (1, (824,)) => 272, (1, (825,)) => 273, (1, (826,)) => 274, (1, (827,)) => 275, (1, (828,)) => 276, (1, (829,)) => 277, (1, (830,)) => 278, (1, (831,)) => 279, (1, (832,)) => 280, (1, (833,)) => 281, (1, (834,)) => 282, (1, (835,)) => 283, (1, (836,)) => 284, (1, (837,)) => 285, (1, (838,)) => 286, (1, (839,)) => 287, (1, (840,)) => 288, (1, (841,)) => 289, (1, (842,)) => 290, (1, (843,)) => 291, (1, (844,)) => 292, (1, (845,)) => 293, (1, (846,)) => 294, (1, (847,)) => 295, (1, (848,)) => 296, (1, (849,)) => 297, (1, (850,)) => 298, (1, (851,)) => 299, (1, (852,)) => 300, (1, (853,)) => 301, (1, (854,)) => 302, (1, (855,)) => 303, (1, (856,)) => 304, (1, (857,)) => 305, (1, (858,)) => 306, (1, (859,)) => 307, (1, (860,)) => 308, (1, (861,)) => 309, (1, (862,)) => 310, (1, (863,)) => 311, (1, (864,)) => 312, (1, (865,)) => 313, (1, (866,)) => 314, (1, (867,)) => 315, (1, (868,)) => 316, (1, (869,)) => 317, (1, (870,)) => 318, (1, (871,)) => 319, (1, (872,)) => 320, (1, (873,)) => 321, (1, (874,)) => 322, (1, (875,)) => 323, (1, (876,)) => 324, (1, (877,)) => 325, (1, (878,)) => 326, (1, (879,)) => 327, (1, (880,)) => 328, (1, (881,)) => 329, (1, (882,)) => 330, (1, (883,)) => 331, (1, (884,)) => 332, (1, (885,)) => 333, (1, (886,)) => 334, (1, (887,)) => 335, (1, (888,)) => 336, (1, (889,)) => 337, (1, (890,)) => 338, (1, (891,)) => 339, (1, (892,)) => 340, (1, (893,)) => 341, (1, (894,)) => 342, (1, (895,)) => 343, (1, (896,)) => 344, (1, (897,)) => 345, (1, (898,)) => 346, (1, (899,)) => 347, (1, (900,)) => 348, (1, (901,)) => 349, (1, (902,)) => 350, (1, (903,)) => 351, (1, (904,)) => 352, (1, (905,)) => 353, (1, (906,)) => 354, (1, (907,)) => 355, (1, (908,)) => 356, (1, (909,)) => 357, (1, (910,)) => 358, (1, (911,)) => 359, (1, (912,)) => 360, (1, (913,)) => 361, (1, (914,)) => 362, (1, (915,)) => 363, (1, (916,)) => 364, (1, (917,)) => 365, (1, (918,)) => 366, (1, (919,)) => 367, (1, (920,)) => 368, (1, (921,)) => 369, (1, (922,)) => 370, (1, (923,)) => 371, (1, (924,)) => 372, (1, (925,)) => 373, (1, (926,)) => 374, (1, (927,)) => 375, (1, (928,)) => 376, (1, (929,)) => 377, (1, (930,)) => 378, (1, (931,)) => 379, (1, (932,)) => 380, (1, (933,)) => 381, (1, (934,)) => 382, (1, (935,)) => 383, (1, (936,)) => 384, (1, (937,)) => 385, (1, (938,)) => 386, (1, (939,)) => 387, (1, (940,)) => 388, (1, (941,)) => 389, (1, (942,)) => 390, (1, (943,)) => 391, (1, (944,)) => 392, (1, (945,)) => 393, (1, (946,)) => 394, (1, (947,)) => 395, (1, (948,)) => 396, (1, (949,)) => 397, (1, (950,)) => 398, (1, (951,)) => 399, (1, (952,)) => 400, (1, (953,)) => 401, (1, (954,)) => 402, (1, (955,)) => 403, (1, (956,)) => 404, (1, (957,)) => 405, (1, (958,)) => 406, (1, (959,)) => 407, (1, (960,)) => 408, (1, (961,)) => 409, (1, (962,)) => 410, (1, (963,)) => 411, (1, (964,)) => 412, (1, (965,)) => 413, (1, (966,)) => 414, (1, (967,)) => 415, (1, (968,)) => 416, (1, (969,)) => 417, (1, (970,)) => 418, (1, (971,)) => 419, (1, (972,)) => 420, (1, (973,)) => 421, (1, (974,)) => 422, (1, (975,)) => 423, (1, (976,)) => 424, (1, (977,)) => 425, (1, (978,)) => 426, (1, (979,)) => 427, (1, (980,)) => 428, (1, (981,)) => 429, (1, (982,)) => 430, (1, (983,)) => 431, (1, (984,)) => 432, (1, (985,)) => 433, (1, (986,)) => 434, (1, (987,)) => 435, (1, (988,)) => 436, (1, (989,)) => 437, (1, (990,)) => 438, (1, (991,)) => 439, (1, (992,)) => 440, (1, (993,)) => 441, (1, (994,)) => 442, (1, (995,)) => 443, (1, (996,)) => 444, (1, (997,)) => 445, (1, (998,)) => 446, (1, (999,)) => 447, (1, (1001,)) => 448), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (556,)) => 4, (1, (557,)) => 5, (1, (558,)) => 6, (1, (559,)) => 7, (1, (560,)) => 8, (1, (561,)) => 9, (1, (562,)) => 10, (1, (563,)) => 11, (1, (564,)) => 12, (1, (565,)) => 13, (1, (566,)) => 14, (1, (567,)) => 15, (1, (568,)) => 16, (1, (569,)) => 17, (1, (570,)) => 18, (1, (571,)) => 19, (1, (572,)) => 20, (1, (573,)) => 21, (1, (574,)) => 22, (1, (575,)) => 23, (1, (576,)) => 24, (1, (577,)) => 25, (1, (578,)) => 26, (1, (579,)) => 27, (1, (580,)) => 28, (1, (581,)) => 29, (1, (582,)) => 30, (1, (583,)) => 31, (1, (584,)) => 32, (1, (585,)) => 33, (1, (586,)) => 34, (1, (587,)) => 35, (1, (588,)) => 36, (1, (589,)) => 37, (1, (590,)) => 38, (1, (591,)) => 39, (1, (592,)) => 40, (1, (593,)) => 41, (1, (594,)) => 42, (1, (595,)) => 43, (1, (596,)) => 44, (1, (597,)) => 45, (1, (598,)) => 46, (1, (599,)) => 47, (1, (600,)) => 48, (1, (601,)) => 49, (1, (602,)) => 50, (1, (603,)) => 51, (1, (604,)) => 52, (1, (605,)) => 53, (1, (606,)) => 54, (1, (607,)) => 55, (1, (608,)) => 56, (1, (609,)) => 57, (1, (610,)) => 58, (1, (611,)) => 59, (1, (612,)) => 60, (1, (613,)) => 61, (1, (614,)) => 62, (1, (615,)) => 63, (1, (616,)) => 64, (1, (617,)) => 65, (1, (618,)) => 66, (1, (619,)) => 67, (1, (620,)) => 68, (1, (621,)) => 69, (1, (622,)) => 70, (1, (623,)) => 71, (1, (624,)) => 72, (1, (625,)) => 73, (1, (626,)) => 74, (1, (627,)) => 75, (1, (628,)) => 76, (1, (629,)) => 77, (1, (630,)) => 78, (1, (631,)) => 79, (1, (632,)) => 80, (1, (633,)) => 81, (1, (634,)) => 82, (1, (635,)) => 83, (1, (636,)) => 84, (1, (637,)) => 85, (1, (638,)) => 86, (1, (639,)) => 87, (1, (640,)) => 88, (1, (641,)) => 89, (1, (642,)) => 90, (1, (643,)) => 91, (1, (644,)) => 92, (1, (645,)) => 93, (1, (646,)) => 94, (1, (647,)) => 95, (1, (648,)) => 96, (1, (649,)) => 97, (1, (650,)) => 98, (1, (651,)) => 99, (1, (652,)) => 100, (1, (653,)) => 101, (1, (654,)) => 102, (1, (655,)) => 103, (1, (656,)) => 104, (1, (657,)) => 105, (1, (658,)) => 106, (1, (659,)) => 107, (1, (660,)) => 108, (1, (661,)) => 109, (1, (662,)) => 110, (1, (663,)) => 111, (1, (664,)) => 112, (1, (665,)) => 113, (1, (666,)) => 114, (1, (667,)) => 115, (1, (668,)) => 116, (1, (669,)) => 117, (1, (670,)) => 118, (1, (671,)) => 119, (1, (672,)) => 120, (1, (673,)) => 121, (1, (674,)) => 122, (1, (675,)) => 123, (1, (676,)) => 124, (1, (677,)) => 125, (1, (678,)) => 126, (1, (679,)) => 127, (1, (680,)) => 128, (1, (681,)) => 129, (1, (682,)) => 130, (1, (683,)) => 131, (1, (684,)) => 132, (1, (685,)) => 133, (1, (686,)) => 134, (1, (687,)) => 135, (1, (688,)) => 136, (1, (689,)) => 137, (1, (690,)) => 138, (1, (691,)) => 139, (1, (692,)) => 140, (1, (693,)) => 141, (1, (694,)) => 142, (1, (695,)) => 143, (1, (696,)) => 144, (1, (697,)) => 145, (1, (698,)) => 146, (1, (699,)) => 147, (1, (700,)) => 148, (1, (701,)) => 149, (1, (702,)) => 150, (1, (703,)) => 151, (1, (704,)) => 152, (1, (705,)) => 153, (1, (706,)) => 154, (1, (707,)) => 155, (1, (708,)) => 156, (1, (709,)) => 157, (1, (710,)) => 158, (1, (711,)) => 159, (1, (712,)) => 160, (1, (713,)) => 161, (1, (714,)) => 162, (1, (715,)) => 163, (1, (716,)) => 164, (1, (717,)) => 165, (1, (718,)) => 166, (1, (719,)) => 167, (1, (720,)) => 168, (1, (721,)) => 169, (1, (722,)) => 170, (1, (723,)) => 171, (1, (724,)) => 172, (1, (725,)) => 173, (1, (726,)) => 174, (1, (727,)) => 175, (1, (728,)) => 176, (1, (729,)) => 177, (1, (730,)) => 178, (1, (731,)) => 179, (1, (732,)) => 180, (1, (733,)) => 181, (1, (734,)) => 182, (1, (735,)) => 183, (1, (736,)) => 184, (1, (737,)) => 185, (1, (738,)) => 186, (1, (739,)) => 187, (1, (740,)) => 188, (1, (741,)) => 189, (1, (742,)) => 190, (1, (743,)) => 191, (1, (744,)) => 192, (1, (745,)) => 193, (1, (746,)) => 194, (1, (747,)) => 195, (1, (748,)) => 196, (1, (749,)) => 197, (1, (750,)) => 198, (1, (751,)) => 199, (1, (752,)) => 200, (1, (753,)) => 201, (1, (754,)) => 202, (1, (755,)) => 203, (1, (756,)) => 204, (1, (757,)) => 205, (1, (758,)) => 206, (1, (759,)) => 207, (1, (760,)) => 208, (1, (761,)) => 209, (1, (762,)) => 210, (1, (763,)) => 211, (1, (764,)) => 212, (1, (765,)) => 213, (1, (766,)) => 214, (1, (767,)) => 215, (1, (768,)) => 216, (1, (769,)) => 217, (1, (770,)) => 218, (1, (771,)) => 219, (1, (772,)) => 220, (1, (773,)) => 221, (1, (774,)) => 222, (1, (775,)) => 223, (1, (776,)) => 224, (1, (777,)) => 225, (1, (778,)) => 226, (1, (779,)) => 227, (1, (780,)) => 228, (1, (781,)) => 229, (1, (782,)) => 230, (1, (783,)) => 231, (1, (784,)) => 232, (1, (785,)) => 233, (1, (786,)) => 234, (1, (787,)) => 235, (1, (788,)) => 236, (1, (789,)) => 237, (1, (790,)) => 238, (1, (791,)) => 239, (1, (792,)) => 240, (1, (793,)) => 241, (1, (794,)) => 242, (1, (795,)) => 243, (1, (796,)) => 244, (1, (797,)) => 245, (1, (798,)) => 246, (1, (799,)) => 247, (1, (800,)) => 248, (1, (801,)) => 249, (1, (802,)) => 250, (1, (803,)) => 251, (1, (804,)) => 252, (1, (805,)) => 253, (1, (806,)) => 254, (1, (807,)) => 255, (1, (808,)) => 256, (1, (809,)) => 257, (1, (810,)) => 258, (1, (811,)) => 259, (1, (812,)) => 260, (1, (813,)) => 261, (1, (814,)) => 262, (1, (815,)) => 263, (1, (816,)) => 264, (1, (817,)) => 265, (1, (818,)) => 266, (1, (819,)) => 267, (1, (820,)) => 268, (1, (821,)) => 269, (1, (822,)) => 270, (1, (823,)) => 271, (1, (824,)) => 272, (1, (825,)) => 273, (1, (826,)) => 274, (1, (827,)) => 275, (1, (828,)) => 276, (1, (829,)) => 277, (1, (830,)) => 278, (1, (831,)) => 279, (1, (832,)) => 280, (1, (833,)) => 281, (1, (834,)) => 282, (1, (835,)) => 283, (1, (836,)) => 284, (1, (837,)) => 285, (1, (838,)) => 286, (1, (839,)) => 287, (1, (840,)) => 288, (1, (841,)) => 289, (1, (842,)) => 290, (1, (843,)) => 291, (1, (844,)) => 292, (1, (845,)) => 293, (1, (846,)) => 294, (1, (847,)) => 295, (1, (848,)) => 296, (1, (849,)) => 297, (1, (850,)) => 298, (1, (851,)) => 299, (1, (852,)) => 300, (1, (853,)) => 301, (1, (854,)) => 302, (1, (855,)) => 303, (1, (856,)) => 304, (1, (857,)) => 305, (1, (858,)) => 306, (1, (859,)) => 307, (1, (860,)) => 308, (1, (861,)) => 309, (1, (862,)) => 310, (1, (863,)) => 311, (1, (864,)) => 312, (1, (865,)) => 313, (1, (866,)) => 314, (1, (867,)) => 315, (1, (868,)) => 316, (1, (869,)) => 317, (1, (870,)) => 318, (1, (871,)) => 319, (1, (872,)) => 320, (1, (873,)) => 321, (1, (874,)) => 322, (1, (875,)) => 323, (1, (876,)) => 324, (1, (877,)) => 325, (1, (878,)) => 326, (1, (879,)) => 327, (1, (880,)) => 328, (1, (881,)) => 329, (1, (882,)) => 330, (1, (883,)) => 331, (1, (884,)) => 332, (1, (885,)) => 333, (1, (886,)) => 334, (1, (887,)) => 335, (1, (888,)) => 336, (1, (889,)) => 337, (1, (890,)) => 338, (1, (891,)) => 339, (1, (892,)) => 340, (1, (893,)) => 341, (1, (894,)) => 342, (1, (895,)) => 343, (1, (896,)) => 344, (1, (897,)) => 345, (1, (898,)) => 346, (1, (899,)) => 347, (1, (900,)) => 348, (1, (901,)) => 349, (1, (902,)) => 350, (1, (903,)) => 351, (1, (904,)) => 352, (1, (905,)) => 353, (1, (906,)) => 354, (1, (907,)) => 355, (1, (908,)) => 356, (1, (909,)) => 357, (1, (910,)) => 358, (1, (911,)) => 359, (1, (912,)) => 360, (1, (913,)) => 361, (1, (914,)) => 362, (1, (915,)) => 363, (1, (916,)) => 364, (1, (917,)) => 365, (1, (918,)) => 366, (1, (919,)) => 367, (1, (920,)) => 368, (1, (921,)) => 369, (1, (922,)) => 370, (1, (923,)) => 371, (1, (924,)) => 372, (1, (925,)) => 373, (1, (926,)) => 374, (1, (927,)) => 375, (1, (928,)) => 376, (1, (929,)) => 377, (1, (930,)) => 378, (1, (931,)) => 379, (1, (932,)) => 380, (1, (933,)) => 381, (1, (934,)) => 382, (1, (935,)) => 383, (1, (936,)) => 384, (1, (937,)) => 385, (1, (938,)) => 386, (1, (939,)) => 387, (1, (940,)) => 388, (1, (941,)) => 389, (1, (942,)) => 390, (1, (943,)) => 391, (1, (944,)) => 392, (1, (945,)) => 393, (1, (946,)) => 394, (1, (947,)) => 395, (1, (948,)) => 396, (1, (949,)) => 397, (1, (950,)) => 398, (1, (951,)) => 399, (1, (952,)) => 400, (1, (953,)) => 401, (1, (954,)) => 402, (1, (955,)) => 403, (1, (956,)) => 404, (1, (957,)) => 405, (1, (958,)) => 406, (1, (959,)) => 407, (1, (960,)) => 408, (1, (961,)) => 409, (1, (962,)) => 410, (1, (963,)) => 411, (1, (964,)) => 412, (1, (965,)) => 413, (1, (966,)) => 414, (1, (967,)) => 415, (1, (968,)) => 416, (1, (969,)) => 417, (1, (970,)) => 418, (1, (971,)) => 419, (1, (972,)) => 420, (1, (973,)) => 421, (1, (974,)) => 422, (1, (975,)) => 423, (1, (976,)) => 424, (1, (977,)) => 425, (1, (978,)) => 426, (1, (979,)) => 427, (1, (980,)) => 428, (1, (981,)) => 429, (1, (982,)) => 430, (1, (983,)) => 431, (1, (984,)) => 432, (1, (985,)) => 433, (1, (986,)) => 434, (1, (987,)) => 435, (1, (988,)) => 436, (1, (989,)) => 437, (1, (990,)) => 438, (1, (991,)) => 439, (1, (992,)) => 440, (1, (993,)) => 441, (1, (994,)) => 442, (1, (995,)) => 443, (1, (996,)) => 444, (1, (997,)) => 445, (1, (998,)) => 446, (1, (999,)) => 447, (1, (1001,)) => 448])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (11,), [1, 9], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4, (1, (7,)) => 5, (1, (8,)) => 6, (1, (9,)) => 7, (1, (11,)) => 8), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4, (1, (7,)) => 5, (1, (8,)) => 6, (1, (9,)) => 7, (1, (11,)) => 8])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), (6,), [1, 5], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}(Float64[]), (4,), [1, 1], Dict{Tuple{Int32, Tuple{Int32}}, Int32}(), Pair{Tuple{Int32, Tuple{Int32}}, Int32}[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}(Float64[]), (5,), [1, 1], Dict{Tuple{Int32, Tuple{Int32}}, Int32}(), Pair{Tuple{Int32, Tuple{Int32}}, Int32}[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), (5,), [1, 6], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5), [(1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), (9,), [1, 6], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (4,)) => 3, (1, (5,)) => 4, (1, (8,)) => 5), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (4,)) => 3, (1, (5,)) => 4, (1, (8,)) => 5])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int32}}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), (1111,), [1, 5], Dict{Tuple{Int32, Tuple{Int32}}, Int32}((1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (666,)) => 4), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (666,)) => 4])) +countstored: 4 diff --git a/test/reference32/representation/SparseHash{2}_representation.txt b/test/reference32/representation/SparseHash{2}_representation.txt index 45a79fb9b..dc298ca64 100644 --- a/test/reference32/representation/SparseHash{2}_representation.txt +++ b/test/reference32/representation/SparseHash{2}_representation.txt @@ -2,16 +2,23 @@ SparseHash{2} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[]), (5, 5), [1, 1], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}(), Pair{Tuple{Int32, Tuple{Int32, Int32}}, Int32}[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (5, 5), [1, 26], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}((1, (1, 1)) => 1, (1, (1, 2)) => 6, (1, (1, 3)) => 11, (1, (1, 4)) => 16, (1, (1, 5)) => 21, (1, (2, 1)) => 2, (1, (2, 2)) => 7, (1, (2, 3)) => 12, (1, (2, 4)) => 17, (1, (2, 5)) => 22, (1, (3, 1)) => 3, (1, (3, 2)) => 8, (1, (3, 3)) => 13, (1, (3, 4)) => 18, (1, (3, 5)) => 23, (1, (4, 1)) => 4, (1, (4, 2)) => 9, (1, (4, 3)) => 14, (1, (4, 4)) => 19, (1, (4, 5)) => 24, (1, (5, 1)) => 5, (1, (5, 2)) => 10, (1, (5, 3)) => 15, (1, (5, 4)) => 20, (1, (5, 5)) => 25), [(1, (1, 1)) => 1, (1, (2, 1)) => 2, (1, (3, 1)) => 3, (1, (4, 1)) => 4, (1, (5, 1)) => 5, (1, (1, 2)) => 6, (1, (2, 2)) => 7, (1, (3, 2)) => 8, (1, (4, 2)) => 9, (1, (5, 2)) => 10, (1, (1, 3)) => 11, (1, (2, 3)) => 12, (1, (3, 3)) => 13, (1, (4, 3)) => 14, (1, (5, 3)) => 15, (1, (1, 4)) => 16, (1, (2, 4)) => 17, (1, (3, 4)) => 18, (1, (4, 4)) => 19, (1, (5, 4)) => 20, (1, (1, 5)) => 21, (1, (2, 5)) => 22, (1, (3, 5)) => 23, (1, (4, 5)) => 24, (1, (5, 5)) => 25])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1]), (4, 4), [1, 4], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}((1, (1, 4)) => 3, (1, (3, 1)) => 1, (1, (4, 2)) => 2), [(1, (3, 1)) => 1, (1, (4, 2)) => 2, (1, (1, 4)) => 3])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (4, 4), [1, 9], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}((1, (1, 2)) => 2, (1, (1, 4)) => 6, (1, (3, 1)) => 1, (1, (3, 2)) => 3, (1, (3, 3)) => 5, (1, (3, 4)) => 7, (1, (4, 2)) => 4, (1, (4, 4)) => 8), [(1, (3, 1)) => 1, (1, (1, 2)) => 2, (1, (3, 2)) => 3, (1, (4, 2)) => 4, (1, (3, 3)) => 5, (1, (1, 4)) => 6, (1, (3, 4)) => 7, (1, (4, 4)) => 8])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}(Float64[]), (5, 5), [1, 1], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}(), Pair{Tuple{Int32, Tuple{Int32, Int32}}, Int32}[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), (5, 5), [1, 26], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}((1, (1, 1)) => 1, (1, (1, 2)) => 6, (1, (1, 3)) => 11, (1, (1, 4)) => 16, (1, (1, 5)) => 21, (1, (2, 1)) => 2, (1, (2, 2)) => 7, (1, (2, 3)) => 12, (1, (2, 4)) => 17, (1, (2, 5)) => 22, (1, (3, 1)) => 3, (1, (3, 2)) => 8, (1, (3, 3)) => 13, (1, (3, 4)) => 18, (1, (3, 5)) => 23, (1, (4, 1)) => 4, (1, (4, 2)) => 9, (1, (4, 3)) => 14, (1, (4, 4)) => 19, (1, (4, 5)) => 24, (1, (5, 1)) => 5, (1, (5, 2)) => 10, (1, (5, 3)) => 15, (1, (5, 4)) => 20, (1, (5, 5)) => 25), [(1, (1, 1)) => 1, (1, (2, 1)) => 2, (1, (3, 1)) => 3, (1, (4, 1)) => 4, (1, (5, 1)) => 5, (1, (1, 2)) => 6, (1, (2, 2)) => 7, (1, (3, 2)) => 8, (1, (4, 2)) => 9, (1, (5, 2)) => 10, (1, (1, 3)) => 11, (1, (2, 3)) => 12, (1, (3, 3)) => 13, (1, (4, 3)) => 14, (1, (5, 3)) => 15, (1, (1, 4)) => 16, (1, (2, 4)) => 17, (1, (3, 4)) => 18, (1, (4, 4)) => 19, (1, (5, 4)) => 20, (1, (1, 5)) => 21, (1, (2, 5)) => 22, (1, (3, 5)) => 23, (1, (4, 5)) => 24, (1, (5, 5)) => 25])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseHash{2, Tuple{Int32, Int32}}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), (5, 5), [1, 9], Dict{Tuple{Int32, Tuple{Int32, Int32}}, Int32}((1, (1, 2)) => 2, (1, (1, 3)) => 4, (1, (1, 4)) => 6, (1, (1, 5)) => 8, (1, (3, 1)) => 1, (1, (3, 2)) => 3, (1, (3, 3)) => 5, (1, (4, 4)) => 7), [(1, (3, 1)) => 1, (1, (1, 2)) => 2, (1, (3, 2)) => 3, (1, (1, 3)) => 4, (1, (3, 3)) => 5, (1, (1, 4)) => 6, (1, (4, 4)) => 7, (1, (1, 5)) => 8])) +countstored: 8 diff --git a/test/reference32/representation/SparseInterval_representation.txt b/test/reference32/representation/SparseInterval_representation.txt index 5d64789e7..f17c5e63c 100644 --- a/test/reference32/representation/SparseInterval_representation.txt +++ b/test/reference32/representation/SparseInterval_representation.txt @@ -2,4 +2,5 @@ SparseInterval representation: 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseInterval{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3], [3])) +countstored: 1 diff --git a/test/reference32/representation/SparseList_representation.txt b/test/reference32/representation/SparseList_representation.txt index ee4d3224d..fbcad86e2 100644 --- a/test/reference32/representation/SparseList_representation.txt +++ b/test/reference32/representation/SparseList_representation.txt @@ -2,26 +2,38 @@ SparseList representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 6, [1, 4], [2, 3, 6])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), 6, [1, 5], [2, 3, 5, 6])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, [1, 1], Int32[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 6], [2, 3, 4, 5, 8])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666])) +countstored: 4 diff --git a/test/reference32/representation/SparseList{DenseRLELazy}_representation.txt b/test/reference32/representation/SparseList{DenseRLELazy}_representation.txt index 5ec02c5c0..645a5efb7 100644 --- a/test/reference32/representation/SparseList{DenseRLELazy}_representation.txt +++ b/test/reference32/representation/SparseList{DenseRLELazy}_representation.txt @@ -2,16 +2,23 @@ SparseList{DenseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], Element{false, Bool, Int32}(Bool[]); merge = false), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 0, 1, 1, 0]), 4, [1, 4, 6, 8], [2, 3, 4, 3, 4, 1, 4], Element{false, Bool, Int32}(Bool[]); merge = false), 4, [1, 4], [1, 2, 4])) +countstored: 7 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 4, 8, 11, 15], [2, 3, 4, 1, 2, 3, 4, 2, 3, 4, 1, 2, 3, 4], Element{false, Bool, Int32}(Bool[]); merge = false), 4, [1, 5], [1, 2, 3, 4])) +countstored: 14 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int32}(Float64[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 17 diff --git a/test/reference32/representation/SparseList{DenseRLE}_representation.txt b/test/reference32/representation/SparseList{DenseRLE}_representation.txt index 90262aa71..f17723898 100644 --- a/test/reference32/representation/SparseList{DenseRLE}_representation.txt +++ b/test/reference32/representation/SparseList{DenseRLE}_representation.txt @@ -2,16 +2,23 @@ SparseList{DenseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], Element{false, Bool, Int32}(Bool[]); merge = true), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 0, 1, 1, 0]), 4, [1, 4, 6, 8], [2, 3, 4, 3, 4, 1, 4], Element{false, Bool, Int32}(Bool[]); merge = true), 4, [1, 4], [1, 2, 4])) +countstored: 7 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{false, Bool, Int32}(Bool[0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]), 4, [1, 4, 7, 10, 13], [2, 3, 4, 1, 2, 4, 2, 3, 4, 1, 2, 4], Element{false, Bool, Int32}(Bool[]); merge = true), 4, [1, 5], [1, 2, 3, 4])) +countstored: 12 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(DenseRLE{Int32}(Element{0.0, Float64, Int32}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int32}(Float64[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 17 diff --git a/test/reference32/representation/SparseList{Dense}_representation.txt b/test/reference32/representation/SparseList{Dense}_representation.txt index 2cdc9fece..284825f08 100644 --- a/test/reference32/representation/SparseList{Dense}_representation.txt +++ b/test/reference32/representation/SparseList{Dense}_representation.txt @@ -2,30 +2,44 @@ SparseList{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[])) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[])) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 diff --git a/test/reference32/representation/SparseList{Separate}_representation.txt b/test/reference32/representation/SparseList{Separate}_representation.txt index b4d2a5904..a1309d72c 100644 --- a/test/reference32/representation/SparseList{Separate}_representation.txt +++ b/test/reference32/representation/SparseList{Separate}_representation.txt @@ -2,26 +2,38 @@ SparseList{Separate} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[0])]), 5, [1, 1], Int32[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0])]), 6, [1, 4], [2, 3, 6])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0])]), 6, [1, 2], [3])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0])]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1])]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([3.0]), Element{0.0, Float64, Int32}([3.0])]), 6, [1, 5], [2, 3, 5, 6])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([0.0])]), 4, [1, 1], Int32[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([0.0])]), 5, [1, 1], Int32[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([3.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0])]), 9, [1, 6], [2, 3, 4, 5, 8])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([20.0]), Element{0.0, Float64, Int32}([30.0]), Element{0.0, Float64, Int32}([5550.0]), Element{0.0, Float64, Int32}([6660.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0])]), 1111, [1, 5], [2, 3, 555, 666])) +countstored: 4 diff --git a/test/reference32/representation/SparseList{Separate}{Dense}_representation.txt b/test/reference32/representation/SparseList{Separate}{Dense}_representation.txt index 40ea9b184..1945d4903 100644 --- a/test/reference32/representation/SparseList{Separate}{Dense}_representation.txt +++ b/test/reference32/representation/SparseList{Separate}{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseList{Separate}{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0, 0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 1]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 0, 0, 0]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 0, 0]), 4)]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4), DenseLevel{Int32, ElementLevel{false, Bool, Int32, Vector{Bool}}}[Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 0, 1, 1]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0]), 4), Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 0, 1, 1]), 4)]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 4 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Separate(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), DenseLevel{Int32, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 0.0, 1.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([2.0, 0.0, 2.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([2.0, 0.0, 0.0, 3.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([3.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 diff --git a/test/reference32/representation/SparseList{Separate}{SparseList}_representation.txt b/test/reference32/representation/SparseList{Separate}{SparseList}_representation.txt index d08bf00d7..9c96dc941 100644 --- a/test/reference32/representation/SparseList{Separate}{SparseList}_representation.txt +++ b/test/reference32/representation/SparseList{Separate}{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseList{Separate}{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{false, Bool, Int32, Vector{Bool}}}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{false, Bool, Int32, Vector{Bool}}}[SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{false, Bool, Int32, Vector{Bool}}}[SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 4, [1, 2], [3]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 4, [1, 2], [4]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 4, [1, 2], [1]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1, 1], Int32[])]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{false, Bool, Int32, Vector{Bool}}}[SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 4, [1, 2], [3]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 4], [1, 3, 4]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1]), 4, [1, 2], [3]), SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 4], [1, 3, 4])]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 4 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Separate(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), SparseListLevel{Int32, Vector{Int32}, Vector{Int32}, ElementLevel{0.0, Float64, Int32, Vector{Float64}}}[SparseList{Int32}(Element{0.0, Float64, Int32}([1.0]), 5, [1, 2], [3]), SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0]), 5, [1, 3], [1, 3]), SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0]), 5, [1, 3], [1, 3]), SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 3.0]), 5, [1, 3], [1, 4]), SparseList{Int32}(Element{0.0, Float64, Int32}([3.0]), 5, [1, 2], [1]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[]), SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 diff --git a/test/reference32/representation/SparseList{SparseBand}_representation.txt b/test/reference32/representation/SparseList{SparseBand}_representation.txt index ed1a75792..f9812c3e1 100644 --- a/test/reference32/representation/SparseList{SparseBand}_representation.txt +++ b/test/reference32/representation/SparseList{SparseBand}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseBand} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], [1]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 0, 1, 1, 1, 1, 0, 1, 1]), 4, [1, 2, 3, 4, 5], [3, 4, 3, 4], [1, 2, 6, 7, 11]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 10 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], [1]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseBand{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 0.0, 1.0, 2.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0, 3.0]), 5, [1, 2, 3, 4, 5, 6], [3, 3, 3, 4, 1], [1, 2, 5, 8, 12, 13]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 12 diff --git a/test/reference32/representation/SparseList{SparseByteMap}_representation.txt b/test/reference32/representation/SparseList{SparseByteMap}_representation.txt index 9c68fb749..87c91d8e2 100644 --- a/test/reference32/representation/SparseList{SparseByteMap}_representation.txt +++ b/test/reference32/representation/SparseList{SparseByteMap}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseByteMap} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Bool[], Tuple{Int32, Int32}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4, [1, 2, 3, 4], Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0], [(1, 3), (2, 4), (3, 1)]), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 2, 5, 6, 9], Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1], [(1, 3), (2, 1), (2, 3), (2, 4), (3, 3), (4, 1), (4, 3), (4, 4)]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Bool[], Tuple{Int32, Int32}[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseByteMap{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 4, 6, 8, 9], Bool[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0], [(1, 3), (2, 1), (2, 3), (3, 1), (3, 3), (4, 1), (4, 4), (5, 1)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 diff --git a/test/reference32/representation/SparseList{SparseDict}_representation.txt b/test/reference32/representation/SparseList{SparseDict}_representation.txt index b5ab7b184..d466c0b16 100644 --- a/test/reference32/representation/SparseList{SparseDict}_representation.txt +++ b/test/reference32/representation/SparseList{SparseDict}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseDict} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}())), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((3, 2) => 12, (3, 4) => 14, (1, 5) => 5, (1, 3) => 3, (3, 1) => 11, (4, 3) => 18, (4, 5) => 20, (1, 2) => 2, (4, 2) => 17, (1, 4) => 4, (4, 4) => 19, (1, 1) => 1, (4, 1) => 16, (2, 5) => 10, (2, 3) => 8, (5, 5) => 25, (5, 3) => 23, (2, 2) => 7, (5, 2) => 22, (2, 4) => 9, (2, 1) => 6, (5, 4) => 24, (5, 1) => 21, (3, 5) => 15, (3, 3) => 13))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 3, 4], [3, 4, 1], [1, 2, 3], Dict((1, 3) => 1, (3, 1) => 3, (2, 4) => 2))), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 1) => 2, (2, 3) => 3, (4, 4) => 8, (1, 3) => 1, (3, 3) => 5, (4, 1) => 6, (4, 3) => 7, (2, 4) => 4))), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1], Int32[], Int32[], Dict{Tuple{Int32, Int32}, Int32}())), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((3, 2) => 12, (3, 4) => 14, (1, 5) => 5, (1, 3) => 3, (3, 1) => 11, (4, 3) => 18, (4, 5) => 20, (1, 2) => 2, (4, 2) => 17, (1, 4) => 4, (4, 4) => 19, (1, 1) => 1, (4, 1) => 16, (2, 5) => 10, (2, 3) => 8, (5, 5) => 25, (5, 3) => 23, (2, 2) => 7, (5, 2) => 22, (2, 4) => 9, (2, 1) => 6, (5, 4) => 24, (5, 1) => 21, (3, 5) => 15, (3, 3) => 13))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(Sparse{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, Finch.DictTable{Int32, Int32, Vector{Int32}, Vector{Int32}, Vector{Int32}, Dict{Tuple{Int32, Int32}, Int32}}([1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 1) => 2, (2, 3) => 3, (5, 1) => 8, (4, 4) => 7, (1, 3) => 1, (3, 1) => 4, (3, 3) => 5, (4, 1) => 6))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparseList{SparseList{Separate}}_representation.txt b/test/reference32/representation/SparseList{SparseList{Separate}}_representation.txt index 6bd325082..548d135b5 100644 --- a/test/reference32/representation/SparseList{SparseList{Separate}}_representation.txt +++ b/test/reference32/representation/SparseList{SparseList{Separate}}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseList{Separate}} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0]), Element{false, Bool, Int32}(Bool[0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[0])]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{false, Bool, Int32}(Bool[]), ElementLevel{false, Bool, Int32, Vector{Bool}}[Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1]), Element{false, Bool, Int32}(Bool[1])]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0]), Element{0.0, Float64, Int32}([0.0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Separate(Element{0.0, Float64, Int32}(Float64[]), ElementLevel{0.0, Float64, Int32, Vector{Float64}}[Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([1.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([2.0]), Element{0.0, Float64, Int32}([3.0]), Element{0.0, Float64, Int32}([3.0])]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparseList{SparseList}_representation.txt b/test/reference32/representation/SparseList{SparseList}_representation.txt index 95bbc3382..5badc1ccb 100644 --- a/test/reference32/representation/SparseList{SparseList}_representation.txt +++ b/test/reference32/representation/SparseList{SparseList}_representation.txt @@ -2,30 +2,44 @@ SparseList{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparseList{SparseRLELazy}_representation.txt b/test/reference32/representation/SparseList{SparseRLELazy}_representation.txt index d9193cc82..2e7022cf9 100644 --- a/test/reference32/representation/SparseList{SparseRLELazy}_representation.txt +++ b/test/reference32/representation/SparseList{SparseRLELazy}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =false), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int32}(Bool[]); merge =false), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [3, 1, 3, 4, 3, 1, 3, 4], Element{false, Bool, Int32}(Bool[]); merge =false), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int32}(Float64[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparseList{SparseRLE}_representation.txt b/test/reference32/representation/SparseList{SparseRLE}_representation.txt index 546c64def..a68ded3d3 100644 --- a/test/reference32/representation/SparseList{SparseRLE}_representation.txt +++ b/test/reference32/representation/SparseList{SparseRLE}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =true), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{false, Bool, Int32}(Bool[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int32}(Bool[]); merge =true), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 3, 3, 1, 3], [3, 1, 4, 3, 1, 4], Element{false, Bool, Int32}(Bool[]); merge =true), 4, [1, 5], [1, 2, 3, 4])) +countstored: 6 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int32}(Float64[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparseList{SparseVBL}_representation.txt b/test/reference32/representation/SparseList{SparseVBL}_representation.txt index 3eac88c3c..22ede489a 100644 --- a/test/reference32/representation/SparseList{SparseVBL}_representation.txt +++ b/test/reference32/representation/SparseList{SparseVBL}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseVBL} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[], [1]), 5, [1, 1], Int32[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 4, 3, 1, 4], [1, 2, 3, 5, 6, 7, 9]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[], [1]), 5, [1, 1], Int32[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int32}(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference32/representation/SparsePoint_representation.txt b/test/reference32/representation/SparsePoint_representation.txt index 40afcc76e..d17e96caf 100644 --- a/test/reference32/representation/SparsePoint_representation.txt +++ b/test/reference32/representation/SparsePoint_representation.txt @@ -2,4 +2,5 @@ SparsePoint representation: 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparsePoint{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3])) +countstored: 1 diff --git a/test/reference32/representation/SparseRLELazy_representation.txt b/test/reference32/representation/SparseRLELazy_representation.txt index 940eb38b0..b27ded54e 100644 --- a/test/reference32/representation/SparseRLELazy_representation.txt +++ b/test/reference32/representation/SparseRLELazy_representation.txt @@ -2,26 +2,38 @@ SparseRLELazy representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =false)) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]); merge =false)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 6, [1, 4], [2, 3, 6], [2, 3, 6], Element{false, Bool, Int32}(Bool[1, 1, 1]); merge =false)) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3], [3], Element{false, Bool, Int32}(Bool[1]); merge =false)) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]); merge =false)) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11], [2, 3, 5, 6, 7, 8, 9, 11], Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]); merge =false)) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), 6, [1, 5], [2, 3, 5, 6], [2, 3, 5, 6], Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]); merge =false)) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, [1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =false)) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =false)) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]); merge =false)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 6], [2, 3, 4, 5, 8], [2, 3, 4, 5, 8], Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]); merge =false)) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666], [2, 3, 555, 666], Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]); merge =false)) +countstored: 4 diff --git a/test/reference32/representation/SparseRLELazy{Dense}_representation.txt b/test/reference32/representation/SparseRLELazy{Dense}_representation.txt index af524662c..7fe56f71d 100644 --- a/test/reference32/representation/SparseRLELazy{Dense}_representation.txt +++ b/test/reference32/representation/SparseRLELazy{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseRLELazy{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[], Int32[], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge =false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge =false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4], [1, 2, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge =false)) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge =false)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[], Int32[], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =false)) +countstored: 25 diff --git a/test/reference32/representation/SparseRLELazy{SparseList}_representation.txt b/test/reference32/representation/SparseRLELazy{SparseList}_representation.txt index 1122c7228..4e9c64b3b 100644 --- a/test/reference32/representation/SparseRLELazy{SparseList}_representation.txt +++ b/test/reference32/representation/SparseRLELazy{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseRLELazy{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[], Int32[], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge =false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge =false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4], [1, 2, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge =false)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge =false)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[], Int32[], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =false)) +countstored: 8 diff --git a/test/reference32/representation/SparseRLE_representation.txt b/test/reference32/representation/SparseRLE_representation.txt index 045efb35a..6635a81da 100644 --- a/test/reference32/representation/SparseRLE_representation.txt +++ b/test/reference32/representation/SparseRLE_representation.txt @@ -2,26 +2,38 @@ SparseRLE representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[], Int32[], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1]), 5, [1, 2], [1], [5], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1]), 6, [1, 3], [2, 6], [3, 6], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 2 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3], [3], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 1111, [1, 4], [2, 555, 1001], [3, 999, 1001], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 3 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseRLE{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 11, [1, 4], [2, 5, 11], [3, 9, 11], Element{false, Bool, Int32}(Bool[]); merge =true)) +countstored: 3 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([2.0, 3.0]), 6, [1, 3], [2, 5], [3, 6], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 2 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, [1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[], Int32[], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0]), 5, [1, 2], [1], [5], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([1.0, 2.0, 3.0]), 9, [1, 4], [2, 4, 8], [3, 5, 8], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 3 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666], [2, 3, 555, 666], Element{0.0, Float64, Int32}(Float64[]); merge =true)) +countstored: 4 diff --git a/test/reference32/representation/SparseRLE{Dense}_representation.txt b/test/reference32/representation/SparseRLE{Dense}_representation.txt index 921221e84..b41880710 100644 --- a/test/reference32/representation/SparseRLE{Dense}_representation.txt +++ b/test/reference32/representation/SparseRLE{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseRLE{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[], Int32[], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge =true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5), 5, [1, 2], [1], [5], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5); merge =true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4], [1, 2, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge =true)) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 4); merge =true)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[], Int32[], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [1], [5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5); merge =true)) +countstored: 25 diff --git a/test/reference32/representation/SparseRLE{SparseList}_representation.txt b/test/reference32/representation/SparseRLE{SparseList}_representation.txt index 562e2ba63..9e194c56b 100644 --- a/test/reference32/representation/SparseRLE{SparseList}_representation.txt +++ b/test/reference32/representation/SparseRLE{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseRLE{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[], Int32[], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge =true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [1], [5], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]); merge =true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4], [1, 2, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge =true)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 4, [1], Int32[]); merge =true)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[], Int32[], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [1], [5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]); merge =true)) +countstored: 8 diff --git a/test/reference32/representation/SparseVBL_representation.txt b/test/reference32/representation/SparseVBL_representation.txt index cdc97ed3c..2f55834d7 100644 --- a/test/reference32/representation/SparseVBL_representation.txt +++ b/test/reference32/representation/SparseVBL_representation.txt @@ -2,26 +2,38 @@ SparseVBL representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 6, [1, 3], [3, 6], [1, 3, 4])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1]), 6, [1, 2], [3], [1, 2])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 4], [3, 999, 1001], [1, 3, 448, 449])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseVBL{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 4], [3, 9, 11], [1, 3, 8, 9])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}([2.0, 2.0, 3.0, 3.0]), 6, [1, 3], [3, 6], [1, 3, 5])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}(Float64[]), 4, [1, 1], Int32[], [1])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2], [5], [1, 6])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 3], [5, 8], [1, 5, 6])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int32}(Element{0.0, Float64, Int32}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 4], [3, 555, 666], [1, 3, 4, 5])) +countstored: 4 diff --git a/test/reference32/representation/SparseVBL{Dense}_representation.txt b/test/reference32/representation/SparseVBL{Dense}_representation.txt index 506469128..b673321ec 100644 --- a/test/reference32/representation/SparseVBL{Dense}_representation.txt +++ b/test/reference32/representation/SparseVBL{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseVBL{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[]), 5), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 3], [2, 4], [1, 3, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{false, Bool, Int32}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int32}(Dense{Int32}(Element{0.0, Float64, Int32}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 diff --git a/test/reference32/representation/SparseVBL{SparseList}_representation.txt b/test/reference32/representation/SparseVBL{SparseList}_representation.txt index 5f4aa2cdf..50c60d429 100644 --- a/test/reference32/representation/SparseVBL{SparseList}_representation.txt +++ b/test/reference32/representation/SparseVBL{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseVBL{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[]), 5, [1], Int32[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 3], [2, 4], [1, 3, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{false, Bool, Int32}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 2], [4], [1, 5])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}(Float64[]), 5, [1], Int32[]), 5, [1, 1], Int32[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int32}(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 8 diff --git a/test/reference32/typical/typical_merge_gallop.txt b/test/reference32/typical/typical_merge_gallop.txt index 4548cd232..ebab54a0f 100644 --- a/test/reference32/typical/typical_merge_gallop.txt +++ b/test/reference32/typical/typical_merge_gallop.txt @@ -107,8 +107,9 @@ quote y_lvl_q = Finch.scansearch(y_lvl_idx, phase_stop_2, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i2 = y_lvl_idx[y_lvl_q] - if y_lvl_i2 < phase_stop_2 - for i_12 = phase_stop_2:-1 + y_lvl_i2 + phase_stop_5 = min(y_lvl_i2, phase_stop_2) + if y_lvl_i2 == phase_stop_5 + for i_12 = phase_stop_2:-1 + phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -127,49 +128,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = y_lvl_i2 + z_lvl_idx[z_lvl_qos] = phase_stop_5 z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_6 = min(y_lvl_i2, phase_stop_2) - if y_lvl_i2 == phase_stop_6 - for i_14 = phase_stop_2:-1 + phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_14 - z_lvl_qos += 1 - end - y_lvl_2_val = y_lvl_val[y_lvl_q] + for i_14 = phase_stop_2:phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_6 + z_lvl_val[z_lvl_qos] = x_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_14 z_lvl_qos += 1 - y_lvl_q += 1 - else - for i_16 = phase_stop_2:phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_16 - z_lvl_qos += 1 - end end - x_lvl_q += 1 - break end x_lvl_q += 1 elseif y_lvl_i2 == phase_stop_2 @@ -191,8 +164,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_8 = min(x_lvl_i2, -1 + phase_stop_2) - if x_lvl_i2 == phase_stop_8 + phase_stop_7 = min(x_lvl_i2, -1 + phase_stop_2) + if x_lvl_i2 == phase_stop_7 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -201,7 +174,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_8 + z_lvl_idx[z_lvl_qos] = phase_stop_7 z_lvl_qos += 1 x_lvl_q += 1 end @@ -213,8 +186,9 @@ quote x_lvl_q = Finch.scansearch(x_lvl_idx, phase_stop_2, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_2 - for i_21 = phase_stop_2:-1 + x_lvl_i2 + phase_stop_8 = min(x_lvl_i2, phase_stop_2) + if x_lvl_i2 == phase_stop_8 + for i_19 = phase_stop_2:-1 + phase_stop_8 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -222,7 +196,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_21 + z_lvl_idx[z_lvl_qos] = i_19 z_lvl_qos += 1 end x_lvl_2_val = x_lvl_val[x_lvl_q] @@ -233,49 +207,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val + x_lvl_2_val - z_lvl_idx[z_lvl_qos] = x_lvl_i2 + z_lvl_idx[z_lvl_qos] = phase_stop_8 z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_10 = min(x_lvl_i2, phase_stop_2) - if x_lvl_i2 == phase_stop_10 - for i_23 = phase_stop_2:-1 + phase_stop_10 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_23 - z_lvl_qos += 1 - end - x_lvl_2_val = x_lvl_val[x_lvl_q] + for i_21 = phase_stop_2:phase_stop_8 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = y_lvl_2_val + x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_10 + z_lvl_val[z_lvl_qos] = y_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_21 z_lvl_qos += 1 - x_lvl_q += 1 - else - for i_25 = phase_stop_2:phase_stop_10 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_25 - z_lvl_qos += 1 - end end - y_lvl_q += 1 - break end y_lvl_q += 1 else @@ -288,8 +234,8 @@ quote while i <= phase_stop_2 y_lvl_i2 = y_lvl_idx[y_lvl_q] x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_11 = min(y_lvl_i2, x_lvl_i2, phase_stop_2) - if y_lvl_i2 == phase_stop_11 && x_lvl_i2 == phase_stop_11 + phase_stop_9 = min(y_lvl_i2, x_lvl_i2, phase_stop_2) + if y_lvl_i2 == phase_stop_9 && x_lvl_i2 == phase_stop_9 y_lvl_2_val = y_lvl_val[y_lvl_q] x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop @@ -299,11 +245,11 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 y_lvl_q += 1 x_lvl_q += 1 - elseif x_lvl_i2 == phase_stop_11 + elseif x_lvl_i2 == phase_stop_9 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -312,10 +258,10 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 x_lvl_q += 1 - elseif y_lvl_i2 == phase_stop_11 + elseif y_lvl_i2 == phase_stop_9 y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -324,27 +270,27 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 y_lvl_q += 1 end - i = phase_stop_11 + 1 + i = phase_stop_9 + 1 end end i = phase_stop_2 + 1 end end phase_start_8 = max(1, 1 + y_lvl_i1) - phase_stop_12 = min(y_lvl.shape, x_lvl_i1) - if phase_stop_12 >= phase_start_8 + phase_stop_10 = min(y_lvl.shape, x_lvl_i1) + if phase_stop_10 >= phase_start_8 i = phase_start_8 - while i <= phase_stop_12 + while i <= phase_stop_10 if x_lvl_idx[x_lvl_q] < i x_lvl_q = Finch.scansearch(x_lvl_idx, i, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_13 = min(x_lvl_i2, phase_stop_12) - if x_lvl_i2 == phase_stop_13 + phase_stop_11 = min(x_lvl_i2, phase_stop_10) + if x_lvl_i2 == phase_stop_11 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -353,7 +299,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_13 + z_lvl_idx[z_lvl_qos] = phase_stop_11 z_lvl_qos += 1 x_lvl_q += 1 else @@ -362,7 +308,7 @@ quote end while true x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_13 + if x_lvl_i2 < phase_stop_11 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -375,8 +321,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_15 = min(x_lvl_i2, phase_stop_13) - if x_lvl_i2 == phase_stop_15 + phase_stop_13 = min(x_lvl_i2, phase_stop_11) + if x_lvl_i2 == phase_stop_13 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -385,7 +331,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_15 + z_lvl_idx[z_lvl_qos] = phase_stop_13 z_lvl_qos += 1 x_lvl_q += 1 end @@ -393,20 +339,20 @@ quote end end end - i = phase_stop_13 + 1 + i = phase_stop_11 + 1 end end phase_start_11 = max(1, 1 + x_lvl_i1) - phase_stop_16 = min(y_lvl.shape, y_lvl_i1) - if phase_stop_16 >= phase_start_11 + phase_stop_14 = min(y_lvl.shape, y_lvl_i1) + if phase_stop_14 >= phase_start_11 i = phase_start_11 - while i <= phase_stop_16 + while i <= phase_stop_14 if y_lvl_idx[y_lvl_q] < i y_lvl_q = Finch.scansearch(y_lvl_idx, i, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i2 = y_lvl_idx[y_lvl_q] - phase_stop_17 = min(y_lvl_i2, phase_stop_16) - if y_lvl_i2 == phase_stop_17 + phase_stop_15 = min(y_lvl_i2, phase_stop_14) + if y_lvl_i2 == phase_stop_15 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -415,7 +361,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_17 + z_lvl_idx[z_lvl_qos] = phase_stop_15 z_lvl_qos += 1 y_lvl_q += 1 else @@ -424,7 +370,7 @@ quote end while true y_lvl_i2 = y_lvl_idx[y_lvl_q] - if y_lvl_i2 < phase_stop_17 + if y_lvl_i2 < phase_stop_15 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -437,8 +383,8 @@ quote z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_19 = min(y_lvl_i2, phase_stop_17) - if y_lvl_i2 == phase_stop_19 + phase_stop_17 = min(y_lvl_i2, phase_stop_15) + if y_lvl_i2 == phase_stop_17 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -447,7 +393,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_19 + z_lvl_idx[z_lvl_qos] = phase_stop_17 z_lvl_qos += 1 y_lvl_q += 1 end @@ -455,7 +401,7 @@ quote end end end - i = phase_stop_17 + 1 + i = phase_stop_15 + 1 end end z_lvl_ptr[1 + 1] += (z_lvl_qos - 0) - 1 @@ -475,5 +421,5 @@ julia> @finch begin z[i] = x[gallop(i)] + y[gallop(i)] end end -(z = Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 1.0, 6.0]), 10, [1, 4], [1, 2, 9])),) +(z = Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 1.0, 3.0, 5.0, 5.0, 1.0, 6.0]), 10, [1, 8], [1, 2, 3, 5, 7, 8, 9])),) diff --git a/test/reference32/typical/typical_merge_leadfollow.txt b/test/reference32/typical/typical_merge_leadfollow.txt index 513dca6f7..b000c718b 100644 --- a/test/reference32/typical/typical_merge_leadfollow.txt +++ b/test/reference32/typical/typical_merge_leadfollow.txt @@ -68,17 +68,19 @@ quote y_lvl_q += 1 else phase_stop_4 = min(y_lvl_i, -1 + phase_stop_2) - y_lvl_2_val = y_lvl_val[y_lvl_q] - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) + if y_lvl_i == phase_stop_4 + y_lvl_2_val = y_lvl_val[y_lvl_q] + if z_lvl_qos > z_lvl_qos_stop + z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) + Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) + Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) + Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) + end + z_lvl_val[z_lvl_qos] = y_lvl_2_val + z_lvl_idx[z_lvl_qos] = phase_stop_4 + z_lvl_qos += 1 + y_lvl_q += 1 end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_4 - z_lvl_qos += 1 - y_lvl_q += 1 break end end @@ -87,8 +89,9 @@ quote y_lvl_q = Finch.scansearch(y_lvl_idx, phase_stop_2, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i = y_lvl_idx[y_lvl_q] - if y_lvl_i < phase_stop_2 - for i_11 = phase_stop_2:-1 + y_lvl_i + phase_stop_5 = min(phase_stop_2, y_lvl_i) + if y_lvl_i == phase_stop_5 + for i_11 = phase_stop_2:-1 + phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -107,49 +110,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = y_lvl_i + z_lvl_idx[z_lvl_qos] = phase_stop_5 z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_6 = min(phase_stop_2, y_lvl_i) - if y_lvl_i == phase_stop_6 - for i_13 = phase_stop_2:-1 + phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_13 - z_lvl_qos += 1 - end - y_lvl_2_val = y_lvl_val[y_lvl_q] + for i_13 = phase_stop_2:phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_6 + z_lvl_val[z_lvl_qos] = x_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_13 z_lvl_qos += 1 - y_lvl_q += 1 - else - for i_15 = phase_stop_2:phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_15 - z_lvl_qos += 1 - end end - x_lvl_q += 1 - break end x_lvl_q += 1 else @@ -162,8 +137,8 @@ quote while i <= phase_stop_2 y_lvl_i = y_lvl_idx[y_lvl_q] x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_7 = min(x_lvl_i2, phase_stop_2, y_lvl_i) - if y_lvl_i == phase_stop_7 && x_lvl_i2 == phase_stop_7 + phase_stop_6 = min(x_lvl_i2, phase_stop_2, y_lvl_i) + if y_lvl_i == phase_stop_6 && x_lvl_i2 == phase_stop_6 x_lvl_2_val = x_lvl_val[x_lvl_q] y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop @@ -173,11 +148,11 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 y_lvl_q += 1 x_lvl_q += 1 - elseif x_lvl_i2 == phase_stop_7 + elseif x_lvl_i2 == phase_stop_6 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -186,10 +161,10 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 x_lvl_q += 1 - elseif y_lvl_i == phase_stop_7 + elseif y_lvl_i == phase_stop_6 y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -198,27 +173,27 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 y_lvl_q += 1 end - i = phase_stop_7 + 1 + i = phase_stop_6 + 1 end end i = phase_stop_2 + 1 end end phase_start_6 = max(1, 1 + y_lvl_i1) - phase_stop_8 = min(y_lvl.shape, x_lvl_i1) - if phase_stop_8 >= phase_start_6 + phase_stop_7 = min(y_lvl.shape, x_lvl_i1) + if phase_stop_7 >= phase_start_6 i = phase_start_6 - while i <= phase_stop_8 + while i <= phase_stop_7 if x_lvl_idx[x_lvl_q] < i x_lvl_q = Finch.scansearch(x_lvl_idx, i, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_9 = min(x_lvl_i2, phase_stop_8) - if x_lvl_i2 == phase_stop_9 + phase_stop_8 = min(x_lvl_i2, phase_stop_7) + if x_lvl_i2 == phase_stop_8 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -227,7 +202,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_9 + z_lvl_idx[z_lvl_qos] = phase_stop_8 z_lvl_qos += 1 x_lvl_q += 1 else @@ -236,7 +211,7 @@ quote end while true x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_9 + if x_lvl_i2 < phase_stop_8 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -249,8 +224,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_11 = min(x_lvl_i2, phase_stop_9) - if x_lvl_i2 == phase_stop_11 + phase_stop_10 = min(x_lvl_i2, phase_stop_8) + if x_lvl_i2 == phase_stop_10 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -259,7 +234,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_10 z_lvl_qos += 1 x_lvl_q += 1 end @@ -267,18 +242,18 @@ quote end end end - i = phase_stop_9 + 1 + i = phase_stop_8 + 1 end end phase_start_9 = max(1, 1 + x_lvl_i1) - phase_stop_12 = min(y_lvl.shape, y_lvl_i1) - if phase_stop_12 >= phase_start_9 + phase_stop_11 = min(y_lvl.shape, y_lvl_i1) + if phase_stop_11 >= phase_start_9 if y_lvl_idx[y_lvl_q] < phase_start_9 y_lvl_q = Finch.scansearch(y_lvl_idx, phase_start_9, y_lvl_q, y_lvl_q_stop - 1) end while true y_lvl_i = y_lvl_idx[y_lvl_q] - if y_lvl_i < phase_stop_12 + if y_lvl_i < phase_stop_11 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -291,8 +266,8 @@ quote z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_14 = min(y_lvl_i, phase_stop_12) - if y_lvl_i == phase_stop_14 + phase_stop_13 = min(y_lvl_i, phase_stop_11) + if y_lvl_i == phase_stop_13 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -301,7 +276,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_14 + z_lvl_idx[z_lvl_qos] = phase_stop_13 z_lvl_qos += 1 y_lvl_q += 1 end @@ -326,5 +301,5 @@ julia> @finch begin z[i] = x[gallop(i)] + y[i] end end -(z = Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([1.0, 2.0, 6.0]), 10, [1, 4], [0, 1, 9])),) +(z = Tensor(SparseList{Int32}(Element{0.0, Float64, Int32}([2.0, 1.0, 3.0, 5.0, 5.0, 1.0, 6.0]), 10, [1, 8], [1, 2, 3, 5, 7, 8, 9])),) diff --git a/test/reference64/representation/DenseRLELazy_representation.txt b/test/reference64/representation/DenseRLELazy_representation.txt index c2bbe98f4..f9d0386e2 100644 --- a/test/reference64/representation/DenseRLELazy_representation.txt +++ b/test/reference64/representation/DenseRLELazy_representation.txt @@ -2,26 +2,38 @@ DenseRLELazy representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0]), 5, [1, 2], [5], Element{false, Bool, Int64}(Bool[0]); merge = false)) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]); merge = false)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1]), 6, [1, 6], [1, 2, 3, 5, 6], Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1]); merge = false)) +countstored: 5 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0]), 6, [1, 4], [2, 3, 6], Element{false, Bool, Int64}(Bool[0, 1, 0]); merge = false)) +countstored: 3 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]), 1111, [1, 453], [1, 2, 3, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1111], Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]); merge = false)) +countstored: 452 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 12], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11], Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]); merge = false)) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 7], [1, 2, 3, 4, 5, 6], Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]); merge = false)) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0]), 4, [1, 2], [4], Element{0.0, Float64, Int64}([0.0]); merge = false)) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0]), 5, [1, 2], [5], Element{0.0, Float64, Int64}([0.0]); merge = false)) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5], Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]); merge = false)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 3.0, 0.0]), 9, [1, 9], [1, 2, 3, 4, 5, 7, 8, 9], Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 3.0, 0.0]); merge = false)) +countstored: 8 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]), 1111, [1, 9], [1, 2, 3, 554, 555, 665, 666, 1111], Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]); merge = false)) +countstored: 8 diff --git a/test/reference64/representation/DenseRLELazy{Dense}_representation.txt b/test/reference64/representation/DenseRLELazy{Dense}_representation.txt index df91e19f4..34b10756f 100644 --- a/test/reference64/representation/DenseRLELazy{Dense}_representation.txt +++ b/test/reference64/representation/DenseRLELazy{Dense}_representation.txt @@ -2,16 +2,23 @@ DenseRLELazy{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5), 5, [1, 2], [5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge = false)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge = false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge = false)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge = false)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = false)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = false)) +countstored: 25 diff --git a/test/reference64/representation/DenseRLELazy{SparseList}_representation.txt b/test/reference64/representation/DenseRLELazy{SparseList}_representation.txt index ac6938501..91f248f65 100644 --- a/test/reference64/representation/DenseRLELazy{SparseList}_representation.txt +++ b/test/reference64/representation/DenseRLELazy{SparseList}_representation.txt @@ -2,16 +2,23 @@ DenseRLELazy{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[]), 5, [1, 2], [5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge = false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge = false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge = false)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge = false)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), 5, [1, 2], [5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = false)) +countstored: 8 diff --git a/test/reference64/representation/DenseRLE_representation.txt b/test/reference64/representation/DenseRLE_representation.txt index db79aedbd..1c57683ff 100644 --- a/test/reference64/representation/DenseRLE_representation.txt +++ b/test/reference64/representation/DenseRLE_representation.txt @@ -2,26 +2,38 @@ DenseRLE representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0]), 5, [1, 2], [5], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1]), 5, [1, 2], [5], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1]), 6, [1, 5], [1, 3, 5, 6], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 4 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0]), 6, [1, 4], [2, 3, 6], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 3 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1, 0]), 1111, [1, 8], [1, 3, 554, 999, 1000, 1001, 1111], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 7 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1]), 11, [1, 7], [1, 3, 4, 9, 10, 11], Element{false, Bool, Int64}(Bool[]); merge = true)) +countstored: 6 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 0.0, 3.0]), 6, [1, 5], [1, 3, 4, 6], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0]), 4, [1, 2], [4], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0]), 5, [1, 2], [5], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0]), 5, [1, 2], [5], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 2.0, 0.0, 3.0, 0.0]), 9, [1, 7], [1, 3, 5, 7, 8, 9], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 6 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 5550.0, 0.0, 6660.0, 0.0]), 1111, [1, 9], [1, 2, 3, 554, 555, 665, 666, 1111], Element{0.0, Float64, Int64}(Float64[]); merge = true)) +countstored: 8 diff --git a/test/reference64/representation/DenseRLE{Dense}_representation.txt b/test/reference64/representation/DenseRLE{Dense}_representation.txt index 49aa3a90e..6969c0f3d 100644 --- a/test/reference64/representation/DenseRLE{Dense}_representation.txt +++ b/test/reference64/representation/DenseRLE{Dense}_representation.txt @@ -2,16 +2,23 @@ DenseRLE{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5), 5, [1, 2], [5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge = true)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge = true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge = true)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge = true)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = true)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge = true)) +countstored: 25 diff --git a/test/reference64/representation/DenseRLE{SparseList}_representation.txt b/test/reference64/representation/DenseRLE{SparseList}_representation.txt index 5632710bd..70d8e477b 100644 --- a/test/reference64/representation/DenseRLE{SparseList}_representation.txt +++ b/test/reference64/representation/DenseRLE{SparseList}_representation.txt @@ -2,16 +2,23 @@ DenseRLE{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[]), 5, [1, 2], [5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge = true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge = true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge = true)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge = true)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), 5, [1, 2], [5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(DenseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge = true)) +countstored: 8 diff --git a/test/reference64/representation/Dense_representation.txt b/test/reference64/representation/Dense_representation.txt index d15343be6..156c7bd19 100644 --- a/test/reference64/representation/Dense_representation.txt +++ b/test/reference64/representation/Dense_representation.txt @@ -2,26 +2,38 @@ Dense representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5)) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 1]), 6)) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0]), 6)) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111)) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11)) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6)) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0]), 4)) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9)) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111)) +countstored: 1111 diff --git a/test/reference64/representation/Dense{Atomic}_representation.txt b/test/reference64/representation/Dense{Atomic}_representation.txt index 5d58562a5..39ed2fbdb 100644 --- a/test/reference64/representation/Dense{Atomic}_representation.txt +++ b/test/reference64/representation/Dense{Atomic}_representation.txt @@ -2,26 +2,38 @@ Dense{Atomic} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 1]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111), [Base.Threads.SpinLock(0)])) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Atomic(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11), [Base.Threads.SpinLock(0)])) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6), [Base.Threads.SpinLock(0)])) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0]), 4), [Base.Threads.SpinLock(0)])) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), [Base.Threads.SpinLock(0)])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9), [Base.Threads.SpinLock(0)])) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Atomic(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111), [Base.Threads.SpinLock(0)])) +countstored: 1111 diff --git a/test/reference64/representation/Dense{DenseRLELazy}_representation.txt b/test/reference64/representation/Dense{DenseRLELazy}_representation.txt index 207805c27..a0d168c01 100644 --- a/test/reference64/representation/Dense{DenseRLELazy}_representation.txt +++ b/test/reference64/representation/Dense{DenseRLELazy}_representation.txt @@ -2,16 +2,23 @@ Dense{DenseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge = false), 5)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[]); merge = false), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 0, 1, 0, 1, 0]), 4, [1, 4, 6, 7, 9], [2, 3, 4, 3, 4, 4, 1, 4], Element{false, Bool, Int64}(Bool[]); merge = false), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 4, 8, 11, 15], [2, 3, 4, 1, 2, 3, 4, 2, 3, 4, 1, 2, 3, 4], Element{false, Bool, Int64}(Bool[]); merge = false), 4)) +countstored: 14 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5)) +countstored: 17 diff --git a/test/reference64/representation/Dense{DenseRLE}_representation.txt b/test/reference64/representation/Dense{DenseRLE}_representation.txt index ea3822625..db0c5000f 100644 --- a/test/reference64/representation/Dense{DenseRLE}_representation.txt +++ b/test/reference64/representation/Dense{DenseRLE}_representation.txt @@ -2,16 +2,23 @@ Dense{DenseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge = true), 5)) +countstored: 5 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge = true), 5)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 0, 1, 0, 1, 0]), 4, [1, 4, 6, 7, 9], [2, 3, 4, 3, 4, 4, 1, 4], Element{false, Bool, Int64}(Bool[]); merge = true), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]), 4, [1, 4, 7, 10, 13], [2, 3, 4, 1, 2, 4, 2, 3, 4, 1, 2, 4], Element{false, Bool, Int64}(Bool[]); merge = true), 4)) +countstored: 12 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5)) +countstored: 5 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5)) +countstored: 17 diff --git a/test/reference64/representation/Dense{Dense}_representation.txt b/test/reference64/representation/Dense{Dense}_representation.txt index 4d5f833d7..0c951a337 100644 --- a/test/reference64/representation/Dense{Dense}_representation.txt +++ b/test/reference64/representation/Dense{Dense}_representation.txt @@ -2,30 +2,44 @@ Dense{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5)) +countstored: 25 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4)) +countstored: 16 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5)) +countstored: 25 diff --git a/test/reference64/representation/Dense{Separate}_representation.txt b/test/reference64/representation/Dense{Separate}_representation.txt index 2240ed752..9202b2e13 100644 --- a/test/reference64/representation/Dense{Separate}_representation.txt +++ b/test/reference64/representation/Dense{Separate}_representation.txt @@ -2,26 +2,38 @@ Dense{Separate} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5)])) +countstored: 1 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5)])) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 6), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 1]), 6)])) +countstored: 1 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 6), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0]), 6)])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 1111), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111)])) +countstored: 1 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 11), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11)])) +countstored: 1 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 6), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6)])) +countstored: 1 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0]), 4)])) +countstored: 1 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)])) +countstored: 1 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5)])) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 9), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9)])) +countstored: 1 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 1111), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111)])) +countstored: 1 diff --git a/test/reference64/representation/Dense{SparseBand}_representation.txt b/test/reference64/representation/Dense{SparseBand}_representation.txt index 69ff717a1..8994e3c25 100644 --- a/test/reference64/representation/Dense{SparseBand}_representation.txt +++ b/test/reference64/representation/Dense{SparseBand}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseBand} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[], [1]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 0, 1, 1, 1, 1, 0, 1, 1]), 4, [1, 2, 3, 4, 5], [3, 4, 3, 4], [1, 2, 6, 7, 11]), 4)) +countstored: 10 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[], [1]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 0.0, 1.0, 2.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0, 3.0]), 5, [1, 2, 3, 4, 5, 6], [3, 3, 3, 4, 1], [1, 2, 5, 8, 12, 13]), 5)) +countstored: 12 diff --git a/test/reference64/representation/Dense{SparseByteMap}_representation.txt b/test/reference64/representation/Dense{SparseByteMap}_representation.txt index 7c5cdcab3..048a55548 100644 --- a/test/reference64/representation/Dense{SparseByteMap}_representation.txt +++ b/test/reference64/representation/Dense{SparseByteMap}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseByteMap} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5, [1, 0, 0, 0, 0, 0], Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], Tuple{Int64, Int64}[]), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4, [1, 2, 3, 3, 4], Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0], [(1, 3), (2, 4), (4, 1)]), 4)) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 2, 5, 6, 9], Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1], [(1, 3), (2, 1), (2, 3), (2, 4), (3, 3), (4, 1), (4, 3), (4, 4)]), 4)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 0, 0, 0, 0, 0], Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], Tuple{Int64, Int64}[]), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 4, 6, 8, 9], Bool[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0], [(1, 3), (2, 1), (2, 3), (3, 1), (3, 3), (4, 1), (4, 4), (5, 1)]), 5)) +countstored: 25 diff --git a/test/reference64/representation/Dense{SparseDict}_representation.txt b/test/reference64/representation/Dense{SparseDict}_representation.txt index 7099e4c0e..bab2205cb 100644 --- a/test/reference64/representation/Dense{SparseDict}_representation.txt +++ b/test/reference64/representation/Dense{SparseDict}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseDict} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1, 1, 1, 1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}())), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((4, 5) => 20, (1, 2) => 2, (3, 1) => 11, (2, 5) => 10, (1, 3) => 3, (1, 4) => 4, (5, 5) => 25, (3, 2) => 12, (3, 3) => 13, (4, 1) => 16, (2, 1) => 6, (3, 4) => 14, (1, 5) => 5, (4, 2) => 17, (5, 1) => 21, (2, 2) => 7, (4, 3) => 18, (2, 3) => 8, (3, 5) => 15, (4, 4) => 19, (2, 4) => 9, (1, 1) => 1, (5, 2) => 22, (5, 3) => 23, (5, 4) => 24))), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3], Dict((2, 4) => 2, (1, 3) => 1, (4, 1) => 3))), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 4) => 4, (3, 3) => 5, (1, 3) => 1, (4, 1) => 6, (2, 1) => 2, (4, 3) => 7, (2, 3) => 3, (4, 4) => 8))), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1, 1, 1, 1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}())), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((4, 5) => 20, (1, 2) => 2, (3, 1) => 11, (2, 5) => 10, (1, 3) => 3, (1, 4) => 4, (5, 5) => 25, (3, 2) => 12, (3, 3) => 13, (4, 1) => 16, (2, 1) => 6, (3, 4) => 14, (1, 5) => 5, (4, 2) => 17, (5, 1) => 21, (2, 2) => 7, (4, 3) => 18, (2, 3) => 8, (3, 5) => 15, (4, 4) => 19, (2, 4) => 9, (1, 1) => 1, (5, 2) => 22, (5, 3) => 23, (5, 4) => 24))), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8], Dict((3, 1) => 4, (3, 3) => 5, (1, 3) => 1, (4, 1) => 6, (5, 1) => 8, (2, 1) => 2, (2, 3) => 3, (4, 4) => 7))), 5)) +countstored: 8 diff --git a/test/reference64/representation/Dense{SparseList{Separate}}_representation.txt b/test/reference64/representation/Dense{SparseList{Separate}}_representation.txt index e5d10243c..5efabd340 100644 --- a/test/reference64/representation/Dense{SparseList{Separate}}_representation.txt +++ b/test/reference64/representation/Dense{SparseList{Separate}}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseList{Separate}} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0])]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1])]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([3.0]), Element{0.0, Float64, Int64}([3.0])]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 diff --git a/test/reference64/representation/Dense{SparseList}_representation.txt b/test/reference64/representation/Dense{SparseList}_representation.txt index be7241aa2..2dc900444 100644 --- a/test/reference64/representation/Dense{SparseList}_representation.txt +++ b/test/reference64/representation/Dense{SparseList}_representation.txt @@ -2,30 +2,44 @@ Dense{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5)) +countstored: 8 diff --git a/test/reference64/representation/Dense{SparseRLELazy}_representation.txt b/test/reference64/representation/Dense{SparseRLELazy}_representation.txt index dfef5b7ef..2e785d2a1 100644 --- a/test/reference64/representation/Dense{SparseRLELazy}_representation.txt +++ b/test/reference64/representation/Dense{SparseRLELazy}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =false), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[]); merge =false), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int64}(Bool[]); merge =false), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [3, 1, 3, 4, 3, 1, 3, 4], Element{false, Bool, Int64}(Bool[]); merge =false), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5)) +countstored: 8 diff --git a/test/reference64/representation/Dense{SparseRLE}_representation.txt b/test/reference64/representation/Dense{SparseRLE}_representation.txt index f0e9d6c04..18c18fe97 100644 --- a/test/reference64/representation/Dense{SparseRLE}_representation.txt +++ b/test/reference64/representation/Dense{SparseRLE}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =true), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge =true), 5)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int64}(Bool[]); merge =true), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 3, 3, 1, 3], [3, 1, 4, 3, 1, 4], Element{false, Bool, Int64}(Bool[]); merge =true), 4)) +countstored: 6 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5)) +countstored: 8 diff --git a/test/reference64/representation/Dense{SparseVBL}_representation.txt b/test/reference64/representation/Dense{SparseVBL}_representation.txt index 75060680d..096ff5389 100644 --- a/test/reference64/representation/Dense{SparseVBL}_representation.txt +++ b/test/reference64/representation/Dense{SparseVBL}_representation.txt @@ -2,16 +2,23 @@ Dense{SparseVBL} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[], [1]), 5)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 4, 3, 1, 4], [1, 2, 3, 5, 6, 7, 9]), 4)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[], [1]), 5)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Dense{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9]), 5)) +countstored: 8 diff --git a/test/reference64/representation/SparseBand_representation.txt b/test/reference64/representation/SparseBand_representation.txt index 0c7cef7bc..f5bbfe56d 100644 --- a/test/reference64/representation/SparseBand_representation.txt +++ b/test/reference64/representation/SparseBand_representation.txt @@ -2,26 +2,38 @@ SparseBand representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 0, 0, 1]), 6, [1, 2], [6], [1, 6])) +countstored: 5 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3], [1, 2])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]), 1111, [1, 2], [1001], [1, 1001])) +countstored: 1000 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 2], [11], [1, 11])) +countstored: 10 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 2], [6], [1, 6])) +countstored: 5 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, [1, 1], Int64[], [1])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2], [5], [1, 6])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0]), 9, [1, 2], [8], [1, 8])) +countstored: 7 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseBand{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0]), 1111, [1, 2], [666], [1, 666])) +countstored: 665 diff --git a/test/reference64/representation/SparseBand{Dense}_representation.txt b/test/reference64/representation/SparseBand{Dense}_representation.txt index ce82cad8d..591d081a4 100644 --- a/test/reference64/representation/SparseBand{Dense}_representation.txt +++ b/test/reference64/representation/SparseBand{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseBand{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 diff --git a/test/reference64/representation/SparseBand{SparseList}_representation.txt b/test/reference64/representation/SparseBand{SparseList}_representation.txt index bd6c01eb1..cfe6c6e12 100644 --- a/test/reference64/representation/SparseBand{SparseList}_representation.txt +++ b/test/reference64/representation/SparseBand{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseBand{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 2], [4], [1, 5])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 2], [4], [1, 5])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseBand{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 8 diff --git a/test/reference64/representation/SparseByteMap_representation.txt b/test/reference64/representation/SparseByteMap_representation.txt index 6ee0990e6..cab1b46b1 100644 --- a/test/reference64/representation/SparseByteMap_representation.txt +++ b/test/reference64/representation/SparseByteMap_representation.txt @@ -2,26 +2,38 @@ SparseByteMap representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 5 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 1]), 6, [1, 4], Bool[0, 1, 1, 0, 0, 1], [(1, 2), (1, 3), (1, 6)])) +countstored: 6 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0]), 6, [1, 2], Bool[0, 0, 1, 0, 0, 0], [(1, 3)])) +countstored: 6 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 1111, [1, 449], Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [(1, 2), (1, 3), (1, 555), (1, 556), (1, 557), (1, 558), (1, 559), (1, 560), (1, 561), (1, 562), (1, 563), (1, 564), (1, 565), (1, 566), (1, 567), (1, 568), (1, 569), (1, 570), (1, 571), (1, 572), (1, 573), (1, 574), (1, 575), (1, 576), (1, 577), (1, 578), (1, 579), (1, 580), (1, 581), (1, 582), (1, 583), (1, 584), (1, 585), (1, 586), (1, 587), (1, 588), (1, 589), (1, 590), (1, 591), (1, 592), (1, 593), (1, 594), (1, 595), (1, 596), (1, 597), (1, 598), (1, 599), (1, 600), (1, 601), (1, 602), (1, 603), (1, 604), (1, 605), (1, 606), (1, 607), (1, 608), (1, 609), (1, 610), (1, 611), (1, 612), (1, 613), (1, 614), (1, 615), (1, 616), (1, 617), (1, 618), (1, 619), (1, 620), (1, 621), (1, 622), (1, 623), (1, 624), (1, 625), (1, 626), (1, 627), (1, 628), (1, 629), (1, 630), (1, 631), (1, 632), (1, 633), (1, 634), (1, 635), (1, 636), (1, 637), (1, 638), (1, 639), (1, 640), (1, 641), (1, 642), (1, 643), (1, 644), (1, 645), (1, 646), (1, 647), (1, 648), (1, 649), (1, 650), (1, 651), (1, 652), (1, 653), (1, 654), (1, 655), (1, 656), (1, 657), (1, 658), (1, 659), (1, 660), (1, 661), (1, 662), (1, 663), (1, 664), (1, 665), (1, 666), (1, 667), (1, 668), (1, 669), (1, 670), (1, 671), (1, 672), (1, 673), (1, 674), (1, 675), (1, 676), (1, 677), (1, 678), (1, 679), (1, 680), (1, 681), (1, 682), (1, 683), (1, 684), (1, 685), (1, 686), (1, 687), (1, 688), (1, 689), (1, 690), (1, 691), (1, 692), (1, 693), (1, 694), (1, 695), (1, 696), (1, 697), (1, 698), (1, 699), (1, 700), (1, 701), (1, 702), (1, 703), (1, 704), (1, 705), (1, 706), (1, 707), (1, 708), (1, 709), (1, 710), (1, 711), (1, 712), (1, 713), (1, 714), (1, 715), (1, 716), (1, 717), (1, 718), (1, 719), (1, 720), (1, 721), (1, 722), (1, 723), (1, 724), (1, 725), (1, 726), (1, 727), (1, 728), (1, 729), (1, 730), (1, 731), (1, 732), (1, 733), (1, 734), (1, 735), (1, 736), (1, 737), (1, 738), (1, 739), (1, 740), (1, 741), (1, 742), (1, 743), (1, 744), (1, 745), (1, 746), (1, 747), (1, 748), (1, 749), (1, 750), (1, 751), (1, 752), (1, 753), (1, 754), (1, 755), (1, 756), (1, 757), (1, 758), (1, 759), (1, 760), (1, 761), (1, 762), (1, 763), (1, 764), (1, 765), (1, 766), (1, 767), (1, 768), (1, 769), (1, 770), (1, 771), (1, 772), (1, 773), (1, 774), (1, 775), (1, 776), (1, 777), (1, 778), (1, 779), (1, 780), (1, 781), (1, 782), (1, 783), (1, 784), (1, 785), (1, 786), (1, 787), (1, 788), (1, 789), (1, 790), (1, 791), (1, 792), (1, 793), (1, 794), (1, 795), (1, 796), (1, 797), (1, 798), (1, 799), (1, 800), (1, 801), (1, 802), (1, 803), (1, 804), (1, 805), (1, 806), (1, 807), (1, 808), (1, 809), (1, 810), (1, 811), (1, 812), (1, 813), (1, 814), (1, 815), (1, 816), (1, 817), (1, 818), (1, 819), (1, 820), (1, 821), (1, 822), (1, 823), (1, 824), (1, 825), (1, 826), (1, 827), (1, 828), (1, 829), (1, 830), (1, 831), (1, 832), (1, 833), (1, 834), (1, 835), (1, 836), (1, 837), (1, 838), (1, 839), (1, 840), (1, 841), (1, 842), (1, 843), (1, 844), (1, 845), (1, 846), (1, 847), (1, 848), (1, 849), (1, 850), (1, 851), (1, 852), (1, 853), (1, 854), (1, 855), (1, 856), (1, 857), (1, 858), (1, 859), (1, 860), (1, 861), (1, 862), (1, 863), (1, 864), (1, 865), (1, 866), (1, 867), (1, 868), (1, 869), (1, 870), (1, 871), (1, 872), (1, 873), (1, 874), (1, 875), (1, 876), (1, 877), (1, 878), (1, 879), (1, 880), (1, 881), (1, 882), (1, 883), (1, 884), (1, 885), (1, 886), (1, 887), (1, 888), (1, 889), (1, 890), (1, 891), (1, 892), (1, 893), (1, 894), (1, 895), (1, 896), (1, 897), (1, 898), (1, 899), (1, 900), (1, 901), (1, 902), (1, 903), (1, 904), (1, 905), (1, 906), (1, 907), (1, 908), (1, 909), (1, 910), (1, 911), (1, 912), (1, 913), (1, 914), (1, 915), (1, 916), (1, 917), (1, 918), (1, 919), (1, 920), (1, 921), (1, 922), (1, 923), (1, 924), (1, 925), (1, 926), (1, 927), (1, 928), (1, 929), (1, 930), (1, 931), (1, 932), (1, 933), (1, 934), (1, 935), (1, 936), (1, 937), (1, 938), (1, 939), (1, 940), (1, 941), (1, 942), (1, 943), (1, 944), (1, 945), (1, 946), (1, 947), (1, 948), (1, 949), (1, 950), (1, 951), (1, 952), (1, 953), (1, 954), (1, 955), (1, 956), (1, 957), (1, 958), (1, 959), (1, 960), (1, 961), (1, 962), (1, 963), (1, 964), (1, 965), (1, 966), (1, 967), (1, 968), (1, 969), (1, 970), (1, 971), (1, 972), (1, 973), (1, 974), (1, 975), (1, 976), (1, 977), (1, 978), (1, 979), (1, 980), (1, 981), (1, 982), (1, 983), (1, 984), (1, 985), (1, 986), (1, 987), (1, 988), (1, 989), (1, 990), (1, 991), (1, 992), (1, 993), (1, 994), (1, 995), (1, 996), (1, 997), (1, 998), (1, 999), (1, 1001)])) +countstored: 1111 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]), 11, [1, 9], Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1], [(1, 2), (1, 3), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9), (1, 11)])) +countstored: 11 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 2.0, 2.0, 0.0, 3.0, 3.0]), 6, [1, 5], Bool[0, 1, 1, 0, 1, 1], [(1, 2), (1, 3), (1, 5), (1, 6)])) +countstored: 6 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0]), 4, [1, 0], Bool[0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 4 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 5 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0]), 9, [1, 6], Bool[0, 1, 1, 1, 1, 0, 0, 1, 0], [(1, 2), (1, 3), (1, 4), (1, 5), (1, 8)])) +countstored: 9 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 1111, [1, 5], Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [(1, 2), (1, 3), (1, 555), (1, 666)])) +countstored: 1111 diff --git a/test/reference64/representation/SparseByteMap{Dense}_representation.txt b/test/reference64/representation/SparseByteMap{Dense}_representation.txt index 21979b5ed..05b34446c 100644 --- a/test/reference64/representation/SparseByteMap{Dense}_representation.txt +++ b/test/reference64/representation/SparseByteMap{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseByteMap{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), 5), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]), 4), 4, [1, 4], Bool[1, 1, 0, 1], [(1, 1), (1, 2), (1, 4)])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], Bool[1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4)])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 diff --git a/test/reference64/representation/SparseByteMap{SparseList}_representation.txt b/test/reference64/representation/SparseByteMap{SparseList}_representation.txt index cc99b4436..964fd3634 100644 --- a/test/reference64/representation/SparseByteMap{SparseList}_representation.txt +++ b/test/reference64/representation/SparseByteMap{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseByteMap{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 3, 4], [3, 4, 1]), 4, [1, 4], Bool[1, 1, 0, 1], [(1, 1), (1, 2), (1, 4)])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], Bool[1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4)])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1, 1, 1, 1, 1], Int64[]), 5, [1, 0], Bool[0, 0, 0, 0, 0], Tuple{Int64, Int64}[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseByteMap{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], Bool[1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5)])) +countstored: 8 diff --git a/test/reference64/representation/SparseCOO{1}_representation.txt b/test/reference64/representation/SparseCOO{1}_representation.txt index 1f6f66b18..9902f1256 100644 --- a/test/reference64/representation/SparseCOO{1}_representation.txt +++ b/test/reference64/representation/SparseCOO{1}_representation.txt @@ -2,26 +2,38 @@ SparseCOO{1} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[]), (5,), [1, 1], (Int64[], ) )) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), (5,), [1, 6], ([1, 2, 3, 4, 5], ) )) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1]), (6,), [1, 4], ([2, 3, 6], ) )) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1]), (6,), [1, 2], ([3], ) )) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (1111,), [1, 449], ([2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], ) )) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (11,), [1, 9], ([2, 3, 5, 6, 7, 8, 9, 11], ) )) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), (6,), [1, 5], ([2, 3, 5, 6], ) )) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}(Float64[]), (4,), [1, 1], (Int64[], ) )) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}(Float64[]), (5,), [1, 1], (Int64[], ) )) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), (5,), [1, 6], ([1, 2, 3, 4, 5], ) )) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), (9,), [1, 6], ([2, 3, 4, 5, 8], ) )) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseCOO{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), (1111,), [1, 5], ([2, 3, 555, 666], ) )) +countstored: 4 diff --git a/test/reference64/representation/SparseCOO{2}_representation.txt b/test/reference64/representation/SparseCOO{2}_representation.txt index d9de488ce..ee27fc2da 100644 --- a/test/reference64/representation/SparseCOO{2}_representation.txt +++ b/test/reference64/representation/SparseCOO{2}_representation.txt @@ -2,16 +2,23 @@ SparseCOO{2} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[]), (5, 5), [1, 1], (Int64[], Int64[], ) )) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (5, 5), [1, 26], ([1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5], ) )) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1]), (4, 4), [1, 4], ([3, 4, 1], [1, 2, 4], ) )) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (4, 4), [1, 9], ([3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 2, 2, 3, 4, 4, 4], ) )) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}(Float64[]), (5, 5), [1, 1], (Int64[], Int64[], ) )) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), (5, 5), [1, 26], ([1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5], ) )) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseCOO{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), (5, 5), [1, 9], ([3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 2, 3, 3, 4, 4, 5], ) )) +countstored: 8 diff --git a/test/reference64/representation/SparseDict_representation.txt b/test/reference64/representation/SparseDict_representation.txt index 82b49f082..eb2334723 100644 --- a/test/reference64/representation/SparseDict_representation.txt +++ b/test/reference64/representation/SparseDict_representation.txt @@ -2,26 +2,38 @@ SparseDict representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 6, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 4], [2, 3, 6], [1, 2, 3], Dict((1, 2) => 1, (1, 3) => 2, (1, 6) => 3)))) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2], [3], [1], Dict((1, 3) => 1)))) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448], Dict((1, 590) => 38, (1, 587) => 35, (1, 662) => 110, (1, 982) => 430, (1, 896) => 344, (1, 766) => 214, (1, 770) => 218, (1, 979) => 427, (1, 915) => 363, (1, 594) => 42, (1, 706) => 154, (1, 641) => 89, (1, 825) => 273, (1, 647) => 95, (1, 701) => 149, (1, 887) => 335, (1, 881) => 329, (1, 986) => 434, (1, 821) => 269, (1, 822) => 270, (1, 931) => 379, (1, 977) => 425, (1, 713) => 161, (1, 737) => 185, (1, 923) => 371, (1, 970) => 418, (1, 626) => 74, (1, 863) => 311, (1, 975) => 423, (1, 557) => 5, (1, 617) => 65, (1, 3) => 2, (1, 674) => 122, (1, 611) => 59, (1, 613) => 61, (1, 996) => 444, (1, 721) => 169, (1, 892) => 340, (1, 704) => 152, (1, 758) => 206, (1, 691) => 139, (1, 947) => 395, (1, 898) => 346, (1, 804) => 252, (1, 745) => 193, (1, 762) => 210, (1, 744) => 192, (1, 625) => 73, (1, 944) => 392, (1, 675) => 123, (1, 948) => 396, (1, 760) => 208, (1, 740) => 188, (1, 2) => 1, (1, 654) => 102, (1, 951) => 399, (1, 837) => 285, (1, 954) => 402, (1, 563) => 11, (1, 870) => 318, (1, 836) => 284, (1, 556) => 4, (1, 679) => 127, (1, 561) => 9, (1, 939) => 387, (1, 702) => 150, (1, 558) => 6, (1, 747) => 195, (1, 672) => 120, (1, 748) => 196, (1, 570) => 18, (1, 932) => 380, (1, 643) => 91, (1, 855) => 303, (1, 955) => 403, (1, 852) => 300, (1, 660) => 108, (1, 981) => 429, (1, 820) => 268, (1, 731) => 179, (1, 849) => 297, (1, 616) => 64, (1, 703) => 151, (1, 646) => 94, (1, 581) => 29, (1, 778) => 226, (1, 827) => 275, (1, 895) => 343, (1, 835) => 283, (1, 794) => 242, (1, 937) => 385, (1, 624) => 72, (1, 600) => 48, (1, 838) => 286, (1, 921) => 369, (1, 595) => 43, (1, 631) => 79, (1, 995) => 443, (1, 670) => 118, (1, 902) => 350, (1, 599) => 47, (1, 632) => 80, (1, 814) => 262, (1, 953) => 401, (1, 850) => 298, (1, 709) => 157, (1, 874) => 322, (1, 828) => 276, (1, 653) => 101, (1, 746) => 194, (1, 978) => 426, (1, 798) => 246, (1, 664) => 112, (1, 693) => 141, (1, 630) => 78, (1, 842) => 290, (1, 716) => 164, (1, 853) => 301, (1, 847) => 295, (1, 753) => 201, (1, 573) => 21, (1, 658) => 106, (1, 677) => 125, (1, 819) => 267, (1, 911) => 359, (1, 942) => 390, (1, 640) => 88, (1, 976) => 424, (1, 909) => 357, (1, 575) => 23, (1, 816) => 264, (1, 591) => 39, (1, 803) => 251, (1, 925) => 373, (1, 991) => 439, (1, 856) => 304, (1, 686) => 134, (1, 572) => 20, (1, 588) => 36, (1, 652) => 100, (1, 696) => 144, (1, 824) => 272, (1, 604) => 52, (1, 629) => 77, (1, 924) => 372, (1, 707) => 155, (1, 605) => 53, (1, 717) => 165, (1, 589) => 37, (1, 722) => 170, (1, 743) => 191, (1, 763) => 211, (1, 789) => 237, (1, 818) => 266, (1, 943) => 391, (1, 886) => 334, (1, 609) => 57, (1, 579) => 27, (1, 809) => 257, (1, 788) => 236, (1, 564) => 12, (1, 834) => 282, (1, 728) => 176, (1, 813) => 261, (1, 967) => 415, (1, 990) => 438, (1, 871) => 319, (1, 846) => 294, (1, 560) => 8, (1, 610) => 58, (1, 764) => 212, (1, 663) => 111, (1, 806) => 254, (1, 812) => 260, (1, 843) => 291, (1, 614) => 62, (1, 878) => 326, (1, 903) => 351, (1, 929) => 377, (1, 650) => 98, (1, 750) => 198, (1, 569) => 17, (1, 880) => 328, (1, 882) => 330, (1, 957) => 405, (1, 914) => 362, (1, 805) => 253, (1, 772) => 220, (1, 829) => 277, (1, 883) => 331, (1, 941) => 389, (1, 907) => 355, (1, 994) => 442, (1, 648) => 96, (1, 724) => 172, (1, 723) => 171, (1, 568) => 16, (1, 839) => 287, (1, 689) => 137, (1, 974) => 422, (1, 950) => 398, (1, 710) => 158, (1, 619) => 67, (1, 956) => 404, (1, 621) => 69, (1, 867) => 315, (1, 684) => 132, (1, 875) => 323, (1, 848) => 296, (1, 854) => 302, (1, 697) => 145, (1, 989) => 437, (1, 997) => 445, (1, 851) => 299, (1, 952) => 400, (1, 596) => 44, (1, 615) => 63, (1, 918) => 366, (1, 774) => 222, (1, 832) => 280, (1, 972) => 420, (1, 949) => 397, (1, 961) => 409, (1, 655) => 103, (1, 732) => 180, (1, 555) => 3, (1, 908) => 356, (1, 644) => 92, (1, 866) => 314, (1, 667) => 115, (1, 992) => 440, (1, 578) => 26, (1, 904) => 352, (1, 714) => 162, (1, 889) => 337, (1, 912) => 360, (1, 618) => 66, (1, 682) => 130, (1, 661) => 109, (1, 739) => 187, (1, 969) => 417, (1, 668) => 116, (1, 780) => 228, (1, 860) => 308, (1, 795) => 243, (1, 606) => 54, (1, 894) => 342, (1, 659) => 107, (1, 946) => 394, (1, 742) => 190, (1, 767) => 215, (1, 897) => 345, (1, 960) => 408, (1, 800) => 248, (1, 585) => 33, (1, 756) => 204, (1, 963) => 411, (1, 656) => 104, (1, 577) => 25, (1, 754) => 202, (1, 639) => 87, (1, 678) => 126, (1, 567) => 15, (1, 920) => 368, (1, 962) => 410, (1, 698) => 146, (1, 736) => 184, (1, 980) => 428, (1, 965) => 413, (1, 729) => 177, (1, 799) => 247, (1, 565) => 13, (1, 958) => 406, (1, 571) => 19, (1, 705) => 153, (1, 752) => 200, (1, 877) => 325, (1, 888) => 336, (1, 865) => 313, (1, 635) => 83, (1, 681) => 129, (1, 755) => 203, (1, 864) => 312, (1, 922) => 370, (1, 833) => 281, (1, 817) => 265, (1, 773) => 221, (1, 765) => 213, (1, 787) => 235, (1, 559) => 7, (1, 784) => 232, (1, 844) => 292, (1, 598) => 46, (1, 781) => 229, (1, 685) => 133, (1, 862) => 310, (1, 964) => 412, (1, 999) => 447, (1, 985) => 433, (1, 910) => 358, (1, 928) => 376, (1, 926) => 374, (1, 810) => 258, (1, 873) => 321, (1, 935) => 383, (1, 782) => 230, (1, 627) => 75, (1, 757) => 205, (1, 792) => 240, (1, 893) => 341, (1, 700) => 148, (1, 666) => 114, (1, 720) => 168, (1, 801) => 249, (1, 671) => 119, (1, 857) => 305, (1, 830) => 278, (1, 785) => 233, (1, 815) => 263, (1, 879) => 327, (1, 574) => 22, (1, 586) => 34, (1, 695) => 143, (1, 802) => 250, (1, 580) => 28, (1, 913) => 361, (1, 845) => 293, (1, 597) => 45, (1, 576) => 24, (1, 945) => 393, (1, 608) => 56, (1, 607) => 55, (1, 592) => 40, (1, 683) => 131, (1, 741) => 189, (1, 900) => 348, (1, 790) => 238, (1, 876) => 324, (1, 566) => 14, (1, 637) => 85, (1, 718) => 166, (1, 730) => 178, (1, 669) => 117, (1, 690) => 138, (1, 715) => 163, (1, 793) => 241, (1, 634) => 82, (1, 841) => 289, (1, 676) => 124, (1, 628) => 76, (1, 884) => 332, (1, 933) => 381, (1, 633) => 81, (1, 726) => 174, (1, 749) => 197, (1, 811) => 259, (1, 993) => 441, (1, 692) => 140, (1, 708) => 156, (1, 694) => 142, (1, 712) => 160, (1, 869) => 317, (1, 899) => 347, (1, 651) => 99, (1, 583) => 31, (1, 868) => 316, (1, 940) => 388, (1, 987) => 435, (1, 602) => 50, (1, 968) => 416, (1, 620) => 68, (1, 603) => 51, (1, 733) => 181, (1, 636) => 84, (1, 807) => 255, (1, 777) => 225, (1, 885) => 333, (1, 638) => 86, (1, 622) => 70, (1, 593) => 41, (1, 688) => 136, (1, 761) => 209, (1, 584) => 32, (1, 601) => 49, (1, 665) => 113, (1, 738) => 186, (1, 934) => 382, (1, 959) => 407, (1, 582) => 30, (1, 612) => 60, (1, 768) => 216, (1, 861) => 309, (1, 906) => 354, (1, 927) => 375, (1, 905) => 353, (1, 966) => 414, (1, 735) => 183, (1, 823) => 271, (1, 680) => 128, (1, 769) => 217, (1, 779) => 227, (1, 783) => 231, (1, 657) => 105, (1, 687) => 135, (1, 973) => 421, (1, 984) => 432, (1, 673) => 121, (1, 775) => 223, (1, 988) => 436, (1, 796) => 244, (1, 971) => 419, (1, 983) => 431, (1, 808) => 256, (1, 649) => 97, (1, 759) => 207, (1, 859) => 307, (1, 1001) => 448, (1, 562) => 10, (1, 930) => 378, (1, 831) => 279, (1, 699) => 147, (1, 917) => 365, (1, 734) => 182, (1, 872) => 320, (1, 938) => 386, (1, 727) => 175, (1, 916) => 364, (1, 858) => 306, (1, 751) => 199, (1, 719) => 167, (1, 711) => 159, (1, 776) => 224, (1, 840) => 288, (1, 826) => 274, (1, 901) => 349, (1, 645) => 93, (1, 797) => 245, (1, 890) => 338, (1, 998) => 446, (1, 623) => 71, (1, 791) => 239, (1, 771) => 219, (1, 642) => 90, (1, 936) => 384, (1, 786) => 234, (1, 919) => 367, (1, 891) => 339, (1, 725) => 173)))) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 9], [2, 3, 5, 6, 7, 8, 9, 11], [1, 2, 3, 4, 5, 6, 7, 8], Dict((1, 2) => 1, (1, 11) => 8, (1, 7) => 5, (1, 3) => 2, (1, 6) => 4, (1, 9) => 7, (1, 8) => 6, (1, 5) => 3)))) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), 6, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 5], [2, 3, 5, 6], [1, 2, 3, 4], Dict((1, 2) => 1, (1, 3) => 2, (1, 6) => 4, (1, 5) => 3)))) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [2, 3, 4, 5, 8], [1, 2, 3, 4, 5], Dict((1, 2) => 1, (1, 3) => 2, (1, 4) => 3, (1, 8) => 5, (1, 5) => 4)))) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(Sparse{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), 1111, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 5], [2, 3, 555, 666], [1, 2, 3, 4], Dict((1, 2) => 1, (1, 555) => 3, (1, 3) => 2, (1, 666) => 4)))) +countstored: 4 diff --git a/test/reference64/representation/SparseDict{Dense}_representation.txt b/test/reference64/representation/SparseDict{Dense}_representation.txt index ff9125968..868455e20 100644 --- a/test/reference64/representation/SparseDict{Dense}_representation.txt +++ b/test/reference64/representation/SparseDict{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseDict{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 4], [1, 2, 4], [1, 2, 3], Dict((1, 2) => 2, (1, 1) => 1, (1, 4) => 3)))) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4)))) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 25 diff --git a/test/reference64/representation/SparseDict{SparseList}_representation.txt b/test/reference64/representation/SparseDict{SparseList}_representation.txt index 5e66f0371..252ee0f73 100644 --- a/test/reference64/representation/SparseDict{SparseList}_representation.txt +++ b/test/reference64/representation/SparseDict{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseDict{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 4], [1, 2, 4], [1, 2, 3], Dict((1, 2) => 2, (1, 1) => 1, (1, 4) => 3)))) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4)))) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}()))) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(Sparse{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dict((1, 2) => 2, (1, 1) => 1, (1, 3) => 3, (1, 4) => 4, (1, 5) => 5)))) +countstored: 8 diff --git a/test/reference64/representation/SparseHash{1}_representation.txt b/test/reference64/representation/SparseHash{1}_representation.txt index 61e7aec78..0ee8e1901 100644 --- a/test/reference64/representation/SparseHash{1}_representation.txt +++ b/test/reference64/representation/SparseHash{1}_representation.txt @@ -2,26 +2,38 @@ SparseHash{1} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[]), (5,), [1, 1], Dict{Tuple{Int64, Tuple{Int64}}, Int64}(), Pair{Tuple{Int64, Tuple{Int64}}, Int64}[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), (5,), [1, 6], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5), [(1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1]), (6,), [1, 4], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (6,)) => 3), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (6,)) => 3])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1]), (6,), [1, 2], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (3,)) => 1), [(1, (3,)) => 1])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (1111,), [1, 449], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (556,)) => 4, (1, (557,)) => 5, (1, (558,)) => 6, (1, (559,)) => 7, (1, (560,)) => 8, (1, (561,)) => 9, (1, (562,)) => 10, (1, (563,)) => 11, (1, (564,)) => 12, (1, (565,)) => 13, (1, (566,)) => 14, (1, (567,)) => 15, (1, (568,)) => 16, (1, (569,)) => 17, (1, (570,)) => 18, (1, (571,)) => 19, (1, (572,)) => 20, (1, (573,)) => 21, (1, (574,)) => 22, (1, (575,)) => 23, (1, (576,)) => 24, (1, (577,)) => 25, (1, (578,)) => 26, (1, (579,)) => 27, (1, (580,)) => 28, (1, (581,)) => 29, (1, (582,)) => 30, (1, (583,)) => 31, (1, (584,)) => 32, (1, (585,)) => 33, (1, (586,)) => 34, (1, (587,)) => 35, (1, (588,)) => 36, (1, (589,)) => 37, (1, (590,)) => 38, (1, (591,)) => 39, (1, (592,)) => 40, (1, (593,)) => 41, (1, (594,)) => 42, (1, (595,)) => 43, (1, (596,)) => 44, (1, (597,)) => 45, (1, (598,)) => 46, (1, (599,)) => 47, (1, (600,)) => 48, (1, (601,)) => 49, (1, (602,)) => 50, (1, (603,)) => 51, (1, (604,)) => 52, (1, (605,)) => 53, (1, (606,)) => 54, (1, (607,)) => 55, (1, (608,)) => 56, (1, (609,)) => 57, (1, (610,)) => 58, (1, (611,)) => 59, (1, (612,)) => 60, (1, (613,)) => 61, (1, (614,)) => 62, (1, (615,)) => 63, (1, (616,)) => 64, (1, (617,)) => 65, (1, (618,)) => 66, (1, (619,)) => 67, (1, (620,)) => 68, (1, (621,)) => 69, (1, (622,)) => 70, (1, (623,)) => 71, (1, (624,)) => 72, (1, (625,)) => 73, (1, (626,)) => 74, (1, (627,)) => 75, (1, (628,)) => 76, (1, (629,)) => 77, (1, (630,)) => 78, (1, (631,)) => 79, (1, (632,)) => 80, (1, (633,)) => 81, (1, (634,)) => 82, (1, (635,)) => 83, (1, (636,)) => 84, (1, (637,)) => 85, (1, (638,)) => 86, (1, (639,)) => 87, (1, (640,)) => 88, (1, (641,)) => 89, (1, (642,)) => 90, (1, (643,)) => 91, (1, (644,)) => 92, (1, (645,)) => 93, (1, (646,)) => 94, (1, (647,)) => 95, (1, (648,)) => 96, (1, (649,)) => 97, (1, (650,)) => 98, (1, (651,)) => 99, (1, (652,)) => 100, (1, (653,)) => 101, (1, (654,)) => 102, (1, (655,)) => 103, (1, (656,)) => 104, (1, (657,)) => 105, (1, (658,)) => 106, (1, (659,)) => 107, (1, (660,)) => 108, (1, (661,)) => 109, (1, (662,)) => 110, (1, (663,)) => 111, (1, (664,)) => 112, (1, (665,)) => 113, (1, (666,)) => 114, (1, (667,)) => 115, (1, (668,)) => 116, (1, (669,)) => 117, (1, (670,)) => 118, (1, (671,)) => 119, (1, (672,)) => 120, (1, (673,)) => 121, (1, (674,)) => 122, (1, (675,)) => 123, (1, (676,)) => 124, (1, (677,)) => 125, (1, (678,)) => 126, (1, (679,)) => 127, (1, (680,)) => 128, (1, (681,)) => 129, (1, (682,)) => 130, (1, (683,)) => 131, (1, (684,)) => 132, (1, (685,)) => 133, (1, (686,)) => 134, (1, (687,)) => 135, (1, (688,)) => 136, (1, (689,)) => 137, (1, (690,)) => 138, (1, (691,)) => 139, (1, (692,)) => 140, (1, (693,)) => 141, (1, (694,)) => 142, (1, (695,)) => 143, (1, (696,)) => 144, (1, (697,)) => 145, (1, (698,)) => 146, (1, (699,)) => 147, (1, (700,)) => 148, (1, (701,)) => 149, (1, (702,)) => 150, (1, (703,)) => 151, (1, (704,)) => 152, (1, (705,)) => 153, (1, (706,)) => 154, (1, (707,)) => 155, (1, (708,)) => 156, (1, (709,)) => 157, (1, (710,)) => 158, (1, (711,)) => 159, (1, (712,)) => 160, (1, (713,)) => 161, (1, (714,)) => 162, (1, (715,)) => 163, (1, (716,)) => 164, (1, (717,)) => 165, (1, (718,)) => 166, (1, (719,)) => 167, (1, (720,)) => 168, (1, (721,)) => 169, (1, (722,)) => 170, (1, (723,)) => 171, (1, (724,)) => 172, (1, (725,)) => 173, (1, (726,)) => 174, (1, (727,)) => 175, (1, (728,)) => 176, (1, (729,)) => 177, (1, (730,)) => 178, (1, (731,)) => 179, (1, (732,)) => 180, (1, (733,)) => 181, (1, (734,)) => 182, (1, (735,)) => 183, (1, (736,)) => 184, (1, (737,)) => 185, (1, (738,)) => 186, (1, (739,)) => 187, (1, (740,)) => 188, (1, (741,)) => 189, (1, (742,)) => 190, (1, (743,)) => 191, (1, (744,)) => 192, (1, (745,)) => 193, (1, (746,)) => 194, (1, (747,)) => 195, (1, (748,)) => 196, (1, (749,)) => 197, (1, (750,)) => 198, (1, (751,)) => 199, (1, (752,)) => 200, (1, (753,)) => 201, (1, (754,)) => 202, (1, (755,)) => 203, (1, (756,)) => 204, (1, (757,)) => 205, (1, (758,)) => 206, (1, (759,)) => 207, (1, (760,)) => 208, (1, (761,)) => 209, (1, (762,)) => 210, (1, (763,)) => 211, (1, (764,)) => 212, (1, (765,)) => 213, (1, (766,)) => 214, (1, (767,)) => 215, (1, (768,)) => 216, (1, (769,)) => 217, (1, (770,)) => 218, (1, (771,)) => 219, (1, (772,)) => 220, (1, (773,)) => 221, (1, (774,)) => 222, (1, (775,)) => 223, (1, (776,)) => 224, (1, (777,)) => 225, (1, (778,)) => 226, (1, (779,)) => 227, (1, (780,)) => 228, (1, (781,)) => 229, (1, (782,)) => 230, (1, (783,)) => 231, (1, (784,)) => 232, (1, (785,)) => 233, (1, (786,)) => 234, (1, (787,)) => 235, (1, (788,)) => 236, (1, (789,)) => 237, (1, (790,)) => 238, (1, (791,)) => 239, (1, (792,)) => 240, (1, (793,)) => 241, (1, (794,)) => 242, (1, (795,)) => 243, (1, (796,)) => 244, (1, (797,)) => 245, (1, (798,)) => 246, (1, (799,)) => 247, (1, (800,)) => 248, (1, (801,)) => 249, (1, (802,)) => 250, (1, (803,)) => 251, (1, (804,)) => 252, (1, (805,)) => 253, (1, (806,)) => 254, (1, (807,)) => 255, (1, (808,)) => 256, (1, (809,)) => 257, (1, (810,)) => 258, (1, (811,)) => 259, (1, (812,)) => 260, (1, (813,)) => 261, (1, (814,)) => 262, (1, (815,)) => 263, (1, (816,)) => 264, (1, (817,)) => 265, (1, (818,)) => 266, (1, (819,)) => 267, (1, (820,)) => 268, (1, (821,)) => 269, (1, (822,)) => 270, (1, (823,)) => 271, (1, (824,)) => 272, (1, (825,)) => 273, (1, (826,)) => 274, (1, (827,)) => 275, (1, (828,)) => 276, (1, (829,)) => 277, (1, (830,)) => 278, (1, (831,)) => 279, (1, (832,)) => 280, (1, (833,)) => 281, (1, (834,)) => 282, (1, (835,)) => 283, (1, (836,)) => 284, (1, (837,)) => 285, (1, (838,)) => 286, (1, (839,)) => 287, (1, (840,)) => 288, (1, (841,)) => 289, (1, (842,)) => 290, (1, (843,)) => 291, (1, (844,)) => 292, (1, (845,)) => 293, (1, (846,)) => 294, (1, (847,)) => 295, (1, (848,)) => 296, (1, (849,)) => 297, (1, (850,)) => 298, (1, (851,)) => 299, (1, (852,)) => 300, (1, (853,)) => 301, (1, (854,)) => 302, (1, (855,)) => 303, (1, (856,)) => 304, (1, (857,)) => 305, (1, (858,)) => 306, (1, (859,)) => 307, (1, (860,)) => 308, (1, (861,)) => 309, (1, (862,)) => 310, (1, (863,)) => 311, (1, (864,)) => 312, (1, (865,)) => 313, (1, (866,)) => 314, (1, (867,)) => 315, (1, (868,)) => 316, (1, (869,)) => 317, (1, (870,)) => 318, (1, (871,)) => 319, (1, (872,)) => 320, (1, (873,)) => 321, (1, (874,)) => 322, (1, (875,)) => 323, (1, (876,)) => 324, (1, (877,)) => 325, (1, (878,)) => 326, (1, (879,)) => 327, (1, (880,)) => 328, (1, (881,)) => 329, (1, (882,)) => 330, (1, (883,)) => 331, (1, (884,)) => 332, (1, (885,)) => 333, (1, (886,)) => 334, (1, (887,)) => 335, (1, (888,)) => 336, (1, (889,)) => 337, (1, (890,)) => 338, (1, (891,)) => 339, (1, (892,)) => 340, (1, (893,)) => 341, (1, (894,)) => 342, (1, (895,)) => 343, (1, (896,)) => 344, (1, (897,)) => 345, (1, (898,)) => 346, (1, (899,)) => 347, (1, (900,)) => 348, (1, (901,)) => 349, (1, (902,)) => 350, (1, (903,)) => 351, (1, (904,)) => 352, (1, (905,)) => 353, (1, (906,)) => 354, (1, (907,)) => 355, (1, (908,)) => 356, (1, (909,)) => 357, (1, (910,)) => 358, (1, (911,)) => 359, (1, (912,)) => 360, (1, (913,)) => 361, (1, (914,)) => 362, (1, (915,)) => 363, (1, (916,)) => 364, (1, (917,)) => 365, (1, (918,)) => 366, (1, (919,)) => 367, (1, (920,)) => 368, (1, (921,)) => 369, (1, (922,)) => 370, (1, (923,)) => 371, (1, (924,)) => 372, (1, (925,)) => 373, (1, (926,)) => 374, (1, (927,)) => 375, (1, (928,)) => 376, (1, (929,)) => 377, (1, (930,)) => 378, (1, (931,)) => 379, (1, (932,)) => 380, (1, (933,)) => 381, (1, (934,)) => 382, (1, (935,)) => 383, (1, (936,)) => 384, (1, (937,)) => 385, (1, (938,)) => 386, (1, (939,)) => 387, (1, (940,)) => 388, (1, (941,)) => 389, (1, (942,)) => 390, (1, (943,)) => 391, (1, (944,)) => 392, (1, (945,)) => 393, (1, (946,)) => 394, (1, (947,)) => 395, (1, (948,)) => 396, (1, (949,)) => 397, (1, (950,)) => 398, (1, (951,)) => 399, (1, (952,)) => 400, (1, (953,)) => 401, (1, (954,)) => 402, (1, (955,)) => 403, (1, (956,)) => 404, (1, (957,)) => 405, (1, (958,)) => 406, (1, (959,)) => 407, (1, (960,)) => 408, (1, (961,)) => 409, (1, (962,)) => 410, (1, (963,)) => 411, (1, (964,)) => 412, (1, (965,)) => 413, (1, (966,)) => 414, (1, (967,)) => 415, (1, (968,)) => 416, (1, (969,)) => 417, (1, (970,)) => 418, (1, (971,)) => 419, (1, (972,)) => 420, (1, (973,)) => 421, (1, (974,)) => 422, (1, (975,)) => 423, (1, (976,)) => 424, (1, (977,)) => 425, (1, (978,)) => 426, (1, (979,)) => 427, (1, (980,)) => 428, (1, (981,)) => 429, (1, (982,)) => 430, (1, (983,)) => 431, (1, (984,)) => 432, (1, (985,)) => 433, (1, (986,)) => 434, (1, (987,)) => 435, (1, (988,)) => 436, (1, (989,)) => 437, (1, (990,)) => 438, (1, (991,)) => 439, (1, (992,)) => 440, (1, (993,)) => 441, (1, (994,)) => 442, (1, (995,)) => 443, (1, (996,)) => 444, (1, (997,)) => 445, (1, (998,)) => 446, (1, (999,)) => 447, (1, (1001,)) => 448), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (556,)) => 4, (1, (557,)) => 5, (1, (558,)) => 6, (1, (559,)) => 7, (1, (560,)) => 8, (1, (561,)) => 9, (1, (562,)) => 10, (1, (563,)) => 11, (1, (564,)) => 12, (1, (565,)) => 13, (1, (566,)) => 14, (1, (567,)) => 15, (1, (568,)) => 16, (1, (569,)) => 17, (1, (570,)) => 18, (1, (571,)) => 19, (1, (572,)) => 20, (1, (573,)) => 21, (1, (574,)) => 22, (1, (575,)) => 23, (1, (576,)) => 24, (1, (577,)) => 25, (1, (578,)) => 26, (1, (579,)) => 27, (1, (580,)) => 28, (1, (581,)) => 29, (1, (582,)) => 30, (1, (583,)) => 31, (1, (584,)) => 32, (1, (585,)) => 33, (1, (586,)) => 34, (1, (587,)) => 35, (1, (588,)) => 36, (1, (589,)) => 37, (1, (590,)) => 38, (1, (591,)) => 39, (1, (592,)) => 40, (1, (593,)) => 41, (1, (594,)) => 42, (1, (595,)) => 43, (1, (596,)) => 44, (1, (597,)) => 45, (1, (598,)) => 46, (1, (599,)) => 47, (1, (600,)) => 48, (1, (601,)) => 49, (1, (602,)) => 50, (1, (603,)) => 51, (1, (604,)) => 52, (1, (605,)) => 53, (1, (606,)) => 54, (1, (607,)) => 55, (1, (608,)) => 56, (1, (609,)) => 57, (1, (610,)) => 58, (1, (611,)) => 59, (1, (612,)) => 60, (1, (613,)) => 61, (1, (614,)) => 62, (1, (615,)) => 63, (1, (616,)) => 64, (1, (617,)) => 65, (1, (618,)) => 66, (1, (619,)) => 67, (1, (620,)) => 68, (1, (621,)) => 69, (1, (622,)) => 70, (1, (623,)) => 71, (1, (624,)) => 72, (1, (625,)) => 73, (1, (626,)) => 74, (1, (627,)) => 75, (1, (628,)) => 76, (1, (629,)) => 77, (1, (630,)) => 78, (1, (631,)) => 79, (1, (632,)) => 80, (1, (633,)) => 81, (1, (634,)) => 82, (1, (635,)) => 83, (1, (636,)) => 84, (1, (637,)) => 85, (1, (638,)) => 86, (1, (639,)) => 87, (1, (640,)) => 88, (1, (641,)) => 89, (1, (642,)) => 90, (1, (643,)) => 91, (1, (644,)) => 92, (1, (645,)) => 93, (1, (646,)) => 94, (1, (647,)) => 95, (1, (648,)) => 96, (1, (649,)) => 97, (1, (650,)) => 98, (1, (651,)) => 99, (1, (652,)) => 100, (1, (653,)) => 101, (1, (654,)) => 102, (1, (655,)) => 103, (1, (656,)) => 104, (1, (657,)) => 105, (1, (658,)) => 106, (1, (659,)) => 107, (1, (660,)) => 108, (1, (661,)) => 109, (1, (662,)) => 110, (1, (663,)) => 111, (1, (664,)) => 112, (1, (665,)) => 113, (1, (666,)) => 114, (1, (667,)) => 115, (1, (668,)) => 116, (1, (669,)) => 117, (1, (670,)) => 118, (1, (671,)) => 119, (1, (672,)) => 120, (1, (673,)) => 121, (1, (674,)) => 122, (1, (675,)) => 123, (1, (676,)) => 124, (1, (677,)) => 125, (1, (678,)) => 126, (1, (679,)) => 127, (1, (680,)) => 128, (1, (681,)) => 129, (1, (682,)) => 130, (1, (683,)) => 131, (1, (684,)) => 132, (1, (685,)) => 133, (1, (686,)) => 134, (1, (687,)) => 135, (1, (688,)) => 136, (1, (689,)) => 137, (1, (690,)) => 138, (1, (691,)) => 139, (1, (692,)) => 140, (1, (693,)) => 141, (1, (694,)) => 142, (1, (695,)) => 143, (1, (696,)) => 144, (1, (697,)) => 145, (1, (698,)) => 146, (1, (699,)) => 147, (1, (700,)) => 148, (1, (701,)) => 149, (1, (702,)) => 150, (1, (703,)) => 151, (1, (704,)) => 152, (1, (705,)) => 153, (1, (706,)) => 154, (1, (707,)) => 155, (1, (708,)) => 156, (1, (709,)) => 157, (1, (710,)) => 158, (1, (711,)) => 159, (1, (712,)) => 160, (1, (713,)) => 161, (1, (714,)) => 162, (1, (715,)) => 163, (1, (716,)) => 164, (1, (717,)) => 165, (1, (718,)) => 166, (1, (719,)) => 167, (1, (720,)) => 168, (1, (721,)) => 169, (1, (722,)) => 170, (1, (723,)) => 171, (1, (724,)) => 172, (1, (725,)) => 173, (1, (726,)) => 174, (1, (727,)) => 175, (1, (728,)) => 176, (1, (729,)) => 177, (1, (730,)) => 178, (1, (731,)) => 179, (1, (732,)) => 180, (1, (733,)) => 181, (1, (734,)) => 182, (1, (735,)) => 183, (1, (736,)) => 184, (1, (737,)) => 185, (1, (738,)) => 186, (1, (739,)) => 187, (1, (740,)) => 188, (1, (741,)) => 189, (1, (742,)) => 190, (1, (743,)) => 191, (1, (744,)) => 192, (1, (745,)) => 193, (1, (746,)) => 194, (1, (747,)) => 195, (1, (748,)) => 196, (1, (749,)) => 197, (1, (750,)) => 198, (1, (751,)) => 199, (1, (752,)) => 200, (1, (753,)) => 201, (1, (754,)) => 202, (1, (755,)) => 203, (1, (756,)) => 204, (1, (757,)) => 205, (1, (758,)) => 206, (1, (759,)) => 207, (1, (760,)) => 208, (1, (761,)) => 209, (1, (762,)) => 210, (1, (763,)) => 211, (1, (764,)) => 212, (1, (765,)) => 213, (1, (766,)) => 214, (1, (767,)) => 215, (1, (768,)) => 216, (1, (769,)) => 217, (1, (770,)) => 218, (1, (771,)) => 219, (1, (772,)) => 220, (1, (773,)) => 221, (1, (774,)) => 222, (1, (775,)) => 223, (1, (776,)) => 224, (1, (777,)) => 225, (1, (778,)) => 226, (1, (779,)) => 227, (1, (780,)) => 228, (1, (781,)) => 229, (1, (782,)) => 230, (1, (783,)) => 231, (1, (784,)) => 232, (1, (785,)) => 233, (1, (786,)) => 234, (1, (787,)) => 235, (1, (788,)) => 236, (1, (789,)) => 237, (1, (790,)) => 238, (1, (791,)) => 239, (1, (792,)) => 240, (1, (793,)) => 241, (1, (794,)) => 242, (1, (795,)) => 243, (1, (796,)) => 244, (1, (797,)) => 245, (1, (798,)) => 246, (1, (799,)) => 247, (1, (800,)) => 248, (1, (801,)) => 249, (1, (802,)) => 250, (1, (803,)) => 251, (1, (804,)) => 252, (1, (805,)) => 253, (1, (806,)) => 254, (1, (807,)) => 255, (1, (808,)) => 256, (1, (809,)) => 257, (1, (810,)) => 258, (1, (811,)) => 259, (1, (812,)) => 260, (1, (813,)) => 261, (1, (814,)) => 262, (1, (815,)) => 263, (1, (816,)) => 264, (1, (817,)) => 265, (1, (818,)) => 266, (1, (819,)) => 267, (1, (820,)) => 268, (1, (821,)) => 269, (1, (822,)) => 270, (1, (823,)) => 271, (1, (824,)) => 272, (1, (825,)) => 273, (1, (826,)) => 274, (1, (827,)) => 275, (1, (828,)) => 276, (1, (829,)) => 277, (1, (830,)) => 278, (1, (831,)) => 279, (1, (832,)) => 280, (1, (833,)) => 281, (1, (834,)) => 282, (1, (835,)) => 283, (1, (836,)) => 284, (1, (837,)) => 285, (1, (838,)) => 286, (1, (839,)) => 287, (1, (840,)) => 288, (1, (841,)) => 289, (1, (842,)) => 290, (1, (843,)) => 291, (1, (844,)) => 292, (1, (845,)) => 293, (1, (846,)) => 294, (1, (847,)) => 295, (1, (848,)) => 296, (1, (849,)) => 297, (1, (850,)) => 298, (1, (851,)) => 299, (1, (852,)) => 300, (1, (853,)) => 301, (1, (854,)) => 302, (1, (855,)) => 303, (1, (856,)) => 304, (1, (857,)) => 305, (1, (858,)) => 306, (1, (859,)) => 307, (1, (860,)) => 308, (1, (861,)) => 309, (1, (862,)) => 310, (1, (863,)) => 311, (1, (864,)) => 312, (1, (865,)) => 313, (1, (866,)) => 314, (1, (867,)) => 315, (1, (868,)) => 316, (1, (869,)) => 317, (1, (870,)) => 318, (1, (871,)) => 319, (1, (872,)) => 320, (1, (873,)) => 321, (1, (874,)) => 322, (1, (875,)) => 323, (1, (876,)) => 324, (1, (877,)) => 325, (1, (878,)) => 326, (1, (879,)) => 327, (1, (880,)) => 328, (1, (881,)) => 329, (1, (882,)) => 330, (1, (883,)) => 331, (1, (884,)) => 332, (1, (885,)) => 333, (1, (886,)) => 334, (1, (887,)) => 335, (1, (888,)) => 336, (1, (889,)) => 337, (1, (890,)) => 338, (1, (891,)) => 339, (1, (892,)) => 340, (1, (893,)) => 341, (1, (894,)) => 342, (1, (895,)) => 343, (1, (896,)) => 344, (1, (897,)) => 345, (1, (898,)) => 346, (1, (899,)) => 347, (1, (900,)) => 348, (1, (901,)) => 349, (1, (902,)) => 350, (1, (903,)) => 351, (1, (904,)) => 352, (1, (905,)) => 353, (1, (906,)) => 354, (1, (907,)) => 355, (1, (908,)) => 356, (1, (909,)) => 357, (1, (910,)) => 358, (1, (911,)) => 359, (1, (912,)) => 360, (1, (913,)) => 361, (1, (914,)) => 362, (1, (915,)) => 363, (1, (916,)) => 364, (1, (917,)) => 365, (1, (918,)) => 366, (1, (919,)) => 367, (1, (920,)) => 368, (1, (921,)) => 369, (1, (922,)) => 370, (1, (923,)) => 371, (1, (924,)) => 372, (1, (925,)) => 373, (1, (926,)) => 374, (1, (927,)) => 375, (1, (928,)) => 376, (1, (929,)) => 377, (1, (930,)) => 378, (1, (931,)) => 379, (1, (932,)) => 380, (1, (933,)) => 381, (1, (934,)) => 382, (1, (935,)) => 383, (1, (936,)) => 384, (1, (937,)) => 385, (1, (938,)) => 386, (1, (939,)) => 387, (1, (940,)) => 388, (1, (941,)) => 389, (1, (942,)) => 390, (1, (943,)) => 391, (1, (944,)) => 392, (1, (945,)) => 393, (1, (946,)) => 394, (1, (947,)) => 395, (1, (948,)) => 396, (1, (949,)) => 397, (1, (950,)) => 398, (1, (951,)) => 399, (1, (952,)) => 400, (1, (953,)) => 401, (1, (954,)) => 402, (1, (955,)) => 403, (1, (956,)) => 404, (1, (957,)) => 405, (1, (958,)) => 406, (1, (959,)) => 407, (1, (960,)) => 408, (1, (961,)) => 409, (1, (962,)) => 410, (1, (963,)) => 411, (1, (964,)) => 412, (1, (965,)) => 413, (1, (966,)) => 414, (1, (967,)) => 415, (1, (968,)) => 416, (1, (969,)) => 417, (1, (970,)) => 418, (1, (971,)) => 419, (1, (972,)) => 420, (1, (973,)) => 421, (1, (974,)) => 422, (1, (975,)) => 423, (1, (976,)) => 424, (1, (977,)) => 425, (1, (978,)) => 426, (1, (979,)) => 427, (1, (980,)) => 428, (1, (981,)) => 429, (1, (982,)) => 430, (1, (983,)) => 431, (1, (984,)) => 432, (1, (985,)) => 433, (1, (986,)) => 434, (1, (987,)) => 435, (1, (988,)) => 436, (1, (989,)) => 437, (1, (990,)) => 438, (1, (991,)) => 439, (1, (992,)) => 440, (1, (993,)) => 441, (1, (994,)) => 442, (1, (995,)) => 443, (1, (996,)) => 444, (1, (997,)) => 445, (1, (998,)) => 446, (1, (999,)) => 447, (1, (1001,)) => 448])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (11,), [1, 9], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4, (1, (7,)) => 5, (1, (8,)) => 6, (1, (9,)) => 7, (1, (11,)) => 8), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4, (1, (7,)) => 5, (1, (8,)) => 6, (1, (9,)) => 7, (1, (11,)) => 8])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), (6,), [1, 5], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (5,)) => 3, (1, (6,)) => 4])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}(Float64[]), (4,), [1, 1], Dict{Tuple{Int64, Tuple{Int64}}, Int64}(), Pair{Tuple{Int64, Tuple{Int64}}, Int64}[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}(Float64[]), (5,), [1, 1], Dict{Tuple{Int64, Tuple{Int64}}, Int64}(), Pair{Tuple{Int64, Tuple{Int64}}, Int64}[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), (5,), [1, 6], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5), [(1, (1,)) => 1, (1, (2,)) => 2, (1, (3,)) => 3, (1, (4,)) => 4, (1, (5,)) => 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), (9,), [1, 6], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (4,)) => 3, (1, (5,)) => 4, (1, (8,)) => 5), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (4,)) => 3, (1, (5,)) => 4, (1, (8,)) => 5])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseHash{1, Tuple{Int64}}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), (1111,), [1, 5], Dict{Tuple{Int64, Tuple{Int64}}, Int64}((1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (666,)) => 4), [(1, (2,)) => 1, (1, (3,)) => 2, (1, (555,)) => 3, (1, (666,)) => 4])) +countstored: 4 diff --git a/test/reference64/representation/SparseHash{2}_representation.txt b/test/reference64/representation/SparseHash{2}_representation.txt index 507157114..58b6271f2 100644 --- a/test/reference64/representation/SparseHash{2}_representation.txt +++ b/test/reference64/representation/SparseHash{2}_representation.txt @@ -2,16 +2,23 @@ SparseHash{2} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[]), (5, 5), [1, 1], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}(), Pair{Tuple{Int64, Tuple{Int64, Int64}}, Int64}[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), (5, 5), [1, 26], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}((1, (1, 1)) => 1, (1, (1, 2)) => 6, (1, (1, 3)) => 11, (1, (1, 4)) => 16, (1, (1, 5)) => 21, (1, (2, 1)) => 2, (1, (2, 2)) => 7, (1, (2, 3)) => 12, (1, (2, 4)) => 17, (1, (2, 5)) => 22, (1, (3, 1)) => 3, (1, (3, 2)) => 8, (1, (3, 3)) => 13, (1, (3, 4)) => 18, (1, (3, 5)) => 23, (1, (4, 1)) => 4, (1, (4, 2)) => 9, (1, (4, 3)) => 14, (1, (4, 4)) => 19, (1, (4, 5)) => 24, (1, (5, 1)) => 5, (1, (5, 2)) => 10, (1, (5, 3)) => 15, (1, (5, 4)) => 20, (1, (5, 5)) => 25), [(1, (1, 1)) => 1, (1, (2, 1)) => 2, (1, (3, 1)) => 3, (1, (4, 1)) => 4, (1, (5, 1)) => 5, (1, (1, 2)) => 6, (1, (2, 2)) => 7, (1, (3, 2)) => 8, (1, (4, 2)) => 9, (1, (5, 2)) => 10, (1, (1, 3)) => 11, (1, (2, 3)) => 12, (1, (3, 3)) => 13, (1, (4, 3)) => 14, (1, (5, 3)) => 15, (1, (1, 4)) => 16, (1, (2, 4)) => 17, (1, (3, 4)) => 18, (1, (4, 4)) => 19, (1, (5, 4)) => 20, (1, (1, 5)) => 21, (1, (2, 5)) => 22, (1, (3, 5)) => 23, (1, (4, 5)) => 24, (1, (5, 5)) => 25])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1]), (4, 4), [1, 4], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}((1, (1, 4)) => 3, (1, (3, 1)) => 1, (1, (4, 2)) => 2), [(1, (3, 1)) => 1, (1, (4, 2)) => 2, (1, (1, 4)) => 3])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), (4, 4), [1, 9], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}((1, (1, 2)) => 2, (1, (1, 4)) => 6, (1, (3, 1)) => 1, (1, (3, 2)) => 3, (1, (3, 3)) => 5, (1, (3, 4)) => 7, (1, (4, 2)) => 4, (1, (4, 4)) => 8), [(1, (3, 1)) => 1, (1, (1, 2)) => 2, (1, (3, 2)) => 3, (1, (4, 2)) => 4, (1, (3, 3)) => 5, (1, (1, 4)) => 6, (1, (3, 4)) => 7, (1, (4, 4)) => 8])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}(Float64[]), (5, 5), [1, 1], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}(), Pair{Tuple{Int64, Tuple{Int64, Int64}}, Int64}[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), (5, 5), [1, 26], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}((1, (1, 1)) => 1, (1, (1, 2)) => 6, (1, (1, 3)) => 11, (1, (1, 4)) => 16, (1, (1, 5)) => 21, (1, (2, 1)) => 2, (1, (2, 2)) => 7, (1, (2, 3)) => 12, (1, (2, 4)) => 17, (1, (2, 5)) => 22, (1, (3, 1)) => 3, (1, (3, 2)) => 8, (1, (3, 3)) => 13, (1, (3, 4)) => 18, (1, (3, 5)) => 23, (1, (4, 1)) => 4, (1, (4, 2)) => 9, (1, (4, 3)) => 14, (1, (4, 4)) => 19, (1, (4, 5)) => 24, (1, (5, 1)) => 5, (1, (5, 2)) => 10, (1, (5, 3)) => 15, (1, (5, 4)) => 20, (1, (5, 5)) => 25), [(1, (1, 1)) => 1, (1, (2, 1)) => 2, (1, (3, 1)) => 3, (1, (4, 1)) => 4, (1, (5, 1)) => 5, (1, (1, 2)) => 6, (1, (2, 2)) => 7, (1, (3, 2)) => 8, (1, (4, 2)) => 9, (1, (5, 2)) => 10, (1, (1, 3)) => 11, (1, (2, 3)) => 12, (1, (3, 3)) => 13, (1, (4, 3)) => 14, (1, (5, 3)) => 15, (1, (1, 4)) => 16, (1, (2, 4)) => 17, (1, (3, 4)) => 18, (1, (4, 4)) => 19, (1, (5, 4)) => 20, (1, (1, 5)) => 21, (1, (2, 5)) => 22, (1, (3, 5)) => 23, (1, (4, 5)) => 24, (1, (5, 5)) => 25])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseHash{2, Tuple{Int64, Int64}}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), (5, 5), [1, 9], Dict{Tuple{Int64, Tuple{Int64, Int64}}, Int64}((1, (1, 2)) => 2, (1, (1, 3)) => 4, (1, (1, 4)) => 6, (1, (1, 5)) => 8, (1, (3, 1)) => 1, (1, (3, 2)) => 3, (1, (3, 3)) => 5, (1, (4, 4)) => 7), [(1, (3, 1)) => 1, (1, (1, 2)) => 2, (1, (3, 2)) => 3, (1, (1, 3)) => 4, (1, (3, 3)) => 5, (1, (1, 4)) => 6, (1, (4, 4)) => 7, (1, (1, 5)) => 8])) +countstored: 8 diff --git a/test/reference64/representation/SparseInterval_representation.txt b/test/reference64/representation/SparseInterval_representation.txt index f78ef906b..08e12e754 100644 --- a/test/reference64/representation/SparseInterval_representation.txt +++ b/test/reference64/representation/SparseInterval_representation.txt @@ -2,4 +2,5 @@ SparseInterval representation: 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseInterval{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3], [3])) +countstored: 1 diff --git a/test/reference64/representation/SparseList_representation.txt b/test/reference64/representation/SparseList_representation.txt index 1a048504b..de4875ce5 100644 --- a/test/reference64/representation/SparseList_representation.txt +++ b/test/reference64/representation/SparseList_representation.txt @@ -2,26 +2,38 @@ SparseList representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 6, [1, 4], [2, 3, 6])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), 6, [1, 5], [2, 3, 5, 6])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, [1, 1], Int64[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 6], [2, 3, 4, 5, 8])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666])) +countstored: 4 diff --git a/test/reference64/representation/SparseList{DenseRLELazy}_representation.txt b/test/reference64/representation/SparseList{DenseRLELazy}_representation.txt index 642b5e592..c5938d1b6 100644 --- a/test/reference64/representation/SparseList{DenseRLELazy}_representation.txt +++ b/test/reference64/representation/SparseList{DenseRLELazy}_representation.txt @@ -2,16 +2,23 @@ SparseList{DenseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], Element{false, Bool, Int64}(Bool[]); merge = false), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 0, 1, 1, 0]), 4, [1, 4, 6, 8], [2, 3, 4, 3, 4, 1, 4], Element{false, Bool, Int64}(Bool[]); merge = false), 4, [1, 4], [1, 2, 4])) +countstored: 7 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 4, 8, 11, 15], [2, 3, 4, 1, 2, 3, 4, 2, 3, 4, 1, 2, 3, 4], Element{false, Bool, Int64}(Bool[]); merge = false), 4, [1, 5], [1, 2, 3, 4])) +countstored: 14 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int64}(Float64[]); merge = false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 17 diff --git a/test/reference64/representation/SparseList{DenseRLE}_representation.txt b/test/reference64/representation/SparseList{DenseRLE}_representation.txt index 41f2d00ab..8b25bd5e9 100644 --- a/test/reference64/representation/SparseList{DenseRLE}_representation.txt +++ b/test/reference64/representation/SparseList{DenseRLE}_representation.txt @@ -2,16 +2,23 @@ SparseList{DenseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], Element{false, Bool, Int64}(Bool[]); merge = true), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 0, 1, 1, 0]), 4, [1, 4, 6, 8], [2, 3, 4, 3, 4, 1, 4], Element{false, Bool, Int64}(Bool[]); merge = true), 4, [1, 4], [1, 2, 4])) +countstored: 7 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{false, Bool, Int64}(Bool[0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]), 4, [1, 4, 7, 10, 13], [2, 3, 4, 1, 2, 4, 2, 3, 4, 1, 2, 4], Element{false, Bool, Int64}(Bool[]); merge = true), 4, [1, 5], [1, 2, 3, 4])) +countstored: 12 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(DenseRLE{Int64}(Element{0.0, Float64, Int64}([0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, 2.0, 0.0, 2.0, 0.0, 2.0, 0.0, 3.0, 0.0, 3.0, 0.0]), 5, [1, 4, 8, 12, 16, 18], [2, 3, 5, 1, 2, 3, 5, 1, 2, 3, 5, 1, 3, 4, 5, 1, 5], Element{0.0, Float64, Int64}(Float64[]); merge = true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 17 diff --git a/test/reference64/representation/SparseList{Dense}_representation.txt b/test/reference64/representation/SparseList{Dense}_representation.txt index 7fbb64866..e76d91ef6 100644 --- a/test/reference64/representation/SparseList{Dense}_representation.txt +++ b/test/reference64/representation/SparseList{Dense}_representation.txt @@ -2,30 +2,44 @@ SparseList{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[])) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[])) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 diff --git a/test/reference64/representation/SparseList{Separate}_representation.txt b/test/reference64/representation/SparseList{Separate}_representation.txt index 3b47776b0..8348a2eab 100644 --- a/test/reference64/representation/SparseList{Separate}_representation.txt +++ b/test/reference64/representation/SparseList{Separate}_representation.txt @@ -2,26 +2,38 @@ SparseList{Separate} representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[0])]), 5, [1, 1], Int64[])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0])]), 6, [1, 4], [2, 3, 6])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0])]), 6, [1, 2], [3])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0])]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1])]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([3.0]), Element{0.0, Float64, Int64}([3.0])]), 6, [1, 5], [2, 3, 5, 6])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([0.0])]), 4, [1, 1], Int64[])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([0.0])]), 5, [1, 1], Int64[])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([3.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0])]), 9, [1, 6], [2, 3, 4, 5, 8])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([20.0]), Element{0.0, Float64, Int64}([30.0]), Element{0.0, Float64, Int64}([5550.0]), Element{0.0, Float64, Int64}([6660.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0])]), 1111, [1, 5], [2, 3, 555, 666])) +countstored: 4 diff --git a/test/reference64/representation/SparseList{Separate}{Dense}_representation.txt b/test/reference64/representation/SparseList{Separate}{Dense}_representation.txt index 891138c67..b8a73f074 100644 --- a/test/reference64/representation/SparseList{Separate}{Dense}_representation.txt +++ b/test/reference64/representation/SparseList{Separate}{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseList{Separate}{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0, 0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 1]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 0, 0, 0]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 0, 0]), 4)]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4), DenseLevel{Int64, ElementLevel{false, Bool, Int64, Vector{Bool}}}[Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 0, 1, 1]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0]), 4), Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 0, 1, 1]), 4)]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 4 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Separate(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), DenseLevel{Int64, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 0.0, 1.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([2.0, 0.0, 2.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([2.0, 0.0, 0.0, 3.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([3.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5), Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 0.0, 0.0, 0.0]), 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 diff --git a/test/reference64/representation/SparseList{Separate}{SparseList}_representation.txt b/test/reference64/representation/SparseList{Separate}{SparseList}_representation.txt index ca11d550f..c8e6d140c 100644 --- a/test/reference64/representation/SparseList{Separate}{SparseList}_representation.txt +++ b/test/reference64/representation/SparseList{Separate}{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseList{Separate}{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{false, Bool, Int64, Vector{Bool}}}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{false, Bool, Int64, Vector{Bool}}}[SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{false, Bool, Int64, Vector{Bool}}}[SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 4, [1, 2], [3]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 4, [1, 2], [4]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 4, [1, 2], [1]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1, 1], Int64[])]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{false, Bool, Int64, Vector{Bool}}}[SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 4, [1, 2], [3]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 4], [1, 3, 4]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1]), 4, [1, 2], [3]), SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 4], [1, 3, 4])]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 4 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Separate(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), SparseListLevel{Int64, Vector{Int64}, Vector{Int64}, ElementLevel{0.0, Float64, Int64, Vector{Float64}}}[SparseList{Int64}(Element{0.0, Float64, Int64}([1.0]), 5, [1, 2], [3]), SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0]), 5, [1, 3], [1, 3]), SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0]), 5, [1, 3], [1, 3]), SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 3.0]), 5, [1, 3], [1, 4]), SparseList{Int64}(Element{0.0, Float64, Int64}([3.0]), 5, [1, 2], [1]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[]), SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[])]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 diff --git a/test/reference64/representation/SparseList{SparseBand}_representation.txt b/test/reference64/representation/SparseList{SparseBand}_representation.txt index e348c809b..27df02f35 100644 --- a/test/reference64/representation/SparseList{SparseBand}_representation.txt +++ b/test/reference64/representation/SparseList{SparseBand}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseBand} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], [1]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 0, 1, 1, 1, 1, 0, 1, 1]), 4, [1, 2, 3, 4, 5], [3, 4, 3, 4], [1, 2, 6, 7, 11]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 10 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], [1]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseBand{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 0.0, 1.0, 2.0, 0.0, 2.0, 2.0, 0.0, 0.0, 3.0, 3.0]), 5, [1, 2, 3, 4, 5, 6], [3, 3, 3, 4, 1], [1, 2, 5, 8, 12, 13]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 12 diff --git a/test/reference64/representation/SparseList{SparseByteMap}_representation.txt b/test/reference64/representation/SparseList{SparseByteMap}_representation.txt index 7923e5c1e..3fb56da71 100644 --- a/test/reference64/representation/SparseList{SparseByteMap}_representation.txt +++ b/test/reference64/representation/SparseList{SparseByteMap}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseByteMap} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Bool[], Tuple{Int64, Int64}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4, [1, 2, 3, 4], Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0], [(1, 3), (2, 4), (3, 1)]), 4, [1, 4], [1, 2, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4, [1, 2, 5, 6, 9], Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1], [(1, 3), (2, 1), (2, 3), (2, 4), (3, 3), (4, 1), (4, 3), (4, 4)]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Bool[], Tuple{Int64, Int64}[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (2, 1), (2, 2), (2, 3), (2, 4), (2, 5), (3, 1), (3, 2), (3, 3), (3, 4), (3, 5), (4, 1), (4, 2), (4, 3), (4, 4), (4, 5), (5, 1), (5, 2), (5, 3), (5, 4), (5, 5)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseByteMap{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5, [1, 2, 4, 6, 8, 9], Bool[0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0], [(1, 3), (2, 1), (2, 3), (3, 1), (3, 3), (4, 1), (4, 4), (5, 1)]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 diff --git a/test/reference64/representation/SparseList{SparseDict}_representation.txt b/test/reference64/representation/SparseList{SparseDict}_representation.txt index 7e73818e1..d098beb05 100644 --- a/test/reference64/representation/SparseList{SparseDict}_representation.txt +++ b/test/reference64/representation/SparseList{SparseDict}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseDict} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}())), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((4, 5) => 20, (1, 2) => 2, (3, 1) => 11, (2, 5) => 10, (1, 3) => 3, (1, 4) => 4, (5, 5) => 25, (3, 2) => 12, (3, 3) => 13, (4, 1) => 16, (2, 1) => 6, (3, 4) => 14, (1, 5) => 5, (4, 2) => 17, (5, 1) => 21, (2, 2) => 7, (4, 3) => 18, (2, 3) => 8, (3, 5) => 15, (4, 4) => 19, (2, 4) => 9, (1, 1) => 1, (5, 2) => 22, (5, 3) => 23, (5, 4) => 24))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 3, 4], [3, 4, 1], [1, 2, 3], Dict((2, 4) => 2, (3, 1) => 3, (1, 3) => 1))), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [1, 2, 3, 4, 5, 6, 7, 8], Dict((2, 4) => 4, (3, 3) => 5, (1, 3) => 1, (4, 1) => 6, (2, 1) => 2, (4, 3) => 7, (2, 3) => 3, (4, 4) => 8))), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1], Int64[], Int64[], Dict{Tuple{Int64, Int64}, Int64}())), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25], Dict((4, 5) => 20, (1, 2) => 2, (3, 1) => 11, (2, 5) => 10, (1, 3) => 3, (1, 4) => 4, (5, 5) => 25, (3, 2) => 12, (3, 3) => 13, (4, 1) => 16, (2, 1) => 6, (3, 4) => 14, (1, 5) => 5, (4, 2) => 17, (5, 1) => 21, (2, 2) => 7, (4, 3) => 18, (2, 3) => 8, (3, 5) => 15, (4, 4) => 19, (2, 4) => 9, (1, 1) => 1, (5, 2) => 22, (5, 3) => 23, (5, 4) => 24))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(Sparse{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, Finch.DictTable{Int64, Int64, Vector{Int64}, Vector{Int64}, Vector{Int64}, Dict{Tuple{Int64, Int64}, Int64}}([1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8], Dict((3, 1) => 4, (3, 3) => 5, (1, 3) => 1, (4, 1) => 6, (5, 1) => 8, (2, 1) => 2, (2, 3) => 3, (4, 4) => 7))), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparseList{SparseList{Separate}}_representation.txt b/test/reference64/representation/SparseList{SparseList{Separate}}_representation.txt index a8fdcb28d..0c36c636b 100644 --- a/test/reference64/representation/SparseList{SparseList{Separate}}_representation.txt +++ b/test/reference64/representation/SparseList{SparseList{Separate}}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseList{Separate}} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0]), Element{false, Bool, Int64}(Bool[0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[0])]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{false, Bool, Int64}(Bool[]), ElementLevel{false, Bool, Int64, Vector{Bool}}[Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1]), Element{false, Bool, Int64}(Bool[1])]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0]), Element{0.0, Float64, Int64}([0.0])]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Separate(Element{0.0, Float64, Int64}(Float64[]), ElementLevel{0.0, Float64, Int64, Vector{Float64}}[Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([1.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([2.0]), Element{0.0, Float64, Int64}([3.0]), Element{0.0, Float64, Int64}([3.0])]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparseList{SparseList}_representation.txt b/test/reference64/representation/SparseList{SparseList}_representation.txt index aa9273dee..5da5180f5 100644 --- a/test/reference64/representation/SparseList{SparseList}_representation.txt +++ b/test/reference64/representation/SparseList{SparseList}_representation.txt @@ -2,30 +2,44 @@ SparseList{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparseList{SparseRLELazy}_representation.txt b/test/reference64/representation/SparseList{SparseRLELazy}_representation.txt index b9c9a8508..a6a7dbfc1 100644 --- a/test/reference64/representation/SparseList{SparseRLELazy}_representation.txt +++ b/test/reference64/representation/SparseList{SparseRLELazy}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseRLELazy} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =false), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int64}(Bool[]); merge =false), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4], [3, 1, 3, 4, 3, 1, 3, 4], Element{false, Bool, Int64}(Bool[]); merge =false), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int64}(Float64[]); merge =false), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparseList{SparseRLE}_representation.txt b/test/reference64/representation/SparseList{SparseRLE}_representation.txt index 64efe38c2..3cccfc880 100644 --- a/test/reference64/representation/SparseList{SparseRLE}_representation.txt +++ b/test/reference64/representation/SparseList{SparseRLE}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseRLE} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =true), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{false, Bool, Int64}(Bool[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [3, 4, 1], Element{false, Bool, Int64}(Bool[]); merge =true), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 3, 3, 1, 3], [3, 1, 4, 3, 1, 4], Element{false, Bool, Int64}(Bool[]); merge =true), 4, [1, 5], [1, 2, 3, 4])) +countstored: 6 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [1, 1, 1, 1, 1], [5, 5, 5, 5, 5], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [3, 1, 3, 1, 3, 1, 4, 1], Element{0.0, Float64, Int64}(Float64[]); merge =true), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparseList{SparseVBL}_representation.txt b/test/reference64/representation/SparseList{SparseVBL}_representation.txt index 9c9259f49..752800fce 100644 --- a/test/reference64/representation/SparseList{SparseVBL}_representation.txt +++ b/test/reference64/representation/SparseList{SparseVBL}_representation.txt @@ -2,16 +2,23 @@ SparseList{SparseVBL} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[], [1]), 5, [1, 1], Int64[])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1], [1, 2, 3, 4]), 4, [1, 4], [1, 2, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 4, 5, 7], [3, 1, 4, 3, 1, 4], [1, 2, 3, 5, 6, 7, 9]), 4, [1, 5], [1, 2, 3, 4])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[], [1]), 5, [1, 1], Int64[])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2, 3, 4, 5, 6], [5, 5, 5, 5, 5], [1, 6, 11, 16, 21, 26]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseList{Int64}(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1], [1, 2, 3, 4, 5, 6, 7, 8, 9]), 5, [1, 6], [1, 2, 3, 4, 5])) +countstored: 8 diff --git a/test/reference64/representation/SparsePoint_representation.txt b/test/reference64/representation/SparsePoint_representation.txt index 4a097286d..5ca501dec 100644 --- a/test/reference64/representation/SparsePoint_representation.txt +++ b/test/reference64/representation/SparsePoint_representation.txt @@ -2,4 +2,5 @@ SparsePoint representation: 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparsePoint{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3])) +countstored: 1 diff --git a/test/reference64/representation/SparseRLELazy_representation.txt b/test/reference64/representation/SparseRLELazy_representation.txt index 4e134c28a..5af84f640 100644 --- a/test/reference64/representation/SparseRLELazy_representation.txt +++ b/test/reference64/representation/SparseRLELazy_representation.txt @@ -2,26 +2,38 @@ SparseRLELazy representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =false)) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]); merge =false)) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 6, [1, 4], [2, 3, 6], [2, 3, 6], Element{false, Bool, Int64}(Bool[1, 1, 1]); merge =false)) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3], [3], Element{false, Bool, Int64}(Bool[1]); merge =false)) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 449], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], [2, 3, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1001], Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]); merge =false)) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 9], [2, 3, 5, 6, 7, 8, 9, 11], [2, 3, 5, 6, 7, 8, 9, 11], Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]); merge =false)) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), 6, [1, 5], [2, 3, 5, 6], [2, 3, 5, 6], Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]); merge =false)) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, [1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =false)) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =false)) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]); merge =false)) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 6], [2, 3, 4, 5, 8], [2, 3, 4, 5, 8], Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]); merge =false)) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666], [2, 3, 555, 666], Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]); merge =false)) +countstored: 4 diff --git a/test/reference64/representation/SparseRLELazy{Dense}_representation.txt b/test/reference64/representation/SparseRLELazy{Dense}_representation.txt index 27668df5a..c7d9139ab 100644 --- a/test/reference64/representation/SparseRLELazy{Dense}_representation.txt +++ b/test/reference64/representation/SparseRLELazy{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseRLELazy{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[], Int64[], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge =false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge =false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4], [1, 2, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge =false)) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge =false)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[], Int64[], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =false)) +countstored: 25 diff --git a/test/reference64/representation/SparseRLELazy{SparseList}_representation.txt b/test/reference64/representation/SparseRLELazy{SparseList}_representation.txt index 46558db8d..d2a60da5c 100644 --- a/test/reference64/representation/SparseRLELazy{SparseList}_representation.txt +++ b/test/reference64/representation/SparseRLELazy{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseRLELazy{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[], Int64[], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge =false)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge =false)) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4], [1, 2, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge =false)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge =false)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[], Int64[], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =false)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =false)) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =false)) +countstored: 8 diff --git a/test/reference64/representation/SparseRLE_representation.txt b/test/reference64/representation/SparseRLE_representation.txt index 25699f374..284581a3a 100644 --- a/test/reference64/representation/SparseRLE_representation.txt +++ b/test/reference64/representation/SparseRLE_representation.txt @@ -2,26 +2,38 @@ SparseRLE representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[], Int64[], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1]), 5, [1, 2], [1], [5], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 1 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1]), 6, [1, 3], [2, 6], [3, 6], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 2 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3], [3], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 1111, [1, 4], [2, 555, 1001], [3, 999, 1001], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 3 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseRLE{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 11, [1, 4], [2, 5, 11], [3, 9, 11], Element{false, Bool, Int64}(Bool[]); merge =true)) +countstored: 3 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([2.0, 3.0]), 6, [1, 3], [2, 5], [3, 6], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 2 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, [1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[], Int64[], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0]), 5, [1, 2], [1], [5], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 1 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([1.0, 2.0, 3.0]), 9, [1, 4], [2, 4, 8], [3, 5, 8], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 3 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseRLE{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 5], [2, 3, 555, 666], [2, 3, 555, 666], Element{0.0, Float64, Int64}(Float64[]); merge =true)) +countstored: 4 diff --git a/test/reference64/representation/SparseRLE{Dense}_representation.txt b/test/reference64/representation/SparseRLE{Dense}_representation.txt index 79d1d11cf..a400b98e9 100644 --- a/test/reference64/representation/SparseRLE{Dense}_representation.txt +++ b/test/reference64/representation/SparseRLE{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseRLE{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[], Int64[], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge =true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5), 5, [1, 2], [1], [5], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5); merge =true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 4], [1, 2, 4], [1, 2, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge =true)) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 4); merge =true)) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[], Int64[], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [1], [5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5); merge =true)) +countstored: 25 diff --git a/test/reference64/representation/SparseRLE{SparseList}_representation.txt b/test/reference64/representation/SparseRLE{SparseList}_representation.txt index 3e1a60749..e602d52ba 100644 --- a/test/reference64/representation/SparseRLE{SparseList}_representation.txt +++ b/test/reference64/representation/SparseRLE{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseRLE{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[], Int64[], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge =true)) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [1], [5], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]); merge =true)) +countstored: 5 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 4], [1, 2, 4], [1, 2, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge =true)) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 5], [1, 2, 3, 4], [1, 2, 3, 4], SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 4, [1], Int64[]); merge =true)) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[], Int64[], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =true)) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6], [1, 2, 3, 4, 5]), 5, [1, 2], [1], [5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =true)) +countstored: 5 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseRLE{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 6], [1, 2, 3, 4, 5], [1, 2, 3, 4, 5], SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]); merge =true)) +countstored: 8 diff --git a/test/reference64/representation/SparseVBL_representation.txt b/test/reference64/representation/SparseVBL_representation.txt index b45a70259..a79c9ce26 100644 --- a/test/reference64/representation/SparseVBL_representation.txt +++ b/test/reference64/representation/SparseVBL_representation.txt @@ -2,26 +2,38 @@ SparseVBL representation: 5x_false: Bool[0, 0, 0, 0, 0] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x_true: Bool[1, 1, 1, 1, 1] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 5 6x_bool_mix: Bool[0, 1, 1, 0, 0, 1] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 6, [1, 3], [3, 6], [1, 3, 4])) +countstored: 3 6x_one_bool: Bool[0, 0, 1, 0, 0, 0] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1]), 6, [1, 2], [3], [1, 2])) +countstored: 1 1111x_bool_mix: Bool[0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 1111, [1, 4], [3, 999, 1001], [1, 3, 448, 449])) +countstored: 448 11x_bool_mix: Bool[0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1] tensor: Tensor(SparseVBL{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 11, [1, 4], [3, 9, 11], [1, 3, 8, 9])) +countstored: 8 6x_float_mix: [0.0, 2.0, 2.0, 0.0, 3.0, 3.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}([2.0, 2.0, 3.0, 3.0]), 6, [1, 3], [3, 6], [1, 3, 5])) +countstored: 4 4x_zeros: [0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}(Float64[]), 4, [1, 1], Int64[], [1])) +countstored: 0 5x_zeros: [0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x_ones: [1.0, 1.0, 1.0, 1.0, 1.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 2], [5], [1, 6])) +countstored: 5 9x_float_mix: [0.0, 1.0, 1.0, 2.0, 2.0, 0.0, 0.0, 3.0, 0.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 2.0, 2.0, 3.0]), 9, [1, 3], [5, 8], [1, 5, 6])) +countstored: 5 1111x_float_mix: [0.0, 20.0, 30.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 5550.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6660.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] tensor: Tensor(SparseVBL{Int64}(Element{0.0, Float64, Int64}([20.0, 30.0, 5550.0, 6660.0]), 1111, [1, 4], [3, 555, 666], [1, 3, 4, 5])) +countstored: 4 diff --git a/test/reference64/representation/SparseVBL{Dense}_representation.txt b/test/reference64/representation/SparseVBL{Dense}_representation.txt index ef85a0bd1..ccb72e4e6 100644 --- a/test/reference64/representation/SparseVBL{Dense}_representation.txt +++ b/test/reference64/representation/SparseVBL{Dense}_representation.txt @@ -2,16 +2,23 @@ SparseVBL{Dense} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[]), 5), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]), 4), 4, [1, 3], [2, 4], [1, 3, 4])) +countstored: 12 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{false, Bool, Int64}(Bool[0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1]), 4), 4, [1, 2], [4], [1, 5])) +countstored: 16 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int64}(Dense{Int64}(Element{0.0, Float64, Int64}([0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 3.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0]), 5), 5, [1, 2], [5], [1, 6])) +countstored: 25 diff --git a/test/reference64/representation/SparseVBL{SparseList}_representation.txt b/test/reference64/representation/SparseVBL{SparseList}_representation.txt index e32628244..babbd3387 100644 --- a/test/reference64/representation/SparseVBL{SparseList}_representation.txt +++ b/test/reference64/representation/SparseVBL{SparseList}_representation.txt @@ -2,16 +2,23 @@ SparseVBL{SparseList} representation: 5x5_falses: Bool[0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0; 0 0 0 0 0] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[]), 5, [1], Int64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_trues: Bool[1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 4x4_one_bool: Bool[0 0 0 1; 0 0 0 0; 1 0 0 0; 0 1 0 0] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1]), 4, [1, 2, 3, 4], [3, 4, 1]), 4, [1, 3], [2, 4], [1, 3, 4])) +countstored: 3 4x4_bool_mix: Bool[0 1 0 1; 0 0 0 0; 1 1 1 1; 0 1 0 1] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{false, Bool, Int64}(Bool[1, 1, 1, 1, 1, 1, 1, 1]), 4, [1, 2, 5, 6, 9], [3, 1, 3, 4, 3, 1, 3, 4]), 4, [1, 2], [4], [1, 5])) +countstored: 8 5x5_zeros: [0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}(Float64[]), 5, [1], Int64[]), 5, [1, 1], Int64[], [1])) +countstored: 0 5x5_ones: [1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0; 1.0 1.0 1.0 1.0 1.0] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0]), 5, [1, 6, 11, 16, 21, 26], [1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 1, 2, 3, 4, 5]), 5, [1, 2], [5], [1, 6])) +countstored: 25 5x5_float_mix: [0.0 1.0 2.0 2.0 3.0; 0.0 0.0 0.0 0.0 0.0; 1.0 1.0 2.0 0.0 0.0; 0.0 0.0 0.0 3.0 0.0; 0.0 0.0 0.0 0.0 0.0] tensor: Tensor(SparseVBL{Int64}(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 1.0, 1.0, 2.0, 2.0, 2.0, 3.0, 3.0]), 5, [1, 2, 4, 6, 8, 9], [3, 1, 3, 1, 3, 1, 4, 1]), 5, [1, 2], [5], [1, 6])) +countstored: 8 diff --git a/test/reference64/typical/typical_merge_gallop.txt b/test/reference64/typical/typical_merge_gallop.txt index 90a92c498..03e5919b3 100644 --- a/test/reference64/typical/typical_merge_gallop.txt +++ b/test/reference64/typical/typical_merge_gallop.txt @@ -107,8 +107,9 @@ quote y_lvl_q = Finch.scansearch(y_lvl_idx, phase_stop_2, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i2 = y_lvl_idx[y_lvl_q] - if y_lvl_i2 < phase_stop_2 - for i_12 = phase_stop_2:-1 + y_lvl_i2 + phase_stop_5 = min(y_lvl_i2, phase_stop_2) + if y_lvl_i2 == phase_stop_5 + for i_12 = phase_stop_2:-1 + phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -127,49 +128,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = y_lvl_i2 + z_lvl_idx[z_lvl_qos] = phase_stop_5 z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_6 = min(y_lvl_i2, phase_stop_2) - if y_lvl_i2 == phase_stop_6 - for i_14 = phase_stop_2:-1 + phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_14 - z_lvl_qos += 1 - end - y_lvl_2_val = y_lvl_val[y_lvl_q] + for i_14 = phase_stop_2:phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_6 + z_lvl_val[z_lvl_qos] = x_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_14 z_lvl_qos += 1 - y_lvl_q += 1 - else - for i_16 = phase_stop_2:phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_16 - z_lvl_qos += 1 - end end - x_lvl_q += 1 - break end x_lvl_q += 1 elseif y_lvl_i2 == phase_stop_2 @@ -191,8 +164,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_8 = min(x_lvl_i2, -1 + phase_stop_2) - if x_lvl_i2 == phase_stop_8 + phase_stop_7 = min(x_lvl_i2, -1 + phase_stop_2) + if x_lvl_i2 == phase_stop_7 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -201,7 +174,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_8 + z_lvl_idx[z_lvl_qos] = phase_stop_7 z_lvl_qos += 1 x_lvl_q += 1 end @@ -213,8 +186,9 @@ quote x_lvl_q = Finch.scansearch(x_lvl_idx, phase_stop_2, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_2 - for i_21 = phase_stop_2:-1 + x_lvl_i2 + phase_stop_8 = min(x_lvl_i2, phase_stop_2) + if x_lvl_i2 == phase_stop_8 + for i_19 = phase_stop_2:-1 + phase_stop_8 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -222,7 +196,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_21 + z_lvl_idx[z_lvl_qos] = i_19 z_lvl_qos += 1 end x_lvl_2_val = x_lvl_val[x_lvl_q] @@ -233,49 +207,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val + x_lvl_2_val - z_lvl_idx[z_lvl_qos] = x_lvl_i2 + z_lvl_idx[z_lvl_qos] = phase_stop_8 z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_10 = min(x_lvl_i2, phase_stop_2) - if x_lvl_i2 == phase_stop_10 - for i_23 = phase_stop_2:-1 + phase_stop_10 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_23 - z_lvl_qos += 1 - end - x_lvl_2_val = x_lvl_val[x_lvl_q] + for i_21 = phase_stop_2:phase_stop_8 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = y_lvl_2_val + x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_10 + z_lvl_val[z_lvl_qos] = y_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_21 z_lvl_qos += 1 - x_lvl_q += 1 - else - for i_25 = phase_stop_2:phase_stop_10 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_25 - z_lvl_qos += 1 - end end - y_lvl_q += 1 - break end y_lvl_q += 1 else @@ -288,8 +234,8 @@ quote while i <= phase_stop_2 y_lvl_i2 = y_lvl_idx[y_lvl_q] x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_11 = min(y_lvl_i2, x_lvl_i2, phase_stop_2) - if y_lvl_i2 == phase_stop_11 && x_lvl_i2 == phase_stop_11 + phase_stop_9 = min(y_lvl_i2, x_lvl_i2, phase_stop_2) + if y_lvl_i2 == phase_stop_9 && x_lvl_i2 == phase_stop_9 y_lvl_2_val = y_lvl_val[y_lvl_q] x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop @@ -299,11 +245,11 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 y_lvl_q += 1 x_lvl_q += 1 - elseif x_lvl_i2 == phase_stop_11 + elseif x_lvl_i2 == phase_stop_9 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -312,10 +258,10 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 x_lvl_q += 1 - elseif y_lvl_i2 == phase_stop_11 + elseif y_lvl_i2 == phase_stop_9 y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -324,27 +270,27 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_9 z_lvl_qos += 1 y_lvl_q += 1 end - i = phase_stop_11 + 1 + i = phase_stop_9 + 1 end end i = phase_stop_2 + 1 end end phase_start_8 = max(1, 1 + y_lvl_i1) - phase_stop_12 = min(y_lvl.shape, x_lvl_i1) - if phase_stop_12 >= phase_start_8 + phase_stop_10 = min(y_lvl.shape, x_lvl_i1) + if phase_stop_10 >= phase_start_8 i = phase_start_8 - while i <= phase_stop_12 + while i <= phase_stop_10 if x_lvl_idx[x_lvl_q] < i x_lvl_q = Finch.scansearch(x_lvl_idx, i, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_13 = min(x_lvl_i2, phase_stop_12) - if x_lvl_i2 == phase_stop_13 + phase_stop_11 = min(x_lvl_i2, phase_stop_10) + if x_lvl_i2 == phase_stop_11 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -353,7 +299,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_13 + z_lvl_idx[z_lvl_qos] = phase_stop_11 z_lvl_qos += 1 x_lvl_q += 1 else @@ -362,7 +308,7 @@ quote end while true x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_13 + if x_lvl_i2 < phase_stop_11 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -375,8 +321,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_15 = min(x_lvl_i2, phase_stop_13) - if x_lvl_i2 == phase_stop_15 + phase_stop_13 = min(x_lvl_i2, phase_stop_11) + if x_lvl_i2 == phase_stop_13 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -385,7 +331,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_15 + z_lvl_idx[z_lvl_qos] = phase_stop_13 z_lvl_qos += 1 x_lvl_q += 1 end @@ -393,20 +339,20 @@ quote end end end - i = phase_stop_13 + 1 + i = phase_stop_11 + 1 end end phase_start_11 = max(1, 1 + x_lvl_i1) - phase_stop_16 = min(y_lvl.shape, y_lvl_i1) - if phase_stop_16 >= phase_start_11 + phase_stop_14 = min(y_lvl.shape, y_lvl_i1) + if phase_stop_14 >= phase_start_11 i = phase_start_11 - while i <= phase_stop_16 + while i <= phase_stop_14 if y_lvl_idx[y_lvl_q] < i y_lvl_q = Finch.scansearch(y_lvl_idx, i, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i2 = y_lvl_idx[y_lvl_q] - phase_stop_17 = min(y_lvl_i2, phase_stop_16) - if y_lvl_i2 == phase_stop_17 + phase_stop_15 = min(y_lvl_i2, phase_stop_14) + if y_lvl_i2 == phase_stop_15 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -415,7 +361,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_17 + z_lvl_idx[z_lvl_qos] = phase_stop_15 z_lvl_qos += 1 y_lvl_q += 1 else @@ -424,7 +370,7 @@ quote end while true y_lvl_i2 = y_lvl_idx[y_lvl_q] - if y_lvl_i2 < phase_stop_17 + if y_lvl_i2 < phase_stop_15 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -437,8 +383,8 @@ quote z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_19 = min(y_lvl_i2, phase_stop_17) - if y_lvl_i2 == phase_stop_19 + phase_stop_17 = min(y_lvl_i2, phase_stop_15) + if y_lvl_i2 == phase_stop_17 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -447,7 +393,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_19 + z_lvl_idx[z_lvl_qos] = phase_stop_17 z_lvl_qos += 1 y_lvl_q += 1 end @@ -455,7 +401,7 @@ quote end end end - i = phase_stop_17 + 1 + i = phase_stop_15 + 1 end end z_lvl_ptr[1 + 1] += (z_lvl_qos - 0) - 1 @@ -475,5 +421,5 @@ julia> @finch begin z[i] = x[gallop(i)] + y[gallop(i)] end end -(z = Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 1.0, 6.0]), 10, [1, 4], [1, 2, 9])),) +(z = Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 1.0, 3.0, 5.0, 5.0, 1.0, 6.0]), 10, [1, 8], [1, 2, 3, 5, 7, 8, 9])),) diff --git a/test/reference64/typical/typical_merge_leadfollow.txt b/test/reference64/typical/typical_merge_leadfollow.txt index 51113baa3..688d82c22 100644 --- a/test/reference64/typical/typical_merge_leadfollow.txt +++ b/test/reference64/typical/typical_merge_leadfollow.txt @@ -68,17 +68,19 @@ quote y_lvl_q += 1 else phase_stop_4 = min(y_lvl_i, -1 + phase_stop_2) - y_lvl_2_val = y_lvl_val[y_lvl_q] - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) + if y_lvl_i == phase_stop_4 + y_lvl_2_val = y_lvl_val[y_lvl_q] + if z_lvl_qos > z_lvl_qos_stop + z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) + Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) + Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) + Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) + end + z_lvl_val[z_lvl_qos] = y_lvl_2_val + z_lvl_idx[z_lvl_qos] = phase_stop_4 + z_lvl_qos += 1 + y_lvl_q += 1 end - z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_4 - z_lvl_qos += 1 - y_lvl_q += 1 break end end @@ -87,8 +89,9 @@ quote y_lvl_q = Finch.scansearch(y_lvl_idx, phase_stop_2, y_lvl_q, y_lvl_q_stop - 1) end y_lvl_i = y_lvl_idx[y_lvl_q] - if y_lvl_i < phase_stop_2 - for i_11 = phase_stop_2:-1 + y_lvl_i + phase_stop_5 = min(phase_stop_2, y_lvl_i) + if y_lvl_i == phase_stop_5 + for i_11 = phase_stop_2:-1 + phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) @@ -107,49 +110,21 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = y_lvl_i + z_lvl_idx[z_lvl_qos] = phase_stop_5 z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_6 = min(phase_stop_2, y_lvl_i) - if y_lvl_i == phase_stop_6 - for i_13 = phase_stop_2:-1 + phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_13 - z_lvl_qos += 1 - end - y_lvl_2_val = y_lvl_val[y_lvl_q] + for i_13 = phase_stop_2:phase_stop_5 if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end - z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_6 + z_lvl_val[z_lvl_qos] = x_lvl_2_val + z_lvl_idx[z_lvl_qos] = i_13 z_lvl_qos += 1 - y_lvl_q += 1 - else - for i_15 = phase_stop_2:phase_stop_6 - if z_lvl_qos > z_lvl_qos_stop - z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) - Finch.resize_if_smaller!(z_lvl_idx, z_lvl_qos_stop) - Finch.resize_if_smaller!(z_lvl_val, z_lvl_qos_stop) - Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) - end - z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = i_15 - z_lvl_qos += 1 - end end - x_lvl_q += 1 - break end x_lvl_q += 1 else @@ -162,8 +137,8 @@ quote while i <= phase_stop_2 y_lvl_i = y_lvl_idx[y_lvl_q] x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_7 = min(x_lvl_i2, phase_stop_2, y_lvl_i) - if y_lvl_i == phase_stop_7 && x_lvl_i2 == phase_stop_7 + phase_stop_6 = min(x_lvl_i2, phase_stop_2, y_lvl_i) + if y_lvl_i == phase_stop_6 && x_lvl_i2 == phase_stop_6 x_lvl_2_val = x_lvl_val[x_lvl_q] y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop @@ -173,11 +148,11 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val + y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 y_lvl_q += 1 x_lvl_q += 1 - elseif x_lvl_i2 == phase_stop_7 + elseif x_lvl_i2 == phase_stop_6 x_lvl_2_val = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -186,10 +161,10 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 x_lvl_q += 1 - elseif y_lvl_i == phase_stop_7 + elseif y_lvl_i == phase_stop_6 y_lvl_2_val = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -198,27 +173,27 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val - z_lvl_idx[z_lvl_qos] = phase_stop_7 + z_lvl_idx[z_lvl_qos] = phase_stop_6 z_lvl_qos += 1 y_lvl_q += 1 end - i = phase_stop_7 + 1 + i = phase_stop_6 + 1 end end i = phase_stop_2 + 1 end end phase_start_6 = max(1, 1 + y_lvl_i1) - phase_stop_8 = min(y_lvl.shape, x_lvl_i1) - if phase_stop_8 >= phase_start_6 + phase_stop_7 = min(y_lvl.shape, x_lvl_i1) + if phase_stop_7 >= phase_start_6 i = phase_start_6 - while i <= phase_stop_8 + while i <= phase_stop_7 if x_lvl_idx[x_lvl_q] < i x_lvl_q = Finch.scansearch(x_lvl_idx, i, x_lvl_q, x_lvl_q_stop - 1) end x_lvl_i2 = x_lvl_idx[x_lvl_q] - phase_stop_9 = min(x_lvl_i2, phase_stop_8) - if x_lvl_i2 == phase_stop_9 + phase_stop_8 = min(x_lvl_i2, phase_stop_7) + if x_lvl_i2 == phase_stop_8 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -227,7 +202,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_9 + z_lvl_idx[z_lvl_qos] = phase_stop_8 z_lvl_qos += 1 x_lvl_q += 1 else @@ -236,7 +211,7 @@ quote end while true x_lvl_i2 = x_lvl_idx[x_lvl_q] - if x_lvl_i2 < phase_stop_9 + if x_lvl_i2 < phase_stop_8 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -249,8 +224,8 @@ quote z_lvl_qos += 1 x_lvl_q += 1 else - phase_stop_11 = min(x_lvl_i2, phase_stop_9) - if x_lvl_i2 == phase_stop_11 + phase_stop_10 = min(x_lvl_i2, phase_stop_8) + if x_lvl_i2 == phase_stop_10 x_lvl_2_val_2 = x_lvl_val[x_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -259,7 +234,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = x_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_11 + z_lvl_idx[z_lvl_qos] = phase_stop_10 z_lvl_qos += 1 x_lvl_q += 1 end @@ -267,18 +242,18 @@ quote end end end - i = phase_stop_9 + 1 + i = phase_stop_8 + 1 end end phase_start_9 = max(1, 1 + x_lvl_i1) - phase_stop_12 = min(y_lvl.shape, y_lvl_i1) - if phase_stop_12 >= phase_start_9 + phase_stop_11 = min(y_lvl.shape, y_lvl_i1) + if phase_stop_11 >= phase_start_9 if y_lvl_idx[y_lvl_q] < phase_start_9 y_lvl_q = Finch.scansearch(y_lvl_idx, phase_start_9, y_lvl_q, y_lvl_q_stop - 1) end while true y_lvl_i = y_lvl_idx[y_lvl_q] - if y_lvl_i < phase_stop_12 + if y_lvl_i < phase_stop_11 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -291,8 +266,8 @@ quote z_lvl_qos += 1 y_lvl_q += 1 else - phase_stop_14 = min(y_lvl_i, phase_stop_12) - if y_lvl_i == phase_stop_14 + phase_stop_13 = min(y_lvl_i, phase_stop_11) + if y_lvl_i == phase_stop_13 y_lvl_2_val_2 = y_lvl_val[y_lvl_q] if z_lvl_qos > z_lvl_qos_stop z_lvl_qos_stop = max(z_lvl_qos_stop << 1, 1) @@ -301,7 +276,7 @@ quote Finch.fill_range!(z_lvl_val, 0.0, z_lvl_qos, z_lvl_qos_stop) end z_lvl_val[z_lvl_qos] = y_lvl_2_val_2 - z_lvl_idx[z_lvl_qos] = phase_stop_14 + z_lvl_idx[z_lvl_qos] = phase_stop_13 z_lvl_qos += 1 y_lvl_q += 1 end @@ -326,5 +301,5 @@ julia> @finch begin z[i] = x[gallop(i)] + y[i] end end -(z = Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([1.0, 2.0, 6.0]), 10, [1, 4], [0, 1, 9])),) +(z = Tensor(SparseList{Int64}(Element{0.0, Float64, Int64}([2.0, 1.0, 3.0, 5.0, 5.0, 1.0, 6.0]), 10, [1, 8], [1, 2, 3, 5, 7, 8, 9])),) diff --git a/test/test_issues.jl b/test/test_issues.jl index ea453e5cd..d7ce12de6 100644 --- a/test/test_issues.jl +++ b/test/test_issues.jl @@ -666,4 +666,29 @@ using CIndices V = [1, 1, 1, 1] fsparse(I, J, V) == sparse(I, J, V) end + + #https://github.com/willow-ahrens/Finch.jl/pull/450 + let + #there was a bug with let statements and scoping + input = Tensor(Dense(Dense(Element(UInt(0))))) + output = Tensor(Dense(Dense(Element(UInt(0))))) + tmp = Tensor(Dense(Dense(Element(UInt(0))))) + + eval(Finch.@finch_kernel function erode_finch_bits_kernel(output, input, tmp) + tmp .= 0 + for y = _ + for x = _ + tmp[x, y] = coalesce(input[x, ~(y-1)], ~(UInt(0))) & input[x, y] & coalesce(input[x, ~(y+1)], ~(UInt(0))) + end + end + output .= 0 + for y = _ + for x = _ + let tl = coalesce(tmp[~(x-1), y], ~(UInt(0))), t = tmp[x, y], tr = coalesce(tmp[~(x+1), y], ~(UInt(0))) + output[x, y] = ((tr << (8 * sizeof(UInt) - 1)) | (t >> 1)) & t & ((t << 1) | (tl >> (8 * sizeof(UInt) - 1))) + end + end + end + end) + end end diff --git a/test/test_representation.jl b/test/test_representation.jl index ab56025ad..e8ac5651b 100644 --- a/test/test_representation.jl +++ b/test/test_representation.jl @@ -133,7 +133,9 @@ @test Structure(tmp) == Structure(eval(Meta.parse(repr(tmp)))) end @test reference_isequal(tmp, arr) + @test Finch.AsArray(tmp) == arr println(io, "tensor: ", repr(tmp)) + println(io, "countstored: ", countstored(tmp)) end end end @@ -189,6 +191,7 @@ end @test reference_isequal(tmp, arr) println(io, "tensor: ", repr(tmp)) + println(io, "countstored: ", countstored(tmp)) end end end