Use recursive deconstruction.