code: func acquireGzipReader(r io.Reader) (*gzip.Reader, error) {
  	v := gzipPool.Get()
  	if v == nil {
  		return gzip.NewReader(r)
  	}
  	zr := v.(*gzip.Reader)
  	if err := zr.Reset(r); err != nil {
  		return nil, err
  	}
  	return zr, nil
  }
docs: // acquireGzipReader retrieves a (possibly) pre-initialized gzip.Reader from
  // the package gzipPool (sync.Pool). This reduces memory allocation overhead by re-using
  // gzip.Readers