code: def request_timeout(self, timeout):
          
          timeout = self._prepare_timeout(timeout)
          token = self._ctx_timeout.set(timeout)
          try:
              yield
          finally:
              self._ctx_timeout.reset(token)
docs: Context manager implements opportunity to change request timeout in current context
  
          :param timeout:
          :return: