code: func (i IPs) MarshalBinary() ([]byte, error) {
  	b := uio.NewBigEndianBuffer(make([]byte, 0, net.IPv4len*len(i)))
  	for _, ip := range i {
  		b.WriteBytes(ip.To4())
  	}
  	return b.Data(), nil
  }
docs: // MarshalBinary writes the list of IPs to binary.