refactoring, part 2