Skip to content

Instantly share code, notes, and snippets.

@nickgian
Created May 25, 2021 22:29
Show Gist options
  • Save nickgian/469ac32f8b89a3baf6985e09bbb1b78e to your computer and use it in GitHub Desktop.
Save nickgian/469ac32f8b89a3baf6985e09bbb1b78e to your computer and use it in GitHub Desktop.
USCarrier with AS path tracking
(* models bgp, ospf, static routes, AS Path as set *)
type prefix = (int, int6) (* IP prefix; tuple of (address, length) *)
type ospfType = {ospfAd: int8; weight: int16; areaType:int2; areaId: int;}
type bgpType = {bgpAd: int8; lp: int; aslen: int; med:int; comms:set[int]; bgpAS: set[tnode];}
type rib = {
connected:option[int8]; (* Just track administrative distance *)
static:option[int8]; (* Just track administrative distance *)
ospf:option[ospfType];
bgp:option[bgpType];
selected:option[int2]; (* Which protocol has the best route *) }
type attribute = rib
(* Definitions for the "best" field *)
let p_CONNECTED = 0u2
let p_STATIC = 1u2
let p_OSPF = 2u2
let p_BGP = 3u2
(** Useful helper definitions **)
let ospfIntraArea = 0u2
let ospfInterArea = 1u2
let ospfE1 = 2u2
let ospfE2 = 3u2
(* Check if the selected protocol is x *)
let isProtocol fib x =
match fib with
| None -> false
| Some y -> x = y
let flipEdge e =
match e with | a~b -> toEdge b a
let getSourceNode e =
match e with | a~b -> a
let min x y = x <u8 y
(* Compute the better of x and y according to f *)
(* Return a boolean (true for x, false for y) for efficiency reasons *)
let pickOption f x y =
match (x,y) with
| (None, _) -> false | (_, None) -> true
| (Some a, Some b) -> f a b
let pickMinOption = pickOption min
(* OSPF Route ranking: first compare areas, then weights *)
let betterOspf o1 o2 =
if o1.areaType <u2 o2.areaType then true
else if o2.areaType <u2 o1.areaType then false
else if o1.weight <=u16 o2.weight then true else false
let mergeOption f x y =
match (x,y) with
| (None, _) -> y | (_, None) -> x
| (Some a, Some b) -> Some (f a b)
(* BGP Route ranking: first compare local pref, then path length, then MED.
If multipath is disabled then tie-break is arbitrary (normally, the router id should be used) *)
let betterBgp multiPath b1 b2 =
if b1.lp > b2.lp then b1
else if b2.lp > b1.lp then b2
else if b1.aslen < b2.aslen then b1
else if b2.aslen < b1.aslen then b2
else if b1.med < b2.med then b1
else if b1.med > b2.med then b2
else b1
(* Determine which of the four protocols has the best route by comparing their ADs *)
let best c s o b =
match (c,s,o,b) with
(* If no protocol has a route, then we have no route at all *)
| (None,None,None,None) -> None
| _ ->
(* Otherwise, get administrative distances for osfp and bgp... *)
let o = match o with | None -> None | Some o -> Some o.ospfAd in
let b = match b with | None -> None | Some b -> Some b.bgpAd in
(* ...and figure out which of the protocols has the lowest AD *)
let (x,p1) = if pickMinOption c s then (c,p_CONNECTED) else (s,p_STATIC) in
let (y,p2) = if pickMinOption o b then (o,p_OSPF) else (b,p_BGP) in
Some (if pickMinOption x y then p1 else p2)
(* Compute the best route for each protocol individually, then select the best one *)
let mergeValues bgpMultiPathEnabled x y =
let c = if (pickMinOption x.connected y.connected) then x.connected else y.connected in
let s = if (pickMinOption x.static y.static) then x.static else y.static in
let o = if (pickOption betterOspf x.ospf y.ospf) then x.ospf else y.ospf in
let b = mergeOption (betterBgp bgpMultiPathEnabled) x.bgp y.bgp in
{ connected = c;
static = s;
ospf = o;
bgp = b;
selected = best c s o b}
let merge node x y = mergeValues false x y
let init d node =
match node with
| 0n ->
if d = (10.0.0.92/31) || d = (10.0.0.234/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.188.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 1n ->
if d = (10.0.1.54/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.20.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 2n ->
if d = (10.0.0.212/31) || d = (10.0.0.210/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.150.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 3n ->
if d = (10.0.0.198/31) || d = (10.0.0.244/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.229.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 4n ->
if d = (10.0.0.254/31) || d = (10.0.1.140/31) || d = (10.0.1.88/31) || d = (10.0.1.144/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.6.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 5n ->
if d = (10.0.1.106/31) || d = (10.0.0.200/31) || d = (10.0.1.118/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.129.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 6n ->
if d = (10.0.0.56/31) || d = (10.0.0.54/31) || d = (10.0.0.52/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.194.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 7n ->
if d = (10.0.1.86/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.211.0/24) || d = (128.0.10.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 8n ->
if d = (10.0.0.22/31) || d = (10.0.0.194/31) || d = (10.0.0.192/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.227.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 9n ->
if d = (10.0.0.170/31) || d = (10.0.1.84/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.196.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 10n ->
if d = (10.0.0.238/31) || d = (10.0.0.136/31) || d = (10.0.0.240/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.130.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 11n ->
if d = (10.0.0.236/31) || d = (10.0.0.234/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.162.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 12n ->
if d = (10.0.1.56/31) || d = (10.0.1.54/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.254.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 13n ->
if d = (10.0.1.148/31) || d = (10.0.1.80/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.26.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 14n ->
if d = (10.0.0.74/31) || d = (10.0.0.116/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.154.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 15n ->
if d = (10.0.0.158/31) || d = (10.0.1.78/31) || d = (10.0.1.108/31) || d = (10.0.1.106/31) || d = (10.0.1.104/31) || d = (10.0.1.102/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.163.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 16n ->
if d = (10.0.1.28/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.189.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 17n ->
if d = (10.0.0.152/31) || d = (10.0.1.132/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.166.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 18n ->
if d = (10.0.0.72/31) || d = (10.0.0.70/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.161.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 19n ->
if d = (10.0.1.76/31) || d = (10.0.1.100/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.180.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 20n ->
if d = (10.0.1.38/31) || d = (10.0.1.48/31) || d = (10.0.1.32/31) || d = (10.0.1.64/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.164.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 21n ->
if d = (10.0.1.120/31) || d = (10.0.0.82/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.155.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 22n ->
if d = (10.0.0.206/31) || d = (10.0.0.208/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.222.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 23n ->
if d = (10.0.1.10/31) || d = (10.0.0.130/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.252.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 24n ->
if d = (10.0.0.190/31) || d = (10.0.0.188/31) || d = (10.0.0.186/31) || d = (10.0.0.36/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.192.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 25n ->
if d = (10.0.0.220/31) || d = (10.0.0.218/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.251.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 26n ->
if d = (10.0.0.174/31) || d = (10.0.0.40/31) || d = (10.0.0.176/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.14.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 27n ->
if d = (10.0.0.228/31) || d = (10.0.1.144/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.147.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 28n ->
if d = (10.0.0.70/31) || d = (10.0.0.196/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.153.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 29n ->
if d = (10.0.1.30/31) || d = (10.0.0.120/31) || d = (10.0.0.148/31) || d = (10.0.0.240/31) || d = (10.0.1.32/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.242.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 30n ->
if d = (10.0.0.46/31) || d = (10.0.0.52/31) || d = (10.0.0.50/31) || d = (10.0.0.48/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.183.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 31n ->
if d = (10.0.1.46/31) || d = (10.0.1.44/31) || d = (10.0.0.208/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.35.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 32n ->
if d = (10.0.0.42/31) || d = (10.0.1.72/31) || d = (10.0.1.70/31) || d = (10.0.0.50/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.185.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 33n ->
if d = (10.0.1.8/31) || d = (10.0.0.230/31) || d = (10.0.1.116/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.8.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 34n ->
if d = (10.0.1.126/31) || d = (10.0.0.114/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.29.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 35n ->
if d = (10.0.0.78/31) || d = (10.0.0.88/31) || d = (10.0.0.86/31) || d = (10.0.0.84/31) || d = (10.0.0.82/31) || d = (10.0.0.80/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.209.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 36n ->
if d = (10.0.1.136/31) || d = (10.0.1.34/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.1.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 37n ->
if d = (10.0.0.252/31) || d = (10.0.1.66/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.198.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 38n ->
if d = (10.0.1.138/31) || d = (10.0.1.152/31) || d = (10.0.0.194/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.43.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 39n ->
if d = (10.0.0.12/31) || d = (10.0.0.88/31) || d = (10.0.1.34/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.201.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 40n ->
if d = (10.0.1.10/31) || d = (10.0.0.144/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.144.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 41n ->
if d = (10.0.1.92/31) || d = (10.0.1.90/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.210.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 42n ->
if d = (10.0.1.42/31) || d = (10.0.1.40/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.31.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 43n ->
if d = (10.0.1.142/31) || d = (10.0.0.2/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.193.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 44n ->
if d = (10.0.0.232/31) || d = (10.0.1.18/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.151.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 45n ->
if d = (10.0.1.108/31) || d = (10.0.1.148/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.255.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 46n ->
if d = (10.0.0.214/31) || d = (10.0.1.4/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.244.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 47n ->
if d = (10.0.1.22/31) || d = (10.0.1.20/31) || d = (10.0.0.100/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.234.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 48n ->
if d = (10.0.1.44/31) || d = (10.0.0.58/31) || d = (10.0.0.68/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.186.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 49n ->
if d = (10.0.1.62/31) || d = (10.0.0.224/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.27.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 50n ->
if d = (10.0.1.126/31) || d = (10.0.1.86/31) || d = (10.0.0.226/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.182.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 51n ->
if d = (10.0.0.94/31) || d = (10.0.0.92/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.141.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 52n ->
if d = (10.0.0.188/31) || d = (10.0.0.250/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.133.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 53n ->
if d = (10.0.0.174/31) || d = (10.0.1.38/31) || d = (10.0.1.36/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.174.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 54n ->
if d = (10.0.0.86/31) || d = (10.0.0.164/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.131.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 55n ->
if d = (10.0.0.12/31) || d = (10.0.0.10/31) || d = (10.0.0.8/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.170.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 56n ->
if d = (10.0.0.10/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.228.0/24) || d = (128.0.0.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 57n ->
if d = (10.0.0.210/31) || d = (10.0.1.82/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.156.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 58n ->
if d = (10.0.0.68/31) || d = (10.0.0.66/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.230.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 59n ->
if d = (10.0.1.26/31) || d = (10.0.1.0/31) || d = (10.0.1.16/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.159.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 60n ->
if d = (10.0.0.168/31) || d = (10.0.1.146/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.217.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 61n ->
if d = (10.0.0.206/31) || d = (10.0.0.182/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.128.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 62n ->
if d = (10.0.0.138/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.221.0/24) || d = (128.0.11.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 63n ->
if d = (10.0.0.204/31) || d = (10.0.1.152/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.206.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 64n ->
if d = (10.0.1.40/31) || d = (10.0.0.8/31) || d = (10.0.0.212/31) || d = (10.0.0.66/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.149.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 65n ->
if d = (10.0.0.76/31) || d = (10.0.0.74/31) || d = (10.0.0.34/31) || d = (10.0.0.64/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.172.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 66n ->
if d = (10.0.0.62/31) || d = (10.0.0.76/31) || d = (10.0.1.128/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.181.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 67n ->
if d = (10.0.1.62/31) || d = (10.0.0.112/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.21.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 68n ->
if d = (10.0.0.26/31) || d = (10.0.1.102/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.7.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 69n ->
if d = (10.0.0.110/31) || d = (10.0.0.108/31) || d = (10.0.0.114/31) || d = (10.0.0.112/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.5.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 70n ->
if d = (10.0.0.204/31) || d = (10.0.0.202/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.203.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 71n ->
if d = (10.0.0.98/31) || d = (10.0.0.96/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.10.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 72n ->
if d = (10.0.0.54/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.15.0/24) || d = (200.4.240.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 73n ->
if d = (10.0.1.14/31) || d = (10.0.1.16/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.152.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 74n ->
if d = (10.0.1.48/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.4.0/24) || d = (200.4.134.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 75n ->
if d = (10.0.0.126/31) || d = (10.0.0.132/31) || d = (10.0.0.130/31) || d = (10.0.0.128/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.4.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 76n ->
if d = (10.0.0.30/31) || d = (10.0.0.28/31) || d = (10.0.0.26/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.243.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 77n ->
if d = (10.0.1.50/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.0.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 78n ->
if d = (10.0.0.90/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.178.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 79n ->
if d = (10.0.1.116/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.213.0/24) || d = (128.0.2.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 80n ->
if d = (10.0.0.222/31) || d = (10.0.0.202/31) || d = (10.0.1.24/31) || d = (10.0.1.52/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.179.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 81n ->
if d = (10.0.0.236/31) || d = (10.0.1.136/31) || d = (10.0.0.38/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.233.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 82n ->
if d = (10.0.0.44/31) || d = (10.0.0.106/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.249.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 83n ->
if d = (10.0.1.92/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.218.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 84n ->
if d = (10.0.0.104/31) || d = (10.0.0.102/31) || d = (10.0.0.100/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.3.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 85n ->
if d = (10.0.0.216/31) || d = (10.0.1.84/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.30.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 86n ->
if d = (10.0.1.60/31) || d = (10.0.1.80/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.145.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 87n ->
if d = (10.0.0.124/31) || d = (10.0.0.122/31) || d = (10.0.0.120/31) || d = (10.0.0.118/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.19.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 88n ->
if d = (10.0.1.66/31) || d = (10.0.1.96/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.175.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 89n ->
if d = (10.0.1.14/31) || d = (10.0.0.4/31) || d = (10.0.0.116/31) || d = (10.0.1.128/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.199.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 90n ->
if d = (10.0.1.12/31) || d = (10.0.0.6/31) || d = (10.0.0.32/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.33.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 91n ->
if d = (10.0.0.34/31) || d = (10.0.0.32/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.200.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 92n ->
if d = (10.0.0.108/31) || d = (10.0.0.154/31) || d = (10.0.1.132/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.212.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 93n ->
if d = (10.0.0.110/31) || d = (10.0.1.114/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.40.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 94n ->
if d = (10.0.0.232/31) || d = (10.0.0.230/31) || d = (10.0.0.228/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.132.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 95n ->
if d = (10.0.0.58/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.184.0/24) || d = (128.0.8.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 96n ->
if d = (10.0.0.56/31) || d = (10.0.1.72/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.195.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 97n ->
if d = (10.0.1.114/31) || d = (10.0.0.176/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.215.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 98n ->
if d = (10.0.1.120/31) || d = (10.0.0.118/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.253.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 99n ->
if d = (10.0.0.254/31) || d = (10.0.0.252/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.176.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 100n ->
if d = (10.0.1.28/31) || d = (10.0.1.68/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.127.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 101n ->
if d = (10.0.0.172/31) || d = (10.0.0.196/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.25.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 102n ->
if d = (10.0.1.124/31) || d = (10.0.0.246/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.177.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 103n ->
if d = (10.0.1.42/31) || d = (10.0.1.150/31) || d = (10.0.1.146/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.223.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 104n ->
if d = (10.0.0.220/31) || d = (10.0.1.122/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.165.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 105n ->
if d = (10.0.0.248/31) || d = (10.0.1.36/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.171.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 106n ->
if d = (10.0.0.24/31) || d = (10.0.0.150/31) || d = (10.0.0.148/31) || d = (10.0.0.146/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.28.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 107n ->
if d = (10.0.0.142/31) || d = (10.0.0.14/31) || d = (10.0.0.140/31) || d = (10.0.0.124/31) || d = (10.0.0.144/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.38.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 108n ->
if d = (10.0.0.156/31) || d = (10.0.0.154/31) || d = (10.0.0.152/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.22.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 109n ->
if d = (10.0.1.74/31) || d = (10.0.1.4/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.11.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 110n ->
if d = (10.0.1.30/31) || d = (10.0.0.122/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.202.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 111n ->
if d = (10.0.0.62/31) || d = (10.0.0.60/31) || d = (10.0.0.64/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.137.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 112n ->
if d = (10.0.0.106/31) || d = (10.0.1.70/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.216.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 113n ->
if d = (10.0.0.242/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.6.0/24) || d = (200.4.239.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 114n ->
if d = (10.0.1.58/31) || d = (10.0.1.104/31) || d = (10.0.1.118/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.226.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 115n ->
if d = (10.0.1.60/31) || d = (10.0.1.58/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.17.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 116n ->
if d = (10.0.0.158/31) || d = (10.0.0.160/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.142.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 117n ->
if d = (10.0.0.126/31) || d = (10.0.0.140/31) || d = (10.0.0.184/31) || d = (10.0.0.182/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.187.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 118n ->
if d = (10.0.1.8/31) || d = (10.0.0.102/31) || d = (10.0.1.6/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.13.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 119n ->
if d = (10.0.1.0/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.5.0/24) || d = (200.4.173.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 120n ->
if d = (10.0.0.38/31) || d = (10.0.0.36/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.169.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 121n ->
if d = (10.0.0.138/31) || d = (10.0.0.136/31) || d = (10.0.0.134/31) || d = (10.0.0.98/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.2.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 122n ->
if d = (10.0.0.222/31) || d = (10.0.0.226/31) || d = (10.0.0.224/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.205.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 123n ->
if d = (10.0.0.186/31) || d = (10.0.1.100/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.139.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 124n ->
if d = (10.0.0.248/31) || d = (10.0.0.246/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.126.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 125n ->
if d = (10.0.1.150/31) || d = (10.0.0.180/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.143.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 126n ->
if d = (10.0.1.94/31) || d = (10.0.1.90/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.157.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 127n ->
if d = (10.0.0.168/31) || d = (10.0.0.166/31) || d = (10.0.0.164/31) || d = (10.0.0.162/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.225.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 128n ->
if d = (10.0.0.24/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.190.0/24) || d = (128.0.12.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 129n ->
if d = (10.0.0.200/31) || d = (10.0.0.198/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.207.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 130n ->
if d = (10.0.1.68/31) || d = (10.0.0.80/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.245.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 131n ->
if d = (10.0.1.46/31) || d = (10.0.1.98/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.9.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 132n ->
if d = (10.0.1.18/31) || d = (10.0.1.96/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.16.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 133n ->
if d = (10.0.0.78/31) || d = (10.0.0.166/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.167.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 134n ->
if d = (10.0.1.142/31) || d = (10.0.1.134/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.148.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 135n ->
if d = (10.0.0.60/31) || d = (10.0.0.218/31) || d = (10.0.0.18/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.32.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 136n ->
if d = (10.0.0.172/31) || d = (10.0.0.170/31) || d = (10.0.0.20/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.39.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 137n ->
if d = (10.0.1.74/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.224.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 138n ->
if d = (10.0.0.190/31) || d = (10.0.1.76/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.146.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 139n ->
if d = (10.0.0.30/31) || d = (10.0.0.134/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.232.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 140n ->
if d = (10.0.0.238/31) || d = (10.0.0.28/31) || d = (10.0.1.124/31) || d = (10.0.0.160/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.220.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 141n ->
if d = (10.0.0.16/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.3.0/24) || d = (200.4.250.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 142n ->
if d = (10.0.0.94/31) || d = (10.0.0.184/31) || d = (10.0.0.16/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.136.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 143n ->
if d = (10.0.1.140/31) || d = (10.0.1.130/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.158.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 144n ->
if d = (10.0.1.56/31) || d = (10.0.0.0/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.41.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 145n ->
if d = (10.0.1.20/31) || d = (10.0.1.112/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.214.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 146n ->
if d = (10.0.0.142/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.14.0/24) || d = (200.5.12.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 147n ->
if d = (10.0.0.14/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.13.0/24) || d = (200.5.42.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 148n ->
if d = (10.0.1.52/31) || d = (10.0.1.50/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.231.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 149n ->
if d = (10.0.0.250/31) || d = (10.0.1.98/31) || d = (10.0.0.242/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.138.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 150n ->
if d = (10.0.1.22/31) || d = (10.0.1.112/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.23.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 151n ->
if d = (10.0.0.46/31) || d = (10.0.1.2/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.18.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 152n ->
if d = (10.0.1.138/31) || d = (10.0.0.192/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.236.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 153n ->
if d = (10.0.0.20/31) || d = (10.0.0.18/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.238.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 154n ->
if d = (10.0.0.90/31) || d = (10.0.1.2/31) || d = (10.0.1.64/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.235.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 155n ->
if d = (10.0.0.6/31) || d = (10.0.0.4/31) || d = (10.0.0.2/31) || d = (10.0.0.0/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.135.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 156n ->
if d = (10.0.0.48/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.168.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 157n ->
if d = (10.0.0.146/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.15.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 158n ->
if d = (10.0.0.128/31) || d = (10.0.0.96/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.237.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 159n ->
if d = (10.0.0.178/31) || d = (10.0.0.162/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.246.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 160n ->
if d = (10.0.1.26/31) || d = (10.0.1.24/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.191.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 161n ->
if d = (10.0.0.216/31) || d = (10.0.0.214/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.197.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 162n ->
if d = (10.0.1.88/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.1.0/24) || d = (200.4.248.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 163n ->
if d = (10.0.1.78/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.208.0/24) || d = (128.0.7.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 164n ->
if d = (10.0.1.122/31) || d = (10.0.0.72/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.36.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 165n ->
if d = (10.0.1.110/31) || d = (10.0.0.156/31) || d = (10.0.0.244/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.219.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 166n ->
if d = (10.0.1.94/31) || d = (10.0.1.82/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.37.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 167n ->
if d = (10.0.0.22/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (128.0.9.0/24) || d = (200.4.247.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 168n ->
if d = (10.0.1.110/31) || d = (10.0.1.12/31) || d = (10.0.1.134/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.24.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 169n ->
if d = (10.0.0.150/31) || d = (10.0.0.132/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.140.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 170n ->
if d = (10.0.0.104/31) || d = (10.0.0.84/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.5.34.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 171n ->
if d = (10.0.1.6/31) || d = (10.0.1.130/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.204.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 172n ->
if d = (10.0.0.44/31) || d = (10.0.0.42/31) || d = (10.0.0.40/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.160.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| 173n ->
if d = (10.0.0.180/31) || d = (10.0.0.178/31) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = None in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else if d = (200.4.241.0/24) then
let c = Some 0u8 in
let s = None in
let o = None in
let b = Some {bgpAd=20u8; lp=100; aslen=0; med=80; comms={}; bgpAS={}} in
let fib = best c s o b in
{connected=c; static=s; ospf=o; bgp=b; selected=fib;}
else {connected=None; static=None; ospf=None; bgp=None; selected=None;}
| _ -> {connected=None; static=None; ospf=None; bgp=None; selected=None;}
let transferOspf edge o =
match o with
| None -> None
| Some o -> (
match edge with
| _ -> None)
let transferBgp d e x0 =
let (prefix, prefixLen) = d in
let prot = x0.selected in
match e with
| (0~11) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.188.0) && (prefix < 200.4.189.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553609:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (0~51) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.188.0) && (prefix < 200.4.189.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 100; comms= b.comms[6553600:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 100; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (1~12) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.20.0) && (prefix < 200.5.21.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (2~57) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.150.0) && (prefix < 200.4.151.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (2~64) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.150.0) && (prefix < 200.4.151.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (3~129) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.229.0) && (prefix < 200.4.230.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (3~165) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.229.0) && (prefix < 200.4.230.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (4~27) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.6.0) && (prefix < 200.5.7.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 2; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 2; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (4~162) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.6.0) && (prefix < 200.5.7.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (4~143) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.6.0) && (prefix < 200.5.7.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (4~99) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.6.0) && (prefix < 200.5.7.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (5~129) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.129.0) && (prefix < 200.4.130.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (5~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.129.0) && (prefix < 200.4.130.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (5~114) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.129.0) && (prefix < 200.4.130.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (6~30) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.194.0) && (prefix < 200.4.195.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.15.0) && (prefix < 128.0.16.0))) then
(Some {b with lp= 101; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (6~96) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.194.0) && (prefix < 200.4.195.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.15.0) && (prefix < 128.0.16.0))) then
(Some {b with lp= 2; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (6~72) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.194.0) && (prefix < 200.4.195.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (7~50) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.211.0) && (prefix < 200.4.212.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })))
| (8~167) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.227.0) && (prefix < 200.4.228.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (8~152) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.227.0) && (prefix < 200.4.228.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.9.0) && (prefix < 128.0.10.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (8~38) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.227.0) && (prefix < 200.4.228.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.9.0) && (prefix < 128.0.10.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (9~85) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.196.0) && (prefix < 200.4.197.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (9~136) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.196.0) && (prefix < 200.4.197.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (10~29) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.130.0) && (prefix < 200.4.131.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 2; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553609:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (10~140) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.130.0) && (prefix < 200.4.131.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (10~121) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.130.0) && (prefix < 200.4.131.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (11~81) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.162.0) && (prefix < 200.4.163.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (11~0) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.162.0) && (prefix < 200.4.163.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553602:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (12~144) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.254.0) && (prefix < 200.4.255.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (12~1) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.254.0) && (prefix < 200.4.255.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (13~86) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.26.0) && (prefix < 200.5.27.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (13~45) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.26.0) && (prefix < 200.5.27.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (14~89) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.154.0) && (prefix < 200.4.155.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (14~65) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.154.0) && (prefix < 200.4.155.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (15~163) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (15~114) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.7.0) && (prefix < 128.0.8.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (15~5) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.7.0) && (prefix < 128.0.8.0))) then
(Some {b with lp= 1; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (15~45) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (15~68) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (15~116) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.163.0) && (prefix < 200.4.164.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (16~100) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.189.0) && (prefix < 200.4.190.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (17~108) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.166.0) && (prefix < 200.4.167.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (17~92) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.166.0) && (prefix < 200.4.167.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (18~28) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.161.0) && (prefix < 200.4.162.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (18~164) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.161.0) && (prefix < 200.4.162.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (19~123) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.180.0) && (prefix < 200.4.181.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (19~138) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.180.0) && (prefix < 200.4.181.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (20~154) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.164.0) && (prefix < 200.4.165.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (20~29) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.164.0) && (prefix < 200.4.165.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553601:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (20~53) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.164.0) && (prefix < 200.4.165.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (20~74) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.164.0) && (prefix < 200.4.165.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (21~98) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.155.0) && (prefix < 200.4.156.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (21~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.155.0) && (prefix < 200.4.156.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (22~31) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.222.0) && (prefix < 200.4.223.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553603:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (22~61) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.222.0) && (prefix < 200.4.223.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (23~75) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.252.0) && (prefix < 200.4.253.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553601:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (23~40) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.252.0) && (prefix < 200.4.253.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 2; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (24~52) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.192.0) && (prefix < 200.4.193.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (24~138) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.192.0) && (prefix < 200.4.193.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (24~123) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.192.0) && (prefix < 200.4.193.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (24~120) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.192.0) && (prefix < 200.4.193.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (25~104) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.251.0) && (prefix < 200.4.252.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (25~135) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.251.0) && (prefix < 200.4.252.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (26~53) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.14.0) && (prefix < 200.5.15.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (26~172) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.14.0) && (prefix < 200.5.15.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (26~97) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.14.0) && (prefix < 200.5.15.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (27~4) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.147.0) && (prefix < 200.4.148.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (27~94) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.147.0) && (prefix < 200.4.148.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (28~18) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.153.0) && (prefix < 200.4.154.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (28~101) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.153.0) && (prefix < 200.4.154.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (29~10) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.242.0) && (prefix < 200.4.243.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (29~87) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.242.0) && (prefix < 200.4.243.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (29~106) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.242.0) && (prefix < 200.4.243.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (29~110) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.242.0) && (prefix < 200.4.243.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (29~20) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.242.0) && (prefix < 200.4.243.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (30~156) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.183.0) && (prefix < 200.4.184.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (30~6) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.183.0) && (prefix < 200.4.184.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (30~32) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.183.0) && (prefix < 200.4.184.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.15.0) && (prefix < 128.0.16.0))) then
(Some {b with lp= 101; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (30~151) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.183.0) && (prefix < 200.4.184.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (31~48) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.35.0) && (prefix < 200.5.36.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (31~22) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.35.0) && (prefix < 200.5.36.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (31~131) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.35.0) && (prefix < 200.5.36.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 100; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 100; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (32~30) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.185.0) && (prefix < 200.4.186.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (32~96) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.185.0) && (prefix < 200.4.186.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.15.0) && (prefix < 128.0.16.0))) then
(Some {b with lp= 1; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (32~112) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.185.0) && (prefix < 200.4.186.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (32~172) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.185.0) && (prefix < 200.4.186.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (33~79) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.8.0) && (prefix < 200.5.9.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (33~118) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.8.0) && (prefix < 200.5.9.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (33~94) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.8.0) && (prefix < 200.5.9.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 101; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 2; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (34~50) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.29.0) && (prefix < 200.5.30.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (34~69) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.29.0) && (prefix < 200.5.30.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~130) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~39) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~170) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~21) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~54) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (35~133) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.209.0) && (prefix < 200.4.210.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (36~81) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.1.0) && (prefix < 200.5.2.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (36~39) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.1.0) && (prefix < 200.5.2.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (37~99) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.198.0) && (prefix < 200.4.199.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (37~88) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.198.0) && (prefix < 200.4.199.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (38~63) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.43.0) && (prefix < 200.5.44.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (38~152) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.43.0) && (prefix < 200.5.44.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.9.0) && (prefix < 128.0.10.0))) then
(Some {b with lp= 1; comms= b.comms[6553601:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (38~8) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.43.0) && (prefix < 200.5.44.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (39~36) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.201.0) && (prefix < 200.4.202.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (39~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.201.0) && (prefix < 200.4.202.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (39~55) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.201.0) && (prefix < 200.4.202.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (40~107) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.144.0) && (prefix < 200.4.145.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (40~23) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.144.0) && (prefix < 200.4.145.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (41~126) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.210.0) && (prefix < 200.4.211.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (41~83) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.210.0) && (prefix < 200.4.211.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (42~64) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.31.0) && (prefix < 200.5.32.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (42~103) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.31.0) && (prefix < 200.5.32.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (43~134) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.193.0) && (prefix < 200.4.194.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (43~155) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.193.0) && (prefix < 200.4.194.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (44~94) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.151.0) && (prefix < 200.4.152.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (44~132) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.151.0) && (prefix < 200.4.152.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (45~13) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.255.0) && (prefix < 200.5.0.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (45~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.255.0) && (prefix < 200.5.0.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (46~109) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.244.0) && (prefix < 200.4.245.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (46~161) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.244.0) && (prefix < 200.4.245.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (47~145) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.234.0) && (prefix < 200.4.235.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (47~84) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.234.0) && (prefix < 200.4.235.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (47~150) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.234.0) && (prefix < 200.4.235.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (48~31) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.186.0) && (prefix < 200.4.187.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (48~95) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.186.0) && (prefix < 200.4.187.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (48~58) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.186.0) && (prefix < 200.4.187.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (49~67) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.27.0) && (prefix < 200.5.28.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (49~122) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.27.0) && (prefix < 200.5.28.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 2; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (50~122) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.182.0) && (prefix < 200.4.183.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 3; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (50~34) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.182.0) && (prefix < 200.4.183.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (50~7) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.182.0) && (prefix < 200.4.183.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (51~142) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.141.0) && (prefix < 200.4.142.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (51~0) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.141.0) && (prefix < 200.4.142.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (52~24) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.133.0) && (prefix < 200.4.134.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (52~149) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.133.0) && (prefix < 200.4.134.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (53~20) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.174.0) && (prefix < 200.4.175.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (53~105) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.174.0) && (prefix < 200.4.175.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (53~26) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.174.0) && (prefix < 200.4.175.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (54~127) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.131.0) && (prefix < 200.4.132.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (54~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.131.0) && (prefix < 200.4.132.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (55~64) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.170.0) && (prefix < 200.4.171.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (55~56) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.170.0) && (prefix < 200.4.171.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (55~39) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.170.0) && (prefix < 200.4.171.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (56~55) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.228.0) && (prefix < 200.4.229.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553600:= true]; })))
| (57~2) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.156.0) && (prefix < 200.4.157.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (57~166) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.156.0) && (prefix < 200.4.157.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (58~48) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.230.0) && (prefix < 200.4.231.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (58~64) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.230.0) && (prefix < 200.4.231.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (59~119) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.159.0) && (prefix < 200.4.160.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (59~160) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.159.0) && (prefix < 200.4.160.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (59~73) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.159.0) && (prefix < 200.4.160.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (60~127) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.217.0) && (prefix < 200.4.218.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553600:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (60~103) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.217.0) && (prefix < 200.4.218.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (61~22) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.128.0) && (prefix < 200.4.129.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (61~117) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.128.0) && (prefix < 200.4.129.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (62~121) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.221.0) && (prefix < 200.4.222.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })))
| (63~70) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.206.0) && (prefix < 200.4.207.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (63~38) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.206.0) && (prefix < 200.4.207.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (64~2) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.149.0) && (prefix < 200.4.150.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (64~58) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.149.0) && (prefix < 200.4.150.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (64~55) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.149.0) && (prefix < 200.4.150.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (64~42) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.149.0) && (prefix < 200.4.150.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553600:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (65~91) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.172.0) && (prefix < 200.4.173.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (65~14) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.172.0) && (prefix < 200.4.173.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (65~66) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.172.0) && (prefix < 200.4.173.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (65~111) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.172.0) && (prefix < 200.4.173.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (66~65) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.181.0) && (prefix < 200.4.182.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (66~111) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.181.0) && (prefix < 200.4.182.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (66~89) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.181.0) && (prefix < 200.4.182.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (67~49) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.21.0) && (prefix < 200.5.22.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553603:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 101; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (67~69) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.21.0) && (prefix < 200.5.22.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (68~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.7.0) && (prefix < 200.5.8.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (68~76) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.7.0) && (prefix < 200.5.8.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (69~93) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.5.0) && (prefix < 200.5.6.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (69~92) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.5.0) && (prefix < 200.5.6.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (69~67) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.5.0) && (prefix < 200.5.6.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.10.0) && (prefix < 128.0.11.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (69~34) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.5.0) && (prefix < 200.5.6.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (70~63) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.203.0) && (prefix < 200.4.204.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (70~80) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.203.0) && (prefix < 200.4.204.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (71~158) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.10.0) && (prefix < 200.5.11.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (71~121) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.10.0) && (prefix < 200.5.11.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (72~6) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.240.0) && (prefix < 200.4.241.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.15.0) && (prefix < 128.0.16.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })))
| (73~59) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.152.0) && (prefix < 200.4.153.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (73~89) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.152.0) && (prefix < 200.4.153.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (74~20) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.134.0) && (prefix < 200.4.135.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553604:= true]; })))
| (75~158) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.4.0) && (prefix < 200.5.5.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (75~169) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.4.0) && (prefix < 200.5.5.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (75~23) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.4.0) && (prefix < 200.5.5.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 1; comms= b.comms[6553602:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (75~117) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.4.0) && (prefix < 200.5.5.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (76~140) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.243.0) && (prefix < 200.4.244.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (76~139) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.243.0) && (prefix < 200.4.244.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (76~68) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.243.0) && (prefix < 200.4.244.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (77~148) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.0.0) && (prefix < 200.5.1.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (78~154) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.178.0) && (prefix < 200.4.179.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (79~33) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.213.0) && (prefix < 200.4.214.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553602:= true]; })))
| (80~70) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.179.0) && (prefix < 200.4.180.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (80~160) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.179.0) && (prefix < 200.4.180.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (80~122) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.179.0) && (prefix < 200.4.180.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (80~148) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.179.0) && (prefix < 200.4.180.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (81~36) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.233.0) && (prefix < 200.4.234.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (81~120) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.233.0) && (prefix < 200.4.234.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (81~11) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.233.0) && (prefix < 200.4.234.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (82~112) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.249.0) && (prefix < 200.4.250.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (82~172) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.249.0) && (prefix < 200.4.250.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (83~41) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.218.0) && (prefix < 200.4.219.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (84~47) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.3.0) && (prefix < 200.5.4.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (84~170) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.3.0) && (prefix < 200.5.4.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (84~118) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.3.0) && (prefix < 200.5.4.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (85~9) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.30.0) && (prefix < 200.5.31.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (85~161) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.30.0) && (prefix < 200.5.31.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (86~115) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.145.0) && (prefix < 200.4.146.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (86~13) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.145.0) && (prefix < 200.4.146.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (87~110) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.19.0) && (prefix < 200.5.20.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (87~29) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.19.0) && (prefix < 200.5.20.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (87~98) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.19.0) && (prefix < 200.5.20.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (87~107) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.19.0) && (prefix < 200.5.20.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (88~132) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.175.0) && (prefix < 200.4.176.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (88~37) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.175.0) && (prefix < 200.4.176.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (89~73) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.199.0) && (prefix < 200.4.200.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (89~66) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.199.0) && (prefix < 200.4.200.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (89~14) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.199.0) && (prefix < 200.4.200.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (89~155) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.199.0) && (prefix < 200.4.200.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (90~168) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.33.0) && (prefix < 200.5.34.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553601:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (90~155) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.33.0) && (prefix < 200.5.34.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (90~91) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.33.0) && (prefix < 200.5.34.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (91~90) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.200.0) && (prefix < 200.4.201.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (91~65) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.200.0) && (prefix < 200.4.201.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (92~69) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.212.0) && (prefix < 200.4.213.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (92~17) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.212.0) && (prefix < 200.4.213.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (92~108) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.212.0) && (prefix < 200.4.213.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (93~97) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.40.0) && (prefix < 200.5.41.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (93~69) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.40.0) && (prefix < 200.5.41.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (94~44) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.132.0) && (prefix < 200.4.133.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (94~33) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.132.0) && (prefix < 200.4.133.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (94~27) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.132.0) && (prefix < 200.4.133.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (95~48) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.184.0) && (prefix < 200.4.185.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })))
| (96~6) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.195.0) && (prefix < 200.4.196.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (96~32) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.195.0) && (prefix < 200.4.196.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (97~26) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.215.0) && (prefix < 200.4.216.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (97~93) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.215.0) && (prefix < 200.4.216.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (98~87) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.253.0) && (prefix < 200.4.254.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (98~21) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.253.0) && (prefix < 200.4.254.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (99~37) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.176.0) && (prefix < 200.4.177.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (99~4) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.176.0) && (prefix < 200.4.177.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (100~16) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.127.0) && (prefix < 200.4.128.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (100~130) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.127.0) && (prefix < 200.4.128.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (101~28) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.25.0) && (prefix < 200.5.26.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (101~136) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.25.0) && (prefix < 200.5.26.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (102~140) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.177.0) && (prefix < 200.4.178.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (102~124) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.177.0) && (prefix < 200.4.178.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (103~60) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.223.0) && (prefix < 200.4.224.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553610:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (103~42) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.223.0) && (prefix < 200.4.224.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (103~125) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.223.0) && (prefix < 200.4.224.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (104~25) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.165.0) && (prefix < 200.4.166.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (104~164) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.165.0) && (prefix < 200.4.166.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (105~53) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.171.0) && (prefix < 200.4.172.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553603:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (105~124) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.171.0) && (prefix < 200.4.172.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (106~29) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.28.0) && (prefix < 200.5.29.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 2; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (106~169) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.28.0) && (prefix < 200.5.29.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (106~128) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.28.0) && (prefix < 200.5.29.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (106~157) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.28.0) && (prefix < 200.5.29.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (107~87) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.38.0) && (prefix < 200.5.39.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (107~146) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.38.0) && (prefix < 200.5.39.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (107~117) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.38.0) && (prefix < 200.5.39.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 2; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 2; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (107~40) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.38.0) && (prefix < 200.5.39.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 2; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 2; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (107~147) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.38.0) && (prefix < 200.5.39.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (108~17) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.22.0) && (prefix < 200.5.23.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (108~165) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.22.0) && (prefix < 200.5.23.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (108~92) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.22.0) && (prefix < 200.5.23.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (109~137) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.11.0) && (prefix < 200.5.12.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (109~46) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.11.0) && (prefix < 200.5.12.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (110~29) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.202.0) && (prefix < 200.4.203.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (110~87) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.202.0) && (prefix < 200.4.203.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (111~66) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.137.0) && (prefix < 200.4.138.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (111~65) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.137.0) && (prefix < 200.4.138.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (111~135) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.137.0) && (prefix < 200.4.138.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (112~82) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.216.0) && (prefix < 200.4.217.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (112~32) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.216.0) && (prefix < 200.4.217.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (113~149) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.239.0) && (prefix < 200.4.240.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })))
| (114~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.226.0) && (prefix < 200.4.227.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (114~115) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.226.0) && (prefix < 200.4.227.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (114~5) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.226.0) && (prefix < 200.4.227.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.7.0) && (prefix < 128.0.8.0))) then
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (115~86) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.17.0) && (prefix < 200.5.18.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (115~114) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.17.0) && (prefix < 200.5.18.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (116~140) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.142.0) && (prefix < 200.4.143.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (116~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.142.0) && (prefix < 200.4.143.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (117~142) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.187.0) && (prefix < 200.4.188.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 1; comms= b.comms[6553611:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (117~75) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.187.0) && (prefix < 200.4.188.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (117~61) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.187.0) && (prefix < 200.4.188.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 100; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (117~107) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.187.0) && (prefix < 200.4.188.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (118~33) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.13.0) && (prefix < 200.5.14.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (118~84) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.13.0) && (prefix < 200.5.14.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (118~171) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.13.0) && (prefix < 200.5.14.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 1; comms= b.comms[6553604:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (119~59) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.173.0) && (prefix < 200.4.174.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })))
| (120~81) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.169.0) && (prefix < 200.4.170.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (120~24) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.169.0) && (prefix < 200.4.170.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (121~139) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.2.0) && (prefix < 200.5.3.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (121~10) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.2.0) && (prefix < 200.5.3.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (121~71) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.2.0) && (prefix < 200.5.3.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (121~62) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.2.0) && (prefix < 200.5.3.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (122~80) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.205.0) && (prefix < 200.4.206.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (122~49) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.205.0) && (prefix < 200.4.206.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (122~50) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.205.0) && (prefix < 200.4.206.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (123~19) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.139.0) && (prefix < 200.4.140.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (123~24) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.139.0) && (prefix < 200.4.140.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (124~102) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.126.0) && (prefix < 200.4.127.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (124~105) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.126.0) && (prefix < 200.4.127.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (125~173) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.143.0) && (prefix < 200.4.144.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (125~103) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.143.0) && (prefix < 200.4.144.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (126~41) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.157.0) && (prefix < 200.4.158.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (126~166) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.157.0) && (prefix < 200.4.158.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (127~60) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.225.0) && (prefix < 200.4.226.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (127~54) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.225.0) && (prefix < 200.4.226.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (127~159) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.225.0) && (prefix < 200.4.226.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (127~133) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.225.0) && (prefix < 200.4.226.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553603:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (128~106) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.190.0) && (prefix < 200.4.191.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })))
| (129~3) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.207.0) && (prefix < 200.4.208.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (129~5) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.207.0) && (prefix < 200.4.208.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (130~100) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.245.0) && (prefix < 200.4.246.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (130~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.245.0) && (prefix < 200.4.246.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (131~149) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.9.0) && (prefix < 200.5.10.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (131~31) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.9.0) && (prefix < 200.5.10.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (132~44) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.16.0) && (prefix < 200.5.17.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (132~88) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.16.0) && (prefix < 200.5.17.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (133~127) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.167.0) && (prefix < 200.4.168.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (133~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.167.0) && (prefix < 200.4.168.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.1.0))) then
(Some {b with lp= 1; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (134~43) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.148.0) && (prefix < 200.4.149.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (134~168) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.148.0) && (prefix < 200.4.149.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (135~111) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.32.0) && (prefix < 200.5.33.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (135~153) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.32.0) && (prefix < 200.5.33.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (135~25) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.32.0) && (prefix < 200.5.33.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (136~9) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.39.0) && (prefix < 200.5.40.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (136~101) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.39.0) && (prefix < 200.5.40.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (136~153) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.39.0) && (prefix < 200.5.40.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (137~109) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.224.0) && (prefix < 200.4.225.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (138~24) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.146.0) && (prefix < 200.4.147.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (138~19) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.146.0) && (prefix < 200.4.147.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (139~76) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.232.0) && (prefix < 200.4.233.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (139~121) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.232.0) && (prefix < 200.4.233.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (140~10) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.220.0) && (prefix < 200.4.221.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (140~116) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.220.0) && (prefix < 200.4.221.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (140~102) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.220.0) && (prefix < 200.4.221.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.4.0) && (prefix < 128.0.5.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (140~76) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.220.0) && (prefix < 200.4.221.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (141~142) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.250.0) && (prefix < 200.4.251.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553603:= true]; })))
| (142~117) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.136.0) && (prefix < 200.4.137.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553612:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (142~51) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.136.0) && (prefix < 200.4.137.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 100; comms= b.comms[6553601:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.8.0) && (prefix < 128.0.9.0))) then
(Some {b with lp= 100; comms= b.comms[6553607:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (142~141) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.136.0) && (prefix < 200.4.137.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (143~171) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.158.0) && (prefix < 200.4.159.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (143~4) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.158.0) && (prefix < 200.4.159.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (144~155) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.41.0) && (prefix < 200.5.42.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (144~12) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.41.0) && (prefix < 200.5.42.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (145~150) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.214.0) && (prefix < 200.4.215.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (145~47) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.214.0) && (prefix < 200.4.215.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (146~107) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.12.0) && (prefix < 200.5.13.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.14.0) && (prefix < 128.0.15.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553614:= true]; })))
| (147~107) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.42.0) && (prefix < 200.5.43.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.13.0) && (prefix < 128.0.14.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })))
| (148~77) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.231.0) && (prefix < 200.4.232.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (148~80) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.231.0) && (prefix < 200.4.232.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (149~113) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.138.0) && (prefix < 200.4.139.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
Some b))
| (149~131) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.138.0) && (prefix < 200.4.139.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 100; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (149~52) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.138.0) && (prefix < 200.4.139.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.6.0) && (prefix < 128.0.7.0))) then
(Some {b with lp= 1; comms= b.comms[6553613:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.3.0) && (prefix < 128.0.4.0))) then
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (150~47) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.23.0) && (prefix < 200.5.24.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (150~145) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.23.0) && (prefix < 200.5.24.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (151~30) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.18.0) && (prefix < 200.5.19.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (151~154) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.18.0) && (prefix < 200.5.19.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (152~8) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.236.0) && (prefix < 200.4.237.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (152~38) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.236.0) && (prefix < 200.4.237.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (153~136) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.238.0) && (prefix < 200.4.239.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (153~135) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.238.0) && (prefix < 200.4.239.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (154~78) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.235.0) && (prefix < 200.4.236.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (154~20) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.235.0) && (prefix < 200.4.236.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (154~151) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.235.0) && (prefix < 200.4.236.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (155~144) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.135.0) && (prefix < 200.4.136.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (155~43) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.135.0) && (prefix < 200.4.136.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (155~89) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.135.0) && (prefix < 200.4.136.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (155~90) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.135.0) && (prefix < 200.4.136.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (156~30) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.168.0) && (prefix < 200.4.169.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (157~106) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.15.0) && (prefix < 200.5.16.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (158~75) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.237.0) && (prefix < 200.4.238.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (158~71) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.237.0) && (prefix < 200.4.238.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 2; comms= b.comms[6553609:= true]; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.11.0) && (prefix < 128.0.12.0))) then
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (159~127) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.246.0) && (prefix < 200.4.247.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (159~173) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.246.0) && (prefix < 200.4.247.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (160~59) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.191.0) && (prefix < 200.4.192.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (160~80) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.191.0) && (prefix < 200.4.192.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (161~85) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.197.0) && (prefix < 200.4.198.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (161~46) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.197.0) && (prefix < 200.4.198.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (162~4) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.248.0) && (prefix < 200.4.249.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553601:= true]; })))
| (163~15) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.208.0) && (prefix < 200.4.209.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.7.0) && (prefix < 128.0.8.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553607:= true]; })))
| (164~104) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.36.0) && (prefix < 200.5.37.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (164~18) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.36.0) && (prefix < 200.5.37.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (165~168) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.219.0) && (prefix < 200.4.220.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (165~3) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.219.0) && (prefix < 200.4.220.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (165~108) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.219.0) && (prefix < 200.4.220.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (166~126) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.37.0) && (prefix < 200.5.38.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (166~57) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.37.0) && (prefix < 200.5.38.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (167~8) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.247.0) && (prefix < 200.4.248.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if ((prefixLen = 24u6) && ((prefix >= 128.0.9.0) && (prefix < 128.0.10.0))) then
(Some {b with lp= 100; aslen= b.aslen + 2 + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
(Some {b with lp= 1; comms= b.comms[6553609:= true]; })))
| (168~134) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.24.0) && (prefix < 200.5.25.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (168~165) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.24.0) && (prefix < 200.5.25.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.5.0) && (prefix < 128.0.6.0))) then
(Some {b with lp= 1; comms= b.comms[6553615:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (168~90) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.24.0) && (prefix < 200.5.25.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (169~75) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.140.0) && (prefix < 200.4.141.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.12.0) && (prefix < 128.0.13.0))) then
(Some {b with lp= 1; comms= b.comms[6553605:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (169~106) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.140.0) && (prefix < 200.4.141.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (170~84) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.34.0) && (prefix < 200.5.35.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (170~35) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.5.34.0) && (prefix < 200.5.35.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (171~118) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.204.0) && (prefix < 200.4.205.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.1.0) && (prefix < 128.0.2.0))) then
(Some {b with lp= 1; comms= b.comms[6553608:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (171~143) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.204.0) && (prefix < 200.4.205.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 24u6) && ((prefix >= 128.0.2.0) && (prefix < 128.0.3.0))) then
(Some {b with lp= 1; comms= b.comms[6553606:= true]; })
else
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (172~32) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.160.0) && (prefix < 200.4.161.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (172~82) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.160.0) && (prefix < 200.4.161.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (172~26) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.160.0) && (prefix < 200.4.161.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (173~159) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.241.0) && (prefix < 200.4.242.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
| (173~125) ->
let b = x0.bgp in
(match b with
| None -> None
| Some b ->
if (let (u~v) = e in b.bgpAS[v]) then None else
let b =
if ((prefixLen = 24u6) && ((prefix >= 200.4.241.0) && (prefix < 200.4.242.0))) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
if (isProtocol prot p_BGP) then
(Some {b with lp= 100; aslen= b.aslen + 1; })
else
None
in
(match b with
| None -> None
| Some b ->
let (u~v) = e in
let b = {b with bgpAS = b.bgpAS[u := true]} in
if ((prefixLen = 20u6) && ((prefix >= 128.0.0.0) && (prefix < 128.0.16.0))) then
None
else
(Some b)))
let trans d edge x =
let o = transferOspf edge x.ospf in
let b = transferBgp d edge x in
{connected=None; static=None; ospf=o; bgp=b; selected=None}
let nodes = 174
let edges = {
69-92; (*lexingtonid33,FastEthernet1/0 --> highttpoint,FastEthernet0/1*)
131-149; (*waycross,FastEthernet0/0 --> douglas,FastEthernet0/1*)
116-15; (*tarttheel,FastEthernet0/0 --> fayetteville,FastEthernet2/0*)
22-31; (*darien,FastEthernet0/1 --> nahunta,FastEthernet0/0*)
57-166; (*leesburgid143,FastEthernet0/0 --> maitland,FastEthernet0/0*)
19-138; (*adel,FastEthernet0/0 --> tifton,FastEthernet0/0*)
3-165; (*burlington,FastEthernet0/1 --> greensboro,FastEthernet0/0*)
82-112; (*hickory,FastEthernet0/0 --> asheville,FastEthernet0/1*)
111-66; (*harrisonburg,FastEthernet0/1 --> staunton,FastEthernet0/0*)
15-45; (*fayetteville,FastEthernet0/0 --> jacksonville,FastEthernet0/0*)
35-54; (*atlanta,FastEthernet0/1 --> birmingham,FastEthernet0/0*)
60-103; (*dothan,FastEthernet0/1 --> panamattcity,FastEthernet1/0*)
0-11; (*metter,FastEthernet0/1 --> rentz,FastEthernet0/1*)
43-134; (*rockyttmount,FastEthernet0/0 --> martinsville,FastEthernet0/1*)
118-33; (*blueridge,FastEthernet0/0 --> blairsville,FastEthernet0/0*)
55-56; (*albany,FastEthernet0/1 --> peeralbany_0,FastEthernet0/0*)
138-19; (*tifton,FastEthernet0/0 --> adel,FastEthernet0/0*)
145-150; (*ringgold,FastEthernet0/0 --> chattanooga,FastEthernet0/1*)
155-43; (*roanoke,FastEthernet1/0 --> rockyttmount,FastEthernet0/1*)
123-19; (*vadosta,FastEthernet0/0 --> adel,FastEthernet0/1*)
69-67; (*lexingtonid33,FastEthernet0/0 --> boone,FastEthernet0/1*)
35-133; (*atlanta,FastEthernet1/1 --> columbus,FastEthernet0/0*)
91-65; (*charlottesville,FastEthernet0/1 --> waynesboro,FastEthernet0/0*)
80-148; (*wytheville,FastEthernet0/0 --> bland,FastEthernet0/1*)
4-27; (*andrews,FastEthernet0/1 --> hayesville,FastEthernet0/0*)
41-126; (*avonttpark,FastEthernet0/1 --> winterttpark,FastEthernet0/0*)
107-87; (*nodeid86,FastEthernet0/0 --> augusta,FastEthernet1/1*)
155-144; (*roanoke,FastEthernet0/0 --> charleston,FastEthernet0/1*)
170-35; (*canton,FastEthernet0/0 --> atlanta,FastEthernet1/0*)
64-58; (*tallahassee,FastEthernet1/0 --> lakettcity,FastEthernet0/1*)
7-50; (*peerlevelttcross_10,FastEthernet0/0 --> levelttcross,FastEthernet0/1*)
166-126; (*maitland,FastEthernet0/1 --> winterttpark,FastEthernet0/1*)
29-110; (*columbia,FastEthernet0/0 --> aiken,FastEthernet0/1*)
20-53; (*chester,FastEthernet1/1 --> rocktthill,FastEthernet0/1*)
21-35; (*athens,FastEthernet0/0 --> atlanta,FastEthernet0/0*)
41-83; (*avonttpark,FastEthernet0/0 --> fortttmyers,FastEthernet0/0*)
59-160; (*christiansburg,FastEthernet1/0 --> radford,FastEthernet0/0*)
156-30; (*anderson,FastEthernet0/0 --> clemson,FastEthernet0/0*)
173-159; (*pensacola,FastEthernet0/1 --> mobile,FastEthernet0/1*)
151-154; (*hickorytttavern,FastEthernet0/0 --> abbeville,FastEthernet1/0*)
127-133; (*montgomery,FastEthernet0/1 --> columbus,FastEthernet0/1*)
154-151; (*abbeville,FastEthernet1/0 --> hickorytttavern,FastEthernet0/0*)
166-57; (*maitland,FastEthernet0/0 --> leesburgid143,FastEthernet0/0*)
159-127; (*mobile,FastEthernet0/0 --> montgomery,FastEthernet1/1*)
114-5; (*rockyttmountid11,FastEthernet1/0 --> raleigh,FastEthernet1/0*)
92-17; (*highttpoint,FastEthernet0/0 --> kernersville,FastEthernet0/0*)
170-84; (*canton,FastEthernet0/1 --> ellijay,FastEthernet0/1*)
149-52; (*douglas,FastEthernet1/0 --> willacoochee,FastEthernet0/0*)
135-111; (*nodeid78,FastEthernet0/1 --> harrisonburg,FastEthernet0/0*)
10-140; (*sumter,FastEthernet0/1 --> florence,FastEthernet1/0*)
71-121; (*monksttcorner,FastEthernet0/1 --> nodeid82,FastEthernet0/1*)
103-60; (*panamattcity,FastEthernet1/0 --> dothan,FastEthernet0/1*)
33-118; (*blairsville,FastEthernet0/0 --> blueridge,FastEthernet0/0*)
129-3; (*durham,FastEthernet0/0 --> burlington,FastEthernet0/0*)
13-45; (*newttbern,FastEthernet0/0 --> jacksonville,FastEthernet0/1*)
50-7; (*levelttcross,FastEthernet0/1 --> peerlevelttcross_10,FastEthernet0/0*)
107-147; (*nodeid86,FastEthernet1/0 --> peernodeid86_13,FastEthernet0/0*)
81-36; (*hawkinsville,FastEthernet0/0 --> leslie,FastEthernet0/0*)
32-96; (*greenville,FastEthernet1/0 --> easley,FastEthernet0/0*)
30-6; (*clemson,FastEthernet1/1 --> toccoa,FastEthernet0/0*)
73-89; (*blacksburg,FastEthernet0/1 --> troutville,FastEthernet0/0*)
81-120; (*hawkinsville,FastEthernet1/0 --> warwick,FastEthernet0/0*)
106-128; (*nodeid85,FastEthernet1/0 --> peernodeid85_12,FastEthernet0/0*)
148-77; (*bland,FastEthernet0/0 --> bluefield,FastEthernet0/0*)
64-55; (*tallahassee,FastEthernet0/0 --> albany,FastEthernet1/0*)
55-64; (*albany,FastEthernet1/0 --> tallahassee,FastEthernet0/0*)
108-17; (*nodeid84,FastEthernet1/0 --> kernersville,FastEthernet0/1*)
161-46; (*hagerstown,FastEthernet0/0 --> chamersburg,FastEthernet0/1*)
20-74; (*chester,FastEthernet1/0 --> peerchester_4,FastEthernet0/0*)
65-111; (*waynesboro,FastEthernet0/1 --> harrisonburg,FastEthernet1/0*)
117-142; (*savannah,FastEthernet0/0 --> blitchton,FastEthernet1/0*)
80-70; (*wytheville,FastEthernet0/1 --> marion,FastEthernet0/1*)
60-127; (*dothan,FastEthernet0/0 --> montgomery,FastEthernet1/0*)
40-23; (*hiltontthead,FastEthernet0/0 --> beaufort,FastEthernet0/0*)
130-35; (*maretta,FastEthernet0/0 --> atlanta,FastEthernet2/1*)
33-79; (*blairsville,FastEthernet0/1 --> peerblairsville_2,FastEthernet0/0*)
64-2; (*tallahassee,FastEthernet1/1 --> ocala,FastEthernet0/1*)
26-97; (*charlotte,FastEthernet0/0 --> concord,FastEthernet0/0*)
98-87; (*hartwell,FastEthernet0/1 --> augusta,FastEthernet1/0*)
30-32; (*clemson,FastEthernet0/1 --> greenville,FastEthernet0/1*)
62-121; (*peernodeid82_11,FastEthernet0/0 --> nodeid82,FastEthernet1/0*)
98-21; (*hartwell,FastEthernet0/0 --> athens,FastEthernet0/1*)
169-106; (*walterboro,FastEthernet0/0 --> nodeid85,FastEthernet1/1*)
158-75; (*charlestonid102,FastEthernet0/1 --> yemassee,FastEthernet0/1*)
59-119; (*christiansburg,FastEthernet0/1 --> peerchristiansburg_5,FastEthernet0/0*)
101-28; (*frontttroyal,FastEthernet0/1 --> warrenton,FastEthernet0/1*)
90-91; (*lynchburg,FastEthernet0/0 --> charlottesville,FastEthernet0/0*)
100-130; (*cartersville,FastEthernet0/1 --> maretta,FastEthernet0/1*)
172-82; (*spartanburg,FastEthernet1/0 --> hickory,FastEthernet0/1*)
15-163; (*fayetteville,FastEthernet0/1 --> peerfayetteville_7,FastEthernet0/0*)
109-137; (*gettysburg,FastEthernet0/0 --> carlisle,FastEthernet0/0*)
76-140; (*myrtlettbeach,FastEthernet0/0 --> florence,FastEthernet0/1*)
133-35; (*columbus,FastEthernet0/0 --> atlanta,FastEthernet1/1*)
9-136; (*stephensttcity,FastEthernet0/1 --> nodeid79,FastEthernet1/0*)
6-96; (*toccoa,FastEthernet0/1 --> easley,FastEthernet0/1*)
125-103; (*crestview,FastEthernet0/0 --> panamattcity,FastEthernet0/1*)
144-155; (*charleston,FastEthernet0/1 --> roanoke,FastEthernet0/0*)
57-2; (*leesburgid143,FastEthernet0/1 --> ocala,FastEthernet0/0*)
2-64; (*ocala,FastEthernet0/1 --> tallahassee,FastEthernet1/1*)
89-14; (*troutville,FastEthernet0/1 --> lexington,FastEthernet0/0*)
143-4; (*murphy,FastEthernet0/0 --> andrews,FastEthernet1/0*)
0-51; (*metter,FastEthernet0/0 --> pembroke,FastEthernet0/1*)
47-150; (*dalton,FastEthernet0/0 --> chattanooga,FastEthernet0/0*)
163-15; (*peerfayetteville_7,FastEthernet0/0 --> fayetteville,FastEthernet0/1*)
75-158; (*yemassee,FastEthernet0/1 --> charlestonid102,FastEthernet0/1*)
120-81; (*warwick,FastEthernet0/0 --> hawkinsville,FastEthernet1/0*)
25-104; (*winchester,FastEthernet0/0 --> leesburg,FastEthernet0/1*)
63-38; (*abingdon,FastEthernet0/0 --> bristol,FastEthernet0/0*)
38-8; (*bristol,FastEthernet1/0 --> kingsport,FastEthernet0/0*)
43-155; (*rockyttmount,FastEthernet0/1 --> roanoke,FastEthernet1/0*)
84-170; (*ellijay,FastEthernet0/1 --> canton,FastEthernet0/1*)
112-32; (*asheville,FastEthernet0/0 --> greenville,FastEthernet0/0*)
31-48; (*nahunta,FastEthernet0/1 --> jacksonvilleid5,FastEthernet0/1*)
143-171; (*murphy,FastEthernet0/1 --> copperhill,FastEthernet0/1*)
22-61; (*darien,FastEthernet0/0 --> hinesville,FastEthernet0/0*)
30-151; (*clemson,FastEthernet1/0 --> hickorytttavern,FastEthernet0/1*)
81-11; (*hawkinsville,FastEthernet0/1 --> rentz,FastEthernet0/0*)
136-9; (*nodeid79,FastEthernet1/0 --> stephensttcity,FastEthernet0/1*)
171-118; (*copperhill,FastEthernet0/0 --> blueridge,FastEthernet0/1*)
124-102; (*kershaw,FastEthernet0/0 --> bethune,FastEthernet0/1*)
80-122; (*wytheville,FastEthernet1/1 --> sparta,FastEthernet1/0*)
88-37; (*sylva,FastEthernet0/0 --> cherokee,FastEthernet0/1*)
3-129; (*burlington,FastEthernet0/0 --> durham,FastEthernet0/0*)
23-75; (*beaufort,FastEthernet0/1 --> yemassee,FastEthernet0/0*)
68-15; (*wilmington,FastEthernet0/0 --> fayetteville,FastEthernet2/1*)
24-52; (*omega,FastEthernet1/1 --> willacoochee,FastEthernet0/1*)
86-115; (*kinston,FastEthernet0/0 --> greenvilleid16,FastEthernet0/0*)
76-139; (*myrtlettbeach,FastEthernet0/1 --> georgetown,FastEthernet0/0*)
54-127; (*birmingham,FastEthernet0/1 --> montgomery,FastEthernet0/0*)
94-27; (*youngttharris,FastEthernet0/1 --> hayesville,FastEthernet0/1*)
165-168; (*greensboro,FastEthernet0/1 --> danville,FastEthernet0/0*)
75-169; (*yemassee,FastEthernet1/1 --> walterboro,FastEthernet0/1*)
142-51; (*blitchton,FastEthernet0/1 --> pembroke,FastEthernet0/0*)
110-87; (*aiken,FastEthernet0/0 --> augusta,FastEthernet0/0*)
1-12; (*ashland,FastEthernet0/0 --> huntington,FastEthernet0/0*)
32-112; (*greenville,FastEthernet0/0 --> asheville,FastEthernet0/0*)
75-23; (*yemassee,FastEthernet0/0 --> beaufort,FastEthernet0/1*)
132-88; (*franklin,FastEthernet0/1 --> sylva,FastEthernet0/1*)
172-32; (*spartanburg,FastEthernet0/1 --> greenville,FastEthernet1/1*)
90-168; (*lynchburg,FastEthernet0/1 --> danville,FastEthernet0/1*)
11-81; (*rentz,FastEthernet0/0 --> hawkinsville,FastEthernet0/1*)
171-143; (*copperhill,FastEthernet0/1 --> murphy,FastEthernet0/1*)
34-69; (*courtney,FastEthernet0/1 --> lexingtonid33,FastEthernet0/1*)
136-153; (*nodeid79,FastEthernet0/0 --> edinburg,FastEthernet0/1*)
105-124; (*lancaster,FastEthernet0/0 --> kershaw,FastEthernet0/1*)
73-59; (*blacksburg,FastEthernet0/0 --> christiansburg,FastEthernet0/0*)
48-31; (*jacksonvilleid5,FastEthernet0/1 --> nahunta,FastEthernet0/1*)
132-44; (*franklin,FastEthernet0/0 --> hiawassee,FastEthernet0/0*)
136-101; (*nodeid79,FastEthernet0/1 --> frontttroyal,FastEthernet0/0*)
135-153; (*nodeid78,FastEthernet0/0 --> edinburg,FastEthernet0/0*)
126-166; (*winterttpark,FastEthernet0/1 --> maitland,FastEthernet0/1*)
155-89; (*roanoke,FastEthernet1/1 --> troutville,FastEthernet1/0*)
117-107; (*savannah,FastEthernet1/0 --> nodeid86,FastEthernet2/0*)
79-33; (*peerblairsville_2,FastEthernet0/0 --> blairsville,FastEthernet0/1*)
148-80; (*bland,FastEthernet0/1 --> wytheville,FastEthernet0/0*)
83-41; (*fortttmyers,FastEthernet0/0 --> avonttpark,FastEthernet0/0*)
26-53; (*charlotte,FastEthernet0/1 --> rocktthill,FastEthernet0/0*)
4-162; (*andrews,FastEthernet1/1 --> peerandrews_1,FastEthernet0/0*)
168-90; (*danville,FastEthernet0/1 --> lynchburg,FastEthernet0/1*)
8-152; (*kingsport,FastEthernet0/1 --> johnsonttcity,FastEthernet0/1*)
118-84; (*blueridge,FastEthernet1/0 --> ellijay,FastEthernet0/0*)
155-90; (*roanoke,FastEthernet0/1 --> lynchburg,FastEthernet1/0*)
39-55; (*macon,FastEthernet0/0 --> albany,FastEthernet0/0*)
99-37; (*brysonttcity,FastEthernet0/1 --> cherokee,FastEthernet0/0*)
24-138; (*omega,FastEthernet0/0 --> tifton,FastEthernet0/1*)
50-122; (*levelttcross,FastEthernet1/0 --> sparta,FastEthernet0/1*)
8-38; (*kingsport,FastEthernet0/0 --> bristol,FastEthernet1/0*)
18-164; (*ashburn,FastEthernet0/0 --> herndon,FastEthernet0/0*)
6-72; (*toccoa,FastEthernet1/0 --> peertoccoa_15,FastEthernet0/0*)
65-91; (*waynesboro,FastEthernet0/0 --> charlottesville,FastEthernet0/1*)
87-98; (*augusta,FastEthernet1/0 --> hartwell,FastEthernet0/1*)
23-40; (*beaufort,FastEthernet0/0 --> hiltontthead,FastEthernet0/0*)
130-100; (*maretta,FastEthernet0/1 --> cartersville,FastEthernet0/1*)
139-76; (*georgetown,FastEthernet0/0 --> myrtlettbeach,FastEthernet0/1*)
76-68; (*myrtlettbeach,FastEthernet1/0 --> wilmington,FastEthernet0/1*)
37-88; (*cherokee,FastEthernet0/1 --> sylva,FastEthernet0/0*)
108-165; (*nodeid84,FastEthernet0/0 --> greensboro,FastEthernet1/0*)
101-136; (*frontttroyal,FastEthernet0/0 --> nodeid79,FastEthernet0/1*)
162-4; (*peerandrews_1,FastEthernet0/0 --> andrews,FastEthernet1/1*)
14-65; (*lexington,FastEthernet0/1 --> waynesboro,FastEthernet1/0*)
84-118; (*ellijay,FastEthernet0/0 --> blueridge,FastEthernet1/0*)
121-139; (*nodeid82,FastEthernet0/0 --> georgetown,FastEthernet0/1*)
30-156; (*clemson,FastEthernet0/0 --> anderson,FastEthernet0/0*)
52-24; (*willacoochee,FastEthernet0/1 --> omega,FastEthernet1/1*)
74-20; (*peerchester_4,FastEthernet0/0 --> chester,FastEthernet1/0*)
102-140; (*bethune,FastEthernet0/0 --> florence,FastEthernet0/0*)
167-8; (*peerkingsport_9,FastEthernet0/0 --> kingsport,FastEthernet1/0*)
159-173; (*mobile,FastEthernet0/1 --> pensacola,FastEthernet0/1*)
117-61; (*savannah,FastEthernet0/1 --> hinesville,FastEthernet0/1*)
55-39; (*albany,FastEthernet0/0 --> macon,FastEthernet0/0*)
68-76; (*wilmington,FastEthernet0/1 --> myrtlettbeach,FastEthernet1/0*)
165-108; (*greensboro,FastEthernet1/0 --> nodeid84,FastEthernet0/0*)
65-14; (*waynesboro,FastEthernet1/0 --> lexington,FastEthernet0/1*)
36-39; (*leslie,FastEthernet0/1 --> macon,FastEthernet1/0*)
125-173; (*crestview,FastEthernet0/1 --> pensacola,FastEthernet0/0*)
6-30; (*toccoa,FastEthernet0/0 --> clemson,FastEthernet1/1*)
47-84; (*dalton,FastEthernet0/1 --> ellijay,FastEthernet1/0*)
25-135; (*winchester,FastEthernet0/1 --> nodeid78,FastEthernet1/0*)
93-69; (*salisbury,FastEthernet0/1 --> lexingtonid33,FastEthernet1/1*)
64-42; (*tallahassee,FastEthernet0/1 --> blountstown,FastEthernet0/1*)
40-107; (*hiltontthead,FastEthernet0/1 --> nodeid86,FastEthernet0/1*)
24-123; (*omega,FastEthernet0/1 --> vadosta,FastEthernet0/1*)
45-13; (*jacksonville,FastEthernet0/1 --> newttbern,FastEthernet0/0*)
134-168; (*martinsville,FastEthernet0/0 --> danville,FastEthernet1/0*)
29-20; (*columbia,FastEthernet1/0 --> chester,FastEthernet0/1*)
53-20; (*rocktthill,FastEthernet0/1 --> chester,FastEthernet1/1*)
35-130; (*atlanta,FastEthernet2/1 --> maretta,FastEthernet0/0*)
113-149; (*peerdouglas_6,FastEthernet0/0 --> douglas,FastEthernet0/0*)
29-87; (*columbia,FastEthernet0/1 --> augusta,FastEthernet0/1*)
29-106; (*columbia,FastEthernet1/1 --> nodeid85,FastEthernet0/0*)
77-148; (*bluefield,FastEthernet0/0 --> bland,FastEthernet0/0*)
165-3; (*greensboro,FastEthernet0/0 --> burlington,FastEthernet0/1*)
92-69; (*highttpoint,FastEthernet0/1 --> lexingtonid33,FastEthernet1/0*)
114-115; (*rockyttmountid11,FastEthernet0/1 --> greenvilleid16,FastEthernet0/1*)
97-26; (*concord,FastEthernet0/0 --> charlotte,FastEthernet0/0*)
149-131; (*douglas,FastEthernet0/1 --> waycross,FastEthernet0/0*)
87-110; (*augusta,FastEthernet0/0 --> aiken,FastEthernet0/0*)
141-142; (*peerblitchton_3,FastEthernet0/0 --> blitchton,FastEthernet0/0*)
35-21; (*atlanta,FastEthernet0/0 --> athens,FastEthernet0/0*)
111-65; (*harrisonburg,FastEthernet1/0 --> waynesboro,FastEthernet0/1*)
96-32; (*easley,FastEthernet0/0 --> greenville,FastEthernet1/0*)
69-93; (*lexingtonid33,FastEthernet1/1 --> salisbury,FastEthernet0/1*)
15-114; (*fayetteville,FastEthernet1/1 --> rockyttmountid11,FastEthernet0/0*)
85-161; (*martinsburg,FastEthernet0/0 --> hagerstown,FastEthernet0/1*)
65-66; (*waynesboro,FastEthernet1/1 --> staunton,FastEthernet1/0*)
135-25; (*nodeid78,FastEthernet1/0 --> winchester,FastEthernet0/1*)
89-66; (*troutville,FastEthernet1/1 --> staunton,FastEthernet0/1*)
123-24; (*vadosta,FastEthernet0/1 --> omega,FastEthernet0/1*)
172-26; (*spartanburg,FastEthernet0/0 --> charlotte,FastEthernet1/0*)
58-48; (*lakettcity,FastEthernet0/0 --> jacksonvilleid5,FastEthernet0/0*)
99-4; (*brysonttcity,FastEthernet0/0 --> andrews,FastEthernet0/0*)
66-65; (*staunton,FastEthernet1/0 --> waynesboro,FastEthernet1/1*)
20-29; (*chester,FastEthernet0/1 --> columbia,FastEthernet1/0*)
69-34; (*lexingtonid33,FastEthernet0/1 --> courtney,FastEthernet0/1*)
106-29; (*nodeid85,FastEthernet0/0 --> columbia,FastEthernet1/1*)
75-117; (*yemassee,FastEthernet1/0 --> savannah,FastEthernet1/1*)
66-89; (*staunton,FastEthernet0/1 --> troutville,FastEthernet1/1*)
154-78; (*abbeville,FastEthernet0/1 --> greenwood,FastEthernet0/0*)
168-134; (*danville,FastEthernet1/0 --> martinsville,FastEthernet0/0*)
153-136; (*edinburg,FastEthernet0/1 --> nodeid79,FastEthernet0/0*)
21-98; (*athens,FastEthernet0/1 --> hartwell,FastEthernet0/0*)
59-73; (*christiansburg,FastEthernet0/0 --> blacksburg,FastEthernet0/0*)
31-131; (*nahunta,FastEthernet1/0 --> waycross,FastEthernet0/1*)
109-46; (*gettysburg,FastEthernet0/1 --> chamersburg,FastEthernet0/0*)
144-12; (*charleston,FastEthernet0/0 --> huntington,FastEthernet0/1*)
53-26; (*rocktthill,FastEthernet0/0 --> charlotte,FastEthernet0/1*)
5-129; (*raleigh,FastEthernet0/0 --> durham,FastEthernet0/1*)
137-109; (*carlisle,FastEthernet0/0 --> gettysburg,FastEthernet0/0*)
145-47; (*ringgold,FastEthernet0/1 --> dalton,FastEthernet1/0*)
39-36; (*macon,FastEthernet1/0 --> leslie,FastEthernet0/1*)
80-160; (*wytheville,FastEthernet1/0 --> radford,FastEthernet0/1*)
39-35; (*macon,FastEthernet0/1 --> atlanta,FastEthernet2/0*)
87-29; (*augusta,FastEthernet0/1 --> columbia,FastEthernet0/1*)
78-154; (*greenwood,FastEthernet0/0 --> abbeville,FastEthernet0/1*)
106-157; (*nodeid85,FastEthernet0/1 --> orangeburg,FastEthernet0/0*)
119-59; (*peerchristiansburg_5,FastEthernet0/0 --> christiansburg,FastEthernet0/1*)
149-113; (*douglas,FastEthernet0/0 --> peerdouglas_6,FastEthernet0/0*)
46-161; (*chamersburg,FastEthernet0/1 --> hagerstown,FastEthernet0/0*)
84-47; (*ellijay,FastEthernet1/0 --> dalton,FastEthernet0/1*)
116-140; (*tarttheel,FastEthernet0/1 --> florence,FastEthernet1/1*)
127-159; (*montgomery,FastEthernet1/1 --> mobile,FastEthernet0/0*)
15-116; (*fayetteville,FastEthernet2/0 --> tarttheel,FastEthernet0/0*)
16-100; (*calhoun,FastEthernet0/0 --> cartersville,FastEthernet0/0*)
120-24; (*warwick,FastEthernet0/1 --> omega,FastEthernet1/0*)
82-172; (*hickory,FastEthernet0/1 --> spartanburg,FastEthernet1/0*)
90-155; (*lynchburg,FastEthernet1/0 --> roanoke,FastEthernet0/1*)
70-63; (*marion,FastEthernet0/0 --> abingdon,FastEthernet0/1*)
61-117; (*hinesville,FastEthernet0/1 --> savannah,FastEthernet0/1*)
94-44; (*youngttharris,FastEthernet1/0 --> hiawassee,FastEthernet0/1*)
56-55; (*peeralbany_0,FastEthernet0/0 --> albany,FastEthernet0/1*)
67-49; (*boone,FastEthernet0/0 --> baldwin,FastEthernet0/0*)
31-22; (*nahunta,FastEthernet0/0 --> darien,FastEthernet0/1*)
124-105; (*kershaw,FastEthernet0/1 --> lancaster,FastEthernet0/0*)
152-8; (*johnsonttcity,FastEthernet0/1 --> kingsport,FastEthernet0/1*)
2-57; (*ocala,FastEthernet0/0 --> leesburgid143,FastEthernet0/1*)
128-106; (*peernodeid85_12,FastEthernet0/0 --> nodeid85,FastEthernet1/0*)
158-71; (*charlestonid102,FastEthernet0/0 --> monksttcorner,FastEthernet0/0*)
10-29; (*sumter,FastEthernet0/0 --> columbia,FastEthernet2/0*)
89-73; (*troutville,FastEthernet0/0 --> blacksburg,FastEthernet0/1*)
150-145; (*chattanooga,FastEthernet0/1 --> ringgold,FastEthernet0/0*)
108-92; (*nodeid84,FastEthernet0/1 --> highttpoint,FastEthernet1/0*)
32-30; (*greenville,FastEthernet0/1 --> clemson,FastEthernet0/1*)
85-9; (*martinsburg,FastEthernet0/1 --> stephensttcity,FastEthernet0/0*)
28-18; (*warrenton,FastEthernet0/0 --> ashburn,FastEthernet0/1*)
71-158; (*monksttcorner,FastEthernet0/0 --> charlestonid102,FastEthernet0/0*)
111-135; (*harrisonburg,FastEthernet0/0 --> nodeid78,FastEthernet0/1*)
117-75; (*savannah,FastEthernet1/1 --> yemassee,FastEthernet1/0*)
107-146; (*nodeid86,FastEthernet1/1 --> peernodeid86_14,FastEthernet0/0*)
34-50; (*courtney,FastEthernet0/0 --> levelttcross,FastEthernet0/0*)
49-122; (*baldwin,FastEthernet0/1 --> sparta,FastEthernet0/0*)
48-58; (*jacksonvilleid5,FastEthernet0/0 --> lakettcity,FastEthernet0/0*)
107-40; (*nodeid86,FastEthernet0/1 --> hiltontthead,FastEthernet0/1*)
88-132; (*sylva,FastEthernet0/1 --> franklin,FastEthernet0/1*)
110-29; (*aiken,FastEthernet0/1 --> columbia,FastEthernet0/0*)
115-86; (*greenvilleid16,FastEthernet0/0 --> kinston,FastEthernet0/0*)
160-80; (*radford,FastEthernet0/1 --> wytheville,FastEthernet1/0*)
89-155; (*troutville,FastEthernet1/0 --> roanoke,FastEthernet1/1*)
49-67; (*baldwin,FastEthernet0/0 --> boone,FastEthernet0/0*)
36-81; (*leslie,FastEthernet0/0 --> hawkinsville,FastEthernet0/0*)
164-104; (*herndon,FastEthernet0/1 --> leesburg,FastEthernet0/0*)
133-127; (*columbus,FastEthernet0/1 --> montgomery,FastEthernet0/1*)
17-92; (*kernersville,FastEthernet0/0 --> highttpoint,FastEthernet0/0*)
173-125; (*pensacola,FastEthernet0/0 --> crestview,FastEthernet0/1*)
122-50; (*sparta,FastEthernet0/1 --> levelttcross,FastEthernet1/0*)
121-71; (*nodeid82,FastEthernet0/1 --> monksttcorner,FastEthernet0/1*)
13-86; (*newttbern,FastEthernet0/1 --> kinston,FastEthernet0/1*)
35-39; (*atlanta,FastEthernet2/0 --> macon,FastEthernet0/1*)
4-143; (*andrews,FastEthernet1/0 --> murphy,FastEthernet0/0*)
92-108; (*highttpoint,FastEthernet1/0 --> nodeid84,FastEthernet0/1*)
115-114; (*greenvilleid16,FastEthernet0/1 --> rockyttmountid11,FastEthernet0/1*)
54-35; (*birmingham,FastEthernet0/0 --> atlanta,FastEthernet0/1*)
66-111; (*staunton,FastEthernet0/0 --> harrisonburg,FastEthernet0/1*)
94-33; (*youngttharris,FastEthernet0/0 --> blairsville,FastEthernet1/0*)
10-121; (*sumter,FastEthernet1/0 --> nodeid82,FastEthernet1/1*)
9-85; (*stephensttcity,FastEthernet0/0 --> martinsburg,FastEthernet0/1*)
47-145; (*dalton,FastEthernet1/0 --> ringgold,FastEthernet0/1*)
127-60; (*montgomery,FastEthernet1/0 --> dothan,FastEthernet0/0*)
35-170; (*atlanta,FastEthernet1/0 --> canton,FastEthernet0/0*)
164-18; (*herndon,FastEthernet0/0 --> ashburn,FastEthernet0/0*)
104-164; (*leesburg,FastEthernet0/0 --> herndon,FastEthernet0/1*)
19-123; (*adel,FastEthernet0/1 --> vadosta,FastEthernet0/0*)
102-124; (*bethune,FastEthernet0/1 --> kershaw,FastEthernet0/0*)
139-121; (*georgetown,FastEthernet0/1 --> nodeid82,FastEthernet0/0*)
15-68; (*fayetteville,FastEthernet2/1 --> wilmington,FastEthernet0/0*)
50-34; (*levelttcross,FastEthernet0/0 --> courtney,FastEthernet0/0*)
46-109; (*chamersburg,FastEthernet0/0 --> gettysburg,FastEthernet0/1*)
93-97; (*salisbury,FastEthernet0/0 --> concord,FastEthernet0/1*)
26-172; (*charlotte,FastEthernet1/0 --> spartanburg,FastEthernet0/0*)
51-0; (*pembroke,FastEthernet0/1 --> metter,FastEthernet0/0*)
142-141; (*blitchton,FastEthernet0/0 --> peerblitchton_3,FastEthernet0/0*)
87-107; (*augusta,FastEthernet1/1 --> nodeid86,FastEthernet0/0*)
104-25; (*leesburg,FastEthernet0/1 --> winchester,FastEthernet0/0*)
154-20; (*abbeville,FastEthernet0/0 --> chester,FastEthernet0/0*)
72-6; (*peertoccoa_15,FastEthernet0/0 --> toccoa,FastEthernet1/0*)
153-135; (*edinburg,FastEthernet0/0 --> nodeid78,FastEthernet0/0*)
121-62; (*nodeid82,FastEthernet1/0 --> peernodeid82_11,FastEthernet0/0*)
52-149; (*willacoochee,FastEthernet0/0 --> douglas,FastEthernet1/0*)
38-152; (*bristol,FastEthernet0/1 --> johnsonttcity,FastEthernet0/0*)
129-5; (*durham,FastEthernet0/1 --> raleigh,FastEthernet0/0*)
140-76; (*florence,FastEthernet0/1 --> myrtlettbeach,FastEthernet0/0*)
28-101; (*warrenton,FastEthernet0/1 --> frontttroyal,FastEthernet0/1*)
122-80; (*sparta,FastEthernet1/0 --> wytheville,FastEthernet1/1*)
12-144; (*huntington,FastEthernet0/1 --> charleston,FastEthernet0/0*)
17-108; (*kernersville,FastEthernet0/1 --> nodeid84,FastEthernet1/0*)
168-165; (*danville,FastEthernet0/0 --> greensboro,FastEthernet0/1*)
147-107; (*peernodeid86_13,FastEthernet0/0 --> nodeid86,FastEthernet1/0*)
32-172; (*greenville,FastEthernet1/1 --> spartanburg,FastEthernet0/1*)
38-63; (*bristol,FastEthernet0/0 --> abingdon,FastEthernet0/0*)
161-85; (*hagerstown,FastEthernet0/1 --> martinsburg,FastEthernet0/0*)
14-89; (*lexington,FastEthernet0/0 --> troutville,FastEthernet0/1*)
27-4; (*hayesville,FastEthernet0/0 --> andrews,FastEthernet0/1*)
142-117; (*blitchton,FastEthernet1/0 --> savannah,FastEthernet0/0*)
44-132; (*hiawassee,FastEthernet0/0 --> franklin,FastEthernet0/0*)
105-53; (*lancaster,FastEthernet0/1 --> rocktthill,FastEthernet1/0*)
146-107; (*peernodeid86_14,FastEthernet0/0 --> nodeid86,FastEthernet1/1*)
45-15; (*jacksonville,FastEthernet0/0 --> fayetteville,FastEthernet0/0*)
20-154; (*chester,FastEthernet0/0 --> abbeville,FastEthernet0/0*)
27-94; (*hayesville,FastEthernet0/1 --> youngttharris,FastEthernet0/1*)
118-171; (*blueridge,FastEthernet0/1 --> copperhill,FastEthernet0/0*)
44-94; (*hiawassee,FastEthernet0/1 --> youngttharris,FastEthernet1/0*)
91-90; (*charlottesville,FastEthernet0/0 --> lynchburg,FastEthernet0/0*)
157-106; (*orangeburg,FastEthernet0/0 --> nodeid85,FastEthernet0/1*)
86-13; (*kinston,FastEthernet0/1 --> newttbern,FastEthernet0/1*)
5-114; (*raleigh,FastEthernet1/0 --> rockyttmountid11,FastEthernet1/0*)
96-6; (*easley,FastEthernet0/1 --> toccoa,FastEthernet0/1*)
29-10; (*columbia,FastEthernet2/0 --> sumter,FastEthernet0/0*)
169-75; (*walterboro,FastEthernet0/1 --> yemassee,FastEthernet1/1*)
150-47; (*chattanooga,FastEthernet0/0 --> dalton,FastEthernet0/0*)
122-49; (*sparta,FastEthernet0/0 --> baldwin,FastEthernet0/1*)
95-48; (*peerjacksonvilleid5_8,FastEthernet0/0 --> jacksonvilleid5,FastEthernet1/0*)
121-10; (*nodeid82,FastEthernet1/1 --> sumter,FastEthernet1/0*)
37-99; (*cherokee,FastEthernet0/0 --> brysonttcity,FastEthernet0/1*)
100-16; (*cartersville,FastEthernet0/0 --> calhoun,FastEthernet0/0*)
107-117; (*nodeid86,FastEthernet2/0 --> savannah,FastEthernet1/0*)
61-22; (*hinesville,FastEthernet0/0 --> darien,FastEthernet0/0*)
114-15; (*rockyttmountid11,FastEthernet0/0 --> fayetteville,FastEthernet1/1*)
127-54; (*montgomery,FastEthernet0/0 --> birmingham,FastEthernet0/1*)
12-1; (*huntington,FastEthernet0/0 --> ashland,FastEthernet0/0*)
42-64; (*blountstown,FastEthernet0/1 --> tallahassee,FastEthernet0/1*)
63-70; (*abingdon,FastEthernet0/1 --> marion,FastEthernet0/0*)
140-10; (*florence,FastEthernet1/0 --> sumter,FastEthernet0/1*)
106-169; (*nodeid85,FastEthernet1/1 --> walterboro,FastEthernet0/0*)
11-0; (*rentz,FastEthernet0/1 --> metter,FastEthernet0/1*)
53-105; (*rocktthill,FastEthernet1/0 --> lancaster,FastEthernet0/1*)
51-142; (*pembroke,FastEthernet0/0 --> blitchton,FastEthernet0/1*)
15-5; (*fayetteville,FastEthernet1/0 --> raleigh,FastEthernet0/1*)
48-95; (*jacksonvilleid5,FastEthernet1/0 --> peerjacksonvilleid5_8,FastEthernet0/0*)
140-102; (*florence,FastEthernet0/0 --> bethune,FastEthernet0/0*)
33-94; (*blairsville,FastEthernet1/0 --> youngttharris,FastEthernet0/0*)
4-99; (*andrews,FastEthernet0/0 --> brysonttcity,FastEthernet0/0*)
152-38; (*johnsonttcity,FastEthernet0/0 --> bristol,FastEthernet0/1*)
58-64; (*lakettcity,FastEthernet0/1 --> tallahassee,FastEthernet1/0*)
70-80; (*marion,FastEthernet0/1 --> wytheville,FastEthernet0/1*)
103-42; (*panamattcity,FastEthernet0/0 --> blountstown,FastEthernet0/0*)
160-59; (*radford,FastEthernet0/0 --> christiansburg,FastEthernet1/0*)
103-125; (*panamattcity,FastEthernet0/1 --> crestview,FastEthernet0/0*)
97-93; (*concord,FastEthernet0/1 --> salisbury,FastEthernet0/0*)
42-103; (*blountstown,FastEthernet0/0 --> panamattcity,FastEthernet0/0*)
112-82; (*asheville,FastEthernet0/1 --> hickory,FastEthernet0/0*)
134-43; (*martinsville,FastEthernet0/1 --> rockyttmount,FastEthernet0/0*)
8-167; (*kingsport,FastEthernet1/0 --> peerkingsport_9,FastEthernet0/0*)
18-28; (*ashburn,FastEthernet0/1 --> warrenton,FastEthernet0/0*)
126-41; (*winterttpark,FastEthernet0/0 --> avonttpark,FastEthernet0/1*)
140-116; (*florence,FastEthernet1/1 --> tarttheel,FastEthernet0/1*)
5-15; (*raleigh,FastEthernet0/1 --> fayetteville,FastEthernet1/0*)
151-30; (*hickorytttavern,FastEthernet0/1 --> clemson,FastEthernet1/0*)
138-24; (*tifton,FastEthernet0/1 --> omega,FastEthernet0/0*)
67-69; (*boone,FastEthernet0/1 --> lexingtonid33,FastEthernet0/0*)
131-31; (*waycross,FastEthernet0/1 --> nahunta,FastEthernet1/0*)
24-120; (*omega,FastEthernet1/0 --> warwick,FastEthernet0/1*)
}
let d = (128.0.15.0,24u6)
let sol = solution {init=init d; trans=trans d; merge=merge}
(*
{metter=0, ashland=1, ocala=2, burlington=3, andrews=4, raleigh=5, toccoa=6, peerlevelttcross_10=7, kingsport=8, stephensttcity=9, sumter=10, rentz=11, huntington=12, newttbern=13, lexington=14, fayetteville=15, calhoun=16, kernersville=17, ashburn=18, adel=19, chester=20, athens=21, darien=22, beaufort=23, omega=24, winchester=25, charlotte=26, hayesville=27, warrenton=28, columbia=29, clemson=30, nahunta=31, greenville=32, blairsville=33, courtney=34, atlanta=35, leslie=36, cherokee=37, bristol=38, macon=39, hiltontthead=40, avonttpark=41, blountstown=42, rockyttmount=43, hiawassee=44, jacksonville=45, chamersburg=46, dalton=47, jacksonvilleid5=48, baldwin=49, levelttcross=50, pembroke=51, willacoochee=52, rocktthill=53, birmingham=54, albany=55, peeralbany_0=56, leesburgid143=57, lakettcity=58, christiansburg=59, dothan=60, hinesville=61, peernodeid82_11=62, abingdon=63, tallahassee=64, waynesboro=65, staunton=66, boone=67, wilmington=68, lexingtonid33=69, marion=70, monksttcorner=71, peertoccoa_15=72, blacksburg=73, peerchester_4=74, yemassee=75, myrtlettbeach=76, bluefield=77, greenwood=78, peerblairsville_2=79, wytheville=80, hawkinsville=81, hickory=82, fortttmyers=83, ellijay=84, martinsburg=85, kinston=86, augusta=87, sylva=88, troutville=89, lynchburg=90, charlottesville=91, highttpoint=92, salisbury=93, youngttharris=94, peerjacksonvilleid5_8=95, easley=96, concord=97, hartwell=98, brysonttcity=99, cartersville=100, frontttroyal=101, bethune=102, panamattcity=103, leesburg=104, lancaster=105, nodeid85=106, nodeid86=107, nodeid84=108, gettysburg=109, aiken=110, harrisonburg=111, asheville=112, peerdouglas_6=113, rockyttmountid11=114, greenvilleid16=115, tarttheel=116, savannah=117, blueridge=118, peerchristiansburg_5=119, warwick=120, nodeid82=121, sparta=122, vadosta=123, kershaw=124, crestview=125, winterttpark=126, montgomery=127, peernodeid85_12=128, durham=129, maretta=130, waycross=131, franklin=132, columbus=133, martinsville=134, nodeid78=135, nodeid79=136, carlisle=137, tifton=138, georgetown=139, florence=140, peerblitchton_3=141, blitchton=142, murphy=143, charleston=144, ringgold=145, peernodeid86_14=146, peernodeid86_13=147, bland=148, douglas=149, chattanooga=150, hickorytttavern=151, johnsonttcity=152, edinburg=153, abbeville=154, roanoke=155, anderson=156, orangeburg=157, charlestonid102=158, mobile=159, radford=160, hagerstown=161, peerandrews_1=162, peerfayetteville_7=163, herndon=164, greensboro=165, maitland=166, peerkingsport_9=167, danville=168, walterboro=169, canton=170, copperhill=171, spartanburg=172, pensacola=173}*)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment