code refactoring 8