cleaning/refactoring