simplification & refactoring