def cp.of
import bend-kit-zlib@0.5.1.0/zlib.bend as Zlibimport Base
import bend-kit-bytes@0.3.3.0/bytes.bend as Bytes
354# A match copies len bytes from d back in the output, one at a time, so it may overlap itself.
355# ponytail: byte-at-a-time copy; use Bytes.copy when d >= len if long matches dominate.
356def cp.of(+dep: U32, +n: U32, r: Array<U32> & U32) -> Out:
357 (a, +c) = r
358 Out{Bytes.poke(a, n, c), dep, (n + 1 : U32)}