refactoring point