cleaning, refactoring