Implement separation of concerns.