Ongoing refactoring.