How is refactoring done?