#1 refactored config