part1 partial: surround-recursive complete