code: func NewManufacturerSpecific(data []byte) (*ManufacturerSpecific, error) {
  	if len(data) != 6 {
  		return nil, fmt.Errorf("Failed to decode ManufacturerSpecific: Wrong length")
  	}
  
  	type aliasCmdManufacturerSpecific struct {
  		Manufacturer uint16
  		Type         uint16
  		ID           uint16
  	}
  
  	ms := &aliasCmdManufacturerSpecific{}
  
  	buf := bytes.NewReader(data)
  	err := binary.Read(buf, binary.BigEndian, ms)
  
  	ret := &ManufacturerSpecific{}
  
  	ret.Manufacturer = fmt.Sprintf("%04x", ms.Manufacturer)
  	ret.Type = fmt.Sprintf("%04x", ms.Type)
  	ret.ID = fmt.Sprintf("%04x", ms.ID)
  
  	return ret, err
  }
docs: // NewManufacturerSpecific decodes and returns a manufacureSpecific report.