def set_tree
import lawful-arrays@0.1.0.0/proof_index.bend as ProofIndeximport Base
import lawful-arrays@0.1.0.0/proof_tree.bend as P
595def set_tree(-T: Data, +t: P.Tree<T>, +i: U32, +v: T) -> P.Tree<T>:
596 +n = Pair.snd(Array<T>, U32, Array.size(T, P.fromT(T, t)))
597 +j = U32.and(i, U32.sub(n, 1))
598 tswap(T, t, n, j, v, U32.is_lt(j, U32.shr(n)))