code: func (c *Compressor) SerializeDictionary() ([]byte, error) {
  	if len(c.dict.H) > 0 {
  
  		// This reserves enough space in o to store the entire map
  		// with the worse case encoding. The worse case encoding is
  		// likely to be used for the map keys (because they are
  		// hashes) but not for the offset values which will in general
  		// be small.
  
  		buf := bytes.NewBuffer(make([]byte, 0,
  			len(c.dict.H)*2*binary.MaxVarintLen32))
  
  		for k, v := range c.dict.H {
  			if err := binary.Write(buf, binary.LittleEndian, k); err != nil {
  				return nil, err
  			}
  			if err := binary.Write(buf, binary.LittleEndian, v); err != nil {
  				return nil, err
  			}
  		}
  
  		return buf.Bytes(), nil
  	}
  
  	return []byte{}, nil
  }
docs: // SerializeDictionary turns H (the map part of the Dictionary) into a
  // []byte for easy storage in memcached or elsewhere.