More object-oriented design