refactoring by feedback