Use visitor to render an object hierarchy