code: def FetchDiscoveryDoc(discovery_url, retries=5):
      
      discovery_urls = _NormalizeDiscoveryUrls(discovery_url)
      discovery_doc = None
      last_exception = None
      for url in discovery_urls:
          for _ in range(retries):
              try:
                  content = _GetURLContent(url)
                  if isinstance(content, bytes):
                      content = content.decode('utf8')
                  discovery_doc = json.loads(content)
                  break
              except (urllib_error.HTTPError, urllib_error.URLError) as e:
                  logging.info(
                      'Attempting to fetch discovery doc again after "%s"', e)
                  last_exception = e
      if discovery_doc is None:
          raise CommunicationError(
              'Could not find discovery doc at any of %s: %s' % (
                  discovery_urls, last_exception))
      return discovery_doc
docs: Fetch the discovery document at the given url.