refactoring, cleanning