code: func decompressBuffer(c *compress) ([]byte, error) {
  	// Verify the algorithm
  	if c.Algo != lzwAlgo {
  		return nil, fmt.Errorf("Cannot decompress unknown algorithm %d", c.Algo)
  	}
  
  	// Create a uncompressor
  	uncomp := lzw.NewReader(bytes.NewReader(c.Buf), lzw.LSB, lzwLitWidth)
  	defer uncomp.Close()
  
  	// Read all the data
  	var b bytes.Buffer
  	_, err := io.Copy(&b, uncomp)
  	if err != nil {
  		return nil, err
  	}
  
  	// Return the uncompressed bytes
  	return b.Bytes(), nil
  }
docs: // decompressBuffer is used to decompress the buffer of
  // a single compress message, handling multiple algorithms