code: func (m *MicroTime) Marshal() (data []byte, err error) {
  	if m == nil || m.Time.IsZero() {
  		return nil, nil
  	}
  	return m.ProtoMicroTime().Marshal()
  }
docs: // Marshal implements the protobuf marshalling interface.