methods refactoring