code: func (r *Raw) Unmarshal(data []byte) error {
  	if len(data) == 0 {
  		r = nil
  		return nil
  	}
  	id := Raw(make([]byte, len(data)))
  	copy(id, data)
  	*r = id
  	return nil
  }
docs: // Unmarshal exists to fit gogoprotobuf custom type interface.