configuration refactoring