code: def recover(gzfile, last_good_position):
      # type: (gzip.GzipFile, int) -> gzip.GzipFile
      
      pos = get_recover_position(gzfile, last_good_position=last_good_position)
      if pos == -1:
          return None
      fp = gzfile.fileobj
      fp.seek(pos)
  #     gzfile.close()
      return gzip.GzipFile(fileobj=fp, mode='r')
docs: Skip to the next possibly decompressable part of a gzip file.
      Return a new GzipFile object if such part is found or None
      if it is not found.