: compress-path' ( source assoc -- destination ) >cursor swap >>key (compress-path') value>> :: compress-path' ( source assoc -- destination ) [let| x [ ] y [ ] z [ ] | assoc >cursor x! x source >>key y! y (compress-path') z! z value>> ]