code: func (z *Archive) MarshalMsg(b []byte) (o []byte, err error) {
  	o = msgp.Require(b, z.Msgsize())
  	// map header, size 5
  	// string "MetricDefinition"
  	o = append(o, 0x85, 0xb0, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e)
  	o, err = z.MetricDefinition.MarshalMsg(o)
  	if err != nil {
  		err = msgp.WrapError(err, "MetricDefinition")
  		return
  	}
  	// string "SchemaId"
  	o = append(o, 0xa8, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x49, 0x64)
  	o = msgp.AppendUint16(o, z.SchemaId)
  	// string "AggId"
  	o = append(o, 0xa5, 0x41, 0x67, 0x67, 0x49, 0x64)
  	o = msgp.AppendUint16(o, z.AggId)
  	// string "IrId"
  	o = append(o, 0xa4, 0x49, 0x72, 0x49, 0x64)
  	o = msgp.AppendUint16(o, z.IrId)
  	// string "LastSave"
  	o = append(o, 0xa8, 0x4c, 0x61, 0x73, 0x74, 0x53, 0x61, 0x76, 0x65)
  	o = msgp.AppendUint32(o, z.LastSave)
  	return
  }
docs: // MarshalMsg implements msgp.Marshaler