Worked some recursion and destructuring.