recursion, all but last