code: func (z *Writer) Flush() error {
  	if debugFlag {
  		debug("flush with index %d", z.idx)
  	}
  	if z.idx == 0 {
  		return nil
  	}
  
  	if err := z.compressBlock(z.data[:z.idx]); err != nil {
  		return err
  	}
  	z.idx = 0
  	return nil
  }
docs: // Flush flushes any pending compressed data to the underlying writer.
  // Flush does not return until the data has been written.
  // If the underlying writer returns an error, Flush returns that error.