Refactored, no changes.