more setting refactoring