code: func (c *Codec) Decode(buffer []byte) (*Chunk, []byte) {
  	chk := &Chunk{}
  	for ordinal := 0; len(buffer) > 0; ordinal++ {
  		col := &column{}
  		buffer = c.decodeColumn(buffer, col, ordinal)
  		chk.columns = append(chk.columns, col)
  	}
  	return chk, buffer
  }
docs: // Decode decodes a Chunk from a byte slice, return the remained unused bytes.