add self-setting