code: func (b *InterfaceAddressUpdateBody) DecodeFromBytes(data []byte, version uint8) error {
  	b.Index = binary.BigEndian.Uint32(data[:4])
  	b.Flags = INTERFACE_ADDRESS_FLAG(data[4])
  	family := data[5]
  	addrlen, err := addressByteLength(family)
  	if err != nil {
  		return err
  	}
  	b.Prefix = data[6 : 6+addrlen]
  	b.Length = data[6+addrlen]
  	b.Destination = data[7+addrlen : 7+addrlen*2]
  	return nil
  }
docs: //  Reference: zebra_interface_address_read function in lib/zclient.c of Quagga1.2.x (ZAPI4)
  //  Reference: zebra_interface_address_read function in lib/zclient.c of FRR3.x (ZAPI4)
  //  Reference: zebra_interface_address_read function in lib/zclient.c of FRR5.x (ZAPI5)