code: def _check_etag(self, etag):
      
      if etag is None:
        return
      elif self._etag is None:
        self._etag = etag
      elif self._etag != etag:
        raise ValueError('File on GCS has changed while reading.')
docs: Check if etag is the same across requests to GCS.
  
      If self._etag is None, set it. If etag is set, check that the new
      etag equals the old one.
  
      In the __init__ method, we fire one HEAD and one GET request using
      ndb tasklet. One of them would return first and set the first value.
  
      Args:
        etag: etag from a GCS HTTP response. None if etag is not part of the
          response header. It could be None for example in the case of GCS
          composite file.
  
      Raises:
        ValueError: if two etags are not equal.