code: def wait_for_prompt(self, timeout_s=None):
      
      with self._cond:
        if self._prompt:
          if timeout_s is None:
            self._cond.wait(3600 * 24 * 365)
          else:
            self._cond.wait(timeout_s)
        if self._response is None:
          raise PromptUnansweredError
        return self._response
docs: Wait for the user to respond to the current prompt.
  
      Args:
        timeout_s: Seconds to wait before raising a PromptUnansweredError.
  
      Returns:
        A string response, or the empty string if text_input was False.
  
      Raises:
        PromptUnansweredError: Timed out waiting for the user to respond.