<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _WaitForStartup(self, deadline):
 """Waits for the emulator to start. Args: deadline: deadline in seconds Returns: True if the emulator responds within the deadline, False otherwise. """

    start = time.time()
    sleep = 0.05

    def Elapsed():
      return time.time() - start

    while True:
      try:
        response, _ = self._http.request(self._host)
        if response.status == 200:
          logging.info('emulator responded after %f seconds', Elapsed())
          return True
      except (socket.error, httplib.ResponseNotReady):
        pass
      if Elapsed() >= deadline:
        # Out of time; give up.
        return False
      else:
        time.sleep(sleep)
        sleep *= 2