: prunedtree ( initial quot1 quot2 -- seq ) [ [ dup ] compose ] [ [ keep ] curry ] bi* [ ] produce nip ; inline : 2with ( obj1 obj2 ignore quot -- ignore quot' ) with with ; inline : start-all ( subseq seq -- iseq ) 0 [ start* ] 2with [ 1+ ] prunedtree ;