refactoring control