changed callback to live setting