refactor tool