refactoring goes on