configuration & refactoring