code: def until(self, method, message=''):
          
          screen = None
          stacktrace = None
  
          end_time = time.time() + self._timeout
          while True:
              try:
                  value = method(self._driver)
                  if value:
                      return value
              except self._ignored_exceptions as exc:
                  screen = getattr(exc, 'screen', None)
                  stacktrace = getattr(exc, 'stacktrace', None)
              time.sleep(self._poll)
              if time.time() > end_time:
                  break
          raise TimeoutException(message, screen, stacktrace)
docs: Calls the method provided with the driver as an argument until the \
          return value does not evaluate to ``False``.
  
          :param method: callable(WebDriver)
          :param message: optional message for :exc:`TimeoutException`
          :returns: the result of the last call to `method`
          :raises: :exc:`selenium.common.exceptions.TimeoutException` if timeout occurs