added refactorings