code: func (z *Archive) MarshalMsg(b []byte) (o []byte, err error) {
  	o = msgp.Require(b, z.Msgsize())
  	// map header, size 4
  	// string "RowKey"
  	o = append(o, 0x84, 0xa6, 0x52, 0x6f, 0x77, 0x4b, 0x65, 0x79)
  	o = msgp.AppendString(o, z.RowKey)
  	// string "SecondsPerPoint"
  	o = append(o, 0xaf, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x50, 0x65, 0x72, 0x50, 0x6f, 0x69, 0x6e, 0x74)
  	o = msgp.AppendUint32(o, z.SecondsPerPoint)
  	// string "Points"
  	o = append(o, 0xa6, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73)
  	o = msgp.AppendUint32(o, z.Points)
  	// string "Chunks"
  	o = append(o, 0xa6, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x73)
  	o = msgp.AppendArrayHeader(o, uint32(len(z.Chunks)))
  	for za0001 := range z.Chunks {
  		o, err = z.Chunks[za0001].MarshalMsg(o)
  		if err != nil {
  			err = msgp.WrapError(err, "Chunks", za0001)
  			return
  		}
  	}
  	return
  }
docs: // MarshalMsg implements msgp.Marshaler