<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def set_max_relative_mod(self, max_mod, timeout=OTGW_DEFAULT_TIMEOUT):
 """ Override the maximum relative modulation from the thermostat. Valid values are 0 through 100. Clear the setting by specifying a non-numeric value. Return the newly accepted value, '-' if a previous value was cleared, or None on failure. This method is a coroutine """

        if isinstance(max_mod, int) and not 0 <= max_mod <= 100:
            return None
        cmd = OTGW_CMD_MAX_MOD
        status = {}
        ret = await self._wait_for_cmd(cmd, max_mod, timeout)
        if ret not in ['-', None]:
            ret = int(ret)
        if ret == '-':
            status[DATA_SLAVE_MAX_RELATIVE_MOD] = None
        else:
            status[DATA_SLAVE_MAX_RELATIVE_MOD] = ret
        self._update_status(status)
        return ret