7  org/freertr/ip/ipRtr()V   org/freertr/rtr/rtrPvrplabelsZ   segrouIdxI   segrouMax   segrouBase  bierIdx  bierSub  bierLen ! "bierMax $ %  suppressAddr'org/freertr/util/notifier & * +,notifLorg/freertr/util/notifier; . / need2run 1 23fwdCoreLorg/freertr/ip/ipFwd; 5 67udpCoreLorg/freertr/prt/prtUdp; 9 :;tcpCoreLorg/freertr/prt/prtTcp;=org/freertr/addr/addrIPv4 < @ ABrouterIDLorg/freertr/addr/addrIPv4;Dorg/freertr/tab/tabGen C G HIifacesLorg/freertr/tab/tabGen; KLM Norg/freertr/ip/ipFwd ipVersion PQR ST&org/freertr/tab/tabRouteAttr$routeTypepvrp4(Lorg/freertr/tab/tabRouteAttr$routeType; PV WTpvrp6 Y ZrouterCreateComputed K\ ]^ routerAddB(Lorg/freertr/ip/ipRtr;Lorg/freertr/tab/tabRouteAttr$routeType;I)V`java/lang/Thread _b c(Ljava/lang/Runnable;)V _e fstart hij kljava/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;n opmakeConcatWithConstants&(Ljava/lang/String;)Ljava/lang/String; rst u org/freertr/util/debugger rtrPvrpEvntn xyz {|org/freertr/util/loggerdebug(Ljava/lang/String;)V~org/freertr/rtr/rtrPvrpIface } 7(Lorg/freertr/rtr/rtrPvrp;Lorg/freertr/ip/ipFwdIface;)V C add.(Ljava/lang/Comparable;)Ljava/lang/Comparable; }  register2udpn C del } unregister2udp } closeNeighborsorg/freertr/user/userFormat|router|name|uptime '(Ljava/lang/String;Ljava/lang/String;)V5iface|router|name|peerif|peer|learned|adverted|uptime C size()I C get(I)Ljava/lang/Comparable; }  showNeighs!(Lorg/freertr/user/userFormat;Z)V*iface|router|name|peer|metric|gotmet|delay }  showMetrics (Lorg/freertr/user/userFormat;)V }  findNeigh9(Lorg/freertr/addr/addrIP;)Lorg/freertr/rtr/rtrPvrpNeigh; C find } I msgStatRx } I msgStatTx  org/freertr/util/keyworddumpO(Lorg/freertr/tab/tabGen;Lorg/freertr/tab/tabGen;)Lorg/freertr/user/userFormat;interface|neighbors } ifaceLorg/freertr/ip/ipFwdIface; } Ineighs o'(Ljava/lang/String;I)Ljava/lang/String; | create tableorg/freertr/tab/tabRoutelernd |  org/freertr/ip/ipFwdIfacelowerLorg/freertr/ip/ipIfc;  org/freertr/ip/ipIfcgetState!()Lorg/freertr/util/state$states;  org/freertr/util/state$statesupLorg/freertr/util/state$states; }$ } unsuppressAddr   org/freertr/tab/tabRoute$addTypebetter"Lorg/freertr/tab/tabRoute$addType; networkLorg/freertr/addr/addrPrefix; {(Lorg/freertr/tab/tabRoute$addType;Lorg/freertr/addr/addrPrefix;Lorg/freertr/addr/addrType;)Lorg/freertr/tab/tabRouteEntry;  org/freertr/tab/tabRouteEntrybestLorg/freertr/tab/tabRouteAttr; P Tconn   Torg/freertr/tab/tabRouteAttrrouTyp   Lorg/freertr/tab/tabRouteIface;  distance }  }  } org/freertr/rtr/rtrPvrpNeigh  ecmp  learnedLorg/freertr/tab/tabRoute;? ! "# mergeFrom@(Lorg/freertr/tab/tabRoute$addType;Lorg/freertr/tab/tabRoute;I)V%org/freertr/rtr/rtrBgpUtil K' () commonLabelLorg/freertr/tab/tabLabelEntry; + ,-routerDoAggregatess(ILorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabRoute;Lorg/freertr/tab/tabLabelEntry;Lorg/freertr/addr/addrIPv4;I)V/ned2adv 1 2routerRedistedU 5 6"(I)Lorg/freertr/tab/tabRouteEntry; 8 9notyet ; <= copyBytesC(Lorg/freertr/tab/tabRoute$addType;)Lorg/freertr/tab/tabRouteEntry; ? @rouSrc B CF(Lorg/freertr/tab/tabRoute$addType;Lorg/freertr/tab/tabRouteEntry;ZZ)V KE FlabeldR H I@(Lorg/freertr/tab/tabRouteEntry;)Lorg/freertr/tab/tabRouteEntry; K L)labelLoc N Oneed2adv Q Ralways }T UV roumapOutLorg/freertr/tab/tabListing; }X YV roupolOut }[ \V prflstOut ^ _`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 }b c  defOrigin  fgh ijorg/freertr/addr/addrPrefix defaultRoute (I)Lorg/freertr/addr/addrPrefix; l mprefix }o p  splitHorizon r stdelIface"(Lorg/freertr/tab/tabRouteIface;)I v w stub }v }z { unstub } ~ clustListLjava/util/List; java/util/List  "(Lorg/freertr/tab/tabRouteEntry;)Z }N * & wakeup  TrouterProtoTyp   routerProcNum  setProto,(Lorg/freertr/tab/tabRouteAttr$routeType;I)V  routerComputedU   preserveTime(Lorg/freertr/tab/tabRoute;)Z   segrouLab [Lorg/freertr/tab/tabLabelEntry;   segrouBeg  org/freertr/tab/tabLabel int2labels(I)Ljava/util/List;  #org/freertr/tab/tabLabelEntry$ownerpvrpSrgb%Lorg/freertr/tab/tabLabelEntry$owner;  nextHopLorg/freertr/addr/addrType;org/freertr/addr/addrIP  org/freertr/tab/tabLabelEntry setFwdMpls(Lorg/freertr/tab/tabLabelEntry$owner;Lorg/freertr/ip/ipFwd;Lorg/freertr/ip/ipFwdIface;Lorg/freertr/addr/addrIP;Ljava/util/List;)Vorg/freertr/tab/tabIndex  !(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  f (Lorg/freertr/addr/addrType;I)V   setFwdDrop((Lorg/freertr/tab/tabLabelEntry$owner;)V  bierLaborg/freertr/tab/tabLabelBier  label  num2bsl(I)I  (II)V  idx  idx2  bierBegorg/freertr/tab/tabLabelBierN  S(Lorg/freertr/ip/ipFwd;Lorg/freertr/tab/tabRouteIface;Lorg/freertr/addr/addrIP;II)V  Ipeers  setBit(I)V  pvrpBier   setBierMpls\(Lorg/freertr/tab/tabLabelEntry$owner;Lorg/freertr/ip/ipFwd;Lorg/freertr/tab/tabLabelBier;)V  routerComputedMrx  routerComputedF  IrouterComputedI K   routerChg(Lorg/freertr/ip/ipRtr;Z)V shutdown  releaseg([Lorg/freertr/tab/tabLabelEntry;Lorg/freertr/tab/tabLabelEntry$owner;)[Lorg/freertr/tab/tabLabelEntry; router-idspecify router id  org/freertr/user/userHelp;(Ljava/util/List;ZI[ILjava/lang/String;Ljava/lang/String;)V router id specify label modew" stub router$suppress-prefix&do not advertise interfaces(segrout*segment routing parameters,. maximum index0this node index2base4 specify base6 label base8bier:bier parameters<bitstring length> node index@node subdomainB oC8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; E F(Ljava/lang/Object;)ZH JKL MNorg/freertr/util/cmdscfgLineJ(Ljava/util/List;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)VQ oR((IILjava/lang/String;)Ljava/lang/String;T oU(IIII)Ljava/lang/String; JW XYword()Ljava/lang/String;[no h] ^Fequals <` ab fromString(Ljava/lang/String;)Z def ghorg/freertr/cfg/cfgAllifcFind-(Ljava/lang/String;I)Lorg/freertr/cfg/cfgIfc; jkl mBorg/freertr/cfg/cfgIfcaddr4 <o pqsetAddr(Lorg/freertr/addr/addrType;)V stu vworg/freertr/util/bitsstr2num(Ljava/lang/String;)I hy zlength | }~allocateI(Lorg/freertr/tab/tabLabelEntry$owner;II)[Lorg/freertr/tab/tabLabelEntry;   normalizeBsl  }H(Lorg/freertr/tab/tabLabelEntry$owner;I)[Lorg/freertr/tab/tabLabelEntry; & misleepjava/lang/Exception x  traceback(Ljava/lang/Throwable;)V  peerLorg/freertr/addr/addrIP;  VrouterAutoMesh  addUpdatedEntry(Lorg/freertr/tab/tabRoute$addType;Lorg/freertr/tab/tabRoute;IILorg/freertr/tab/tabRouteEntry;ZLorg/freertr/tab/tabListing;Lorg/freertr/tab/tabListing;Lorg/freertr/tab/tabListing;)Ijava/lang/Runnableport ConstantValue  Signature5Lorg/freertr/tab/tabRoute;8Lorg/freertr/tab/tabGen;J(Lorg/freertr/ip/ipFwd;Lorg/freertr/prt/prtUdp;Lorg/freertr/prt/prtTcp;I)VCodeLineNumberTable StackMapTableorg/freertr/prt/prtUdporg/freertr/prt/prtTcptoString addInterface;(Lorg/freertr/ip/ipFwdIface;)Lorg/freertr/rtr/rtrPvrpIface; delInterface(Lorg/freertr/ip/ipFwdIface;)V (Z)Lorg/freertr/user/userFormat;()Lorg/freertr/user/userFormat; showStats:(Lorg/freertr/ip/ipFwdIface;)Lorg/freertr/user/userFormat; showIfacesrouterRedistChangedrouterOthersChangedrouterCloseNow routerGetHelp(Lorg/freertr/user/userHelp;)VrouterGetConfig&(Ljava/util/List;Ljava/lang/String;I)V:(Ljava/util/List;Ljava/lang/String;I)VrouterConfigure(Lorg/freertr/util/cmds;)ZrunrouterNeighCountrouterNeighList(Lorg/freertr/tab/tabRoute;)V8(Lorg/freertr/tab/tabRoute;)VrouterIfaceCountrouterRecursionsrouterLinkStates:(Lorg/freertr/tab/tabRoute;IILorg/freertr/addr/addrIPv4;)VU(Lorg/freertr/tab/tabRoute;IILorg/freertr/addr/addrIPv4;)VrouterStateGet(Ljava/util/List;)V'(Ljava/util/List;)VrouterStateSet SourceFile rtrPvrp.javaBootstrapMethods pvrp on  add iface  del iface | router-id  base       o$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 routeTypeorg/freertr/util/statestatesaddTypeowner%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup!2367:;ABw OHI "% +,/ Y*** ****** *#*&Y()*-*+0*,4*-8*?*CYEF:*0J,$O: U:*X*0*[_Y*adnU Z_din"s'x,}1<AFKP[fiKPY% *0gm>q+gvw+}Y*+M*F,}N--M,*X,. ".248< }}?q+gw+}Y*+M*F,}M,,,*X2 !-126:> }HYMYM>*F*F}:,,",9@F $p2YL=*F*F}N-++ %*0 !7=*F+*F}N--+:&   ',/ 5}m.+}Y*+M*F,}M,,,!"$%& '") }KY÷L=*F3*F}N-+-Ÿg-ɶτ+"2 34%5)6,8C3I:}!Z qѸwYշL>*F*F}:Ŵٹ*# +ŴM,,ŵ , ,,* ,,,*,*#>*Fp*F}:UŴٹ?6ɶ/:+ ʄ*++*0&*+NY.L+- 6*03]*04M,F,7:M, ,>,* ,*,*+,A*@6+34+4M*0D,G:,JJ*+M6*F*F}:oY.LP+*MSWZ]WaYdM,*0Jek*,*0&J,,* ,,,*,*+P,An +ŶqW*u xRyJ+3d6=+4M,),|,| +,W+6ɶ(: фo-**-*CYE:*6-3-4M,,v,l,*[,,`:*,2*0, ,Y,,kWe* 6** 2*0Y* fYYɷW6*Fv*F}:ZŴٹD8*2*0YfYYɷW6*+Y*2̄*MY*2*ط:*6*Fa*F}:EŴٹ/#ߧ 6-3-4M,x,j,`,* OY*0, ,,:::,dq6*о*2*0*-*-*Y׵**0*AB DF"G/H4I7KJLMNdOgQxRSTUVXZ[\^_Fbcdeg,h/j?kNlSmVoejkbqrstuvwxy{|}~v ).1@FKZhmp{'19CZgnru !$/2JMa  ),@agt  ",2>EI L W Zru  !R } E} "}#*B $!}[} " }} }#CC WC9!} 4 +!}  C = C"!*X '(: **X./ 0 2 Vq  w*-<*F$*F}M, ,,* W*в W6 89 ;<=*>.?1A5B9<?DJEUF }9+ YO+ YO+ YO+ YO !+ YO#%+ YO')+ YO+-+ YOYO+/+ YO13+ YOYO+5+ YO79+ YO+;+ YO+-+ YOYO+=+ YO+?BNO(P<QPRdSxTUVWXYZ [$\8]+,*?gADW+*u, GI+*,GI+*#,#GIG:**O:+*,'** PI+* ,7** **SI* gh+iBjYk^lemropq `hUhUh"hLhhbhhp+VM>,Z\ +VM>,\B+VM*?,_W,c:i*?in*?,\**), \*u*),#\*#*),'\* W** ***)*+Vr*+Vr *+VM,x,1\*+Vr***{*),7\*в W* *** **)*+Vr*+Vr *+Vr*+Vr** *`d*l*) Bz{|}~"'07<DPT_akx ",7:LSU_josx}jh7jRJh RJh RJh 5:Ql"*)u0W*-*XL+" Fc+<=*F*F}ɶ`<#) $ =*F*F}N-s-Ŵٹ^6-ɶO-:3Yd:fYɵk+*WoB  25DRWZcw }!/ *F &/2*P@@@@