code: func (i *IATA) MarshalBinary() ([]byte, error) {
  	// 4 bytes: IAID
  	// N bytes: options slice byte count
  	b := buffer.New(nil)
  
  	b.WriteBytes(i.IAID[:])
  	opts, err := i.Options.MarshalBinary()
  	if err != nil {
  		return nil, err
  	}
  	b.WriteBytes(opts)
  
  	return b.Data(), nil
  }
docs: // MarshalBinary allocates a byte slice containing the data from a IATA.