def blist
import bend-ml-tensor-array@0.1.19.0/main.bend as BendMlTensorArrayimport Base
1767def blist(+c: Nat, -r: Nat, b: Bands<r, c>, +rr: Nat, -e: {rr == r : Nat}) -> BRow<r, c>:
1768 match b:
1769 case BLeaf{m}:
1770 brow_leaf(r, c, m, 0, Nat.mul(rr, c))
1771 case BNode{x, y}:
1772 # bend-lint: disable-next bend-lint-rules/performance/missed_fork -- bands are built once at load not-expected-because: forking them measured as no change (NOTES 2026-10-16)
1773 bl_join(r, c, blist(c, half(r), x, half(rr), eq_half(rr, r, e)), blist(c, Nat.sub(r, half(r)), y, Nat.sub(rr, half(rr)), eq_rest(rr, r, e)))