refactoring #6