add settinglogic