add configuration mapping
+ refactor