1 import Base 2 import ../../lib/logic.bend as L 3 import ../../lib/nat.bend as N 4 import ../../lib/array.bend as AR 5 import ../../../spec/lib/common.bend as SC 6 import ../../../spec/containers/lru.bend as SP 7 import ../../lib/u32div.bend as UD 8 import ../../../src/math/u64.bend as W 9 import ../../../src/containers/lru.bend as LR 10 import ../hash_table/table.bend as TB 11 import ../hash_table/buckets.bend as B 12 import ../hash_table/cyc.bend as CY 13 import ../hash_table/inv.bend as IV 14 import ./state.bend as ST 15 import ./basic.bend as BA 16 import ./rmat.bend as RM 17 import ./meta.bend as MT 18 19 import ./resize.bend as RZ 20 import ../hash_table/grow.bend as GR 21 import ../../lib/word.bend as WD 22 import ../../lib/words32.bend as W32 23 import ../../lib/u32_tree.bend as UT 24 25 # purge: every entry and the counters cleared, the table kept at its size. 26 27 28 29 def z_bsl(+d: Nat, +kl: List<&2, String>, +n: Nat, +sl: List<&2, Nat>, +ll: List<&2, U32>, +m: Nat, +hm: {Nat.is_le(m, n) == True{} : Bool}) -> {ST.bsl(TB.buckets(AR.slots(U32, AR.trep(U32, d, 0)), kl, n), sl, ll, m) == True{} : Bool}: 30 match m: 31 case 0n: 32 {==} 33 case 1n+q: 34 +hq = N.succ_le_lt(q, n, hm) 35 L.and_intro(ST.bslb(sl, ll, B.at(TB.buckets(AR.slots(U32, AR.trep(U32, d, 0)), kl, n), q)), ST.bsl(TB.buckets(AR.slots(U32, AR.trep(U32, d, 0)), kl, n), sl, ll, q), L.subst(B.Bk, z => {ST.bslb(sl, ll, z) == True{} : Bool}, B.BE{}, B.at(TB.buckets(AR.slots(U32, AR.trep(U32, d, 0)), kl, n), q), Equal.sym(B.Bk, B.at(TB.buckets(AR.slots(U32, AR.trep(U32, d, 0)), kl, n), q), B.BE{}, GR.at_z(d, kl, n, q, hq)), {==}), z_bsl(d, kl, n, sl, ll, q, N.lt_le(q, n, hq))) 36 37 # ---- zeroing the fresh count and the counters ---- 38 39 def zp(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {AR.perfect(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)) == True{} : Bool}: 40 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 41 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 42 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 43 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 44 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 45 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 46 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 47 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 48 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 49 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 50 UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 51 52 # zero_ctrs is the tree with words 0, 16 .. 25 cleared 53 def za(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {LR.zero_ctrs(AR.thaw(U32, mT)) == AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)) : Array}: 54 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 55 +a0 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 16, 0), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, mT), 0, 0), AR.thaw(U32, AR.upd(U32, 5n, mT, 0n, 0)), UT.uset_a(5n, {==}, mT, pm, 0, {==}, 0)) 56 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 57 +a1 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, mT, 0n, 0)), 16, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, mT, 0n, 0), p1, 16, {==}, 0)) 58 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 59 +a2 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), 17, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17, {==}, 0)) 60 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 61 +a3 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0)), 18, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18, {==}, 0)) 62 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 63 +a4 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0)), 19, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19, {==}, 0)) 64 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 65 +a5 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0)), 20, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20, {==}, 0)) 66 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 67 +a6 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, z, 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0)), 21, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21, {==}, 0)) 68 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 69 +a7 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, Array.set(U32, z, 23, 0), 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0)), 22, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22, {==}, 0)) 70 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 71 +a8 = Equal.cong(Array, Array, z => Array.set(U32, Array.set(U32, z, 24, 0), 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0)), 23, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23, {==}, 0)) 72 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 73 +a9 = Equal.cong(Array, Array, z => Array.set(U32, z, 25, 0), Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 24, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24, {==}, 0)) 74 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 75 +a10 = Equal.cong(Array, Array, z => z, Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 25, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), UT.uset_a(5n, {==}, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25, {==}, 0)) 76 Equal.trans(Array, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, AR.thaw(U32, mT), 0, 0), 16, 0), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, mT, 0n, 0)), 16, 0), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), a0, Equal.trans(Array, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, mT, 0n, 0)), 16, 0), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 0), 23, 0), 24, 0), 25, 0), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), a1, Equal.trans(Array, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, Array.set(U32, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), 17, 0), 18, 0), 19, 0), 20, 0), 21, 0), 22, 77 78 # the words of the cleared tree 79 def zs(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)) == SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0) : List<&2, U32>}: 80 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 81 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 82 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 83 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 84 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 85 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 86 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 87 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 88 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 89 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 90 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 91 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 92 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 93 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 94 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 95 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 96 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 97 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 98 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 99 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 100 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 101 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 102 +E0 = {{==} : {AR.slots(U32, mT) == AR.slots(U32, mT) : List<&2, U32>}} 103 +E1 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, mT, 0n, 0)), SC.update(U32, AR.slots(U32, mT), 0n, 0), SC.update(U32, AR.slots(U32, mT), 0n, 0), s0, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 0n, 0), AR.slots(U32, mT), AR.slots(U32, mT), E0)) 104 +E2 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, mT, 0n, 0)), 16n, 0), SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), s1, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 16n, 0), AR.slots(U32, AR.upd(U32, 5n, mT, 0n, 0)), SC.update(U32, AR.slots(U32, mT), 0n, 0), E1)) 105 +E3 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), 17n, 0), SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), s2, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 17n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0)), SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), E2)) 106 +E4 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0)), 18n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), s3, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 18n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), E3)) 107 +E5 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0)), 19n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), s4, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 19n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), E4)) 108 +E6 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0)), 20n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), s5, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 20n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), E5)) 109 +E7 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0)), 21n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), s6, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 21n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), E6)) 110 +E8 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0)), 22n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), s7, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 22n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), E7)) 111 +E9 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0)), 23n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), s8, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 23n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), E8)) 112 +E10 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 24n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), s9, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 24n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), E9)) 113 +E11 = Equal.trans(List<&2, U32>, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), SC.update(U32, AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 25n, 0), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, Equal.cong(List<&2, U32>, List<&2, U32>, z => SC.update(U32, z, 25n, 0), AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, SC.update(U32, AR.slots(U32, mT), 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), E10)) 114 E11 115 116 # ---- the words of the cleared tree ---- 117 118 def zw0(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n) == 0 : U32}: 119 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 120 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 121 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 122 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 123 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 124 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 125 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 126 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 127 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 128 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 129 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 130 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 131 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 132 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 133 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 134 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 135 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 136 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 137 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 138 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 139 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 140 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 141 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 0n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 0n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 0n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 0n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U32, 5 142 143 def zw1(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 1n) == W32.nth0(AR.slots(U32, mT), 1n) : U32}: 144 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 145 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 146 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 147 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 148 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 149 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 150 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 151 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 152 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 153 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 154 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 155 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 156 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 157 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 158 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 159 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 160 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 161 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 162 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 163 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 164 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 165 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 166 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 1n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 1n), W32.nth0(AR.slots(U32, mT), 1n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 1n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 1n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 1n), W32.nth0(AR.slots(U32, mT), 1n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 167 168 def zw2(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 2n) == W32.nth0(AR.slots(U32, mT), 2n) : U32}: 169 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 170 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 171 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 172 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 173 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 174 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 175 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 176 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 177 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 178 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 179 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 180 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 181 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 182 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 183 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 184 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 185 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 186 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 187 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 188 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 189 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 190 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 191 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 2n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 2n), W32.nth0(AR.slots(U32, mT), 2n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 2n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 2n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 2n), W32.nth0(AR.slots(U32, mT), 2n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 192 193 def zw3(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 3n) == W32.nth0(AR.slots(U32, mT), 3n) : U32}: 194 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 195 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 196 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 197 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 198 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 199 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 200 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 201 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 202 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 203 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 204 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 205 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 206 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 207 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 208 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 209 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 210 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 211 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 212 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 213 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 214 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 215 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 216 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 3n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 3n), W32.nth0(AR.slots(U32, mT), 3n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 3n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 3n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 3n), W32.nth0(AR.slots(U32, mT), 3n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 217 218 def zw4(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 4n) == W32.nth0(AR.slots(U32, mT), 4n) : U32}: 219 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 220 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 221 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 222 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 223 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 224 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 225 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 226 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 227 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 228 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 229 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 230 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 231 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 232 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 233 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 234 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 235 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 236 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 237 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 238 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 239 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 240 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 241 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 4n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 4n), W32.nth0(AR.slots(U32, mT), 4n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 4n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 4n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 4n), W32.nth0(AR.slots(U32, mT), 4n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 242 243 def zw5(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 5n) == W32.nth0(AR.slots(U32, mT), 5n) : U32}: 244 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 245 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 246 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 247 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 248 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 249 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 250 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 251 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 252 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 253 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 254 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 255 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 256 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 257 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 258 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 259 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 260 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 261 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 262 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 263 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 264 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 265 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 266 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 5n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 5n), W32.nth0(AR.slots(U32, mT), 5n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 5n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 5n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 5n), W32.nth0(AR.slots(U32, mT), 5n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 267 268 def zw6(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 6n) == W32.nth0(AR.slots(U32, mT), 6n) : U32}: 269 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 270 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 271 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 272 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 273 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 274 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 275 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 276 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 277 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 278 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 279 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 280 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 281 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 282 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 283 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 284 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 285 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 286 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 287 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 288 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 289 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 290 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 291 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 6n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 6n), W32.nth0(AR.slots(U32, mT), 6n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 6n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 6n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 6n), W32.nth0(AR.slots(U32, mT), 6n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 292 293 def zw7(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 7n) == W32.nth0(AR.slots(U32, mT), 7n) : U32}: 294 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 295 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 296 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 297 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 298 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 299 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 300 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 301 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 302 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 303 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 304 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 305 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 306 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 307 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 308 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 309 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 310 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 311 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 312 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 313 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 314 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 315 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 316 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 7n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 7n), W32.nth0(AR.slots(U32, mT), 7n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 7n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 7n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 7n), W32.nth0(AR.slots(U32, mT), 7n), MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0 317 318 def zw16(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 16n) == 0 : U32}: 319 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 320 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 321 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 322 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 323 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 324 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 325 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 326 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 327 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 328 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 329 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 330 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 331 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 332 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 333 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 334 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 335 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 336 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 337 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 338 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 339 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 340 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 341 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 16n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 16n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 16n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 16n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 16n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 342 343 def zw17(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 17n) == 0 : U32}: 344 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 345 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 346 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 347 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 348 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 349 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 350 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 351 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 352 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 353 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 354 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 355 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 356 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 357 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 358 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 359 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 360 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 361 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 362 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 363 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 364 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 365 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 366 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 17n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 17n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 17n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 17n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 17n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 367 368 def zw18(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 18n) == 0 : U32}: 369 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 370 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 371 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 372 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 373 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 374 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 375 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 376 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 377 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 378 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 379 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 380 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 381 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 382 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 383 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 384 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 385 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 386 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 387 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 388 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 389 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 390 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 391 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 18n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 18n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 18n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 18n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 18n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 392 393 def zw19(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 19n) == 0 : U32}: 394 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 395 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 396 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 397 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 398 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 399 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 400 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 401 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 402 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 403 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 404 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 405 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 406 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 407 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 408 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 409 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 410 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 411 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 412 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 413 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 414 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 415 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 416 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 19n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 19n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 19n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 19n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 19n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 417 418 def zw20(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 20n) == 0 : U32}: 419 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 420 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 421 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 422 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 423 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 424 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 425 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 426 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 427 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 428 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 429 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 430 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 431 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 432 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 433 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 434 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 435 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 436 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 437 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 438 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 439 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 440 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 441 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 20n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 20n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 20n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 20n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 20n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 442 443 def zw21(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 21n) == 0 : U32}: 444 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 445 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 446 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 447 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 448 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 449 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 450 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 451 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 452 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 453 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 454 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 455 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 456 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 457 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 458 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 459 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 460 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 461 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 462 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 463 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 464 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 465 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 466 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 21n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 21n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 21n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 21n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 21n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 467 468 def zw22(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 22n) == 0 : U32}: 469 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 470 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 471 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 472 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 473 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 474 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 475 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 476 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 477 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 478 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 479 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 480 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 481 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 482 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 483 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 484 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 485 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 486 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 487 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 488 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 489 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 490 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 491 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 22n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 22n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 22n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 22n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 22n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 492 493 def zw23(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 23n) == 0 : U32}: 494 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 495 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 496 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 497 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 498 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 499 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 500 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 501 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 502 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 503 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 504 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 505 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 506 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 507 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 508 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 509 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 510 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 511 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 512 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 513 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 514 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 515 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 516 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 23n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 23n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 23n, {==}), Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 23n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0)), 23n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0, AR.upd(U 517 518 def zw24(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 24n) == 0 : U32}: 519 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 520 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 521 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 522 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 523 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 524 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 525 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 526 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 527 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 528 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 529 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 530 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 531 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 532 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 533 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 534 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 535 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 536 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 537 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 538 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 539 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 540 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 541 Equal.trans(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 24n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0)), 24n), 0, MT.nth_other(AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10, 24n, {==}), MT.nth_same(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), s9)) 542 543 def zw25(+mT: AR.Tree, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 25n) == 0 : U32}: 544 +p1 = UT.uset_p(5n, mT, pm, 0n, 0) 545 +s0 = UT.uset_s(5n, mT, pm, 0n, {==}, 0) 546 +p2 = UT.uset_p(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, 0) 547 +s1 = UT.uset_s(5n, AR.upd(U32, 5n, mT, 0n, 0), p1, 16n, {==}, 0) 548 +p3 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, 0) 549 +s2 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), p2, 17n, {==}, 0) 550 +p4 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, 0) 551 +s3 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), p3, 18n, {==}, 0) 552 +p5 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, 0) 553 +s4 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), p4, 19n, {==}, 0) 554 +p6 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, 0) 555 +s5 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), p5, 20n, {==}, 0) 556 +p7 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, 0) 557 +s6 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), p6, 21n, {==}, 0) 558 +p8 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, 0) 559 +s7 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), p7, 22n, {==}, 0) 560 +p9 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, 0) 561 +s8 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), p8, 23n, {==}, 0) 562 +p10 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, 0) 563 +s9 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), p9, 24n, {==}, 0) 564 +p11 = UT.uset_p(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, 0) 565 +s10 = UT.uset_s(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0) 566 MT.nth_same(5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), p10, 25n, {==}, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), s10) 567 568 569 def good_z(~V: Data, +cap: U32, +n: U32, +head: U32, +tail: U32, +free: U32, +mT: AR.Tree, +k: Nat, +sd: Nat, +tabT: AR.Tree, +ksT: AR.Tree, +eT: AR.Tree>, +lkT: AR.Tree, +sl: List<&2, Nat>, +fl: List<&2, Nat>, +hg: {ST.good(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl}) == True{} : Bool}) -> {ST.good(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}) == True{} : Bool}: 570 +pm = ST.g_cpm(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg) 571 +z0 = zw0(mT, pm) 572 +hmask = L.subst(U32, z => {U32.is_eq(z, CY.msk(k)) == True{} : Bool}, W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 6n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 6n), W32.nth0(AR.slots(U32, mT), 6n), zw6(mT, pm)), ST.g_cmask(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 573 +hbits = L.subst(U32, z => {Nat.is_eq(UD.v(z), k) == True{} : Bool}, W32.nth0(AR.slots(U32, mT), 7n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 7n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 7n), W32.nth0(AR.slots(U32, mT), 7n), zw7(mT, pm)), ST.g_cbits(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 574 +hsize = L.subst(U32, z => {Nat.is_eq(UD.v(z), SC.pow2(sd)) == True{} : Bool}, W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 1n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 1n), W32.nth0(AR.slots(U32, mT), 1n), zw1(mT, pm)), ST.g_csize(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 575 +hdepth = L.subst(U32, z => {Nat.is_eq(UD.v(z), sd) == True{} : Bool}, W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 2n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 2n), W32.nth0(AR.slots(U32, mT), 2n), zw2(mT, pm)), ST.g_cdepth(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 576 +hfresh = L.subst(U32, z => {Nat.is_le(UD.v(z), SC.pow2(sd)) == True{} : Bool}, 0, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), 0, z0), N.zero_le(SC.pow2(sd))) 577 +hn = L.subst(Nat, z => {Nat.is_eq(0n, z) == True{} : Bool}, 0n, IV.occn(TB.buckets(AR.slots(U32, AR.trep(U32, 1n+k, 0)), AR.slots(String, ksT), SC.pow2(k)), SC.pow2(k)), Equal.sym(Nat, IV.occn(TB.buckets(AR.slots(U32, AR.trep(U32, 1n+k, 0)), AR.slots(String, ksT), SC.pow2(k)), SC.pow2(k)), 0n, GR.z_occn(1n+k, AR.slots(String, ksT), SC.pow2(k), SC.pow2(k), N.le_refl(SC.pow2(k)))), {==}) 578 +hcnt = L.subst(U32, z => {Nat.is_eq(0n, UD.v(z)) == True{} : Bool}, 0, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), Equal.sym(U32, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), 0, z0), {==}) 579 ST.good_intro(~V, cap, 0, 0, 0, 0, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 0n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 1n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 2n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 6n), W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 7n), AR.perfect(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), k, sd, AR.trep(U32, 1n+k, 0), AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, Nil{}, Nil{}, ST.g_ck(~V, cap, n, head 580 581 def model_z(~V: Data, +cap: U32, +n: U32, +head: U32, +tail: U32, +free: U32, +mT: AR.Tree, +k: Nat, +sd: Nat, +tabT: AR.Tree, +ksT: AR.Tree, +eT: AR.Tree>, +lkT: AR.Tree, +sl: List<&2, Nat>, +fl: List<&2, Nat>, +pm: {AR.perfect(U32, 5n, mT) == True{} : Bool}) -> {ST.model(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}) == SP.L{cap, W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, SP.zero_ctr()} : SP.Lru}: 582 +e4 = BA.w64_eq(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), AR.slots(U32, mT), 4n, zw4(mT, pm), zw5(mT, pm)) 583 +ec = BA.ct5(ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 16n), ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 18n), ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 20n), ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 22n), ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 24n), W.zero(), W.zero(), W.zero(), W.zero(), W.zero(), BA.w64_eq_l(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 16n, 0, 0, zw16(mT, pm), zw17(mT, pm)), BA.w64_eq_l(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR 584 BA.lru_eq(~V, cap, W32.nth0(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 3n), W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), 4n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, Nil{}, ST.ctr(AR.slots(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0))), SP.zero_ctr(), zw3(mT, pm), e4, {==}, ec) 585 586 def pow2_gt(+k: Nat) -> {Nat.is_lt(k, SC.pow2(k)) == True{} : Bool}: 587 match k: 588 case 0n: 589 {==} 590 case 1n+p: 591 N.le_lt_trans(1n+p, SC.pow2(p), SC.pow2(1n+p), N.lt_succ_le_succ(p, SC.pow2(p), pow2_gt(p)), N.pow2_lt_succ(p)) 592 593 # THEOREM (purge): the specification's purge 594 def purge_sh(~V: Data, +cap: U32, +n: U32, +head: U32, +tail: U32, +free: U32, +mT: AR.Tree, +k: Nat, +sd: Nat, +tabT: AR.Tree, +ksT: AR.Tree, +eT: AR.Tree>, +lkT: AR.Tree, +sl: List<&2, Nat>, +fl: List<&2, Nat>, +hg: {ST.good(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl}) == True{} : Bool}, +one: Nat, +h1: {one == 1n : Nat}) -> RM.POK(~V, U32, SP.purge(~V, ST.model(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl})), LR.purge(&2, V, ST.real(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl}))): 595 +pm = ST.g_cpm(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg) 596 +g7 = UT.uget(5n, {==}, mT, pm, 7, {==}) 597 +ek = N.eq_from_is_eq(UD.v(W32.nth0(AR.slots(U32, mT), 7n)), k, ST.g_cbits(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 598 +hk = L.and_left(Nat.is_lt(k, 30n), Nat.is_lt(0n, k), ST.g_ck(~V, cap, n, head, tail, free, W32.nth0(AR.slots(U32, mT), 0n), W32.nth0(AR.slots(U32, mT), 1n), W32.nth0(AR.slots(U32, mT), 2n), W32.nth0(AR.slots(U32, mT), 6n), W32.nth0(AR.slots(U32, mT), 7n), AR.perfect(U32, 5n, mT), k, sd, tabT, AR.slots(String, ksT), AR.perfect(String, sd, ksT), eT, lkT, sl, fl, hg)) 599 +hb = L.subst(Nat, z => {Nat.is_lt(1n+z, WD.sc(32n, one)) == True{} : Bool}, k, UD.v(W32.nth0(AR.slots(U32, mT), 7n)), Equal.sym(Nat, UD.v(W32.nth0(AR.slots(U32, mT), 7n)), k, ek), N.le_lt_trans(1n+k, SC.pow2(k), WD.sc(32n, one), N.lt_succ_le_succ(k, SC.pow2(k), pow2_gt(k)), N.lt_le_trans(SC.pow2(k), SC.pow2(1n+k), WD.sc(32n, one), N.pow2_lt_succ(k), W32.pow_le32(one, h1, 1n+k, N.lt_trans(k, 30n, 31n, hk, {==}))))) 600 +eb = Equal.trans(Nat, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 1n+UD.v(W32.nth0(AR.slots(U32, mT), 7n)), 1n+k, W32.inc_val(one, h1, W32.nth0(AR.slots(U32, mT), 7n), hb), Equal.cong(Nat, Nat, z => 1n+z, UD.v(W32.nth0(AR.slots(U32, mT), 7n)), k, ek)) 601 +en = Equal.trans(Array, Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), Array.new(U32, 1n+k, 0), AR.thaw(U32, AR.trep(U32, 1n+k, 0)), Equal.cong(Nat, Array, z => Array.new(U32, z, 0), U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 1n+k, eb), AR.new(U32, 1n+k, 0)) 602 +E1 = Equal.cong(Array & U32, LR.LRU<&2, V> & U32, r => LR.purge_b(&2, V, cap, n, AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT), r), Array.get(U32, AR.thaw(U32, mT), 7), (AR.thaw(U32, mT), W32.nth0(AR.slots(U32, mT), 7n)), g7) 603 +E2 = Equal.cong(Array, LR.LRU<&2, V> & U32, z => (LR.F{cap, 0, 0, 0, 0, z, Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT)}, n), LR.zero_ctrs(AR.thaw(U32, mT)), AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), za(mT, pm)) 604 +E3 = Equal.cong(Array, LR.LRU<&2, V> & U32, z => (LR.F{cap, 0, 0, 0, 0, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), z, AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT)}, n), Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), AR.thaw(U32, AR.trep(U32, 1n+k, 0)), en) 605 +E = Equal.trans(LR.LRU<&2, V> & U32, LR.purge(&2, V, ST.real(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl})), (LR.F{cap, 0, 0, 0, 0, LR.zero_ctrs(AR.thaw(U32, mT)), Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT)}, n), (ST.real(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}), n), E1, Equal.trans(LR.LRU<&2, V> & U32, (LR.F{cap, 0, 0, 0, 0, LR.zero_ctrs(AR.thaw(U32, mT)), Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT)}, n), (LR.F{cap, 0, 0, 0, 0, AR.thaw(U32, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0)), Array.new(U32, U32.to_nat(U32.inc(W32.nth0(AR.slots(U32, mT), 7n))), 0), AR.thaw(String, ksT), AR.thaw(Maybe<&2, V>, eT), AR.thaw(U32, lkT)}, n), (ST.real(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}), n), E2, E3)) 606 +es = Equal.trans(SP.Lru & U32, SP.purge(~V, ST.model(~V, ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl})), (SP.L{cap, W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, SP.zero_ctr()}, n), (ST.model(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}), n), Equal.cong(U32, SP.Lru & U32, z => (SP.L{cap, W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, SP.zero_ctr()}, z), U32.from_nat(SP.length(~V, ST.es(~V, AR.slots(U32, lkT), AR.slots(String, ksT), AR.slots(Maybe<&2, V>, eT), sl))), n, RZ.n_len(~V, cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl, hg)), Equal.cong(SP.Lru, SP.Lru & U32, z => (z, n), SP.L{cap, W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, SP.zero_ctr()}, ST.model(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}), Equal.sym(SP.Lru, ST.model(~V, ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}), SP.L{cap, W32.nth0(AR.slots(U32, mT), 3n), ST.w64(AR.slots(U32, mT), 4n), Nil{}, SP.zero_ctr()}, model_z(~V, cap, n, head, 607 (ST.LS{cap, 0, 0, 0, 0, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, AR.upd(U32, 5n, mT, 0n, 0), 16n, 0), 17n, 0), 18n, 0), 19n, 0), 20n, 0), 21n, 0), 22n, 0), 23n, 0), 24n, 0), 25n, 0), k, sd, AR.trep(U32, 1n+k, 0), ksT, eT, lkT, Nil{}, Nil{}}, (n, (E, (es, good_z(~V, cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl, hg))))) 608 609 def purge_ok(~V: Data, +one: Nat, +h1: {one == 1n : Nat}, +sh: ST.Sh, +hg: {ST.good(~V, sh) == True{} : Bool}) -> RM.POK(~V, U32, SP.purge(~V, ST.model(~V, sh)), LR.purge(&2, V, ST.real(~V, sh))): 610 match sh: 611 case ST.LS{cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl}: 612 purge_sh(~V, cap, n, head, tail, free, mT, k, sd, tabT, ksT, eT, lkT, sl, fl, hg, one, h1)