def cr.vm.poly.go
import bend-osdev-crypto@0.1.0.0/vmac.bend as Vmacimport Base
import bend-osdev-word64@0.1.0.0/word64.bend as W
237# L2 over the NH values of the pieces ps, from y; an empty message is the
238# poly key itself
239def cr.vm.poly.go(+nk: List<&2, W.W64>, +k: CrU128, ps: List<&2, List<&2, U32>>, +y: CrU128) -> CrU128:
240 match ps:
241 case Nil{}:
242 y
243 case Con{p, t}:
244 cr.vm.poly.go(nk, k, t, cr.vm.reduce(cr.vm.add(cr.vm.mulmod(y, k), cr.vm.nh(nk, p))))