Bgp route

Withdrawn Routes:

 This is a variable-length field that contains a list of IP
 address prefixes for the routes that are being withdrawn from
 service.  Each IP address prefix is encoded as a 2-tuple of the
 form <length, prefix>, whose fields are described below:

          +---------------------------+
          |   Length (1 octet)        |
          +---------------------------+
          |   Prefix (variable)       |
          +---------------------------+

a) Length:

The Length field indicates the length in bits of the IP
address prefix.  A length of zero indicates a prefix that
matches all IP addresses (with prefix, itself, of zero
octets).

b) Prefix:

The Prefix field contains an IP address prefix, followed by
the minimum number of trailing bits needed to make the end
of the field fall on an octet boundary.  Note that the value
of trailing bits is irrelevant.
object withdraw_route = {
    type this = struct {
        len: stream_pos,
        route_prefix: stream_data
    }
    instance idx : unbounded_sequence
    instance arr : array(idx,this)
}