<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_from_config_setting_cascade(self, sec_param_list, default=None, warn_on_none_level=logging.WARN):
 """return the first non-None setting from a series where each element in `sec_param_list` is a section, param pair suitable for a get_config_setting call. Note that non-None values for overrides for this ConfigWrapper instance will cause this call to only evaluate the first element in the cascade. """

        for section, param in sec_param_list:
            r = self.get_config_setting(section, param, default=None, warn_on_none_level=None)
            if r is not None:
                return r
        section, param = sec_param_list[-1]
        if default is None:
            _warn_missing_setting(section, param, self._config_filename, warn_on_none_level)
        return default