code: func (pb *ProtobufEncoder) Decode(subject string, data []byte, vPtr interface{}) error {
  	if _, ok := vPtr.(*interface{}); ok {
  		return nil
  	}
  	i, found := vPtr.(proto.Message)
  	if !found {
  		return ErrInvalidProtoMsgDecode
  	}
  
  	return proto.Unmarshal(data, i)
  }
docs: // Decode