7a  java/lang/Object()V   org/freertr/rtr/rtrBgpSpfparentLorg/freertr/rtr/rtrBgp;  hostnameZ  distanceIorg/freertr/spf/spfCalc  (Lorg/freertr/spf/spfCalc;)V  lastSpfLorg/freertr/spf/spfCalc;org/freertr/tab/tabRoute!bst # $(Ljava/lang/String;)V & '(routesLorg/freertr/tab/tabRoute; *+, -.org/freertr/rtr/rtrBgprouTyp(Lorg/freertr/tab/tabRouteAttr$routeType; 012 3.&org/freertr/tab/tabRouteAttr$routeTypebgp4 5 6ipv4 *8 9:fwdCoreLorg/freertr/ip/ipFwd; <=> ?@java/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;B CDmakeConcatWithConstants&(Ljava/lang/String;)Ljava/lang/String; F GenabledBJ LMN OPorg/freertr/util/cmdscfgLineJ(Ljava/util/List;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V R SstubBBW CX9(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String; Z[\ ]^java/util/Listadd(Ljava/lang/Object;)Z ` ablogSizeLorg/freertr/util/syncInt;d CeJ(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; g hbtopoLog jkl mnorg/freertr/util/syncIntget()IB q rsgetTopoLogMode()Ljava/lang/String; u vbbidirB y zbhopsB } ~becmp B  defRou B  prflstInLorg/freertr/tab/tabListing; B B  roumapIn B  roupolInB  org/freertr/rtr/rtrBgpNeighconnLorg/freertr/rtr/rtrBgpSpeak;  org/freertr/rtr/rtrBgpSpeak ready2adv peerAfis[Zorg/freertr/rtr/rtrBgpParam  spfMetric  peerRouterIDLorg/freertr/addr/addrIPv4; peerAddrLorg/freertr/addr/addrIP; localIfcLorg/freertr/ip/ipFwdIface;   addNextHop(ILorg/freertr/addr/addrType;Lorg/freertr/addr/addrIP;Lorg/freertr/tab/tabRouteIface;Lorg/freertr/addr/addrIP;Lorg/freertr/tab/tabRouteIface;)Vorg/freertr/spf/spfLnkst  createHeader:(Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;II)V * localAs * routerID  createSpfNoder(Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;ILorg/freertr/addr/addrIPv4;I)V remoteAs  localAddr  createSpfLinkj(Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/addr/addrIP;Lorg/freertr/addr/addrIP;)V  org/freertr/pack/packHolderclear spfStub  org/freertr/enc/encTlvvalDat[B valSiz putBytes!(Lorg/freertr/pack/packHolder;I)V * computdorg/freertr/tab/tabRoute;  createEntry(Lorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;II)V  getPrefixType"(Lorg/freertr/tab/tabRouteEntry;)I  createPrefix(Lorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;Lorg/freertr/tab/tabRouteEntry;)V getTlv()Lorg/freertr/enc/encTlv; (ZZ)V  org/freertr/cfg/cfgAllhostNameLjava/lang/String;  putStr3(Lorg/freertr/pack/packHolder;ILjava/lang/String;)V *   segrouLab [Lorg/freertr/tab/tabLabelEntry;    org/freertr/util/bitsmsbPutW([BII)V   msbPutD  org/freertr/tab/tabLabelEntrylabel * neighsLorg/freertr/tab/tabGen;   norg/freertr/tab/tabGensize " m#(I)Ljava/lang/Comparable; % &' doAdvertNei([Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;Lorg/freertr/rtr/rtrBgpNeigh;)V *) *lstnNei,org/freertr/tab/tabRouteEntry + */ 01 defaultRoute (Z)Lorg/freertr/addr/addrPrefix; +3 45prefixLorg/freertr/addr/addrPrefix; 7 89 doAdvertPfx([Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;Lorg/freertr/tab/tabRouteEntry;)V *; <(routerRedistedU  ? m@"(I)Lorg/freertr/tab/tabRouteEntry; BCD ~E org/freertr/tab/tabRoute$addType"Lorg/freertr/tab/tabRoute$addType; +G HI copyBytesC(Lorg/freertr/tab/tabRoute$addType;)Lorg/freertr/tab/tabRouteEntry; +K LMbestLorg/freertr/tab/tabRouteAttr; *O P segrouIdx ROSorg/freertr/tab/tabRouteAttr *U V bierLab RX YbierBeg *[ \bierIdx R[ *_ `bierSub R_ *c dbierLen fgh ijorg/freertr/tab/tabLabelBiernum2bsl(I)I Rl mbierHdr Ro pbierSiz +r snlri u vwputCopy([BIII)V y z{putSkip(I)V } ~ merge2beg  jmsbGetW  jgetByte  {getSkip R linkStat   merge2end   readSpfNoden(Lorg/freertr/spf/spfCalc;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;)V   readSpfLinkorg/freertr/rtr/rtrBgpUtil   readSpfPrefp(Lorg/freertr/spf/spfCalc;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;II)V  doWork(Lorg/freertr/addr/addrType;)Z  doSpfNei9(Lorg/freertr/spf/spfCalc;Lorg/freertr/rtr/rtrBgpNeigh;)V   #org/freertr/tab/tabLabelEntry$ownerbgpSrgb%Lorg/freertr/tab/tabLabelEntry$owner;   getRoutes(Lorg/freertr/ip/ipFwd;Lorg/freertr/tab/tabLabelEntry$owner;[Lorg/freertr/tab/tabLabelEntry;Lorg/freertr/tab/tabGen;)Lorg/freertr/tab/tabRoute;org/freertr/tab/tabIndexorg/freertr/addr/addrPrefixorg/freertr/addr/addrIP   (Lorg/freertr/addr/addrType;I)V  !(ILorg/freertr/addr/addrPrefix;)V   add2table5(Lorg/freertr/tab/tabGen;Lorg/freertr/tab/tabIndex;)Z   setFwdCommon>(Lorg/freertr/tab/tabLabelEntry$owner;Lorg/freertr/ip/ipFwd;)V  find.(Ljava/lang/Comparable;)Ljava/lang/Comparable;   setFwdDrop((Lorg/freertr/tab/tabLabelEntry$owner;)V'  addUpdatedTable(Lorg/freertr/tab/tabRoute$addType;IILorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabRoute;ZLorg/freertr/tab/tabListing;Lorg/freertr/tab/tabListing;Lorg/freertr/tab/tabListing;)I  org/freertr/ip/ipFwd commonLabelLorg/freertr/tab/tabLabelEntry; * routerDoAggregatess(ILorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabLabelEntry;Lorg/freertr/addr/addrIPv4;I)V  getBierI8(Lorg/freertr/ip/ipFwd;II)Lorg/freertr/tab/tabLabelBier; f idx  bgpBier   setBierMpls\(Lorg/freertr/tab/tabLabelEntry$owner;Lorg/freertr/ip/ipFwd;Lorg/freertr/tab/tabLabelBier;)V  org/freertr/util/debugger rtrBgpComp  listReachablility(Z)Ljava/lang/String;B  $org/freertr/util/loggerdebugB * rtrNum  setProto,(Lorg/freertr/tab/tabRouteAttr$routeType;I)V   preserveTime(Lorg/freertr/tab/tabRoute;)Z B EaltEcmp?     mergeFrom@(Lorg/freertr/tab/tabRoute$addType;Lorg/freertr/tab/tabRoute;I)V * routerComputedI * (routerComputedU * (routerComputedM SignatureTLorg/freertr/tab/tabListing;SLorg/freertr/tab/tabListing;SLorg/freertr/tab/tabListing;6Lorg/freertr/spf/spfCalc;5Lorg/freertr/tab/tabRoute;(Lorg/freertr/rtr/rtrBgp;)VCodeLineNumberTable StackMapTabletoString getConfig7(Ljava/util/List;Ljava/lang/String;Ljava/lang/String;)VK(Ljava/util/List;Ljava/lang/String;Ljava/lang/String;)VV(Lorg/freertr/spf/spfCalc;Lorg/freertr/rtr/rtrBgpNeigh;)V([Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;Lorg/freertr/rtr/rtrBgpNeigh;)V([Lorg/freertr/tab/tabRoute;Lorg/freertr/enc/encTlv;Lorg/freertr/pack/packHolder;Lorg/freertr/pack/packHolder;Lorg/freertr/tab/tabRouteEntry;)V doAdvertise([Lorg/freertr/tab/tabRoute;)V9([Lorg/freertr/tab/tabRoute;)V doPeersFull()Z doPeersIncr SourceFilertrBgpSpf.javaBootstrapMethods1bgp on 3enable5stub7 hostname9 distance ; spf-log = spf-topolog? spf-bidirA spf-hopsC spf-ecmpEdefault-originateG prefix-listIK route-mapM route-policyO unreachable:Q reachable:S TUV CW$java/lang/invoke/StringConcatFactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; InnerClasses routeTypeaddTypeowner]%java/lang/invoke/MethodHandles$Lookup_java/lang/invoke/MethodHandlesLookup! GS'( 6 A**+* *<*Y*Y "%*+)/4"^_ `ab c-d@e#<** s(*7;Am!"y+*E,-HIK+*Q,-TIK+* ,-UIK+,-*VYW+,-*_;cYW+*fi,-o*pK+*ti,-wIK+*xi,-{IK+*|i,-IK+*,-IK+*,-*;K+*,-*;K+*,-*;K:xy2zK{]|u}~2Ux-LZZ<<ZWZZ<<ZWZZ<<ZGZZ<<ZbZZ<<Z]ZZ<<Z]ZZ<<ZWZZ<<ZWZZ<<ZaZZ<<ZaZZ<<Z#w8,,, 3+,,,,"7 $&'  3,-,-**,-,-ՙ,T,,+ 2* 2,-F !(@Wfksz f%89vA,-,-**+ 2* 2,-)@&'( *EMYNY:,-,-***Q,T,,* ,*E, ,*x,*2x,, + 2* 2,-6*!*+,-*!$6*(!*+,-*(!$*$+Y-:*.2*+,-66*:=*:>:*AF:J*NQ*TaAF:J*T2WJ*Z]J*^aJ*bekJ*Tn*+,-6J. !(@ELSXaht~17>GT_q 2 XK,,'?+g)*+ l*EY*LMYNY:6* 2=* 2>:q--qqt-qx-|-6-- J+-JJt-Jx-W +6H+,-/+,-$+,-*+,-*+*W6**+*!6*(*+*(!:* Y:+*7*:}Y*NYYW**N2*76*.Y*2Ʉ˻Yͷ":A***W**7*Ta+*7*T2*be:*Z6  *T"*T 2*7 ײ++*+*)**%W*%*2*% *2*% * "H #.CTY\dgk|      /5"A#S$g#m&'&)*+-./0 12.315A1G8S9m:;<=>?>BCD FG%H/I5JKKaLjM^ '*+ 58! ((_!yf+,+d3*E**% **% VW YZ1[ -./hR0R2R4R6R8R:R<R>R@RBRDRFRHRJRLRNRPX"0RY@BZ@[@\^`