MACRO: weave ( n -- quot ) [ dup [ '[ _ _ mnswap ] ] with map ] keep '[ _ _ ncleave ] ;