docs: def responsive(self, port=80, timeout=600):
  
          '''
              a method for waiting until web server on AWS instance has restarted
  
          :param port: integer with port number to check
          :param timeout: integer with number of seconds to continue to check
          :return: string with response code
          '''
  
          title = '%s.wait' % self.__class__.__name__
  
          from time import sleep
  
      # validate inputs
          input_fields = {
              'port': port,
              'timeout': timeout
          }
          for key, value in input_fields.items():
              object_title = '%s(%s=%s)' % (title, key, str(value))
              self.fields.validate(value, '.%s' % key, object_title)
  
      # construct parameters for request loop
          import requests
          waiting_msg = 'Waiting for http 200 response from %s' % self.instance_ip
          nonres_msg = 'Instance %s is not responding to requests at %s.' % ( self.instance_id, self.instance_ip)
          server_url = 'http://%s' % self.instance_ip
          if port:
              server_url += ':%s' % str(port)
  
      # initiate waiting loop
          self.ec2.iam.printer(waiting_msg, flush=True)
          t0 = timer()
          while True:
              t1 = timer()
              self.ec2.iam.printer('.', flush=True)
              try:
                  response = requests.get(server_url, timeout=2)
                  response_code = response.status_code
                  if response_code >= 200 and response_code < 300:
                      self.ec2.iam.printer(' done.')
                      return response_code
              except:
                  pass
              t2 = timer()
              if t2 - t0 > timeout:
                  timeout_msg = 'Timeout [%ss]: %s' % (timeout, nonres_msg)
                  raise TimeoutError(timeout_msg)
              response_time = t2 - t1
              if 3 - response_time > 0:
                  delay = 3 - response_time
              else:
                  delay = 0
              sleep(delay)