refactoring application