refactorA