github.com/osrg/gobgp@v2.0.0+incompatible/api/gobgp.pb.go (about)

     1  // Code generated by protoc-gen-go.
     2  // source: gobgp.proto
     3  // DO NOT EDIT!
     4  
     5  /*
     6  Package gobgpapi is a generated protocol buffer package.
     7  
     8  It is generated from these files:
     9  	gobgp.proto
    10  	attribute.proto
    11  	capability.proto
    12  
    13  It has these top-level messages:
    14  	StartBgpRequest
    15  	StopBgpRequest
    16  	GetBgpRequest
    17  	GetBgpResponse
    18  	AddPeerRequest
    19  	DeletePeerRequest
    20  	ListPeerRequest
    21  	ListPeerResponse
    22  	UpdatePeerRequest
    23  	UpdatePeerResponse
    24  	ResetPeerRequest
    25  	ShutdownPeerRequest
    26  	EnablePeerRequest
    27  	DisablePeerRequest
    28  	MonitorPeerRequest
    29  	MonitorPeerResponse
    30  	AddPeerGroupRequest
    31  	DeletePeerGroupRequest
    32  	UpdatePeerGroupRequest
    33  	UpdatePeerGroupResponse
    34  	AddDynamicNeighborRequest
    35  	AddPathRequest
    36  	AddPathResponse
    37  	DeletePathRequest
    38  	ListPathRequest
    39  	ListPathResponse
    40  	AddPathStreamRequest
    41  	GetTableRequest
    42  	GetTableResponse
    43  	MonitorTableRequest
    44  	MonitorTableResponse
    45  	AddVrfRequest
    46  	DeleteVrfRequest
    47  	ListVrfRequest
    48  	ListVrfResponse
    49  	AddPolicyRequest
    50  	DeletePolicyRequest
    51  	ListPolicyRequest
    52  	ListPolicyResponse
    53  	SetPoliciesRequest
    54  	AddDefinedSetRequest
    55  	DeleteDefinedSetRequest
    56  	ListDefinedSetRequest
    57  	ListDefinedSetResponse
    58  	AddStatementRequest
    59  	DeleteStatementRequest
    60  	ListStatementRequest
    61  	ListStatementResponse
    62  	AddPolicyAssignmentRequest
    63  	DeletePolicyAssignmentRequest
    64  	ListPolicyAssignmentRequest
    65  	ListPolicyAssignmentResponse
    66  	SetPolicyAssignmentRequest
    67  	AddRpkiRequest
    68  	DeleteRpkiRequest
    69  	ListRpkiRequest
    70  	ListRpkiResponse
    71  	EnableRpkiRequest
    72  	DisableRpkiRequest
    73  	ResetRpkiRequest
    74  	ListRpkiTableRequest
    75  	ListRpkiTableResponse
    76  	EnableZebraRequest
    77  	EnableMrtRequest
    78  	DisableMrtRequest
    79  	AddBmpRequest
    80  	DeleteBmpRequest
    81  	Family
    82  	Validation
    83  	Path
    84  	Destination
    85  	TableLookupPrefix
    86  	Peer
    87  	PeerGroup
    88  	DynamicNeighbor
    89  	ApplyPolicy
    90  	PrefixLimit
    91  	PeerConf
    92  	PeerGroupConf
    93  	PeerGroupState
    94  	EbgpMultihop
    95  	RouteReflector
    96  	PeerState
    97  	Messages
    98  	Message
    99  	Queues
   100  	Timers
   101  	TimersConfig
   102  	TimersState
   103  	Transport
   104  	RouteServer
   105  	GracefulRestart
   106  	MpGracefulRestartConfig
   107  	MpGracefulRestartState
   108  	MpGracefulRestart
   109  	AfiSafiConfig
   110  	AfiSafiState
   111  	RouteSelectionOptionsConfig
   112  	RouteSelectionOptionsState
   113  	RouteSelectionOptions
   114  	UseMultiplePathsConfig
   115  	UseMultiplePathsState
   116  	EbgpConfig
   117  	EbgpState
   118  	Ebgp
   119  	IbgpConfig
   120  	IbgpState
   121  	Ibgp
   122  	UseMultiplePaths
   123  	RouteTargetMembershipConfig
   124  	RouteTargetMembershipState
   125  	RouteTargetMembership
   126  	LongLivedGracefulRestartConfig
   127  	LongLivedGracefulRestartState
   128  	LongLivedGracefulRestart
   129  	AfiSafi
   130  	AddPathsConfig
   131  	AddPathsState
   132  	AddPaths
   133  	Prefix
   134  	DefinedSet
   135  	MatchSet
   136  	AsPathLength
   137  	Conditions
   138  	CommunityAction
   139  	MedAction
   140  	AsPrependAction
   141  	NexthopAction
   142  	LocalPrefAction
   143  	Actions
   144  	Statement
   145  	Policy
   146  	PolicyAssignment
   147  	RoutingPolicy
   148  	Roa
   149  	Vrf
   150  	DefaultRouteDistance
   151  	Global
   152  	Confederation
   153  	RPKIConf
   154  	RPKIState
   155  	Rpki
   156  	OriginAttribute
   157  	AsSegment
   158  	AsPathAttribute
   159  	NextHopAttribute
   160  	MultiExitDiscAttribute
   161  	LocalPrefAttribute
   162  	AtomicAggregateAttribute
   163  	AggregatorAttribute
   164  	CommunitiesAttribute
   165  	OriginatorIdAttribute
   166  	ClusterListAttribute
   167  	IPAddressPrefix
   168  	LabeledIPAddressPrefix
   169  	EncapsulationNLRI
   170  	RouteDistinguisherTwoOctetAS
   171  	RouteDistinguisherIPAddress
   172  	RouteDistinguisherFourOctetAS
   173  	EthernetSegmentIdentifier
   174  	EVPNEthernetAutoDiscoveryRoute
   175  	EVPNMACIPAdvertisementRoute
   176  	EVPNInclusiveMulticastEthernetTagRoute
   177  	EVPNEthernetSegmentRoute
   178  	EVPNIPPrefixRoute
   179  	LabeledVPNIPAddressPrefix
   180  	RouteTargetMembershipNLRI
   181  	FlowSpecIPPrefix
   182  	FlowSpecMAC
   183  	FlowSpecComponentItem
   184  	FlowSpecComponent
   185  	FlowSpecNLRI
   186  	VPNFlowSpecNLRI
   187  	OpaqueNLRI
   188  	MpReachNLRIAttribute
   189  	MpUnreachNLRIAttribute
   190  	TwoOctetAsSpecificExtended
   191  	IPv4AddressSpecificExtended
   192  	FourOctetAsSpecificExtended
   193  	ValidationExtended
   194  	ColorExtended
   195  	EncapExtended
   196  	DefaultGatewayExtended
   197  	OpaqueExtended
   198  	ESILabelExtended
   199  	ESImportRouteTarget
   200  	MacMobilityExtended
   201  	RouterMacExtended
   202  	TrafficRateExtended
   203  	TrafficActionExtended
   204  	RedirectTwoOctetAsSpecificExtended
   205  	RedirectIPv4AddressSpecificExtended
   206  	RedirectFourOctetAsSpecificExtended
   207  	TrafficRemarkExtended
   208  	UnknownExtended
   209  	ExtendedCommunitiesAttribute
   210  	As4PathAttribute
   211  	As4AggregatorAttribute
   212  	PmsiTunnelAttribute
   213  	TunnelEncapSubTLVEncapsulation
   214  	TunnelEncapSubTLVProtocol
   215  	TunnelEncapSubTLVColor
   216  	TunnelEncapSubTLVUnknown
   217  	TunnelEncapTLV
   218  	TunnelEncapAttribute
   219  	IPv6AddressSpecificExtended
   220  	RedirectIPv6AddressSpecificExtended
   221  	IP6ExtendedCommunitiesAttribute
   222  	AigpTLVIGPMetric
   223  	AigpTLVUnknown
   224  	AigpAttribute
   225  	LargeCommunity
   226  	LargeCommunitiesAttribute
   227  	UnknownAttribute
   228  	MultiProtocolCapability
   229  	RouteRefreshCapability
   230  	CarryingLabelInfoCapability
   231  	ExtendedNexthopCapabilityTuple
   232  	ExtendedNexthopCapability
   233  	GracefulRestartCapabilityTuple
   234  	GracefulRestartCapability
   235  	FourOctetASNumberCapability
   236  	AddPathCapabilityTuple
   237  	AddPathCapability
   238  	EnhancedRouteRefreshCapability
   239  	LongLivedGracefulRestartCapabilityTuple
   240  	LongLivedGracefulRestartCapability
   241  	RouteRefreshCiscoCapability
   242  	UnknownCapability
   243  */
   244  package gobgpapi
   245  
   246  import proto "github.com/golang/protobuf/proto"
   247  import fmt "fmt"
   248  import math "math"
   249  import google_protobuf "github.com/golang/protobuf/ptypes/any"
   250  import google_protobuf1 "github.com/golang/protobuf/ptypes/empty"
   251  import google_protobuf2 "github.com/golang/protobuf/ptypes/timestamp"
   252  
   253  import (
   254  	context "golang.org/x/net/context"
   255  	grpc "google.golang.org/grpc"
   256  )
   257  
   258  // Reference imports to suppress errors if they are not otherwise used.
   259  var _ = proto.Marshal
   260  var _ = fmt.Errorf
   261  var _ = math.Inf
   262  
   263  // This is a compile-time assertion to ensure that this generated file
   264  // is compatible with the proto package it is being compiled against.
   265  // A compilation error at this line likely means your copy of the
   266  // proto package needs to be updated.
   267  const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
   268  
   269  type TableType int32
   270  
   271  const (
   272  	TableType_GLOBAL  TableType = 0
   273  	TableType_LOCAL   TableType = 1
   274  	TableType_ADJ_IN  TableType = 2
   275  	TableType_ADJ_OUT TableType = 3
   276  	TableType_VRF     TableType = 4
   277  )
   278  
   279  var TableType_name = map[int32]string{
   280  	0: "GLOBAL",
   281  	1: "LOCAL",
   282  	2: "ADJ_IN",
   283  	3: "ADJ_OUT",
   284  	4: "VRF",
   285  }
   286  var TableType_value = map[string]int32{
   287  	"GLOBAL":  0,
   288  	"LOCAL":   1,
   289  	"ADJ_IN":  2,
   290  	"ADJ_OUT": 3,
   291  	"VRF":     4,
   292  }
   293  
   294  func (x TableType) String() string {
   295  	return proto.EnumName(TableType_name, int32(x))
   296  }
   297  func (TableType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
   298  
   299  // API representation of table.LookupOption
   300  type TableLookupOption int32
   301  
   302  const (
   303  	TableLookupOption_LOOKUP_EXACT   TableLookupOption = 0
   304  	TableLookupOption_LOOKUP_LONGER  TableLookupOption = 1
   305  	TableLookupOption_LOOKUP_SHORTER TableLookupOption = 2
   306  )
   307  
   308  var TableLookupOption_name = map[int32]string{
   309  	0: "LOOKUP_EXACT",
   310  	1: "LOOKUP_LONGER",
   311  	2: "LOOKUP_SHORTER",
   312  }
   313  var TableLookupOption_value = map[string]int32{
   314  	"LOOKUP_EXACT":   0,
   315  	"LOOKUP_LONGER":  1,
   316  	"LOOKUP_SHORTER": 2,
   317  }
   318  
   319  func (x TableLookupOption) String() string {
   320  	return proto.EnumName(TableLookupOption_name, int32(x))
   321  }
   322  func (TableLookupOption) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
   323  
   324  type DefinedType int32
   325  
   326  const (
   327  	DefinedType_PREFIX          DefinedType = 0
   328  	DefinedType_NEIGHBOR        DefinedType = 1
   329  	DefinedType_TAG             DefinedType = 2
   330  	DefinedType_AS_PATH         DefinedType = 3
   331  	DefinedType_COMMUNITY       DefinedType = 4
   332  	DefinedType_EXT_COMMUNITY   DefinedType = 5
   333  	DefinedType_LARGE_COMMUNITY DefinedType = 6
   334  	DefinedType_NEXT_HOP        DefinedType = 7
   335  )
   336  
   337  var DefinedType_name = map[int32]string{
   338  	0: "PREFIX",
   339  	1: "NEIGHBOR",
   340  	2: "TAG",
   341  	3: "AS_PATH",
   342  	4: "COMMUNITY",
   343  	5: "EXT_COMMUNITY",
   344  	6: "LARGE_COMMUNITY",
   345  	7: "NEXT_HOP",
   346  }
   347  var DefinedType_value = map[string]int32{
   348  	"PREFIX":          0,
   349  	"NEIGHBOR":        1,
   350  	"TAG":             2,
   351  	"AS_PATH":         3,
   352  	"COMMUNITY":       4,
   353  	"EXT_COMMUNITY":   5,
   354  	"LARGE_COMMUNITY": 6,
   355  	"NEXT_HOP":        7,
   356  }
   357  
   358  func (x DefinedType) String() string {
   359  	return proto.EnumName(DefinedType_name, int32(x))
   360  }
   361  func (DefinedType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
   362  
   363  type MatchType int32
   364  
   365  const (
   366  	MatchType_ANY    MatchType = 0
   367  	MatchType_ALL    MatchType = 1
   368  	MatchType_INVERT MatchType = 2
   369  )
   370  
   371  var MatchType_name = map[int32]string{
   372  	0: "ANY",
   373  	1: "ALL",
   374  	2: "INVERT",
   375  }
   376  var MatchType_value = map[string]int32{
   377  	"ANY":    0,
   378  	"ALL":    1,
   379  	"INVERT": 2,
   380  }
   381  
   382  func (x MatchType) String() string {
   383  	return proto.EnumName(MatchType_name, int32(x))
   384  }
   385  func (MatchType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
   386  
   387  type AsPathLengthType int32
   388  
   389  const (
   390  	AsPathLengthType_EQ AsPathLengthType = 0
   391  	AsPathLengthType_GE AsPathLengthType = 1
   392  	AsPathLengthType_LE AsPathLengthType = 2
   393  )
   394  
   395  var AsPathLengthType_name = map[int32]string{
   396  	0: "EQ",
   397  	1: "GE",
   398  	2: "LE",
   399  }
   400  var AsPathLengthType_value = map[string]int32{
   401  	"EQ": 0,
   402  	"GE": 1,
   403  	"LE": 2,
   404  }
   405  
   406  func (x AsPathLengthType) String() string {
   407  	return proto.EnumName(AsPathLengthType_name, int32(x))
   408  }
   409  func (AsPathLengthType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
   410  
   411  type RouteAction int32
   412  
   413  const (
   414  	RouteAction_NONE   RouteAction = 0
   415  	RouteAction_ACCEPT RouteAction = 1
   416  	RouteAction_REJECT RouteAction = 2
   417  )
   418  
   419  var RouteAction_name = map[int32]string{
   420  	0: "NONE",
   421  	1: "ACCEPT",
   422  	2: "REJECT",
   423  }
   424  var RouteAction_value = map[string]int32{
   425  	"NONE":   0,
   426  	"ACCEPT": 1,
   427  	"REJECT": 2,
   428  }
   429  
   430  func (x RouteAction) String() string {
   431  	return proto.EnumName(RouteAction_name, int32(x))
   432  }
   433  func (RouteAction) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
   434  
   435  type CommunityActionType int32
   436  
   437  const (
   438  	CommunityActionType_COMMUNITY_ADD     CommunityActionType = 0
   439  	CommunityActionType_COMMUNITY_REMOVE  CommunityActionType = 1
   440  	CommunityActionType_COMMUNITY_REPLACE CommunityActionType = 2
   441  )
   442  
   443  var CommunityActionType_name = map[int32]string{
   444  	0: "COMMUNITY_ADD",
   445  	1: "COMMUNITY_REMOVE",
   446  	2: "COMMUNITY_REPLACE",
   447  }
   448  var CommunityActionType_value = map[string]int32{
   449  	"COMMUNITY_ADD":     0,
   450  	"COMMUNITY_REMOVE":  1,
   451  	"COMMUNITY_REPLACE": 2,
   452  }
   453  
   454  func (x CommunityActionType) String() string {
   455  	return proto.EnumName(CommunityActionType_name, int32(x))
   456  }
   457  func (CommunityActionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
   458  
   459  type MedActionType int32
   460  
   461  const (
   462  	MedActionType_MED_MOD     MedActionType = 0
   463  	MedActionType_MED_REPLACE MedActionType = 1
   464  )
   465  
   466  var MedActionType_name = map[int32]string{
   467  	0: "MED_MOD",
   468  	1: "MED_REPLACE",
   469  }
   470  var MedActionType_value = map[string]int32{
   471  	"MED_MOD":     0,
   472  	"MED_REPLACE": 1,
   473  }
   474  
   475  func (x MedActionType) String() string {
   476  	return proto.EnumName(MedActionType_name, int32(x))
   477  }
   478  func (MedActionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
   479  
   480  type PolicyDirection int32
   481  
   482  const (
   483  	PolicyDirection_UNKNOWN PolicyDirection = 0
   484  	PolicyDirection_IMPORT  PolicyDirection = 1
   485  	PolicyDirection_EXPORT  PolicyDirection = 2
   486  )
   487  
   488  var PolicyDirection_name = map[int32]string{
   489  	0: "UNKNOWN",
   490  	1: "IMPORT",
   491  	2: "EXPORT",
   492  }
   493  var PolicyDirection_value = map[string]int32{
   494  	"UNKNOWN": 0,
   495  	"IMPORT":  1,
   496  	"EXPORT":  2,
   497  }
   498  
   499  func (x PolicyDirection) String() string {
   500  	return proto.EnumName(PolicyDirection_name, int32(x))
   501  }
   502  func (PolicyDirection) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
   503  
   504  type ResetPeerRequest_SoftResetDirection int32
   505  
   506  const (
   507  	ResetPeerRequest_IN   ResetPeerRequest_SoftResetDirection = 0
   508  	ResetPeerRequest_OUT  ResetPeerRequest_SoftResetDirection = 1
   509  	ResetPeerRequest_BOTH ResetPeerRequest_SoftResetDirection = 2
   510  )
   511  
   512  var ResetPeerRequest_SoftResetDirection_name = map[int32]string{
   513  	0: "IN",
   514  	1: "OUT",
   515  	2: "BOTH",
   516  }
   517  var ResetPeerRequest_SoftResetDirection_value = map[string]int32{
   518  	"IN":   0,
   519  	"OUT":  1,
   520  	"BOTH": 2,
   521  }
   522  
   523  func (x ResetPeerRequest_SoftResetDirection) String() string {
   524  	return proto.EnumName(ResetPeerRequest_SoftResetDirection_name, int32(x))
   525  }
   526  func (ResetPeerRequest_SoftResetDirection) EnumDescriptor() ([]byte, []int) {
   527  	return fileDescriptor0, []int{10, 0}
   528  }
   529  
   530  type ListPathRequest_SortType int32
   531  
   532  const (
   533  	ListPathRequest_NONE   ListPathRequest_SortType = 0
   534  	ListPathRequest_PREFIX ListPathRequest_SortType = 1
   535  )
   536  
   537  var ListPathRequest_SortType_name = map[int32]string{
   538  	0: "NONE",
   539  	1: "PREFIX",
   540  }
   541  var ListPathRequest_SortType_value = map[string]int32{
   542  	"NONE":   0,
   543  	"PREFIX": 1,
   544  }
   545  
   546  func (x ListPathRequest_SortType) String() string {
   547  	return proto.EnumName(ListPathRequest_SortType_name, int32(x))
   548  }
   549  func (ListPathRequest_SortType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{24, 0} }
   550  
   551  type AddBmpRequest_MonitoringPolicy int32
   552  
   553  const (
   554  	AddBmpRequest_PRE   AddBmpRequest_MonitoringPolicy = 0
   555  	AddBmpRequest_POST  AddBmpRequest_MonitoringPolicy = 1
   556  	AddBmpRequest_BOTH  AddBmpRequest_MonitoringPolicy = 2
   557  	AddBmpRequest_LOCAL AddBmpRequest_MonitoringPolicy = 3
   558  	AddBmpRequest_ALL   AddBmpRequest_MonitoringPolicy = 4
   559  )
   560  
   561  var AddBmpRequest_MonitoringPolicy_name = map[int32]string{
   562  	0: "PRE",
   563  	1: "POST",
   564  	2: "BOTH",
   565  	3: "LOCAL",
   566  	4: "ALL",
   567  }
   568  var AddBmpRequest_MonitoringPolicy_value = map[string]int32{
   569  	"PRE":   0,
   570  	"POST":  1,
   571  	"BOTH":  2,
   572  	"LOCAL": 3,
   573  	"ALL":   4,
   574  }
   575  
   576  func (x AddBmpRequest_MonitoringPolicy) String() string {
   577  	return proto.EnumName(AddBmpRequest_MonitoringPolicy_name, int32(x))
   578  }
   579  func (AddBmpRequest_MonitoringPolicy) EnumDescriptor() ([]byte, []int) {
   580  	return fileDescriptor0, []int{65, 0}
   581  }
   582  
   583  type Family_Afi int32
   584  
   585  const (
   586  	Family_AFI_UNKNOWN Family_Afi = 0
   587  	Family_AFI_IP      Family_Afi = 1
   588  	Family_AFI_IP6     Family_Afi = 2
   589  	Family_AFI_L2VPN   Family_Afi = 25
   590  	Family_AFI_OPAQUE  Family_Afi = 16397
   591  )
   592  
   593  var Family_Afi_name = map[int32]string{
   594  	0:     "AFI_UNKNOWN",
   595  	1:     "AFI_IP",
   596  	2:     "AFI_IP6",
   597  	25:    "AFI_L2VPN",
   598  	16397: "AFI_OPAQUE",
   599  }
   600  var Family_Afi_value = map[string]int32{
   601  	"AFI_UNKNOWN": 0,
   602  	"AFI_IP":      1,
   603  	"AFI_IP6":     2,
   604  	"AFI_L2VPN":   25,
   605  	"AFI_OPAQUE":  16397,
   606  }
   607  
   608  func (x Family_Afi) String() string {
   609  	return proto.EnumName(Family_Afi_name, int32(x))
   610  }
   611  func (Family_Afi) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{67, 0} }
   612  
   613  type Family_Safi int32
   614  
   615  const (
   616  	Family_SAFI_UNKNOWN                  Family_Safi = 0
   617  	Family_SAFI_UNICAST                  Family_Safi = 1
   618  	Family_SAFI_MULTICAST                Family_Safi = 2
   619  	Family_SAFI_MPLS_LABEL               Family_Safi = 4
   620  	Family_SAFI_ENCAPSULATION            Family_Safi = 7
   621  	Family_SAFI_VPLS                     Family_Safi = 65
   622  	Family_SAFI_EVPN                     Family_Safi = 70
   623  	Family_SAFI_MPLS_VPN                 Family_Safi = 128
   624  	Family_SAFI_MPLS_VPN_MULTICAST       Family_Safi = 129
   625  	Family_SAFI_ROUTE_TARGET_CONSTRAINTS Family_Safi = 132
   626  	Family_SAFI_FLOW_SPEC_UNICAST        Family_Safi = 133
   627  	Family_SAFI_FLOW_SPEC_VPN            Family_Safi = 134
   628  	Family_SAFI_KEY_VALUE                Family_Safi = 241
   629  )
   630  
   631  var Family_Safi_name = map[int32]string{
   632  	0:   "SAFI_UNKNOWN",
   633  	1:   "SAFI_UNICAST",
   634  	2:   "SAFI_MULTICAST",
   635  	4:   "SAFI_MPLS_LABEL",
   636  	7:   "SAFI_ENCAPSULATION",
   637  	65:  "SAFI_VPLS",
   638  	70:  "SAFI_EVPN",
   639  	128: "SAFI_MPLS_VPN",
   640  	129: "SAFI_MPLS_VPN_MULTICAST",
   641  	132: "SAFI_ROUTE_TARGET_CONSTRAINTS",
   642  	133: "SAFI_FLOW_SPEC_UNICAST",
   643  	134: "SAFI_FLOW_SPEC_VPN",
   644  	241: "SAFI_KEY_VALUE",
   645  }
   646  var Family_Safi_value = map[string]int32{
   647  	"SAFI_UNKNOWN":                  0,
   648  	"SAFI_UNICAST":                  1,
   649  	"SAFI_MULTICAST":                2,
   650  	"SAFI_MPLS_LABEL":               4,
   651  	"SAFI_ENCAPSULATION":            7,
   652  	"SAFI_VPLS":                     65,
   653  	"SAFI_EVPN":                     70,
   654  	"SAFI_MPLS_VPN":                 128,
   655  	"SAFI_MPLS_VPN_MULTICAST":       129,
   656  	"SAFI_ROUTE_TARGET_CONSTRAINTS": 132,
   657  	"SAFI_FLOW_SPEC_UNICAST":        133,
   658  	"SAFI_FLOW_SPEC_VPN":            134,
   659  	"SAFI_KEY_VALUE":                241,
   660  }
   661  
   662  func (x Family_Safi) String() string {
   663  	return proto.EnumName(Family_Safi_name, int32(x))
   664  }
   665  func (Family_Safi) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{67, 1} }
   666  
   667  type Validation_State int32
   668  
   669  const (
   670  	Validation_STATE_NONE      Validation_State = 0
   671  	Validation_STATE_NOT_FOUND Validation_State = 1
   672  	Validation_STATE_VALID     Validation_State = 2
   673  	Validation_STATE_INVALID   Validation_State = 3
   674  )
   675  
   676  var Validation_State_name = map[int32]string{
   677  	0: "STATE_NONE",
   678  	1: "STATE_NOT_FOUND",
   679  	2: "STATE_VALID",
   680  	3: "STATE_INVALID",
   681  }
   682  var Validation_State_value = map[string]int32{
   683  	"STATE_NONE":      0,
   684  	"STATE_NOT_FOUND": 1,
   685  	"STATE_VALID":     2,
   686  	"STATE_INVALID":   3,
   687  }
   688  
   689  func (x Validation_State) String() string {
   690  	return proto.EnumName(Validation_State_name, int32(x))
   691  }
   692  func (Validation_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{68, 0} }
   693  
   694  type Validation_Reason int32
   695  
   696  const (
   697  	Validation_REASOT_NONE   Validation_Reason = 0
   698  	Validation_REASON_AS     Validation_Reason = 1
   699  	Validation_REASON_LENGTH Validation_Reason = 2
   700  )
   701  
   702  var Validation_Reason_name = map[int32]string{
   703  	0: "REASOT_NONE",
   704  	1: "REASON_AS",
   705  	2: "REASON_LENGTH",
   706  }
   707  var Validation_Reason_value = map[string]int32{
   708  	"REASOT_NONE":   0,
   709  	"REASON_AS":     1,
   710  	"REASON_LENGTH": 2,
   711  }
   712  
   713  func (x Validation_Reason) String() string {
   714  	return proto.EnumName(Validation_Reason_name, int32(x))
   715  }
   716  func (Validation_Reason) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{68, 1} }
   717  
   718  type PeerConf_RemovePrivateAs int32
   719  
   720  const (
   721  	PeerConf_NONE    PeerConf_RemovePrivateAs = 0
   722  	PeerConf_ALL     PeerConf_RemovePrivateAs = 1
   723  	PeerConf_REPLACE PeerConf_RemovePrivateAs = 2
   724  )
   725  
   726  var PeerConf_RemovePrivateAs_name = map[int32]string{
   727  	0: "NONE",
   728  	1: "ALL",
   729  	2: "REPLACE",
   730  }
   731  var PeerConf_RemovePrivateAs_value = map[string]int32{
   732  	"NONE":    0,
   733  	"ALL":     1,
   734  	"REPLACE": 2,
   735  }
   736  
   737  func (x PeerConf_RemovePrivateAs) String() string {
   738  	return proto.EnumName(PeerConf_RemovePrivateAs_name, int32(x))
   739  }
   740  func (PeerConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{77, 0} }
   741  
   742  type PeerGroupConf_RemovePrivateAs int32
   743  
   744  const (
   745  	PeerGroupConf_NONE    PeerGroupConf_RemovePrivateAs = 0
   746  	PeerGroupConf_ALL     PeerGroupConf_RemovePrivateAs = 1
   747  	PeerGroupConf_REPLACE PeerGroupConf_RemovePrivateAs = 2
   748  )
   749  
   750  var PeerGroupConf_RemovePrivateAs_name = map[int32]string{
   751  	0: "NONE",
   752  	1: "ALL",
   753  	2: "REPLACE",
   754  }
   755  var PeerGroupConf_RemovePrivateAs_value = map[string]int32{
   756  	"NONE":    0,
   757  	"ALL":     1,
   758  	"REPLACE": 2,
   759  }
   760  
   761  func (x PeerGroupConf_RemovePrivateAs) String() string {
   762  	return proto.EnumName(PeerGroupConf_RemovePrivateAs_name, int32(x))
   763  }
   764  func (PeerGroupConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) {
   765  	return fileDescriptor0, []int{78, 0}
   766  }
   767  
   768  type PeerGroupState_RemovePrivateAs int32
   769  
   770  const (
   771  	PeerGroupState_NONE    PeerGroupState_RemovePrivateAs = 0
   772  	PeerGroupState_ALL     PeerGroupState_RemovePrivateAs = 1
   773  	PeerGroupState_REPLACE PeerGroupState_RemovePrivateAs = 2
   774  )
   775  
   776  var PeerGroupState_RemovePrivateAs_name = map[int32]string{
   777  	0: "NONE",
   778  	1: "ALL",
   779  	2: "REPLACE",
   780  }
   781  var PeerGroupState_RemovePrivateAs_value = map[string]int32{
   782  	"NONE":    0,
   783  	"ALL":     1,
   784  	"REPLACE": 2,
   785  }
   786  
   787  func (x PeerGroupState_RemovePrivateAs) String() string {
   788  	return proto.EnumName(PeerGroupState_RemovePrivateAs_name, int32(x))
   789  }
   790  func (PeerGroupState_RemovePrivateAs) EnumDescriptor() ([]byte, []int) {
   791  	return fileDescriptor0, []int{79, 0}
   792  }
   793  
   794  type PeerState_SessionState int32
   795  
   796  const (
   797  	PeerState_UNKNOWN     PeerState_SessionState = 0
   798  	PeerState_IDLE        PeerState_SessionState = 1
   799  	PeerState_CONNECT     PeerState_SessionState = 2
   800  	PeerState_ACTIVE      PeerState_SessionState = 3
   801  	PeerState_OPENSENT    PeerState_SessionState = 4
   802  	PeerState_OPENCONFIRM PeerState_SessionState = 5
   803  	PeerState_ESTABLISHED PeerState_SessionState = 6
   804  )
   805  
   806  var PeerState_SessionState_name = map[int32]string{
   807  	0: "UNKNOWN",
   808  	1: "IDLE",
   809  	2: "CONNECT",
   810  	3: "ACTIVE",
   811  	4: "OPENSENT",
   812  	5: "OPENCONFIRM",
   813  	6: "ESTABLISHED",
   814  }
   815  var PeerState_SessionState_value = map[string]int32{
   816  	"UNKNOWN":     0,
   817  	"IDLE":        1,
   818  	"CONNECT":     2,
   819  	"ACTIVE":      3,
   820  	"OPENSENT":    4,
   821  	"OPENCONFIRM": 5,
   822  	"ESTABLISHED": 6,
   823  }
   824  
   825  func (x PeerState_SessionState) String() string {
   826  	return proto.EnumName(PeerState_SessionState_name, int32(x))
   827  }
   828  func (PeerState_SessionState) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{82, 0} }
   829  
   830  type PeerState_AdminState int32
   831  
   832  const (
   833  	PeerState_UP     PeerState_AdminState = 0
   834  	PeerState_DOWN   PeerState_AdminState = 1
   835  	PeerState_PFX_CT PeerState_AdminState = 2
   836  )
   837  
   838  var PeerState_AdminState_name = map[int32]string{
   839  	0: "UP",
   840  	1: "DOWN",
   841  	2: "PFX_CT",
   842  }
   843  var PeerState_AdminState_value = map[string]int32{
   844  	"UP":     0,
   845  	"DOWN":   1,
   846  	"PFX_CT": 2,
   847  }
   848  
   849  func (x PeerState_AdminState) String() string {
   850  	return proto.EnumName(PeerState_AdminState_name, int32(x))
   851  }
   852  func (PeerState_AdminState) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{82, 1} }
   853  
   854  type Conditions_RouteType int32
   855  
   856  const (
   857  	Conditions_ROUTE_TYPE_NONE     Conditions_RouteType = 0
   858  	Conditions_ROUTE_TYPE_INTERNAL Conditions_RouteType = 1
   859  	Conditions_ROUTE_TYPE_EXTERNAL Conditions_RouteType = 2
   860  	Conditions_ROUTE_TYPE_LOCAL    Conditions_RouteType = 3
   861  )
   862  
   863  var Conditions_RouteType_name = map[int32]string{
   864  	0: "ROUTE_TYPE_NONE",
   865  	1: "ROUTE_TYPE_INTERNAL",
   866  	2: "ROUTE_TYPE_EXTERNAL",
   867  	3: "ROUTE_TYPE_LOCAL",
   868  }
   869  var Conditions_RouteType_value = map[string]int32{
   870  	"ROUTE_TYPE_NONE":     0,
   871  	"ROUTE_TYPE_INTERNAL": 1,
   872  	"ROUTE_TYPE_EXTERNAL": 2,
   873  	"ROUTE_TYPE_LOCAL":    3,
   874  }
   875  
   876  func (x Conditions_RouteType) String() string {
   877  	return proto.EnumName(Conditions_RouteType_name, int32(x))
   878  }
   879  func (Conditions_RouteType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{123, 0} }
   880  
   881  type StartBgpRequest struct {
   882  	Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"`
   883  }
   884  
   885  func (m *StartBgpRequest) Reset()                    { *m = StartBgpRequest{} }
   886  func (m *StartBgpRequest) String() string            { return proto.CompactTextString(m) }
   887  func (*StartBgpRequest) ProtoMessage()               {}
   888  func (*StartBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }
   889  
   890  func (m *StartBgpRequest) GetGlobal() *Global {
   891  	if m != nil {
   892  		return m.Global
   893  	}
   894  	return nil
   895  }
   896  
   897  type StopBgpRequest struct {
   898  }
   899  
   900  func (m *StopBgpRequest) Reset()                    { *m = StopBgpRequest{} }
   901  func (m *StopBgpRequest) String() string            { return proto.CompactTextString(m) }
   902  func (*StopBgpRequest) ProtoMessage()               {}
   903  func (*StopBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }
   904  
   905  type GetBgpRequest struct {
   906  }
   907  
   908  func (m *GetBgpRequest) Reset()                    { *m = GetBgpRequest{} }
   909  func (m *GetBgpRequest) String() string            { return proto.CompactTextString(m) }
   910  func (*GetBgpRequest) ProtoMessage()               {}
   911  func (*GetBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }
   912  
   913  type GetBgpResponse struct {
   914  	Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"`
   915  }
   916  
   917  func (m *GetBgpResponse) Reset()                    { *m = GetBgpResponse{} }
   918  func (m *GetBgpResponse) String() string            { return proto.CompactTextString(m) }
   919  func (*GetBgpResponse) ProtoMessage()               {}
   920  func (*GetBgpResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }
   921  
   922  func (m *GetBgpResponse) GetGlobal() *Global {
   923  	if m != nil {
   924  		return m.Global
   925  	}
   926  	return nil
   927  }
   928  
   929  type AddPeerRequest struct {
   930  	Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"`
   931  }
   932  
   933  func (m *AddPeerRequest) Reset()                    { *m = AddPeerRequest{} }
   934  func (m *AddPeerRequest) String() string            { return proto.CompactTextString(m) }
   935  func (*AddPeerRequest) ProtoMessage()               {}
   936  func (*AddPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }
   937  
   938  func (m *AddPeerRequest) GetPeer() *Peer {
   939  	if m != nil {
   940  		return m.Peer
   941  	}
   942  	return nil
   943  }
   944  
   945  type DeletePeerRequest struct {
   946  	Address   string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
   947  	Interface string `protobuf:"bytes,2,opt,name=interface" json:"interface,omitempty"`
   948  }
   949  
   950  func (m *DeletePeerRequest) Reset()                    { *m = DeletePeerRequest{} }
   951  func (m *DeletePeerRequest) String() string            { return proto.CompactTextString(m) }
   952  func (*DeletePeerRequest) ProtoMessage()               {}
   953  func (*DeletePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
   954  
   955  func (m *DeletePeerRequest) GetAddress() string {
   956  	if m != nil {
   957  		return m.Address
   958  	}
   959  	return ""
   960  }
   961  
   962  func (m *DeletePeerRequest) GetInterface() string {
   963  	if m != nil {
   964  		return m.Interface
   965  	}
   966  	return ""
   967  }
   968  
   969  type ListPeerRequest struct {
   970  	Address          string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
   971  	EnableAdvertised bool   `protobuf:"varint,2,opt,name=enableAdvertised" json:"enableAdvertised,omitempty"`
   972  }
   973  
   974  func (m *ListPeerRequest) Reset()                    { *m = ListPeerRequest{} }
   975  func (m *ListPeerRequest) String() string            { return proto.CompactTextString(m) }
   976  func (*ListPeerRequest) ProtoMessage()               {}
   977  func (*ListPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
   978  
   979  func (m *ListPeerRequest) GetAddress() string {
   980  	if m != nil {
   981  		return m.Address
   982  	}
   983  	return ""
   984  }
   985  
   986  func (m *ListPeerRequest) GetEnableAdvertised() bool {
   987  	if m != nil {
   988  		return m.EnableAdvertised
   989  	}
   990  	return false
   991  }
   992  
   993  type ListPeerResponse struct {
   994  	Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"`
   995  }
   996  
   997  func (m *ListPeerResponse) Reset()                    { *m = ListPeerResponse{} }
   998  func (m *ListPeerResponse) String() string            { return proto.CompactTextString(m) }
   999  func (*ListPeerResponse) ProtoMessage()               {}
  1000  func (*ListPeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
  1001  
  1002  func (m *ListPeerResponse) GetPeer() *Peer {
  1003  	if m != nil {
  1004  		return m.Peer
  1005  	}
  1006  	return nil
  1007  }
  1008  
  1009  type UpdatePeerRequest struct {
  1010  	Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"`
  1011  	// Calls SoftResetIn after updating the peer configuration if needed.
  1012  	DoSoftResetIn bool `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn" json:"do_soft_reset_in,omitempty"`
  1013  }
  1014  
  1015  func (m *UpdatePeerRequest) Reset()                    { *m = UpdatePeerRequest{} }
  1016  func (m *UpdatePeerRequest) String() string            { return proto.CompactTextString(m) }
  1017  func (*UpdatePeerRequest) ProtoMessage()               {}
  1018  func (*UpdatePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
  1019  
  1020  func (m *UpdatePeerRequest) GetPeer() *Peer {
  1021  	if m != nil {
  1022  		return m.Peer
  1023  	}
  1024  	return nil
  1025  }
  1026  
  1027  func (m *UpdatePeerRequest) GetDoSoftResetIn() bool {
  1028  	if m != nil {
  1029  		return m.DoSoftResetIn
  1030  	}
  1031  	return false
  1032  }
  1033  
  1034  type UpdatePeerResponse struct {
  1035  	// Indicates whether calling SoftResetIn is required due to this update. If
  1036  	// "true" is set, the client should call SoftResetIn manually. If
  1037  	// "do_soft_reset_in = true" is set in the request, always returned with
  1038  	// "false".
  1039  	NeedsSoftResetIn bool `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn" json:"needs_soft_reset_in,omitempty"`
  1040  }
  1041  
  1042  func (m *UpdatePeerResponse) Reset()                    { *m = UpdatePeerResponse{} }
  1043  func (m *UpdatePeerResponse) String() string            { return proto.CompactTextString(m) }
  1044  func (*UpdatePeerResponse) ProtoMessage()               {}
  1045  func (*UpdatePeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
  1046  
  1047  func (m *UpdatePeerResponse) GetNeedsSoftResetIn() bool {
  1048  	if m != nil {
  1049  		return m.NeedsSoftResetIn
  1050  	}
  1051  	return false
  1052  }
  1053  
  1054  type ResetPeerRequest struct {
  1055  	Address       string                              `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  1056  	Communication string                              `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"`
  1057  	Soft          bool                                `protobuf:"varint,3,opt,name=soft" json:"soft,omitempty"`
  1058  	Direction     ResetPeerRequest_SoftResetDirection `protobuf:"varint,4,opt,name=direction,enum=gobgpapi.ResetPeerRequest_SoftResetDirection" json:"direction,omitempty"`
  1059  }
  1060  
  1061  func (m *ResetPeerRequest) Reset()                    { *m = ResetPeerRequest{} }
  1062  func (m *ResetPeerRequest) String() string            { return proto.CompactTextString(m) }
  1063  func (*ResetPeerRequest) ProtoMessage()               {}
  1064  func (*ResetPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
  1065  
  1066  func (m *ResetPeerRequest) GetAddress() string {
  1067  	if m != nil {
  1068  		return m.Address
  1069  	}
  1070  	return ""
  1071  }
  1072  
  1073  func (m *ResetPeerRequest) GetCommunication() string {
  1074  	if m != nil {
  1075  		return m.Communication
  1076  	}
  1077  	return ""
  1078  }
  1079  
  1080  func (m *ResetPeerRequest) GetSoft() bool {
  1081  	if m != nil {
  1082  		return m.Soft
  1083  	}
  1084  	return false
  1085  }
  1086  
  1087  func (m *ResetPeerRequest) GetDirection() ResetPeerRequest_SoftResetDirection {
  1088  	if m != nil {
  1089  		return m.Direction
  1090  	}
  1091  	return ResetPeerRequest_IN
  1092  }
  1093  
  1094  type ShutdownPeerRequest struct {
  1095  	Address       string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  1096  	Communication string `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"`
  1097  }
  1098  
  1099  func (m *ShutdownPeerRequest) Reset()                    { *m = ShutdownPeerRequest{} }
  1100  func (m *ShutdownPeerRequest) String() string            { return proto.CompactTextString(m) }
  1101  func (*ShutdownPeerRequest) ProtoMessage()               {}
  1102  func (*ShutdownPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
  1103  
  1104  func (m *ShutdownPeerRequest) GetAddress() string {
  1105  	if m != nil {
  1106  		return m.Address
  1107  	}
  1108  	return ""
  1109  }
  1110  
  1111  func (m *ShutdownPeerRequest) GetCommunication() string {
  1112  	if m != nil {
  1113  		return m.Communication
  1114  	}
  1115  	return ""
  1116  }
  1117  
  1118  type EnablePeerRequest struct {
  1119  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  1120  }
  1121  
  1122  func (m *EnablePeerRequest) Reset()                    { *m = EnablePeerRequest{} }
  1123  func (m *EnablePeerRequest) String() string            { return proto.CompactTextString(m) }
  1124  func (*EnablePeerRequest) ProtoMessage()               {}
  1125  func (*EnablePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
  1126  
  1127  func (m *EnablePeerRequest) GetAddress() string {
  1128  	if m != nil {
  1129  		return m.Address
  1130  	}
  1131  	return ""
  1132  }
  1133  
  1134  type DisablePeerRequest struct {
  1135  	Address       string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  1136  	Communication string `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"`
  1137  }
  1138  
  1139  func (m *DisablePeerRequest) Reset()                    { *m = DisablePeerRequest{} }
  1140  func (m *DisablePeerRequest) String() string            { return proto.CompactTextString(m) }
  1141  func (*DisablePeerRequest) ProtoMessage()               {}
  1142  func (*DisablePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
  1143  
  1144  func (m *DisablePeerRequest) GetAddress() string {
  1145  	if m != nil {
  1146  		return m.Address
  1147  	}
  1148  	return ""
  1149  }
  1150  
  1151  func (m *DisablePeerRequest) GetCommunication() string {
  1152  	if m != nil {
  1153  		return m.Communication
  1154  	}
  1155  	return ""
  1156  }
  1157  
  1158  type MonitorPeerRequest struct {
  1159  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  1160  	Current bool   `protobuf:"varint,2,opt,name=current" json:"current,omitempty"`
  1161  }
  1162  
  1163  func (m *MonitorPeerRequest) Reset()                    { *m = MonitorPeerRequest{} }
  1164  func (m *MonitorPeerRequest) String() string            { return proto.CompactTextString(m) }
  1165  func (*MonitorPeerRequest) ProtoMessage()               {}
  1166  func (*MonitorPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
  1167  
  1168  func (m *MonitorPeerRequest) GetAddress() string {
  1169  	if m != nil {
  1170  		return m.Address
  1171  	}
  1172  	return ""
  1173  }
  1174  
  1175  func (m *MonitorPeerRequest) GetCurrent() bool {
  1176  	if m != nil {
  1177  		return m.Current
  1178  	}
  1179  	return false
  1180  }
  1181  
  1182  type MonitorPeerResponse struct {
  1183  	Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"`
  1184  }
  1185  
  1186  func (m *MonitorPeerResponse) Reset()                    { *m = MonitorPeerResponse{} }
  1187  func (m *MonitorPeerResponse) String() string            { return proto.CompactTextString(m) }
  1188  func (*MonitorPeerResponse) ProtoMessage()               {}
  1189  func (*MonitorPeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
  1190  
  1191  func (m *MonitorPeerResponse) GetPeer() *Peer {
  1192  	if m != nil {
  1193  		return m.Peer
  1194  	}
  1195  	return nil
  1196  }
  1197  
  1198  type AddPeerGroupRequest struct {
  1199  	PeerGroup *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"`
  1200  }
  1201  
  1202  func (m *AddPeerGroupRequest) Reset()                    { *m = AddPeerGroupRequest{} }
  1203  func (m *AddPeerGroupRequest) String() string            { return proto.CompactTextString(m) }
  1204  func (*AddPeerGroupRequest) ProtoMessage()               {}
  1205  func (*AddPeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} }
  1206  
  1207  func (m *AddPeerGroupRequest) GetPeerGroup() *PeerGroup {
  1208  	if m != nil {
  1209  		return m.PeerGroup
  1210  	}
  1211  	return nil
  1212  }
  1213  
  1214  type DeletePeerGroupRequest struct {
  1215  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1216  }
  1217  
  1218  func (m *DeletePeerGroupRequest) Reset()                    { *m = DeletePeerGroupRequest{} }
  1219  func (m *DeletePeerGroupRequest) String() string            { return proto.CompactTextString(m) }
  1220  func (*DeletePeerGroupRequest) ProtoMessage()               {}
  1221  func (*DeletePeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} }
  1222  
  1223  func (m *DeletePeerGroupRequest) GetName() string {
  1224  	if m != nil {
  1225  		return m.Name
  1226  	}
  1227  	return ""
  1228  }
  1229  
  1230  type UpdatePeerGroupRequest struct {
  1231  	PeerGroup     *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"`
  1232  	DoSoftResetIn bool       `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn" json:"do_soft_reset_in,omitempty"`
  1233  }
  1234  
  1235  func (m *UpdatePeerGroupRequest) Reset()                    { *m = UpdatePeerGroupRequest{} }
  1236  func (m *UpdatePeerGroupRequest) String() string            { return proto.CompactTextString(m) }
  1237  func (*UpdatePeerGroupRequest) ProtoMessage()               {}
  1238  func (*UpdatePeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} }
  1239  
  1240  func (m *UpdatePeerGroupRequest) GetPeerGroup() *PeerGroup {
  1241  	if m != nil {
  1242  		return m.PeerGroup
  1243  	}
  1244  	return nil
  1245  }
  1246  
  1247  func (m *UpdatePeerGroupRequest) GetDoSoftResetIn() bool {
  1248  	if m != nil {
  1249  		return m.DoSoftResetIn
  1250  	}
  1251  	return false
  1252  }
  1253  
  1254  type UpdatePeerGroupResponse struct {
  1255  	NeedsSoftResetIn bool `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn" json:"needs_soft_reset_in,omitempty"`
  1256  }
  1257  
  1258  func (m *UpdatePeerGroupResponse) Reset()                    { *m = UpdatePeerGroupResponse{} }
  1259  func (m *UpdatePeerGroupResponse) String() string            { return proto.CompactTextString(m) }
  1260  func (*UpdatePeerGroupResponse) ProtoMessage()               {}
  1261  func (*UpdatePeerGroupResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} }
  1262  
  1263  func (m *UpdatePeerGroupResponse) GetNeedsSoftResetIn() bool {
  1264  	if m != nil {
  1265  		return m.NeedsSoftResetIn
  1266  	}
  1267  	return false
  1268  }
  1269  
  1270  type AddDynamicNeighborRequest struct {
  1271  	DynamicNeighbor *DynamicNeighbor `protobuf:"bytes,1,opt,name=dynamic_neighbor,json=dynamicNeighbor" json:"dynamic_neighbor,omitempty"`
  1272  }
  1273  
  1274  func (m *AddDynamicNeighborRequest) Reset()                    { *m = AddDynamicNeighborRequest{} }
  1275  func (m *AddDynamicNeighborRequest) String() string            { return proto.CompactTextString(m) }
  1276  func (*AddDynamicNeighborRequest) ProtoMessage()               {}
  1277  func (*AddDynamicNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} }
  1278  
  1279  func (m *AddDynamicNeighborRequest) GetDynamicNeighbor() *DynamicNeighbor {
  1280  	if m != nil {
  1281  		return m.DynamicNeighbor
  1282  	}
  1283  	return nil
  1284  }
  1285  
  1286  type AddPathRequest struct {
  1287  	TableType TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1288  	VrfId     string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"`
  1289  	Path      *Path     `protobuf:"bytes,3,opt,name=path" json:"path,omitempty"`
  1290  }
  1291  
  1292  func (m *AddPathRequest) Reset()                    { *m = AddPathRequest{} }
  1293  func (m *AddPathRequest) String() string            { return proto.CompactTextString(m) }
  1294  func (*AddPathRequest) ProtoMessage()               {}
  1295  func (*AddPathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} }
  1296  
  1297  func (m *AddPathRequest) GetTableType() TableType {
  1298  	if m != nil {
  1299  		return m.TableType
  1300  	}
  1301  	return TableType_GLOBAL
  1302  }
  1303  
  1304  func (m *AddPathRequest) GetVrfId() string {
  1305  	if m != nil {
  1306  		return m.VrfId
  1307  	}
  1308  	return ""
  1309  }
  1310  
  1311  func (m *AddPathRequest) GetPath() *Path {
  1312  	if m != nil {
  1313  		return m.Path
  1314  	}
  1315  	return nil
  1316  }
  1317  
  1318  type AddPathResponse struct {
  1319  	Uuid []byte `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
  1320  }
  1321  
  1322  func (m *AddPathResponse) Reset()                    { *m = AddPathResponse{} }
  1323  func (m *AddPathResponse) String() string            { return proto.CompactTextString(m) }
  1324  func (*AddPathResponse) ProtoMessage()               {}
  1325  func (*AddPathResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} }
  1326  
  1327  func (m *AddPathResponse) GetUuid() []byte {
  1328  	if m != nil {
  1329  		return m.Uuid
  1330  	}
  1331  	return nil
  1332  }
  1333  
  1334  type DeletePathRequest struct {
  1335  	TableType TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1336  	VrfId     string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"`
  1337  	Family    *Family   `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"`
  1338  	Path      *Path     `protobuf:"bytes,4,opt,name=path" json:"path,omitempty"`
  1339  	Uuid      []byte    `protobuf:"bytes,5,opt,name=uuid,proto3" json:"uuid,omitempty"`
  1340  }
  1341  
  1342  func (m *DeletePathRequest) Reset()                    { *m = DeletePathRequest{} }
  1343  func (m *DeletePathRequest) String() string            { return proto.CompactTextString(m) }
  1344  func (*DeletePathRequest) ProtoMessage()               {}
  1345  func (*DeletePathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} }
  1346  
  1347  func (m *DeletePathRequest) GetTableType() TableType {
  1348  	if m != nil {
  1349  		return m.TableType
  1350  	}
  1351  	return TableType_GLOBAL
  1352  }
  1353  
  1354  func (m *DeletePathRequest) GetVrfId() string {
  1355  	if m != nil {
  1356  		return m.VrfId
  1357  	}
  1358  	return ""
  1359  }
  1360  
  1361  func (m *DeletePathRequest) GetFamily() *Family {
  1362  	if m != nil {
  1363  		return m.Family
  1364  	}
  1365  	return nil
  1366  }
  1367  
  1368  func (m *DeletePathRequest) GetPath() *Path {
  1369  	if m != nil {
  1370  		return m.Path
  1371  	}
  1372  	return nil
  1373  }
  1374  
  1375  func (m *DeletePathRequest) GetUuid() []byte {
  1376  	if m != nil {
  1377  		return m.Uuid
  1378  	}
  1379  	return nil
  1380  }
  1381  
  1382  type ListPathRequest struct {
  1383  	TableType TableType                `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1384  	Name      string                   `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  1385  	Family    *Family                  `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"`
  1386  	Prefixes  []*TableLookupPrefix     `protobuf:"bytes,4,rep,name=prefixes" json:"prefixes,omitempty"`
  1387  	SortType  ListPathRequest_SortType `protobuf:"varint,5,opt,name=sort_type,json=sortType,enum=gobgpapi.ListPathRequest_SortType" json:"sort_type,omitempty"`
  1388  }
  1389  
  1390  func (m *ListPathRequest) Reset()                    { *m = ListPathRequest{} }
  1391  func (m *ListPathRequest) String() string            { return proto.CompactTextString(m) }
  1392  func (*ListPathRequest) ProtoMessage()               {}
  1393  func (*ListPathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} }
  1394  
  1395  func (m *ListPathRequest) GetTableType() TableType {
  1396  	if m != nil {
  1397  		return m.TableType
  1398  	}
  1399  	return TableType_GLOBAL
  1400  }
  1401  
  1402  func (m *ListPathRequest) GetName() string {
  1403  	if m != nil {
  1404  		return m.Name
  1405  	}
  1406  	return ""
  1407  }
  1408  
  1409  func (m *ListPathRequest) GetFamily() *Family {
  1410  	if m != nil {
  1411  		return m.Family
  1412  	}
  1413  	return nil
  1414  }
  1415  
  1416  func (m *ListPathRequest) GetPrefixes() []*TableLookupPrefix {
  1417  	if m != nil {
  1418  		return m.Prefixes
  1419  	}
  1420  	return nil
  1421  }
  1422  
  1423  func (m *ListPathRequest) GetSortType() ListPathRequest_SortType {
  1424  	if m != nil {
  1425  		return m.SortType
  1426  	}
  1427  	return ListPathRequest_NONE
  1428  }
  1429  
  1430  type ListPathResponse struct {
  1431  	Destination *Destination `protobuf:"bytes,1,opt,name=destination" json:"destination,omitempty"`
  1432  }
  1433  
  1434  func (m *ListPathResponse) Reset()                    { *m = ListPathResponse{} }
  1435  func (m *ListPathResponse) String() string            { return proto.CompactTextString(m) }
  1436  func (*ListPathResponse) ProtoMessage()               {}
  1437  func (*ListPathResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} }
  1438  
  1439  func (m *ListPathResponse) GetDestination() *Destination {
  1440  	if m != nil {
  1441  		return m.Destination
  1442  	}
  1443  	return nil
  1444  }
  1445  
  1446  type AddPathStreamRequest struct {
  1447  	TableType TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1448  	VrfId     string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"`
  1449  	Paths     []*Path   `protobuf:"bytes,3,rep,name=paths" json:"paths,omitempty"`
  1450  }
  1451  
  1452  func (m *AddPathStreamRequest) Reset()                    { *m = AddPathStreamRequest{} }
  1453  func (m *AddPathStreamRequest) String() string            { return proto.CompactTextString(m) }
  1454  func (*AddPathStreamRequest) ProtoMessage()               {}
  1455  func (*AddPathStreamRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} }
  1456  
  1457  func (m *AddPathStreamRequest) GetTableType() TableType {
  1458  	if m != nil {
  1459  		return m.TableType
  1460  	}
  1461  	return TableType_GLOBAL
  1462  }
  1463  
  1464  func (m *AddPathStreamRequest) GetVrfId() string {
  1465  	if m != nil {
  1466  		return m.VrfId
  1467  	}
  1468  	return ""
  1469  }
  1470  
  1471  func (m *AddPathStreamRequest) GetPaths() []*Path {
  1472  	if m != nil {
  1473  		return m.Paths
  1474  	}
  1475  	return nil
  1476  }
  1477  
  1478  type GetTableRequest struct {
  1479  	TableType TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1480  	Family    *Family   `protobuf:"bytes,2,opt,name=family" json:"family,omitempty"`
  1481  	Name      string    `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"`
  1482  }
  1483  
  1484  func (m *GetTableRequest) Reset()                    { *m = GetTableRequest{} }
  1485  func (m *GetTableRequest) String() string            { return proto.CompactTextString(m) }
  1486  func (*GetTableRequest) ProtoMessage()               {}
  1487  func (*GetTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} }
  1488  
  1489  func (m *GetTableRequest) GetTableType() TableType {
  1490  	if m != nil {
  1491  		return m.TableType
  1492  	}
  1493  	return TableType_GLOBAL
  1494  }
  1495  
  1496  func (m *GetTableRequest) GetFamily() *Family {
  1497  	if m != nil {
  1498  		return m.Family
  1499  	}
  1500  	return nil
  1501  }
  1502  
  1503  func (m *GetTableRequest) GetName() string {
  1504  	if m != nil {
  1505  		return m.Name
  1506  	}
  1507  	return ""
  1508  }
  1509  
  1510  type GetTableResponse struct {
  1511  	NumDestination uint64 `protobuf:"varint,1,opt,name=num_destination,json=numDestination" json:"num_destination,omitempty"`
  1512  	NumPath        uint64 `protobuf:"varint,2,opt,name=num_path,json=numPath" json:"num_path,omitempty"`
  1513  	NumAccepted    uint64 `protobuf:"varint,3,opt,name=num_accepted,json=numAccepted" json:"num_accepted,omitempty"`
  1514  }
  1515  
  1516  func (m *GetTableResponse) Reset()                    { *m = GetTableResponse{} }
  1517  func (m *GetTableResponse) String() string            { return proto.CompactTextString(m) }
  1518  func (*GetTableResponse) ProtoMessage()               {}
  1519  func (*GetTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} }
  1520  
  1521  func (m *GetTableResponse) GetNumDestination() uint64 {
  1522  	if m != nil {
  1523  		return m.NumDestination
  1524  	}
  1525  	return 0
  1526  }
  1527  
  1528  func (m *GetTableResponse) GetNumPath() uint64 {
  1529  	if m != nil {
  1530  		return m.NumPath
  1531  	}
  1532  	return 0
  1533  }
  1534  
  1535  func (m *GetTableResponse) GetNumAccepted() uint64 {
  1536  	if m != nil {
  1537  		return m.NumAccepted
  1538  	}
  1539  	return 0
  1540  }
  1541  
  1542  type MonitorTableRequest struct {
  1543  	TableType  TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,enum=gobgpapi.TableType" json:"table_type,omitempty"`
  1544  	Name       string    `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  1545  	Family     *Family   `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"`
  1546  	Current    bool      `protobuf:"varint,4,opt,name=current" json:"current,omitempty"`
  1547  	PostPolicy bool      `protobuf:"varint,5,opt,name=post_policy,json=postPolicy" json:"post_policy,omitempty"`
  1548  }
  1549  
  1550  func (m *MonitorTableRequest) Reset()                    { *m = MonitorTableRequest{} }
  1551  func (m *MonitorTableRequest) String() string            { return proto.CompactTextString(m) }
  1552  func (*MonitorTableRequest) ProtoMessage()               {}
  1553  func (*MonitorTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} }
  1554  
  1555  func (m *MonitorTableRequest) GetTableType() TableType {
  1556  	if m != nil {
  1557  		return m.TableType
  1558  	}
  1559  	return TableType_GLOBAL
  1560  }
  1561  
  1562  func (m *MonitorTableRequest) GetName() string {
  1563  	if m != nil {
  1564  		return m.Name
  1565  	}
  1566  	return ""
  1567  }
  1568  
  1569  func (m *MonitorTableRequest) GetFamily() *Family {
  1570  	if m != nil {
  1571  		return m.Family
  1572  	}
  1573  	return nil
  1574  }
  1575  
  1576  func (m *MonitorTableRequest) GetCurrent() bool {
  1577  	if m != nil {
  1578  		return m.Current
  1579  	}
  1580  	return false
  1581  }
  1582  
  1583  func (m *MonitorTableRequest) GetPostPolicy() bool {
  1584  	if m != nil {
  1585  		return m.PostPolicy
  1586  	}
  1587  	return false
  1588  }
  1589  
  1590  type MonitorTableResponse struct {
  1591  	Path *Path `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"`
  1592  }
  1593  
  1594  func (m *MonitorTableResponse) Reset()                    { *m = MonitorTableResponse{} }
  1595  func (m *MonitorTableResponse) String() string            { return proto.CompactTextString(m) }
  1596  func (*MonitorTableResponse) ProtoMessage()               {}
  1597  func (*MonitorTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} }
  1598  
  1599  func (m *MonitorTableResponse) GetPath() *Path {
  1600  	if m != nil {
  1601  		return m.Path
  1602  	}
  1603  	return nil
  1604  }
  1605  
  1606  type AddVrfRequest struct {
  1607  	Vrf *Vrf `protobuf:"bytes,1,opt,name=vrf" json:"vrf,omitempty"`
  1608  }
  1609  
  1610  func (m *AddVrfRequest) Reset()                    { *m = AddVrfRequest{} }
  1611  func (m *AddVrfRequest) String() string            { return proto.CompactTextString(m) }
  1612  func (*AddVrfRequest) ProtoMessage()               {}
  1613  func (*AddVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} }
  1614  
  1615  func (m *AddVrfRequest) GetVrf() *Vrf {
  1616  	if m != nil {
  1617  		return m.Vrf
  1618  	}
  1619  	return nil
  1620  }
  1621  
  1622  type DeleteVrfRequest struct {
  1623  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1624  }
  1625  
  1626  func (m *DeleteVrfRequest) Reset()                    { *m = DeleteVrfRequest{} }
  1627  func (m *DeleteVrfRequest) String() string            { return proto.CompactTextString(m) }
  1628  func (*DeleteVrfRequest) ProtoMessage()               {}
  1629  func (*DeleteVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} }
  1630  
  1631  func (m *DeleteVrfRequest) GetName() string {
  1632  	if m != nil {
  1633  		return m.Name
  1634  	}
  1635  	return ""
  1636  }
  1637  
  1638  type ListVrfRequest struct {
  1639  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1640  }
  1641  
  1642  func (m *ListVrfRequest) Reset()                    { *m = ListVrfRequest{} }
  1643  func (m *ListVrfRequest) String() string            { return proto.CompactTextString(m) }
  1644  func (*ListVrfRequest) ProtoMessage()               {}
  1645  func (*ListVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} }
  1646  
  1647  func (m *ListVrfRequest) GetName() string {
  1648  	if m != nil {
  1649  		return m.Name
  1650  	}
  1651  	return ""
  1652  }
  1653  
  1654  type ListVrfResponse struct {
  1655  	Vrf *Vrf `protobuf:"bytes,1,opt,name=vrf" json:"vrf,omitempty"`
  1656  }
  1657  
  1658  func (m *ListVrfResponse) Reset()                    { *m = ListVrfResponse{} }
  1659  func (m *ListVrfResponse) String() string            { return proto.CompactTextString(m) }
  1660  func (*ListVrfResponse) ProtoMessage()               {}
  1661  func (*ListVrfResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} }
  1662  
  1663  func (m *ListVrfResponse) GetVrf() *Vrf {
  1664  	if m != nil {
  1665  		return m.Vrf
  1666  	}
  1667  	return nil
  1668  }
  1669  
  1670  type AddPolicyRequest struct {
  1671  	Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"`
  1672  	// if this flag is set, gobgpd won't define new statements
  1673  	// but refer existing statements using statement's names in this arguments.
  1674  	ReferExistingStatements bool `protobuf:"varint,2,opt,name=refer_existing_statements,json=referExistingStatements" json:"refer_existing_statements,omitempty"`
  1675  }
  1676  
  1677  func (m *AddPolicyRequest) Reset()                    { *m = AddPolicyRequest{} }
  1678  func (m *AddPolicyRequest) String() string            { return proto.CompactTextString(m) }
  1679  func (*AddPolicyRequest) ProtoMessage()               {}
  1680  func (*AddPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} }
  1681  
  1682  func (m *AddPolicyRequest) GetPolicy() *Policy {
  1683  	if m != nil {
  1684  		return m.Policy
  1685  	}
  1686  	return nil
  1687  }
  1688  
  1689  func (m *AddPolicyRequest) GetReferExistingStatements() bool {
  1690  	if m != nil {
  1691  		return m.ReferExistingStatements
  1692  	}
  1693  	return false
  1694  }
  1695  
  1696  type DeletePolicyRequest struct {
  1697  	Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"`
  1698  	// if this flag is set, gobgpd won't delete any statements
  1699  	// even if some statements get not used by any policy by this operation.
  1700  	PreserveStatements bool `protobuf:"varint,2,opt,name=preserve_statements,json=preserveStatements" json:"preserve_statements,omitempty"`
  1701  	All                bool `protobuf:"varint,3,opt,name=all" json:"all,omitempty"`
  1702  }
  1703  
  1704  func (m *DeletePolicyRequest) Reset()                    { *m = DeletePolicyRequest{} }
  1705  func (m *DeletePolicyRequest) String() string            { return proto.CompactTextString(m) }
  1706  func (*DeletePolicyRequest) ProtoMessage()               {}
  1707  func (*DeletePolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{36} }
  1708  
  1709  func (m *DeletePolicyRequest) GetPolicy() *Policy {
  1710  	if m != nil {
  1711  		return m.Policy
  1712  	}
  1713  	return nil
  1714  }
  1715  
  1716  func (m *DeletePolicyRequest) GetPreserveStatements() bool {
  1717  	if m != nil {
  1718  		return m.PreserveStatements
  1719  	}
  1720  	return false
  1721  }
  1722  
  1723  func (m *DeletePolicyRequest) GetAll() bool {
  1724  	if m != nil {
  1725  		return m.All
  1726  	}
  1727  	return false
  1728  }
  1729  
  1730  type ListPolicyRequest struct {
  1731  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1732  }
  1733  
  1734  func (m *ListPolicyRequest) Reset()                    { *m = ListPolicyRequest{} }
  1735  func (m *ListPolicyRequest) String() string            { return proto.CompactTextString(m) }
  1736  func (*ListPolicyRequest) ProtoMessage()               {}
  1737  func (*ListPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{37} }
  1738  
  1739  func (m *ListPolicyRequest) GetName() string {
  1740  	if m != nil {
  1741  		return m.Name
  1742  	}
  1743  	return ""
  1744  }
  1745  
  1746  type ListPolicyResponse struct {
  1747  	Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"`
  1748  }
  1749  
  1750  func (m *ListPolicyResponse) Reset()                    { *m = ListPolicyResponse{} }
  1751  func (m *ListPolicyResponse) String() string            { return proto.CompactTextString(m) }
  1752  func (*ListPolicyResponse) ProtoMessage()               {}
  1753  func (*ListPolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{38} }
  1754  
  1755  func (m *ListPolicyResponse) GetPolicy() *Policy {
  1756  	if m != nil {
  1757  		return m.Policy
  1758  	}
  1759  	return nil
  1760  }
  1761  
  1762  type SetPoliciesRequest struct {
  1763  	DefinedSets []*DefinedSet       `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets" json:"defined_sets,omitempty"`
  1764  	Policies    []*Policy           `protobuf:"bytes,2,rep,name=policies" json:"policies,omitempty"`
  1765  	Assignments []*PolicyAssignment `protobuf:"bytes,3,rep,name=assignments" json:"assignments,omitempty"`
  1766  }
  1767  
  1768  func (m *SetPoliciesRequest) Reset()                    { *m = SetPoliciesRequest{} }
  1769  func (m *SetPoliciesRequest) String() string            { return proto.CompactTextString(m) }
  1770  func (*SetPoliciesRequest) ProtoMessage()               {}
  1771  func (*SetPoliciesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} }
  1772  
  1773  func (m *SetPoliciesRequest) GetDefinedSets() []*DefinedSet {
  1774  	if m != nil {
  1775  		return m.DefinedSets
  1776  	}
  1777  	return nil
  1778  }
  1779  
  1780  func (m *SetPoliciesRequest) GetPolicies() []*Policy {
  1781  	if m != nil {
  1782  		return m.Policies
  1783  	}
  1784  	return nil
  1785  }
  1786  
  1787  func (m *SetPoliciesRequest) GetAssignments() []*PolicyAssignment {
  1788  	if m != nil {
  1789  		return m.Assignments
  1790  	}
  1791  	return nil
  1792  }
  1793  
  1794  type AddDefinedSetRequest struct {
  1795  	DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"`
  1796  }
  1797  
  1798  func (m *AddDefinedSetRequest) Reset()                    { *m = AddDefinedSetRequest{} }
  1799  func (m *AddDefinedSetRequest) String() string            { return proto.CompactTextString(m) }
  1800  func (*AddDefinedSetRequest) ProtoMessage()               {}
  1801  func (*AddDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} }
  1802  
  1803  func (m *AddDefinedSetRequest) GetDefinedSet() *DefinedSet {
  1804  	if m != nil {
  1805  		return m.DefinedSet
  1806  	}
  1807  	return nil
  1808  }
  1809  
  1810  type DeleteDefinedSetRequest struct {
  1811  	DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"`
  1812  	All        bool        `protobuf:"varint,2,opt,name=all" json:"all,omitempty"`
  1813  }
  1814  
  1815  func (m *DeleteDefinedSetRequest) Reset()                    { *m = DeleteDefinedSetRequest{} }
  1816  func (m *DeleteDefinedSetRequest) String() string            { return proto.CompactTextString(m) }
  1817  func (*DeleteDefinedSetRequest) ProtoMessage()               {}
  1818  func (*DeleteDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} }
  1819  
  1820  func (m *DeleteDefinedSetRequest) GetDefinedSet() *DefinedSet {
  1821  	if m != nil {
  1822  		return m.DefinedSet
  1823  	}
  1824  	return nil
  1825  }
  1826  
  1827  func (m *DeleteDefinedSetRequest) GetAll() bool {
  1828  	if m != nil {
  1829  		return m.All
  1830  	}
  1831  	return false
  1832  }
  1833  
  1834  type ListDefinedSetRequest struct {
  1835  	DefinedType DefinedType `protobuf:"varint,1,opt,name=defined_type,json=definedType,enum=gobgpapi.DefinedType" json:"defined_type,omitempty"`
  1836  	Name        string      `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  1837  }
  1838  
  1839  func (m *ListDefinedSetRequest) Reset()                    { *m = ListDefinedSetRequest{} }
  1840  func (m *ListDefinedSetRequest) String() string            { return proto.CompactTextString(m) }
  1841  func (*ListDefinedSetRequest) ProtoMessage()               {}
  1842  func (*ListDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} }
  1843  
  1844  func (m *ListDefinedSetRequest) GetDefinedType() DefinedType {
  1845  	if m != nil {
  1846  		return m.DefinedType
  1847  	}
  1848  	return DefinedType_PREFIX
  1849  }
  1850  
  1851  func (m *ListDefinedSetRequest) GetName() string {
  1852  	if m != nil {
  1853  		return m.Name
  1854  	}
  1855  	return ""
  1856  }
  1857  
  1858  type ListDefinedSetResponse struct {
  1859  	DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"`
  1860  }
  1861  
  1862  func (m *ListDefinedSetResponse) Reset()                    { *m = ListDefinedSetResponse{} }
  1863  func (m *ListDefinedSetResponse) String() string            { return proto.CompactTextString(m) }
  1864  func (*ListDefinedSetResponse) ProtoMessage()               {}
  1865  func (*ListDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} }
  1866  
  1867  func (m *ListDefinedSetResponse) GetDefinedSet() *DefinedSet {
  1868  	if m != nil {
  1869  		return m.DefinedSet
  1870  	}
  1871  	return nil
  1872  }
  1873  
  1874  type AddStatementRequest struct {
  1875  	Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"`
  1876  }
  1877  
  1878  func (m *AddStatementRequest) Reset()                    { *m = AddStatementRequest{} }
  1879  func (m *AddStatementRequest) String() string            { return proto.CompactTextString(m) }
  1880  func (*AddStatementRequest) ProtoMessage()               {}
  1881  func (*AddStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} }
  1882  
  1883  func (m *AddStatementRequest) GetStatement() *Statement {
  1884  	if m != nil {
  1885  		return m.Statement
  1886  	}
  1887  	return nil
  1888  }
  1889  
  1890  type DeleteStatementRequest struct {
  1891  	Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"`
  1892  	All       bool       `protobuf:"varint,2,opt,name=all" json:"all,omitempty"`
  1893  }
  1894  
  1895  func (m *DeleteStatementRequest) Reset()                    { *m = DeleteStatementRequest{} }
  1896  func (m *DeleteStatementRequest) String() string            { return proto.CompactTextString(m) }
  1897  func (*DeleteStatementRequest) ProtoMessage()               {}
  1898  func (*DeleteStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} }
  1899  
  1900  func (m *DeleteStatementRequest) GetStatement() *Statement {
  1901  	if m != nil {
  1902  		return m.Statement
  1903  	}
  1904  	return nil
  1905  }
  1906  
  1907  func (m *DeleteStatementRequest) GetAll() bool {
  1908  	if m != nil {
  1909  		return m.All
  1910  	}
  1911  	return false
  1912  }
  1913  
  1914  type ListStatementRequest struct {
  1915  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1916  }
  1917  
  1918  func (m *ListStatementRequest) Reset()                    { *m = ListStatementRequest{} }
  1919  func (m *ListStatementRequest) String() string            { return proto.CompactTextString(m) }
  1920  func (*ListStatementRequest) ProtoMessage()               {}
  1921  func (*ListStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} }
  1922  
  1923  func (m *ListStatementRequest) GetName() string {
  1924  	if m != nil {
  1925  		return m.Name
  1926  	}
  1927  	return ""
  1928  }
  1929  
  1930  type ListStatementResponse struct {
  1931  	Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"`
  1932  }
  1933  
  1934  func (m *ListStatementResponse) Reset()                    { *m = ListStatementResponse{} }
  1935  func (m *ListStatementResponse) String() string            { return proto.CompactTextString(m) }
  1936  func (*ListStatementResponse) ProtoMessage()               {}
  1937  func (*ListStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} }
  1938  
  1939  func (m *ListStatementResponse) GetStatement() *Statement {
  1940  	if m != nil {
  1941  		return m.Statement
  1942  	}
  1943  	return nil
  1944  }
  1945  
  1946  type AddPolicyAssignmentRequest struct {
  1947  	Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"`
  1948  }
  1949  
  1950  func (m *AddPolicyAssignmentRequest) Reset()                    { *m = AddPolicyAssignmentRequest{} }
  1951  func (m *AddPolicyAssignmentRequest) String() string            { return proto.CompactTextString(m) }
  1952  func (*AddPolicyAssignmentRequest) ProtoMessage()               {}
  1953  func (*AddPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{48} }
  1954  
  1955  func (m *AddPolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
  1956  	if m != nil {
  1957  		return m.Assignment
  1958  	}
  1959  	return nil
  1960  }
  1961  
  1962  type DeletePolicyAssignmentRequest struct {
  1963  	Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"`
  1964  	All        bool              `protobuf:"varint,2,opt,name=all" json:"all,omitempty"`
  1965  }
  1966  
  1967  func (m *DeletePolicyAssignmentRequest) Reset()                    { *m = DeletePolicyAssignmentRequest{} }
  1968  func (m *DeletePolicyAssignmentRequest) String() string            { return proto.CompactTextString(m) }
  1969  func (*DeletePolicyAssignmentRequest) ProtoMessage()               {}
  1970  func (*DeletePolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{49} }
  1971  
  1972  func (m *DeletePolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
  1973  	if m != nil {
  1974  		return m.Assignment
  1975  	}
  1976  	return nil
  1977  }
  1978  
  1979  func (m *DeletePolicyAssignmentRequest) GetAll() bool {
  1980  	if m != nil {
  1981  		return m.All
  1982  	}
  1983  	return false
  1984  }
  1985  
  1986  type ListPolicyAssignmentRequest struct {
  1987  	Name      string          `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  1988  	Direction PolicyDirection `protobuf:"varint,2,opt,name=direction,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"`
  1989  }
  1990  
  1991  func (m *ListPolicyAssignmentRequest) Reset()                    { *m = ListPolicyAssignmentRequest{} }
  1992  func (m *ListPolicyAssignmentRequest) String() string            { return proto.CompactTextString(m) }
  1993  func (*ListPolicyAssignmentRequest) ProtoMessage()               {}
  1994  func (*ListPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{50} }
  1995  
  1996  func (m *ListPolicyAssignmentRequest) GetName() string {
  1997  	if m != nil {
  1998  		return m.Name
  1999  	}
  2000  	return ""
  2001  }
  2002  
  2003  func (m *ListPolicyAssignmentRequest) GetDirection() PolicyDirection {
  2004  	if m != nil {
  2005  		return m.Direction
  2006  	}
  2007  	return PolicyDirection_UNKNOWN
  2008  }
  2009  
  2010  type ListPolicyAssignmentResponse struct {
  2011  	Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"`
  2012  }
  2013  
  2014  func (m *ListPolicyAssignmentResponse) Reset()                    { *m = ListPolicyAssignmentResponse{} }
  2015  func (m *ListPolicyAssignmentResponse) String() string            { return proto.CompactTextString(m) }
  2016  func (*ListPolicyAssignmentResponse) ProtoMessage()               {}
  2017  func (*ListPolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{51} }
  2018  
  2019  func (m *ListPolicyAssignmentResponse) GetAssignment() *PolicyAssignment {
  2020  	if m != nil {
  2021  		return m.Assignment
  2022  	}
  2023  	return nil
  2024  }
  2025  
  2026  type SetPolicyAssignmentRequest struct {
  2027  	Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"`
  2028  }
  2029  
  2030  func (m *SetPolicyAssignmentRequest) Reset()                    { *m = SetPolicyAssignmentRequest{} }
  2031  func (m *SetPolicyAssignmentRequest) String() string            { return proto.CompactTextString(m) }
  2032  func (*SetPolicyAssignmentRequest) ProtoMessage()               {}
  2033  func (*SetPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{52} }
  2034  
  2035  func (m *SetPolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
  2036  	if m != nil {
  2037  		return m.Assignment
  2038  	}
  2039  	return nil
  2040  }
  2041  
  2042  type AddRpkiRequest struct {
  2043  	Address  string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2044  	Port     uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2045  	Lifetime int64  `protobuf:"varint,3,opt,name=lifetime" json:"lifetime,omitempty"`
  2046  }
  2047  
  2048  func (m *AddRpkiRequest) Reset()                    { *m = AddRpkiRequest{} }
  2049  func (m *AddRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2050  func (*AddRpkiRequest) ProtoMessage()               {}
  2051  func (*AddRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{53} }
  2052  
  2053  func (m *AddRpkiRequest) GetAddress() string {
  2054  	if m != nil {
  2055  		return m.Address
  2056  	}
  2057  	return ""
  2058  }
  2059  
  2060  func (m *AddRpkiRequest) GetPort() uint32 {
  2061  	if m != nil {
  2062  		return m.Port
  2063  	}
  2064  	return 0
  2065  }
  2066  
  2067  func (m *AddRpkiRequest) GetLifetime() int64 {
  2068  	if m != nil {
  2069  		return m.Lifetime
  2070  	}
  2071  	return 0
  2072  }
  2073  
  2074  type DeleteRpkiRequest struct {
  2075  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2076  	Port    uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2077  }
  2078  
  2079  func (m *DeleteRpkiRequest) Reset()                    { *m = DeleteRpkiRequest{} }
  2080  func (m *DeleteRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2081  func (*DeleteRpkiRequest) ProtoMessage()               {}
  2082  func (*DeleteRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{54} }
  2083  
  2084  func (m *DeleteRpkiRequest) GetAddress() string {
  2085  	if m != nil {
  2086  		return m.Address
  2087  	}
  2088  	return ""
  2089  }
  2090  
  2091  func (m *DeleteRpkiRequest) GetPort() uint32 {
  2092  	if m != nil {
  2093  		return m.Port
  2094  	}
  2095  	return 0
  2096  }
  2097  
  2098  type ListRpkiRequest struct {
  2099  	Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"`
  2100  }
  2101  
  2102  func (m *ListRpkiRequest) Reset()                    { *m = ListRpkiRequest{} }
  2103  func (m *ListRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2104  func (*ListRpkiRequest) ProtoMessage()               {}
  2105  func (*ListRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{55} }
  2106  
  2107  func (m *ListRpkiRequest) GetFamily() *Family {
  2108  	if m != nil {
  2109  		return m.Family
  2110  	}
  2111  	return nil
  2112  }
  2113  
  2114  type ListRpkiResponse struct {
  2115  	Server *Rpki `protobuf:"bytes,1,opt,name=server" json:"server,omitempty"`
  2116  }
  2117  
  2118  func (m *ListRpkiResponse) Reset()                    { *m = ListRpkiResponse{} }
  2119  func (m *ListRpkiResponse) String() string            { return proto.CompactTextString(m) }
  2120  func (*ListRpkiResponse) ProtoMessage()               {}
  2121  func (*ListRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{56} }
  2122  
  2123  func (m *ListRpkiResponse) GetServer() *Rpki {
  2124  	if m != nil {
  2125  		return m.Server
  2126  	}
  2127  	return nil
  2128  }
  2129  
  2130  type EnableRpkiRequest struct {
  2131  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2132  	Port    uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2133  }
  2134  
  2135  func (m *EnableRpkiRequest) Reset()                    { *m = EnableRpkiRequest{} }
  2136  func (m *EnableRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2137  func (*EnableRpkiRequest) ProtoMessage()               {}
  2138  func (*EnableRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{57} }
  2139  
  2140  func (m *EnableRpkiRequest) GetAddress() string {
  2141  	if m != nil {
  2142  		return m.Address
  2143  	}
  2144  	return ""
  2145  }
  2146  
  2147  func (m *EnableRpkiRequest) GetPort() uint32 {
  2148  	if m != nil {
  2149  		return m.Port
  2150  	}
  2151  	return 0
  2152  }
  2153  
  2154  type DisableRpkiRequest struct {
  2155  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2156  	Port    uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2157  }
  2158  
  2159  func (m *DisableRpkiRequest) Reset()                    { *m = DisableRpkiRequest{} }
  2160  func (m *DisableRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2161  func (*DisableRpkiRequest) ProtoMessage()               {}
  2162  func (*DisableRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{58} }
  2163  
  2164  func (m *DisableRpkiRequest) GetAddress() string {
  2165  	if m != nil {
  2166  		return m.Address
  2167  	}
  2168  	return ""
  2169  }
  2170  
  2171  func (m *DisableRpkiRequest) GetPort() uint32 {
  2172  	if m != nil {
  2173  		return m.Port
  2174  	}
  2175  	return 0
  2176  }
  2177  
  2178  type ResetRpkiRequest struct {
  2179  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2180  	Port    uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2181  	Soft    bool   `protobuf:"varint,3,opt,name=soft" json:"soft,omitempty"`
  2182  }
  2183  
  2184  func (m *ResetRpkiRequest) Reset()                    { *m = ResetRpkiRequest{} }
  2185  func (m *ResetRpkiRequest) String() string            { return proto.CompactTextString(m) }
  2186  func (*ResetRpkiRequest) ProtoMessage()               {}
  2187  func (*ResetRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{59} }
  2188  
  2189  func (m *ResetRpkiRequest) GetAddress() string {
  2190  	if m != nil {
  2191  		return m.Address
  2192  	}
  2193  	return ""
  2194  }
  2195  
  2196  func (m *ResetRpkiRequest) GetPort() uint32 {
  2197  	if m != nil {
  2198  		return m.Port
  2199  	}
  2200  	return 0
  2201  }
  2202  
  2203  func (m *ResetRpkiRequest) GetSoft() bool {
  2204  	if m != nil {
  2205  		return m.Soft
  2206  	}
  2207  	return false
  2208  }
  2209  
  2210  type ListRpkiTableRequest struct {
  2211  	Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"`
  2212  }
  2213  
  2214  func (m *ListRpkiTableRequest) Reset()                    { *m = ListRpkiTableRequest{} }
  2215  func (m *ListRpkiTableRequest) String() string            { return proto.CompactTextString(m) }
  2216  func (*ListRpkiTableRequest) ProtoMessage()               {}
  2217  func (*ListRpkiTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{60} }
  2218  
  2219  func (m *ListRpkiTableRequest) GetFamily() *Family {
  2220  	if m != nil {
  2221  		return m.Family
  2222  	}
  2223  	return nil
  2224  }
  2225  
  2226  type ListRpkiTableResponse struct {
  2227  	Roa *Roa `protobuf:"bytes,1,opt,name=roa" json:"roa,omitempty"`
  2228  }
  2229  
  2230  func (m *ListRpkiTableResponse) Reset()                    { *m = ListRpkiTableResponse{} }
  2231  func (m *ListRpkiTableResponse) String() string            { return proto.CompactTextString(m) }
  2232  func (*ListRpkiTableResponse) ProtoMessage()               {}
  2233  func (*ListRpkiTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{61} }
  2234  
  2235  func (m *ListRpkiTableResponse) GetRoa() *Roa {
  2236  	if m != nil {
  2237  		return m.Roa
  2238  	}
  2239  	return nil
  2240  }
  2241  
  2242  type EnableZebraRequest struct {
  2243  	Url                  string   `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
  2244  	RouteTypes           []string `protobuf:"bytes,2,rep,name=route_types,json=routeTypes" json:"route_types,omitempty"`
  2245  	Version              uint32   `protobuf:"varint,3,opt,name=version" json:"version,omitempty"`
  2246  	NexthopTriggerEnable bool     `protobuf:"varint,4,opt,name=nexthop_trigger_enable,json=nexthopTriggerEnable" json:"nexthop_trigger_enable,omitempty"`
  2247  	NexthopTriggerDelay  uint32   `protobuf:"varint,5,opt,name=nexthop_trigger_delay,json=nexthopTriggerDelay" json:"nexthop_trigger_delay,omitempty"`
  2248  }
  2249  
  2250  func (m *EnableZebraRequest) Reset()                    { *m = EnableZebraRequest{} }
  2251  func (m *EnableZebraRequest) String() string            { return proto.CompactTextString(m) }
  2252  func (*EnableZebraRequest) ProtoMessage()               {}
  2253  func (*EnableZebraRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{62} }
  2254  
  2255  func (m *EnableZebraRequest) GetUrl() string {
  2256  	if m != nil {
  2257  		return m.Url
  2258  	}
  2259  	return ""
  2260  }
  2261  
  2262  func (m *EnableZebraRequest) GetRouteTypes() []string {
  2263  	if m != nil {
  2264  		return m.RouteTypes
  2265  	}
  2266  	return nil
  2267  }
  2268  
  2269  func (m *EnableZebraRequest) GetVersion() uint32 {
  2270  	if m != nil {
  2271  		return m.Version
  2272  	}
  2273  	return 0
  2274  }
  2275  
  2276  func (m *EnableZebraRequest) GetNexthopTriggerEnable() bool {
  2277  	if m != nil {
  2278  		return m.NexthopTriggerEnable
  2279  	}
  2280  	return false
  2281  }
  2282  
  2283  func (m *EnableZebraRequest) GetNexthopTriggerDelay() uint32 {
  2284  	if m != nil {
  2285  		return m.NexthopTriggerDelay
  2286  	}
  2287  	return 0
  2288  }
  2289  
  2290  type EnableMrtRequest struct {
  2291  	DumpType         int32  `protobuf:"varint,1,opt,name=dump_type,json=dumpType" json:"dump_type,omitempty"`
  2292  	Filename         string `protobuf:"bytes,2,opt,name=filename" json:"filename,omitempty"`
  2293  	DumpInterval     uint64 `protobuf:"varint,3,opt,name=dump_interval,json=dumpInterval" json:"dump_interval,omitempty"`
  2294  	RotationInterval uint64 `protobuf:"varint,4,opt,name=rotation_interval,json=rotationInterval" json:"rotation_interval,omitempty"`
  2295  }
  2296  
  2297  func (m *EnableMrtRequest) Reset()                    { *m = EnableMrtRequest{} }
  2298  func (m *EnableMrtRequest) String() string            { return proto.CompactTextString(m) }
  2299  func (*EnableMrtRequest) ProtoMessage()               {}
  2300  func (*EnableMrtRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{63} }
  2301  
  2302  func (m *EnableMrtRequest) GetDumpType() int32 {
  2303  	if m != nil {
  2304  		return m.DumpType
  2305  	}
  2306  	return 0
  2307  }
  2308  
  2309  func (m *EnableMrtRequest) GetFilename() string {
  2310  	if m != nil {
  2311  		return m.Filename
  2312  	}
  2313  	return ""
  2314  }
  2315  
  2316  func (m *EnableMrtRequest) GetDumpInterval() uint64 {
  2317  	if m != nil {
  2318  		return m.DumpInterval
  2319  	}
  2320  	return 0
  2321  }
  2322  
  2323  func (m *EnableMrtRequest) GetRotationInterval() uint64 {
  2324  	if m != nil {
  2325  		return m.RotationInterval
  2326  	}
  2327  	return 0
  2328  }
  2329  
  2330  type DisableMrtRequest struct {
  2331  }
  2332  
  2333  func (m *DisableMrtRequest) Reset()                    { *m = DisableMrtRequest{} }
  2334  func (m *DisableMrtRequest) String() string            { return proto.CompactTextString(m) }
  2335  func (*DisableMrtRequest) ProtoMessage()               {}
  2336  func (*DisableMrtRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{64} }
  2337  
  2338  type AddBmpRequest struct {
  2339  	Address           string                         `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2340  	Port              uint32                         `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2341  	Policy            AddBmpRequest_MonitoringPolicy `protobuf:"varint,3,opt,name=policy,enum=gobgpapi.AddBmpRequest_MonitoringPolicy" json:"policy,omitempty"`
  2342  	StatisticsTimeout int32                          `protobuf:"varint,4,opt,name=StatisticsTimeout" json:"StatisticsTimeout,omitempty"`
  2343  }
  2344  
  2345  func (m *AddBmpRequest) Reset()                    { *m = AddBmpRequest{} }
  2346  func (m *AddBmpRequest) String() string            { return proto.CompactTextString(m) }
  2347  func (*AddBmpRequest) ProtoMessage()               {}
  2348  func (*AddBmpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{65} }
  2349  
  2350  func (m *AddBmpRequest) GetAddress() string {
  2351  	if m != nil {
  2352  		return m.Address
  2353  	}
  2354  	return ""
  2355  }
  2356  
  2357  func (m *AddBmpRequest) GetPort() uint32 {
  2358  	if m != nil {
  2359  		return m.Port
  2360  	}
  2361  	return 0
  2362  }
  2363  
  2364  func (m *AddBmpRequest) GetPolicy() AddBmpRequest_MonitoringPolicy {
  2365  	if m != nil {
  2366  		return m.Policy
  2367  	}
  2368  	return AddBmpRequest_PRE
  2369  }
  2370  
  2371  func (m *AddBmpRequest) GetStatisticsTimeout() int32 {
  2372  	if m != nil {
  2373  		return m.StatisticsTimeout
  2374  	}
  2375  	return 0
  2376  }
  2377  
  2378  type DeleteBmpRequest struct {
  2379  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  2380  	Port    uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"`
  2381  }
  2382  
  2383  func (m *DeleteBmpRequest) Reset()                    { *m = DeleteBmpRequest{} }
  2384  func (m *DeleteBmpRequest) String() string            { return proto.CompactTextString(m) }
  2385  func (*DeleteBmpRequest) ProtoMessage()               {}
  2386  func (*DeleteBmpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{66} }
  2387  
  2388  func (m *DeleteBmpRequest) GetAddress() string {
  2389  	if m != nil {
  2390  		return m.Address
  2391  	}
  2392  	return ""
  2393  }
  2394  
  2395  func (m *DeleteBmpRequest) GetPort() uint32 {
  2396  	if m != nil {
  2397  		return m.Port
  2398  	}
  2399  	return 0
  2400  }
  2401  
  2402  type Family struct {
  2403  	Afi  Family_Afi  `protobuf:"varint,1,opt,name=afi,enum=gobgpapi.Family_Afi" json:"afi,omitempty"`
  2404  	Safi Family_Safi `protobuf:"varint,2,opt,name=safi,enum=gobgpapi.Family_Safi" json:"safi,omitempty"`
  2405  }
  2406  
  2407  func (m *Family) Reset()                    { *m = Family{} }
  2408  func (m *Family) String() string            { return proto.CompactTextString(m) }
  2409  func (*Family) ProtoMessage()               {}
  2410  func (*Family) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{67} }
  2411  
  2412  func (m *Family) GetAfi() Family_Afi {
  2413  	if m != nil {
  2414  		return m.Afi
  2415  	}
  2416  	return Family_AFI_UNKNOWN
  2417  }
  2418  
  2419  func (m *Family) GetSafi() Family_Safi {
  2420  	if m != nil {
  2421  		return m.Safi
  2422  	}
  2423  	return Family_SAFI_UNKNOWN
  2424  }
  2425  
  2426  type Validation struct {
  2427  	State           Validation_State  `protobuf:"varint,1,opt,name=state,enum=gobgpapi.Validation_State" json:"state,omitempty"`
  2428  	Reason          Validation_Reason `protobuf:"varint,2,opt,name=reason,enum=gobgpapi.Validation_Reason" json:"reason,omitempty"`
  2429  	Matched         []*Roa            `protobuf:"bytes,3,rep,name=matched" json:"matched,omitempty"`
  2430  	UnmatchedAs     []*Roa            `protobuf:"bytes,4,rep,name=unmatched_as,json=unmatchedAs" json:"unmatched_as,omitempty"`
  2431  	UnmatchedLength []*Roa            `protobuf:"bytes,5,rep,name=unmatched_length,json=unmatchedLength" json:"unmatched_length,omitempty"`
  2432  }
  2433  
  2434  func (m *Validation) Reset()                    { *m = Validation{} }
  2435  func (m *Validation) String() string            { return proto.CompactTextString(m) }
  2436  func (*Validation) ProtoMessage()               {}
  2437  func (*Validation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{68} }
  2438  
  2439  func (m *Validation) GetState() Validation_State {
  2440  	if m != nil {
  2441  		return m.State
  2442  	}
  2443  	return Validation_STATE_NONE
  2444  }
  2445  
  2446  func (m *Validation) GetReason() Validation_Reason {
  2447  	if m != nil {
  2448  		return m.Reason
  2449  	}
  2450  	return Validation_REASOT_NONE
  2451  }
  2452  
  2453  func (m *Validation) GetMatched() []*Roa {
  2454  	if m != nil {
  2455  		return m.Matched
  2456  	}
  2457  	return nil
  2458  }
  2459  
  2460  func (m *Validation) GetUnmatchedAs() []*Roa {
  2461  	if m != nil {
  2462  		return m.UnmatchedAs
  2463  	}
  2464  	return nil
  2465  }
  2466  
  2467  func (m *Validation) GetUnmatchedLength() []*Roa {
  2468  	if m != nil {
  2469  		return m.UnmatchedLength
  2470  	}
  2471  	return nil
  2472  }
  2473  
  2474  type Path struct {
  2475  	// One of the following defined in "api/attribute.proto":
  2476  	// - IPAddressPrefix
  2477  	// - LabeledIPAddressPrefix
  2478  	// - EncapsulationNLRI
  2479  	// - EVPNEthernetAutoDiscoveryRoute
  2480  	// - EVPNMACIPAdvertisementRoute
  2481  	// - EVPNInclusiveMulticastEthernetTagRoute
  2482  	// - EVPNEthernetSegmentRoute
  2483  	// - EVPNIPPrefixRoute
  2484  	// - LabeledVPNIPAddressPrefix
  2485  	// - RouteTargetMembershipNLRI
  2486  	// - FlowSpecNLRI
  2487  	// - VPNFlowSpecNLRI
  2488  	// - OpaqueNLRI
  2489  	Nlri *google_protobuf.Any `protobuf:"bytes,1,opt,name=nlri" json:"nlri,omitempty"`
  2490  	// Each attribute must be one of *Attribute defined in
  2491  	// "api/attribute.proto".
  2492  	Pattrs             []*google_protobuf.Any      `protobuf:"bytes,2,rep,name=pattrs" json:"pattrs,omitempty"`
  2493  	Age                *google_protobuf2.Timestamp `protobuf:"bytes,3,opt,name=age" json:"age,omitempty"`
  2494  	Best               bool                        `protobuf:"varint,4,opt,name=best" json:"best,omitempty"`
  2495  	IsWithdraw         bool                        `protobuf:"varint,5,opt,name=is_withdraw,json=isWithdraw" json:"is_withdraw,omitempty"`
  2496  	Validation         *Validation                 `protobuf:"bytes,7,opt,name=validation" json:"validation,omitempty"`
  2497  	NoImplicitWithdraw bool                        `protobuf:"varint,8,opt,name=no_implicit_withdraw,json=noImplicitWithdraw" json:"no_implicit_withdraw,omitempty"`
  2498  	Family             *Family                     `protobuf:"bytes,9,opt,name=family" json:"family,omitempty"`
  2499  	SourceAsn          uint32                      `protobuf:"varint,10,opt,name=source_asn,json=sourceAsn" json:"source_asn,omitempty"`
  2500  	SourceId           string                      `protobuf:"bytes,11,opt,name=source_id,json=sourceId" json:"source_id,omitempty"`
  2501  	Filtered           bool                        `protobuf:"varint,12,opt,name=filtered" json:"filtered,omitempty"`
  2502  	Stale              bool                        `protobuf:"varint,13,opt,name=stale" json:"stale,omitempty"`
  2503  	IsFromExternal     bool                        `protobuf:"varint,14,opt,name=is_from_external,json=isFromExternal" json:"is_from_external,omitempty"`
  2504  	NeighborIp         string                      `protobuf:"bytes,15,opt,name=neighbor_ip,json=neighborIp" json:"neighbor_ip,omitempty"`
  2505  	Uuid               []byte                      `protobuf:"bytes,16,opt,name=uuid,proto3" json:"uuid,omitempty"`
  2506  	IsNexthopInvalid   bool                        `protobuf:"varint,17,opt,name=is_nexthop_invalid,json=isNexthopInvalid" json:"is_nexthop_invalid,omitempty"`
  2507  	Identifier         uint32                      `protobuf:"varint,18,opt,name=identifier" json:"identifier,omitempty"`
  2508  	LocalIdentifier    uint32                      `protobuf:"varint,19,opt,name=local_identifier,json=localIdentifier" json:"local_identifier,omitempty"`
  2509  	NlriBinary         []byte                      `protobuf:"bytes,20,opt,name=nlri_binary,json=nlriBinary,proto3" json:"nlri_binary,omitempty"`
  2510  	PattrsBinary       [][]byte                    `protobuf:"bytes,21,rep,name=pattrs_binary,json=pattrsBinary,proto3" json:"pattrs_binary,omitempty"`
  2511  }
  2512  
  2513  func (m *Path) Reset()                    { *m = Path{} }
  2514  func (m *Path) String() string            { return proto.CompactTextString(m) }
  2515  func (*Path) ProtoMessage()               {}
  2516  func (*Path) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{69} }
  2517  
  2518  func (m *Path) GetNlri() *google_protobuf.Any {
  2519  	if m != nil {
  2520  		return m.Nlri
  2521  	}
  2522  	return nil
  2523  }
  2524  
  2525  func (m *Path) GetPattrs() []*google_protobuf.Any {
  2526  	if m != nil {
  2527  		return m.Pattrs
  2528  	}
  2529  	return nil
  2530  }
  2531  
  2532  func (m *Path) GetAge() *google_protobuf2.Timestamp {
  2533  	if m != nil {
  2534  		return m.Age
  2535  	}
  2536  	return nil
  2537  }
  2538  
  2539  func (m *Path) GetBest() bool {
  2540  	if m != nil {
  2541  		return m.Best
  2542  	}
  2543  	return false
  2544  }
  2545  
  2546  func (m *Path) GetIsWithdraw() bool {
  2547  	if m != nil {
  2548  		return m.IsWithdraw
  2549  	}
  2550  	return false
  2551  }
  2552  
  2553  func (m *Path) GetValidation() *Validation {
  2554  	if m != nil {
  2555  		return m.Validation
  2556  	}
  2557  	return nil
  2558  }
  2559  
  2560  func (m *Path) GetNoImplicitWithdraw() bool {
  2561  	if m != nil {
  2562  		return m.NoImplicitWithdraw
  2563  	}
  2564  	return false
  2565  }
  2566  
  2567  func (m *Path) GetFamily() *Family {
  2568  	if m != nil {
  2569  		return m.Family
  2570  	}
  2571  	return nil
  2572  }
  2573  
  2574  func (m *Path) GetSourceAsn() uint32 {
  2575  	if m != nil {
  2576  		return m.SourceAsn
  2577  	}
  2578  	return 0
  2579  }
  2580  
  2581  func (m *Path) GetSourceId() string {
  2582  	if m != nil {
  2583  		return m.SourceId
  2584  	}
  2585  	return ""
  2586  }
  2587  
  2588  func (m *Path) GetFiltered() bool {
  2589  	if m != nil {
  2590  		return m.Filtered
  2591  	}
  2592  	return false
  2593  }
  2594  
  2595  func (m *Path) GetStale() bool {
  2596  	if m != nil {
  2597  		return m.Stale
  2598  	}
  2599  	return false
  2600  }
  2601  
  2602  func (m *Path) GetIsFromExternal() bool {
  2603  	if m != nil {
  2604  		return m.IsFromExternal
  2605  	}
  2606  	return false
  2607  }
  2608  
  2609  func (m *Path) GetNeighborIp() string {
  2610  	if m != nil {
  2611  		return m.NeighborIp
  2612  	}
  2613  	return ""
  2614  }
  2615  
  2616  func (m *Path) GetUuid() []byte {
  2617  	if m != nil {
  2618  		return m.Uuid
  2619  	}
  2620  	return nil
  2621  }
  2622  
  2623  func (m *Path) GetIsNexthopInvalid() bool {
  2624  	if m != nil {
  2625  		return m.IsNexthopInvalid
  2626  	}
  2627  	return false
  2628  }
  2629  
  2630  func (m *Path) GetIdentifier() uint32 {
  2631  	if m != nil {
  2632  		return m.Identifier
  2633  	}
  2634  	return 0
  2635  }
  2636  
  2637  func (m *Path) GetLocalIdentifier() uint32 {
  2638  	if m != nil {
  2639  		return m.LocalIdentifier
  2640  	}
  2641  	return 0
  2642  }
  2643  
  2644  func (m *Path) GetNlriBinary() []byte {
  2645  	if m != nil {
  2646  		return m.NlriBinary
  2647  	}
  2648  	return nil
  2649  }
  2650  
  2651  func (m *Path) GetPattrsBinary() [][]byte {
  2652  	if m != nil {
  2653  		return m.PattrsBinary
  2654  	}
  2655  	return nil
  2656  }
  2657  
  2658  type Destination struct {
  2659  	Prefix string  `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"`
  2660  	Paths  []*Path `protobuf:"bytes,2,rep,name=paths" json:"paths,omitempty"`
  2661  }
  2662  
  2663  func (m *Destination) Reset()                    { *m = Destination{} }
  2664  func (m *Destination) String() string            { return proto.CompactTextString(m) }
  2665  func (*Destination) ProtoMessage()               {}
  2666  func (*Destination) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{70} }
  2667  
  2668  func (m *Destination) GetPrefix() string {
  2669  	if m != nil {
  2670  		return m.Prefix
  2671  	}
  2672  	return ""
  2673  }
  2674  
  2675  func (m *Destination) GetPaths() []*Path {
  2676  	if m != nil {
  2677  		return m.Paths
  2678  	}
  2679  	return nil
  2680  }
  2681  
  2682  // API representation of table.LookupPrefix
  2683  type TableLookupPrefix struct {
  2684  	Prefix       string            `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"`
  2685  	LookupOption TableLookupOption `protobuf:"varint,2,opt,name=lookup_option,json=lookupOption,enum=gobgpapi.TableLookupOption" json:"lookup_option,omitempty"`
  2686  }
  2687  
  2688  func (m *TableLookupPrefix) Reset()                    { *m = TableLookupPrefix{} }
  2689  func (m *TableLookupPrefix) String() string            { return proto.CompactTextString(m) }
  2690  func (*TableLookupPrefix) ProtoMessage()               {}
  2691  func (*TableLookupPrefix) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{71} }
  2692  
  2693  func (m *TableLookupPrefix) GetPrefix() string {
  2694  	if m != nil {
  2695  		return m.Prefix
  2696  	}
  2697  	return ""
  2698  }
  2699  
  2700  func (m *TableLookupPrefix) GetLookupOption() TableLookupOption {
  2701  	if m != nil {
  2702  		return m.LookupOption
  2703  	}
  2704  	return TableLookupOption_LOOKUP_EXACT
  2705  }
  2706  
  2707  type Peer struct {
  2708  	ApplyPolicy     *ApplyPolicy     `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"`
  2709  	Conf            *PeerConf        `protobuf:"bytes,2,opt,name=conf" json:"conf,omitempty"`
  2710  	EbgpMultihop    *EbgpMultihop    `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop" json:"ebgp_multihop,omitempty"`
  2711  	RouteReflector  *RouteReflector  `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector" json:"route_reflector,omitempty"`
  2712  	State           *PeerState       `protobuf:"bytes,5,opt,name=state" json:"state,omitempty"`
  2713  	Timers          *Timers          `protobuf:"bytes,6,opt,name=timers" json:"timers,omitempty"`
  2714  	Transport       *Transport       `protobuf:"bytes,7,opt,name=transport" json:"transport,omitempty"`
  2715  	RouteServer     *RouteServer     `protobuf:"bytes,8,opt,name=route_server,json=routeServer" json:"route_server,omitempty"`
  2716  	GracefulRestart *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"`
  2717  	AfiSafis        []*AfiSafi       `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis" json:"afi_safis,omitempty"`
  2718  }
  2719  
  2720  func (m *Peer) Reset()                    { *m = Peer{} }
  2721  func (m *Peer) String() string            { return proto.CompactTextString(m) }
  2722  func (*Peer) ProtoMessage()               {}
  2723  func (*Peer) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{72} }
  2724  
  2725  func (m *Peer) GetApplyPolicy() *ApplyPolicy {
  2726  	if m != nil {
  2727  		return m.ApplyPolicy
  2728  	}
  2729  	return nil
  2730  }
  2731  
  2732  func (m *Peer) GetConf() *PeerConf {
  2733  	if m != nil {
  2734  		return m.Conf
  2735  	}
  2736  	return nil
  2737  }
  2738  
  2739  func (m *Peer) GetEbgpMultihop() *EbgpMultihop {
  2740  	if m != nil {
  2741  		return m.EbgpMultihop
  2742  	}
  2743  	return nil
  2744  }
  2745  
  2746  func (m *Peer) GetRouteReflector() *RouteReflector {
  2747  	if m != nil {
  2748  		return m.RouteReflector
  2749  	}
  2750  	return nil
  2751  }
  2752  
  2753  func (m *Peer) GetState() *PeerState {
  2754  	if m != nil {
  2755  		return m.State
  2756  	}
  2757  	return nil
  2758  }
  2759  
  2760  func (m *Peer) GetTimers() *Timers {
  2761  	if m != nil {
  2762  		return m.Timers
  2763  	}
  2764  	return nil
  2765  }
  2766  
  2767  func (m *Peer) GetTransport() *Transport {
  2768  	if m != nil {
  2769  		return m.Transport
  2770  	}
  2771  	return nil
  2772  }
  2773  
  2774  func (m *Peer) GetRouteServer() *RouteServer {
  2775  	if m != nil {
  2776  		return m.RouteServer
  2777  	}
  2778  	return nil
  2779  }
  2780  
  2781  func (m *Peer) GetGracefulRestart() *GracefulRestart {
  2782  	if m != nil {
  2783  		return m.GracefulRestart
  2784  	}
  2785  	return nil
  2786  }
  2787  
  2788  func (m *Peer) GetAfiSafis() []*AfiSafi {
  2789  	if m != nil {
  2790  		return m.AfiSafis
  2791  	}
  2792  	return nil
  2793  }
  2794  
  2795  type PeerGroup struct {
  2796  	ApplyPolicy     *ApplyPolicy     `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"`
  2797  	Conf            *PeerGroupConf   `protobuf:"bytes,2,opt,name=conf" json:"conf,omitempty"`
  2798  	EbgpMultihop    *EbgpMultihop    `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop" json:"ebgp_multihop,omitempty"`
  2799  	RouteReflector  *RouteReflector  `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector" json:"route_reflector,omitempty"`
  2800  	Info            *PeerGroupState  `protobuf:"bytes,5,opt,name=info" json:"info,omitempty"`
  2801  	Timers          *Timers          `protobuf:"bytes,6,opt,name=timers" json:"timers,omitempty"`
  2802  	Transport       *Transport       `protobuf:"bytes,7,opt,name=transport" json:"transport,omitempty"`
  2803  	RouteServer     *RouteServer     `protobuf:"bytes,8,opt,name=route_server,json=routeServer" json:"route_server,omitempty"`
  2804  	GracefulRestart *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"`
  2805  	AfiSafis        []*AfiSafi       `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis" json:"afi_safis,omitempty"`
  2806  }
  2807  
  2808  func (m *PeerGroup) Reset()                    { *m = PeerGroup{} }
  2809  func (m *PeerGroup) String() string            { return proto.CompactTextString(m) }
  2810  func (*PeerGroup) ProtoMessage()               {}
  2811  func (*PeerGroup) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{73} }
  2812  
  2813  func (m *PeerGroup) GetApplyPolicy() *ApplyPolicy {
  2814  	if m != nil {
  2815  		return m.ApplyPolicy
  2816  	}
  2817  	return nil
  2818  }
  2819  
  2820  func (m *PeerGroup) GetConf() *PeerGroupConf {
  2821  	if m != nil {
  2822  		return m.Conf
  2823  	}
  2824  	return nil
  2825  }
  2826  
  2827  func (m *PeerGroup) GetEbgpMultihop() *EbgpMultihop {
  2828  	if m != nil {
  2829  		return m.EbgpMultihop
  2830  	}
  2831  	return nil
  2832  }
  2833  
  2834  func (m *PeerGroup) GetRouteReflector() *RouteReflector {
  2835  	if m != nil {
  2836  		return m.RouteReflector
  2837  	}
  2838  	return nil
  2839  }
  2840  
  2841  func (m *PeerGroup) GetInfo() *PeerGroupState {
  2842  	if m != nil {
  2843  		return m.Info
  2844  	}
  2845  	return nil
  2846  }
  2847  
  2848  func (m *PeerGroup) GetTimers() *Timers {
  2849  	if m != nil {
  2850  		return m.Timers
  2851  	}
  2852  	return nil
  2853  }
  2854  
  2855  func (m *PeerGroup) GetTransport() *Transport {
  2856  	if m != nil {
  2857  		return m.Transport
  2858  	}
  2859  	return nil
  2860  }
  2861  
  2862  func (m *PeerGroup) GetRouteServer() *RouteServer {
  2863  	if m != nil {
  2864  		return m.RouteServer
  2865  	}
  2866  	return nil
  2867  }
  2868  
  2869  func (m *PeerGroup) GetGracefulRestart() *GracefulRestart {
  2870  	if m != nil {
  2871  		return m.GracefulRestart
  2872  	}
  2873  	return nil
  2874  }
  2875  
  2876  func (m *PeerGroup) GetAfiSafis() []*AfiSafi {
  2877  	if m != nil {
  2878  		return m.AfiSafis
  2879  	}
  2880  	return nil
  2881  }
  2882  
  2883  type DynamicNeighbor struct {
  2884  	Prefix    string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"`
  2885  	PeerGroup string `protobuf:"bytes,2,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"`
  2886  }
  2887  
  2888  func (m *DynamicNeighbor) Reset()                    { *m = DynamicNeighbor{} }
  2889  func (m *DynamicNeighbor) String() string            { return proto.CompactTextString(m) }
  2890  func (*DynamicNeighbor) ProtoMessage()               {}
  2891  func (*DynamicNeighbor) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{74} }
  2892  
  2893  func (m *DynamicNeighbor) GetPrefix() string {
  2894  	if m != nil {
  2895  		return m.Prefix
  2896  	}
  2897  	return ""
  2898  }
  2899  
  2900  func (m *DynamicNeighbor) GetPeerGroup() string {
  2901  	if m != nil {
  2902  		return m.PeerGroup
  2903  	}
  2904  	return ""
  2905  }
  2906  
  2907  type ApplyPolicy struct {
  2908  	InPolicy     *PolicyAssignment `protobuf:"bytes,1,opt,name=in_policy,json=inPolicy" json:"in_policy,omitempty"`
  2909  	ExportPolicy *PolicyAssignment `protobuf:"bytes,2,opt,name=export_policy,json=exportPolicy" json:"export_policy,omitempty"`
  2910  	ImportPolicy *PolicyAssignment `protobuf:"bytes,3,opt,name=import_policy,json=importPolicy" json:"import_policy,omitempty"`
  2911  }
  2912  
  2913  func (m *ApplyPolicy) Reset()                    { *m = ApplyPolicy{} }
  2914  func (m *ApplyPolicy) String() string            { return proto.CompactTextString(m) }
  2915  func (*ApplyPolicy) ProtoMessage()               {}
  2916  func (*ApplyPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{75} }
  2917  
  2918  func (m *ApplyPolicy) GetInPolicy() *PolicyAssignment {
  2919  	if m != nil {
  2920  		return m.InPolicy
  2921  	}
  2922  	return nil
  2923  }
  2924  
  2925  func (m *ApplyPolicy) GetExportPolicy() *PolicyAssignment {
  2926  	if m != nil {
  2927  		return m.ExportPolicy
  2928  	}
  2929  	return nil
  2930  }
  2931  
  2932  func (m *ApplyPolicy) GetImportPolicy() *PolicyAssignment {
  2933  	if m != nil {
  2934  		return m.ImportPolicy
  2935  	}
  2936  	return nil
  2937  }
  2938  
  2939  type PrefixLimit struct {
  2940  	Family               *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"`
  2941  	MaxPrefixes          uint32  `protobuf:"varint,2,opt,name=max_prefixes,json=maxPrefixes" json:"max_prefixes,omitempty"`
  2942  	ShutdownThresholdPct uint32  `protobuf:"varint,3,opt,name=shutdown_threshold_pct,json=shutdownThresholdPct" json:"shutdown_threshold_pct,omitempty"`
  2943  }
  2944  
  2945  func (m *PrefixLimit) Reset()                    { *m = PrefixLimit{} }
  2946  func (m *PrefixLimit) String() string            { return proto.CompactTextString(m) }
  2947  func (*PrefixLimit) ProtoMessage()               {}
  2948  func (*PrefixLimit) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{76} }
  2949  
  2950  func (m *PrefixLimit) GetFamily() *Family {
  2951  	if m != nil {
  2952  		return m.Family
  2953  	}
  2954  	return nil
  2955  }
  2956  
  2957  func (m *PrefixLimit) GetMaxPrefixes() uint32 {
  2958  	if m != nil {
  2959  		return m.MaxPrefixes
  2960  	}
  2961  	return 0
  2962  }
  2963  
  2964  func (m *PrefixLimit) GetShutdownThresholdPct() uint32 {
  2965  	if m != nil {
  2966  		return m.ShutdownThresholdPct
  2967  	}
  2968  	return 0
  2969  }
  2970  
  2971  type PeerConf struct {
  2972  	AuthPassword      string                   `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"`
  2973  	Description       string                   `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"`
  2974  	LocalAs           uint32                   `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"`
  2975  	NeighborAddress   string                   `protobuf:"bytes,4,opt,name=neighbor_address,json=neighborAddress" json:"neighbor_address,omitempty"`
  2976  	PeerAs            uint32                   `protobuf:"varint,5,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"`
  2977  	PeerGroup         string                   `protobuf:"bytes,6,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"`
  2978  	PeerType          uint32                   `protobuf:"varint,7,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"`
  2979  	RemovePrivateAs   PeerConf_RemovePrivateAs `protobuf:"varint,8,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerConf_RemovePrivateAs" json:"remove_private_as,omitempty"`
  2980  	RouteFlapDamping  bool                     `protobuf:"varint,9,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"`
  2981  	SendCommunity     uint32                   `protobuf:"varint,10,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"`
  2982  	NeighborInterface string                   `protobuf:"bytes,11,opt,name=neighbor_interface,json=neighborInterface" json:"neighbor_interface,omitempty"`
  2983  	Vrf               string                   `protobuf:"bytes,12,opt,name=vrf" json:"vrf,omitempty"`
  2984  	AllowOwnAs        uint32                   `protobuf:"varint,13,opt,name=allow_own_as,json=allowOwnAs" json:"allow_own_as,omitempty"`
  2985  	ReplacePeerAs     bool                     `protobuf:"varint,14,opt,name=replace_peer_as,json=replacePeerAs" json:"replace_peer_as,omitempty"`
  2986  	AdminDown         bool                     `protobuf:"varint,15,opt,name=admin_down,json=adminDown" json:"admin_down,omitempty"`
  2987  }
  2988  
  2989  func (m *PeerConf) Reset()                    { *m = PeerConf{} }
  2990  func (m *PeerConf) String() string            { return proto.CompactTextString(m) }
  2991  func (*PeerConf) ProtoMessage()               {}
  2992  func (*PeerConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{77} }
  2993  
  2994  func (m *PeerConf) GetAuthPassword() string {
  2995  	if m != nil {
  2996  		return m.AuthPassword
  2997  	}
  2998  	return ""
  2999  }
  3000  
  3001  func (m *PeerConf) GetDescription() string {
  3002  	if m != nil {
  3003  		return m.Description
  3004  	}
  3005  	return ""
  3006  }
  3007  
  3008  func (m *PeerConf) GetLocalAs() uint32 {
  3009  	if m != nil {
  3010  		return m.LocalAs
  3011  	}
  3012  	return 0
  3013  }
  3014  
  3015  func (m *PeerConf) GetNeighborAddress() string {
  3016  	if m != nil {
  3017  		return m.NeighborAddress
  3018  	}
  3019  	return ""
  3020  }
  3021  
  3022  func (m *PeerConf) GetPeerAs() uint32 {
  3023  	if m != nil {
  3024  		return m.PeerAs
  3025  	}
  3026  	return 0
  3027  }
  3028  
  3029  func (m *PeerConf) GetPeerGroup() string {
  3030  	if m != nil {
  3031  		return m.PeerGroup
  3032  	}
  3033  	return ""
  3034  }
  3035  
  3036  func (m *PeerConf) GetPeerType() uint32 {
  3037  	if m != nil {
  3038  		return m.PeerType
  3039  	}
  3040  	return 0
  3041  }
  3042  
  3043  func (m *PeerConf) GetRemovePrivateAs() PeerConf_RemovePrivateAs {
  3044  	if m != nil {
  3045  		return m.RemovePrivateAs
  3046  	}
  3047  	return PeerConf_NONE
  3048  }
  3049  
  3050  func (m *PeerConf) GetRouteFlapDamping() bool {
  3051  	if m != nil {
  3052  		return m.RouteFlapDamping
  3053  	}
  3054  	return false
  3055  }
  3056  
  3057  func (m *PeerConf) GetSendCommunity() uint32 {
  3058  	if m != nil {
  3059  		return m.SendCommunity
  3060  	}
  3061  	return 0
  3062  }
  3063  
  3064  func (m *PeerConf) GetNeighborInterface() string {
  3065  	if m != nil {
  3066  		return m.NeighborInterface
  3067  	}
  3068  	return ""
  3069  }
  3070  
  3071  func (m *PeerConf) GetVrf() string {
  3072  	if m != nil {
  3073  		return m.Vrf
  3074  	}
  3075  	return ""
  3076  }
  3077  
  3078  func (m *PeerConf) GetAllowOwnAs() uint32 {
  3079  	if m != nil {
  3080  		return m.AllowOwnAs
  3081  	}
  3082  	return 0
  3083  }
  3084  
  3085  func (m *PeerConf) GetReplacePeerAs() bool {
  3086  	if m != nil {
  3087  		return m.ReplacePeerAs
  3088  	}
  3089  	return false
  3090  }
  3091  
  3092  func (m *PeerConf) GetAdminDown() bool {
  3093  	if m != nil {
  3094  		return m.AdminDown
  3095  	}
  3096  	return false
  3097  }
  3098  
  3099  type PeerGroupConf struct {
  3100  	AuthPassword     string                        `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"`
  3101  	Description      string                        `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"`
  3102  	LocalAs          uint32                        `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"`
  3103  	PeerAs           uint32                        `protobuf:"varint,4,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"`
  3104  	PeerGroupName    string                        `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName" json:"peer_group_name,omitempty"`
  3105  	PeerType         uint32                        `protobuf:"varint,6,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"`
  3106  	RemovePrivateAs  PeerGroupConf_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerGroupConf_RemovePrivateAs" json:"remove_private_as,omitempty"`
  3107  	RouteFlapDamping bool                          `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"`
  3108  	SendCommunity    uint32                        `protobuf:"varint,9,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"`
  3109  }
  3110  
  3111  func (m *PeerGroupConf) Reset()                    { *m = PeerGroupConf{} }
  3112  func (m *PeerGroupConf) String() string            { return proto.CompactTextString(m) }
  3113  func (*PeerGroupConf) ProtoMessage()               {}
  3114  func (*PeerGroupConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{78} }
  3115  
  3116  func (m *PeerGroupConf) GetAuthPassword() string {
  3117  	if m != nil {
  3118  		return m.AuthPassword
  3119  	}
  3120  	return ""
  3121  }
  3122  
  3123  func (m *PeerGroupConf) GetDescription() string {
  3124  	if m != nil {
  3125  		return m.Description
  3126  	}
  3127  	return ""
  3128  }
  3129  
  3130  func (m *PeerGroupConf) GetLocalAs() uint32 {
  3131  	if m != nil {
  3132  		return m.LocalAs
  3133  	}
  3134  	return 0
  3135  }
  3136  
  3137  func (m *PeerGroupConf) GetPeerAs() uint32 {
  3138  	if m != nil {
  3139  		return m.PeerAs
  3140  	}
  3141  	return 0
  3142  }
  3143  
  3144  func (m *PeerGroupConf) GetPeerGroupName() string {
  3145  	if m != nil {
  3146  		return m.PeerGroupName
  3147  	}
  3148  	return ""
  3149  }
  3150  
  3151  func (m *PeerGroupConf) GetPeerType() uint32 {
  3152  	if m != nil {
  3153  		return m.PeerType
  3154  	}
  3155  	return 0
  3156  }
  3157  
  3158  func (m *PeerGroupConf) GetRemovePrivateAs() PeerGroupConf_RemovePrivateAs {
  3159  	if m != nil {
  3160  		return m.RemovePrivateAs
  3161  	}
  3162  	return PeerGroupConf_NONE
  3163  }
  3164  
  3165  func (m *PeerGroupConf) GetRouteFlapDamping() bool {
  3166  	if m != nil {
  3167  		return m.RouteFlapDamping
  3168  	}
  3169  	return false
  3170  }
  3171  
  3172  func (m *PeerGroupConf) GetSendCommunity() uint32 {
  3173  	if m != nil {
  3174  		return m.SendCommunity
  3175  	}
  3176  	return 0
  3177  }
  3178  
  3179  type PeerGroupState struct {
  3180  	AuthPassword     string                         `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"`
  3181  	Description      string                         `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"`
  3182  	LocalAs          uint32                         `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"`
  3183  	PeerAs           uint32                         `protobuf:"varint,4,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"`
  3184  	PeerGroupName    string                         `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName" json:"peer_group_name,omitempty"`
  3185  	PeerType         uint32                         `protobuf:"varint,6,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"`
  3186  	RemovePrivateAs  PeerGroupState_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerGroupState_RemovePrivateAs" json:"remove_private_as,omitempty"`
  3187  	RouteFlapDamping bool                           `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"`
  3188  	SendCommunity    uint32                         `protobuf:"varint,9,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"`
  3189  	TotalPaths       uint32                         `protobuf:"varint,10,opt,name=total_paths,json=totalPaths" json:"total_paths,omitempty"`
  3190  	TotalPrefixes    uint32                         `protobuf:"varint,11,opt,name=total_prefixes,json=totalPrefixes" json:"total_prefixes,omitempty"`
  3191  }
  3192  
  3193  func (m *PeerGroupState) Reset()                    { *m = PeerGroupState{} }
  3194  func (m *PeerGroupState) String() string            { return proto.CompactTextString(m) }
  3195  func (*PeerGroupState) ProtoMessage()               {}
  3196  func (*PeerGroupState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{79} }
  3197  
  3198  func (m *PeerGroupState) GetAuthPassword() string {
  3199  	if m != nil {
  3200  		return m.AuthPassword
  3201  	}
  3202  	return ""
  3203  }
  3204  
  3205  func (m *PeerGroupState) GetDescription() string {
  3206  	if m != nil {
  3207  		return m.Description
  3208  	}
  3209  	return ""
  3210  }
  3211  
  3212  func (m *PeerGroupState) GetLocalAs() uint32 {
  3213  	if m != nil {
  3214  		return m.LocalAs
  3215  	}
  3216  	return 0
  3217  }
  3218  
  3219  func (m *PeerGroupState) GetPeerAs() uint32 {
  3220  	if m != nil {
  3221  		return m.PeerAs
  3222  	}
  3223  	return 0
  3224  }
  3225  
  3226  func (m *PeerGroupState) GetPeerGroupName() string {
  3227  	if m != nil {
  3228  		return m.PeerGroupName
  3229  	}
  3230  	return ""
  3231  }
  3232  
  3233  func (m *PeerGroupState) GetPeerType() uint32 {
  3234  	if m != nil {
  3235  		return m.PeerType
  3236  	}
  3237  	return 0
  3238  }
  3239  
  3240  func (m *PeerGroupState) GetRemovePrivateAs() PeerGroupState_RemovePrivateAs {
  3241  	if m != nil {
  3242  		return m.RemovePrivateAs
  3243  	}
  3244  	return PeerGroupState_NONE
  3245  }
  3246  
  3247  func (m *PeerGroupState) GetRouteFlapDamping() bool {
  3248  	if m != nil {
  3249  		return m.RouteFlapDamping
  3250  	}
  3251  	return false
  3252  }
  3253  
  3254  func (m *PeerGroupState) GetSendCommunity() uint32 {
  3255  	if m != nil {
  3256  		return m.SendCommunity
  3257  	}
  3258  	return 0
  3259  }
  3260  
  3261  func (m *PeerGroupState) GetTotalPaths() uint32 {
  3262  	if m != nil {
  3263  		return m.TotalPaths
  3264  	}
  3265  	return 0
  3266  }
  3267  
  3268  func (m *PeerGroupState) GetTotalPrefixes() uint32 {
  3269  	if m != nil {
  3270  		return m.TotalPrefixes
  3271  	}
  3272  	return 0
  3273  }
  3274  
  3275  type EbgpMultihop struct {
  3276  	Enabled     bool   `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  3277  	MultihopTtl uint32 `protobuf:"varint,2,opt,name=multihop_ttl,json=multihopTtl" json:"multihop_ttl,omitempty"`
  3278  }
  3279  
  3280  func (m *EbgpMultihop) Reset()                    { *m = EbgpMultihop{} }
  3281  func (m *EbgpMultihop) String() string            { return proto.CompactTextString(m) }
  3282  func (*EbgpMultihop) ProtoMessage()               {}
  3283  func (*EbgpMultihop) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{80} }
  3284  
  3285  func (m *EbgpMultihop) GetEnabled() bool {
  3286  	if m != nil {
  3287  		return m.Enabled
  3288  	}
  3289  	return false
  3290  }
  3291  
  3292  func (m *EbgpMultihop) GetMultihopTtl() uint32 {
  3293  	if m != nil {
  3294  		return m.MultihopTtl
  3295  	}
  3296  	return 0
  3297  }
  3298  
  3299  type RouteReflector struct {
  3300  	RouteReflectorClient    bool   `protobuf:"varint,1,opt,name=route_reflector_client,json=routeReflectorClient" json:"route_reflector_client,omitempty"`
  3301  	RouteReflectorClusterId string `protobuf:"bytes,2,opt,name=route_reflector_cluster_id,json=routeReflectorClusterId" json:"route_reflector_cluster_id,omitempty"`
  3302  }
  3303  
  3304  func (m *RouteReflector) Reset()                    { *m = RouteReflector{} }
  3305  func (m *RouteReflector) String() string            { return proto.CompactTextString(m) }
  3306  func (*RouteReflector) ProtoMessage()               {}
  3307  func (*RouteReflector) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{81} }
  3308  
  3309  func (m *RouteReflector) GetRouteReflectorClient() bool {
  3310  	if m != nil {
  3311  		return m.RouteReflectorClient
  3312  	}
  3313  	return false
  3314  }
  3315  
  3316  func (m *RouteReflector) GetRouteReflectorClusterId() string {
  3317  	if m != nil {
  3318  		return m.RouteReflectorClusterId
  3319  	}
  3320  	return ""
  3321  }
  3322  
  3323  type PeerState struct {
  3324  	AuthPassword     string                 `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"`
  3325  	Description      string                 `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"`
  3326  	LocalAs          uint32                 `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"`
  3327  	Messages         *Messages              `protobuf:"bytes,4,opt,name=messages" json:"messages,omitempty"`
  3328  	NeighborAddress  string                 `protobuf:"bytes,5,opt,name=neighbor_address,json=neighborAddress" json:"neighbor_address,omitempty"`
  3329  	PeerAs           uint32                 `protobuf:"varint,6,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"`
  3330  	PeerGroup        string                 `protobuf:"bytes,7,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"`
  3331  	PeerType         uint32                 `protobuf:"varint,8,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"`
  3332  	Queues           *Queues                `protobuf:"bytes,9,opt,name=queues" json:"queues,omitempty"`
  3333  	RemovePrivateAs  uint32                 `protobuf:"varint,10,opt,name=remove_private_as,json=removePrivateAs" json:"remove_private_as,omitempty"`
  3334  	RouteFlapDamping bool                   `protobuf:"varint,11,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"`
  3335  	SendCommunity    uint32                 `protobuf:"varint,12,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"`
  3336  	SessionState     PeerState_SessionState `protobuf:"varint,13,opt,name=session_state,json=sessionState,enum=gobgpapi.PeerState_SessionState" json:"session_state,omitempty"`
  3337  	AdminState       PeerState_AdminState   `protobuf:"varint,15,opt,name=admin_state,json=adminState,enum=gobgpapi.PeerState_AdminState" json:"admin_state,omitempty"`
  3338  	OutQ             uint32                 `protobuf:"varint,16,opt,name=out_q,json=outQ" json:"out_q,omitempty"`
  3339  	Flops            uint32                 `protobuf:"varint,17,opt,name=flops" json:"flops,omitempty"`
  3340  	// Each attribute must be one of *Capability defined in
  3341  	// "api/capability.proto".
  3342  	RemoteCap []*google_protobuf.Any `protobuf:"bytes,18,rep,name=remote_cap,json=remoteCap" json:"remote_cap,omitempty"`
  3343  	LocalCap  []*google_protobuf.Any `protobuf:"bytes,19,rep,name=local_cap,json=localCap" json:"local_cap,omitempty"`
  3344  	RouterId  string                 `protobuf:"bytes,20,opt,name=router_id,json=routerId" json:"router_id,omitempty"`
  3345  }
  3346  
  3347  func (m *PeerState) Reset()                    { *m = PeerState{} }
  3348  func (m *PeerState) String() string            { return proto.CompactTextString(m) }
  3349  func (*PeerState) ProtoMessage()               {}
  3350  func (*PeerState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{82} }
  3351  
  3352  func (m *PeerState) GetAuthPassword() string {
  3353  	if m != nil {
  3354  		return m.AuthPassword
  3355  	}
  3356  	return ""
  3357  }
  3358  
  3359  func (m *PeerState) GetDescription() string {
  3360  	if m != nil {
  3361  		return m.Description
  3362  	}
  3363  	return ""
  3364  }
  3365  
  3366  func (m *PeerState) GetLocalAs() uint32 {
  3367  	if m != nil {
  3368  		return m.LocalAs
  3369  	}
  3370  	return 0
  3371  }
  3372  
  3373  func (m *PeerState) GetMessages() *Messages {
  3374  	if m != nil {
  3375  		return m.Messages
  3376  	}
  3377  	return nil
  3378  }
  3379  
  3380  func (m *PeerState) GetNeighborAddress() string {
  3381  	if m != nil {
  3382  		return m.NeighborAddress
  3383  	}
  3384  	return ""
  3385  }
  3386  
  3387  func (m *PeerState) GetPeerAs() uint32 {
  3388  	if m != nil {
  3389  		return m.PeerAs
  3390  	}
  3391  	return 0
  3392  }
  3393  
  3394  func (m *PeerState) GetPeerGroup() string {
  3395  	if m != nil {
  3396  		return m.PeerGroup
  3397  	}
  3398  	return ""
  3399  }
  3400  
  3401  func (m *PeerState) GetPeerType() uint32 {
  3402  	if m != nil {
  3403  		return m.PeerType
  3404  	}
  3405  	return 0
  3406  }
  3407  
  3408  func (m *PeerState) GetQueues() *Queues {
  3409  	if m != nil {
  3410  		return m.Queues
  3411  	}
  3412  	return nil
  3413  }
  3414  
  3415  func (m *PeerState) GetRemovePrivateAs() uint32 {
  3416  	if m != nil {
  3417  		return m.RemovePrivateAs
  3418  	}
  3419  	return 0
  3420  }
  3421  
  3422  func (m *PeerState) GetRouteFlapDamping() bool {
  3423  	if m != nil {
  3424  		return m.RouteFlapDamping
  3425  	}
  3426  	return false
  3427  }
  3428  
  3429  func (m *PeerState) GetSendCommunity() uint32 {
  3430  	if m != nil {
  3431  		return m.SendCommunity
  3432  	}
  3433  	return 0
  3434  }
  3435  
  3436  func (m *PeerState) GetSessionState() PeerState_SessionState {
  3437  	if m != nil {
  3438  		return m.SessionState
  3439  	}
  3440  	return PeerState_UNKNOWN
  3441  }
  3442  
  3443  func (m *PeerState) GetAdminState() PeerState_AdminState {
  3444  	if m != nil {
  3445  		return m.AdminState
  3446  	}
  3447  	return PeerState_UP
  3448  }
  3449  
  3450  func (m *PeerState) GetOutQ() uint32 {
  3451  	if m != nil {
  3452  		return m.OutQ
  3453  	}
  3454  	return 0
  3455  }
  3456  
  3457  func (m *PeerState) GetFlops() uint32 {
  3458  	if m != nil {
  3459  		return m.Flops
  3460  	}
  3461  	return 0
  3462  }
  3463  
  3464  func (m *PeerState) GetRemoteCap() []*google_protobuf.Any {
  3465  	if m != nil {
  3466  		return m.RemoteCap
  3467  	}
  3468  	return nil
  3469  }
  3470  
  3471  func (m *PeerState) GetLocalCap() []*google_protobuf.Any {
  3472  	if m != nil {
  3473  		return m.LocalCap
  3474  	}
  3475  	return nil
  3476  }
  3477  
  3478  func (m *PeerState) GetRouterId() string {
  3479  	if m != nil {
  3480  		return m.RouterId
  3481  	}
  3482  	return ""
  3483  }
  3484  
  3485  type Messages struct {
  3486  	Received *Message `protobuf:"bytes,1,opt,name=received" json:"received,omitempty"`
  3487  	Sent     *Message `protobuf:"bytes,2,opt,name=sent" json:"sent,omitempty"`
  3488  }
  3489  
  3490  func (m *Messages) Reset()                    { *m = Messages{} }
  3491  func (m *Messages) String() string            { return proto.CompactTextString(m) }
  3492  func (*Messages) ProtoMessage()               {}
  3493  func (*Messages) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{83} }
  3494  
  3495  func (m *Messages) GetReceived() *Message {
  3496  	if m != nil {
  3497  		return m.Received
  3498  	}
  3499  	return nil
  3500  }
  3501  
  3502  func (m *Messages) GetSent() *Message {
  3503  	if m != nil {
  3504  		return m.Sent
  3505  	}
  3506  	return nil
  3507  }
  3508  
  3509  type Message struct {
  3510  	Notification   uint64 `protobuf:"varint,1,opt,name=notification" json:"notification,omitempty"`
  3511  	Update         uint64 `protobuf:"varint,2,opt,name=update" json:"update,omitempty"`
  3512  	Open           uint64 `protobuf:"varint,3,opt,name=open" json:"open,omitempty"`
  3513  	Keepalive      uint64 `protobuf:"varint,4,opt,name=keepalive" json:"keepalive,omitempty"`
  3514  	Refresh        uint64 `protobuf:"varint,5,opt,name=refresh" json:"refresh,omitempty"`
  3515  	Discarded      uint64 `protobuf:"varint,6,opt,name=discarded" json:"discarded,omitempty"`
  3516  	Total          uint64 `protobuf:"varint,7,opt,name=total" json:"total,omitempty"`
  3517  	WithdrawUpdate uint64 `protobuf:"varint,8,opt,name=withdraw_update,json=withdrawUpdate" json:"withdraw_update,omitempty"`
  3518  	WithdrawPrefix uint64 `protobuf:"varint,9,opt,name=withdraw_prefix,json=withdrawPrefix" json:"withdraw_prefix,omitempty"`
  3519  }
  3520  
  3521  func (m *Message) Reset()                    { *m = Message{} }
  3522  func (m *Message) String() string            { return proto.CompactTextString(m) }
  3523  func (*Message) ProtoMessage()               {}
  3524  func (*Message) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{84} }
  3525  
  3526  func (m *Message) GetNotification() uint64 {
  3527  	if m != nil {
  3528  		return m.Notification
  3529  	}
  3530  	return 0
  3531  }
  3532  
  3533  func (m *Message) GetUpdate() uint64 {
  3534  	if m != nil {
  3535  		return m.Update
  3536  	}
  3537  	return 0
  3538  }
  3539  
  3540  func (m *Message) GetOpen() uint64 {
  3541  	if m != nil {
  3542  		return m.Open
  3543  	}
  3544  	return 0
  3545  }
  3546  
  3547  func (m *Message) GetKeepalive() uint64 {
  3548  	if m != nil {
  3549  		return m.Keepalive
  3550  	}
  3551  	return 0
  3552  }
  3553  
  3554  func (m *Message) GetRefresh() uint64 {
  3555  	if m != nil {
  3556  		return m.Refresh
  3557  	}
  3558  	return 0
  3559  }
  3560  
  3561  func (m *Message) GetDiscarded() uint64 {
  3562  	if m != nil {
  3563  		return m.Discarded
  3564  	}
  3565  	return 0
  3566  }
  3567  
  3568  func (m *Message) GetTotal() uint64 {
  3569  	if m != nil {
  3570  		return m.Total
  3571  	}
  3572  	return 0
  3573  }
  3574  
  3575  func (m *Message) GetWithdrawUpdate() uint64 {
  3576  	if m != nil {
  3577  		return m.WithdrawUpdate
  3578  	}
  3579  	return 0
  3580  }
  3581  
  3582  func (m *Message) GetWithdrawPrefix() uint64 {
  3583  	if m != nil {
  3584  		return m.WithdrawPrefix
  3585  	}
  3586  	return 0
  3587  }
  3588  
  3589  type Queues struct {
  3590  	Input  uint32 `protobuf:"varint,1,opt,name=input" json:"input,omitempty"`
  3591  	Output uint32 `protobuf:"varint,2,opt,name=output" json:"output,omitempty"`
  3592  }
  3593  
  3594  func (m *Queues) Reset()                    { *m = Queues{} }
  3595  func (m *Queues) String() string            { return proto.CompactTextString(m) }
  3596  func (*Queues) ProtoMessage()               {}
  3597  func (*Queues) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{85} }
  3598  
  3599  func (m *Queues) GetInput() uint32 {
  3600  	if m != nil {
  3601  		return m.Input
  3602  	}
  3603  	return 0
  3604  }
  3605  
  3606  func (m *Queues) GetOutput() uint32 {
  3607  	if m != nil {
  3608  		return m.Output
  3609  	}
  3610  	return 0
  3611  }
  3612  
  3613  type Timers struct {
  3614  	Config *TimersConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  3615  	State  *TimersState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  3616  }
  3617  
  3618  func (m *Timers) Reset()                    { *m = Timers{} }
  3619  func (m *Timers) String() string            { return proto.CompactTextString(m) }
  3620  func (*Timers) ProtoMessage()               {}
  3621  func (*Timers) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{86} }
  3622  
  3623  func (m *Timers) GetConfig() *TimersConfig {
  3624  	if m != nil {
  3625  		return m.Config
  3626  	}
  3627  	return nil
  3628  }
  3629  
  3630  func (m *Timers) GetState() *TimersState {
  3631  	if m != nil {
  3632  		return m.State
  3633  	}
  3634  	return nil
  3635  }
  3636  
  3637  type TimersConfig struct {
  3638  	ConnectRetry                 uint64 `protobuf:"varint,1,opt,name=connect_retry,json=connectRetry" json:"connect_retry,omitempty"`
  3639  	HoldTime                     uint64 `protobuf:"varint,2,opt,name=hold_time,json=holdTime" json:"hold_time,omitempty"`
  3640  	KeepaliveInterval            uint64 `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval" json:"keepalive_interval,omitempty"`
  3641  	MinimumAdvertisementInterval uint64 `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval" json:"minimum_advertisement_interval,omitempty"`
  3642  }
  3643  
  3644  func (m *TimersConfig) Reset()                    { *m = TimersConfig{} }
  3645  func (m *TimersConfig) String() string            { return proto.CompactTextString(m) }
  3646  func (*TimersConfig) ProtoMessage()               {}
  3647  func (*TimersConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{87} }
  3648  
  3649  func (m *TimersConfig) GetConnectRetry() uint64 {
  3650  	if m != nil {
  3651  		return m.ConnectRetry
  3652  	}
  3653  	return 0
  3654  }
  3655  
  3656  func (m *TimersConfig) GetHoldTime() uint64 {
  3657  	if m != nil {
  3658  		return m.HoldTime
  3659  	}
  3660  	return 0
  3661  }
  3662  
  3663  func (m *TimersConfig) GetKeepaliveInterval() uint64 {
  3664  	if m != nil {
  3665  		return m.KeepaliveInterval
  3666  	}
  3667  	return 0
  3668  }
  3669  
  3670  func (m *TimersConfig) GetMinimumAdvertisementInterval() uint64 {
  3671  	if m != nil {
  3672  		return m.MinimumAdvertisementInterval
  3673  	}
  3674  	return 0
  3675  }
  3676  
  3677  type TimersState struct {
  3678  	ConnectRetry                 uint64                      `protobuf:"varint,1,opt,name=connect_retry,json=connectRetry" json:"connect_retry,omitempty"`
  3679  	HoldTime                     uint64                      `protobuf:"varint,2,opt,name=hold_time,json=holdTime" json:"hold_time,omitempty"`
  3680  	KeepaliveInterval            uint64                      `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval" json:"keepalive_interval,omitempty"`
  3681  	MinimumAdvertisementInterval uint64                      `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval" json:"minimum_advertisement_interval,omitempty"`
  3682  	NegotiatedHoldTime           uint64                      `protobuf:"varint,5,opt,name=negotiated_hold_time,json=negotiatedHoldTime" json:"negotiated_hold_time,omitempty"`
  3683  	Uptime                       *google_protobuf2.Timestamp `protobuf:"bytes,6,opt,name=uptime" json:"uptime,omitempty"`
  3684  	Downtime                     *google_protobuf2.Timestamp `protobuf:"bytes,7,opt,name=downtime" json:"downtime,omitempty"`
  3685  }
  3686  
  3687  func (m *TimersState) Reset()                    { *m = TimersState{} }
  3688  func (m *TimersState) String() string            { return proto.CompactTextString(m) }
  3689  func (*TimersState) ProtoMessage()               {}
  3690  func (*TimersState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{88} }
  3691  
  3692  func (m *TimersState) GetConnectRetry() uint64 {
  3693  	if m != nil {
  3694  		return m.ConnectRetry
  3695  	}
  3696  	return 0
  3697  }
  3698  
  3699  func (m *TimersState) GetHoldTime() uint64 {
  3700  	if m != nil {
  3701  		return m.HoldTime
  3702  	}
  3703  	return 0
  3704  }
  3705  
  3706  func (m *TimersState) GetKeepaliveInterval() uint64 {
  3707  	if m != nil {
  3708  		return m.KeepaliveInterval
  3709  	}
  3710  	return 0
  3711  }
  3712  
  3713  func (m *TimersState) GetMinimumAdvertisementInterval() uint64 {
  3714  	if m != nil {
  3715  		return m.MinimumAdvertisementInterval
  3716  	}
  3717  	return 0
  3718  }
  3719  
  3720  func (m *TimersState) GetNegotiatedHoldTime() uint64 {
  3721  	if m != nil {
  3722  		return m.NegotiatedHoldTime
  3723  	}
  3724  	return 0
  3725  }
  3726  
  3727  func (m *TimersState) GetUptime() *google_protobuf2.Timestamp {
  3728  	if m != nil {
  3729  		return m.Uptime
  3730  	}
  3731  	return nil
  3732  }
  3733  
  3734  func (m *TimersState) GetDowntime() *google_protobuf2.Timestamp {
  3735  	if m != nil {
  3736  		return m.Downtime
  3737  	}
  3738  	return nil
  3739  }
  3740  
  3741  type Transport struct {
  3742  	LocalAddress  string `protobuf:"bytes,1,opt,name=local_address,json=localAddress" json:"local_address,omitempty"`
  3743  	LocalPort     uint32 `protobuf:"varint,2,opt,name=local_port,json=localPort" json:"local_port,omitempty"`
  3744  	MtuDiscovery  bool   `protobuf:"varint,3,opt,name=mtu_discovery,json=mtuDiscovery" json:"mtu_discovery,omitempty"`
  3745  	PassiveMode   bool   `protobuf:"varint,4,opt,name=passive_mode,json=passiveMode" json:"passive_mode,omitempty"`
  3746  	RemoteAddress string `protobuf:"bytes,5,opt,name=remote_address,json=remoteAddress" json:"remote_address,omitempty"`
  3747  	RemotePort    uint32 `protobuf:"varint,6,opt,name=remote_port,json=remotePort" json:"remote_port,omitempty"`
  3748  	TcpMss        uint32 `protobuf:"varint,7,opt,name=tcp_mss,json=tcpMss" json:"tcp_mss,omitempty"`
  3749  }
  3750  
  3751  func (m *Transport) Reset()                    { *m = Transport{} }
  3752  func (m *Transport) String() string            { return proto.CompactTextString(m) }
  3753  func (*Transport) ProtoMessage()               {}
  3754  func (*Transport) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{89} }
  3755  
  3756  func (m *Transport) GetLocalAddress() string {
  3757  	if m != nil {
  3758  		return m.LocalAddress
  3759  	}
  3760  	return ""
  3761  }
  3762  
  3763  func (m *Transport) GetLocalPort() uint32 {
  3764  	if m != nil {
  3765  		return m.LocalPort
  3766  	}
  3767  	return 0
  3768  }
  3769  
  3770  func (m *Transport) GetMtuDiscovery() bool {
  3771  	if m != nil {
  3772  		return m.MtuDiscovery
  3773  	}
  3774  	return false
  3775  }
  3776  
  3777  func (m *Transport) GetPassiveMode() bool {
  3778  	if m != nil {
  3779  		return m.PassiveMode
  3780  	}
  3781  	return false
  3782  }
  3783  
  3784  func (m *Transport) GetRemoteAddress() string {
  3785  	if m != nil {
  3786  		return m.RemoteAddress
  3787  	}
  3788  	return ""
  3789  }
  3790  
  3791  func (m *Transport) GetRemotePort() uint32 {
  3792  	if m != nil {
  3793  		return m.RemotePort
  3794  	}
  3795  	return 0
  3796  }
  3797  
  3798  func (m *Transport) GetTcpMss() uint32 {
  3799  	if m != nil {
  3800  		return m.TcpMss
  3801  	}
  3802  	return 0
  3803  }
  3804  
  3805  type RouteServer struct {
  3806  	RouteServerClient bool `protobuf:"varint,1,opt,name=route_server_client,json=routeServerClient" json:"route_server_client,omitempty"`
  3807  }
  3808  
  3809  func (m *RouteServer) Reset()                    { *m = RouteServer{} }
  3810  func (m *RouteServer) String() string            { return proto.CompactTextString(m) }
  3811  func (*RouteServer) ProtoMessage()               {}
  3812  func (*RouteServer) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{90} }
  3813  
  3814  func (m *RouteServer) GetRouteServerClient() bool {
  3815  	if m != nil {
  3816  		return m.RouteServerClient
  3817  	}
  3818  	return false
  3819  }
  3820  
  3821  type GracefulRestart struct {
  3822  	Enabled             bool   `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  3823  	RestartTime         uint32 `protobuf:"varint,2,opt,name=restart_time,json=restartTime" json:"restart_time,omitempty"`
  3824  	HelperOnly          bool   `protobuf:"varint,3,opt,name=helper_only,json=helperOnly" json:"helper_only,omitempty"`
  3825  	DeferralTime        uint32 `protobuf:"varint,4,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"`
  3826  	NotificationEnabled bool   `protobuf:"varint,5,opt,name=notification_enabled,json=notificationEnabled" json:"notification_enabled,omitempty"`
  3827  	LonglivedEnabled    bool   `protobuf:"varint,6,opt,name=longlived_enabled,json=longlivedEnabled" json:"longlived_enabled,omitempty"`
  3828  	StaleRoutesTime     uint32 `protobuf:"varint,7,opt,name=stale_routes_time,json=staleRoutesTime" json:"stale_routes_time,omitempty"`
  3829  	PeerRestartTime     uint32 `protobuf:"varint,8,opt,name=peer_restart_time,json=peerRestartTime" json:"peer_restart_time,omitempty"`
  3830  	PeerRestarting      bool   `protobuf:"varint,9,opt,name=peer_restarting,json=peerRestarting" json:"peer_restarting,omitempty"`
  3831  	LocalRestarting     bool   `protobuf:"varint,10,opt,name=local_restarting,json=localRestarting" json:"local_restarting,omitempty"`
  3832  	Mode                string `protobuf:"bytes,11,opt,name=mode" json:"mode,omitempty"`
  3833  }
  3834  
  3835  func (m *GracefulRestart) Reset()                    { *m = GracefulRestart{} }
  3836  func (m *GracefulRestart) String() string            { return proto.CompactTextString(m) }
  3837  func (*GracefulRestart) ProtoMessage()               {}
  3838  func (*GracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{91} }
  3839  
  3840  func (m *GracefulRestart) GetEnabled() bool {
  3841  	if m != nil {
  3842  		return m.Enabled
  3843  	}
  3844  	return false
  3845  }
  3846  
  3847  func (m *GracefulRestart) GetRestartTime() uint32 {
  3848  	if m != nil {
  3849  		return m.RestartTime
  3850  	}
  3851  	return 0
  3852  }
  3853  
  3854  func (m *GracefulRestart) GetHelperOnly() bool {
  3855  	if m != nil {
  3856  		return m.HelperOnly
  3857  	}
  3858  	return false
  3859  }
  3860  
  3861  func (m *GracefulRestart) GetDeferralTime() uint32 {
  3862  	if m != nil {
  3863  		return m.DeferralTime
  3864  	}
  3865  	return 0
  3866  }
  3867  
  3868  func (m *GracefulRestart) GetNotificationEnabled() bool {
  3869  	if m != nil {
  3870  		return m.NotificationEnabled
  3871  	}
  3872  	return false
  3873  }
  3874  
  3875  func (m *GracefulRestart) GetLonglivedEnabled() bool {
  3876  	if m != nil {
  3877  		return m.LonglivedEnabled
  3878  	}
  3879  	return false
  3880  }
  3881  
  3882  func (m *GracefulRestart) GetStaleRoutesTime() uint32 {
  3883  	if m != nil {
  3884  		return m.StaleRoutesTime
  3885  	}
  3886  	return 0
  3887  }
  3888  
  3889  func (m *GracefulRestart) GetPeerRestartTime() uint32 {
  3890  	if m != nil {
  3891  		return m.PeerRestartTime
  3892  	}
  3893  	return 0
  3894  }
  3895  
  3896  func (m *GracefulRestart) GetPeerRestarting() bool {
  3897  	if m != nil {
  3898  		return m.PeerRestarting
  3899  	}
  3900  	return false
  3901  }
  3902  
  3903  func (m *GracefulRestart) GetLocalRestarting() bool {
  3904  	if m != nil {
  3905  		return m.LocalRestarting
  3906  	}
  3907  	return false
  3908  }
  3909  
  3910  func (m *GracefulRestart) GetMode() string {
  3911  	if m != nil {
  3912  		return m.Mode
  3913  	}
  3914  	return ""
  3915  }
  3916  
  3917  type MpGracefulRestartConfig struct {
  3918  	Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  3919  }
  3920  
  3921  func (m *MpGracefulRestartConfig) Reset()                    { *m = MpGracefulRestartConfig{} }
  3922  func (m *MpGracefulRestartConfig) String() string            { return proto.CompactTextString(m) }
  3923  func (*MpGracefulRestartConfig) ProtoMessage()               {}
  3924  func (*MpGracefulRestartConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{92} }
  3925  
  3926  func (m *MpGracefulRestartConfig) GetEnabled() bool {
  3927  	if m != nil {
  3928  		return m.Enabled
  3929  	}
  3930  	return false
  3931  }
  3932  
  3933  type MpGracefulRestartState struct {
  3934  	Enabled          bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  3935  	Received         bool `protobuf:"varint,2,opt,name=received" json:"received,omitempty"`
  3936  	Advertised       bool `protobuf:"varint,3,opt,name=advertised" json:"advertised,omitempty"`
  3937  	EndOfRibReceived bool `protobuf:"varint,4,opt,name=end_of_rib_received,json=endOfRibReceived" json:"end_of_rib_received,omitempty"`
  3938  	EndOfRibSent     bool `protobuf:"varint,5,opt,name=end_of_rib_sent,json=endOfRibSent" json:"end_of_rib_sent,omitempty"`
  3939  }
  3940  
  3941  func (m *MpGracefulRestartState) Reset()                    { *m = MpGracefulRestartState{} }
  3942  func (m *MpGracefulRestartState) String() string            { return proto.CompactTextString(m) }
  3943  func (*MpGracefulRestartState) ProtoMessage()               {}
  3944  func (*MpGracefulRestartState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{93} }
  3945  
  3946  func (m *MpGracefulRestartState) GetEnabled() bool {
  3947  	if m != nil {
  3948  		return m.Enabled
  3949  	}
  3950  	return false
  3951  }
  3952  
  3953  func (m *MpGracefulRestartState) GetReceived() bool {
  3954  	if m != nil {
  3955  		return m.Received
  3956  	}
  3957  	return false
  3958  }
  3959  
  3960  func (m *MpGracefulRestartState) GetAdvertised() bool {
  3961  	if m != nil {
  3962  		return m.Advertised
  3963  	}
  3964  	return false
  3965  }
  3966  
  3967  func (m *MpGracefulRestartState) GetEndOfRibReceived() bool {
  3968  	if m != nil {
  3969  		return m.EndOfRibReceived
  3970  	}
  3971  	return false
  3972  }
  3973  
  3974  func (m *MpGracefulRestartState) GetEndOfRibSent() bool {
  3975  	if m != nil {
  3976  		return m.EndOfRibSent
  3977  	}
  3978  	return false
  3979  }
  3980  
  3981  type MpGracefulRestart struct {
  3982  	Config *MpGracefulRestartConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  3983  	State  *MpGracefulRestartState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  3984  }
  3985  
  3986  func (m *MpGracefulRestart) Reset()                    { *m = MpGracefulRestart{} }
  3987  func (m *MpGracefulRestart) String() string            { return proto.CompactTextString(m) }
  3988  func (*MpGracefulRestart) ProtoMessage()               {}
  3989  func (*MpGracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{94} }
  3990  
  3991  func (m *MpGracefulRestart) GetConfig() *MpGracefulRestartConfig {
  3992  	if m != nil {
  3993  		return m.Config
  3994  	}
  3995  	return nil
  3996  }
  3997  
  3998  func (m *MpGracefulRestart) GetState() *MpGracefulRestartState {
  3999  	if m != nil {
  4000  		return m.State
  4001  	}
  4002  	return nil
  4003  }
  4004  
  4005  type AfiSafiConfig struct {
  4006  	Family  *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"`
  4007  	Enabled bool    `protobuf:"varint,2,opt,name=enabled" json:"enabled,omitempty"`
  4008  }
  4009  
  4010  func (m *AfiSafiConfig) Reset()                    { *m = AfiSafiConfig{} }
  4011  func (m *AfiSafiConfig) String() string            { return proto.CompactTextString(m) }
  4012  func (*AfiSafiConfig) ProtoMessage()               {}
  4013  func (*AfiSafiConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{95} }
  4014  
  4015  func (m *AfiSafiConfig) GetFamily() *Family {
  4016  	if m != nil {
  4017  		return m.Family
  4018  	}
  4019  	return nil
  4020  }
  4021  
  4022  func (m *AfiSafiConfig) GetEnabled() bool {
  4023  	if m != nil {
  4024  		return m.Enabled
  4025  	}
  4026  	return false
  4027  }
  4028  
  4029  type AfiSafiState struct {
  4030  	Family     *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"`
  4031  	Enabled    bool    `protobuf:"varint,2,opt,name=enabled" json:"enabled,omitempty"`
  4032  	Received   uint64  `protobuf:"varint,3,opt,name=received" json:"received,omitempty"`
  4033  	Accepted   uint64  `protobuf:"varint,4,opt,name=accepted" json:"accepted,omitempty"`
  4034  	Advertised uint64  `protobuf:"varint,5,opt,name=advertised" json:"advertised,omitempty"`
  4035  }
  4036  
  4037  func (m *AfiSafiState) Reset()                    { *m = AfiSafiState{} }
  4038  func (m *AfiSafiState) String() string            { return proto.CompactTextString(m) }
  4039  func (*AfiSafiState) ProtoMessage()               {}
  4040  func (*AfiSafiState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{96} }
  4041  
  4042  func (m *AfiSafiState) GetFamily() *Family {
  4043  	if m != nil {
  4044  		return m.Family
  4045  	}
  4046  	return nil
  4047  }
  4048  
  4049  func (m *AfiSafiState) GetEnabled() bool {
  4050  	if m != nil {
  4051  		return m.Enabled
  4052  	}
  4053  	return false
  4054  }
  4055  
  4056  func (m *AfiSafiState) GetReceived() uint64 {
  4057  	if m != nil {
  4058  		return m.Received
  4059  	}
  4060  	return 0
  4061  }
  4062  
  4063  func (m *AfiSafiState) GetAccepted() uint64 {
  4064  	if m != nil {
  4065  		return m.Accepted
  4066  	}
  4067  	return 0
  4068  }
  4069  
  4070  func (m *AfiSafiState) GetAdvertised() uint64 {
  4071  	if m != nil {
  4072  		return m.Advertised
  4073  	}
  4074  	return 0
  4075  }
  4076  
  4077  type RouteSelectionOptionsConfig struct {
  4078  	AlwaysCompareMed         bool `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed" json:"always_compare_med,omitempty"`
  4079  	IgnoreAsPathLength       bool `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength" json:"ignore_as_path_length,omitempty"`
  4080  	ExternalCompareRouterId  bool `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId" json:"external_compare_router_id,omitempty"`
  4081  	AdvertiseInactiveRoutes  bool `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes" json:"advertise_inactive_routes,omitempty"`
  4082  	EnableAigp               bool `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp" json:"enable_aigp,omitempty"`
  4083  	IgnoreNextHopIgpMetric   bool `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric" json:"ignore_next_hop_igp_metric,omitempty"`
  4084  	DisableBestPathSelection bool `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection" json:"disable_best_path_selection,omitempty"`
  4085  }
  4086  
  4087  func (m *RouteSelectionOptionsConfig) Reset()                    { *m = RouteSelectionOptionsConfig{} }
  4088  func (m *RouteSelectionOptionsConfig) String() string            { return proto.CompactTextString(m) }
  4089  func (*RouteSelectionOptionsConfig) ProtoMessage()               {}
  4090  func (*RouteSelectionOptionsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{97} }
  4091  
  4092  func (m *RouteSelectionOptionsConfig) GetAlwaysCompareMed() bool {
  4093  	if m != nil {
  4094  		return m.AlwaysCompareMed
  4095  	}
  4096  	return false
  4097  }
  4098  
  4099  func (m *RouteSelectionOptionsConfig) GetIgnoreAsPathLength() bool {
  4100  	if m != nil {
  4101  		return m.IgnoreAsPathLength
  4102  	}
  4103  	return false
  4104  }
  4105  
  4106  func (m *RouteSelectionOptionsConfig) GetExternalCompareRouterId() bool {
  4107  	if m != nil {
  4108  		return m.ExternalCompareRouterId
  4109  	}
  4110  	return false
  4111  }
  4112  
  4113  func (m *RouteSelectionOptionsConfig) GetAdvertiseInactiveRoutes() bool {
  4114  	if m != nil {
  4115  		return m.AdvertiseInactiveRoutes
  4116  	}
  4117  	return false
  4118  }
  4119  
  4120  func (m *RouteSelectionOptionsConfig) GetEnableAigp() bool {
  4121  	if m != nil {
  4122  		return m.EnableAigp
  4123  	}
  4124  	return false
  4125  }
  4126  
  4127  func (m *RouteSelectionOptionsConfig) GetIgnoreNextHopIgpMetric() bool {
  4128  	if m != nil {
  4129  		return m.IgnoreNextHopIgpMetric
  4130  	}
  4131  	return false
  4132  }
  4133  
  4134  func (m *RouteSelectionOptionsConfig) GetDisableBestPathSelection() bool {
  4135  	if m != nil {
  4136  		return m.DisableBestPathSelection
  4137  	}
  4138  	return false
  4139  }
  4140  
  4141  type RouteSelectionOptionsState struct {
  4142  	AlwaysCompareMed         bool `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed" json:"always_compare_med,omitempty"`
  4143  	IgnoreAsPathLength       bool `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength" json:"ignore_as_path_length,omitempty"`
  4144  	ExternalCompareRouterId  bool `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId" json:"external_compare_router_id,omitempty"`
  4145  	AdvertiseInactiveRoutes  bool `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes" json:"advertise_inactive_routes,omitempty"`
  4146  	EnableAigp               bool `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp" json:"enable_aigp,omitempty"`
  4147  	IgnoreNextHopIgpMetric   bool `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric" json:"ignore_next_hop_igp_metric,omitempty"`
  4148  	DisableBestPathSelection bool `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection" json:"disable_best_path_selection,omitempty"`
  4149  }
  4150  
  4151  func (m *RouteSelectionOptionsState) Reset()                    { *m = RouteSelectionOptionsState{} }
  4152  func (m *RouteSelectionOptionsState) String() string            { return proto.CompactTextString(m) }
  4153  func (*RouteSelectionOptionsState) ProtoMessage()               {}
  4154  func (*RouteSelectionOptionsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{98} }
  4155  
  4156  func (m *RouteSelectionOptionsState) GetAlwaysCompareMed() bool {
  4157  	if m != nil {
  4158  		return m.AlwaysCompareMed
  4159  	}
  4160  	return false
  4161  }
  4162  
  4163  func (m *RouteSelectionOptionsState) GetIgnoreAsPathLength() bool {
  4164  	if m != nil {
  4165  		return m.IgnoreAsPathLength
  4166  	}
  4167  	return false
  4168  }
  4169  
  4170  func (m *RouteSelectionOptionsState) GetExternalCompareRouterId() bool {
  4171  	if m != nil {
  4172  		return m.ExternalCompareRouterId
  4173  	}
  4174  	return false
  4175  }
  4176  
  4177  func (m *RouteSelectionOptionsState) GetAdvertiseInactiveRoutes() bool {
  4178  	if m != nil {
  4179  		return m.AdvertiseInactiveRoutes
  4180  	}
  4181  	return false
  4182  }
  4183  
  4184  func (m *RouteSelectionOptionsState) GetEnableAigp() bool {
  4185  	if m != nil {
  4186  		return m.EnableAigp
  4187  	}
  4188  	return false
  4189  }
  4190  
  4191  func (m *RouteSelectionOptionsState) GetIgnoreNextHopIgpMetric() bool {
  4192  	if m != nil {
  4193  		return m.IgnoreNextHopIgpMetric
  4194  	}
  4195  	return false
  4196  }
  4197  
  4198  func (m *RouteSelectionOptionsState) GetDisableBestPathSelection() bool {
  4199  	if m != nil {
  4200  		return m.DisableBestPathSelection
  4201  	}
  4202  	return false
  4203  }
  4204  
  4205  type RouteSelectionOptions struct {
  4206  	Config *RouteSelectionOptionsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4207  	State  *RouteSelectionOptionsState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4208  }
  4209  
  4210  func (m *RouteSelectionOptions) Reset()                    { *m = RouteSelectionOptions{} }
  4211  func (m *RouteSelectionOptions) String() string            { return proto.CompactTextString(m) }
  4212  func (*RouteSelectionOptions) ProtoMessage()               {}
  4213  func (*RouteSelectionOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{99} }
  4214  
  4215  func (m *RouteSelectionOptions) GetConfig() *RouteSelectionOptionsConfig {
  4216  	if m != nil {
  4217  		return m.Config
  4218  	}
  4219  	return nil
  4220  }
  4221  
  4222  func (m *RouteSelectionOptions) GetState() *RouteSelectionOptionsState {
  4223  	if m != nil {
  4224  		return m.State
  4225  	}
  4226  	return nil
  4227  }
  4228  
  4229  type UseMultiplePathsConfig struct {
  4230  	Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  4231  }
  4232  
  4233  func (m *UseMultiplePathsConfig) Reset()                    { *m = UseMultiplePathsConfig{} }
  4234  func (m *UseMultiplePathsConfig) String() string            { return proto.CompactTextString(m) }
  4235  func (*UseMultiplePathsConfig) ProtoMessage()               {}
  4236  func (*UseMultiplePathsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{100} }
  4237  
  4238  func (m *UseMultiplePathsConfig) GetEnabled() bool {
  4239  	if m != nil {
  4240  		return m.Enabled
  4241  	}
  4242  	return false
  4243  }
  4244  
  4245  type UseMultiplePathsState struct {
  4246  	Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  4247  }
  4248  
  4249  func (m *UseMultiplePathsState) Reset()                    { *m = UseMultiplePathsState{} }
  4250  func (m *UseMultiplePathsState) String() string            { return proto.CompactTextString(m) }
  4251  func (*UseMultiplePathsState) ProtoMessage()               {}
  4252  func (*UseMultiplePathsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{101} }
  4253  
  4254  func (m *UseMultiplePathsState) GetEnabled() bool {
  4255  	if m != nil {
  4256  		return m.Enabled
  4257  	}
  4258  	return false
  4259  }
  4260  
  4261  type EbgpConfig struct {
  4262  	AllowMultipleAs bool   `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs" json:"allow_multiple_as,omitempty"`
  4263  	MaximumPaths    uint32 `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"`
  4264  }
  4265  
  4266  func (m *EbgpConfig) Reset()                    { *m = EbgpConfig{} }
  4267  func (m *EbgpConfig) String() string            { return proto.CompactTextString(m) }
  4268  func (*EbgpConfig) ProtoMessage()               {}
  4269  func (*EbgpConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{102} }
  4270  
  4271  func (m *EbgpConfig) GetAllowMultipleAs() bool {
  4272  	if m != nil {
  4273  		return m.AllowMultipleAs
  4274  	}
  4275  	return false
  4276  }
  4277  
  4278  func (m *EbgpConfig) GetMaximumPaths() uint32 {
  4279  	if m != nil {
  4280  		return m.MaximumPaths
  4281  	}
  4282  	return 0
  4283  }
  4284  
  4285  type EbgpState struct {
  4286  	AllowMultipleAs bool   `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs" json:"allow_multiple_as,omitempty"`
  4287  	MaximumPaths    uint32 `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"`
  4288  }
  4289  
  4290  func (m *EbgpState) Reset()                    { *m = EbgpState{} }
  4291  func (m *EbgpState) String() string            { return proto.CompactTextString(m) }
  4292  func (*EbgpState) ProtoMessage()               {}
  4293  func (*EbgpState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{103} }
  4294  
  4295  func (m *EbgpState) GetAllowMultipleAs() bool {
  4296  	if m != nil {
  4297  		return m.AllowMultipleAs
  4298  	}
  4299  	return false
  4300  }
  4301  
  4302  func (m *EbgpState) GetMaximumPaths() uint32 {
  4303  	if m != nil {
  4304  		return m.MaximumPaths
  4305  	}
  4306  	return 0
  4307  }
  4308  
  4309  type Ebgp struct {
  4310  	Config *EbgpConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4311  	State  *EbgpState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4312  }
  4313  
  4314  func (m *Ebgp) Reset()                    { *m = Ebgp{} }
  4315  func (m *Ebgp) String() string            { return proto.CompactTextString(m) }
  4316  func (*Ebgp) ProtoMessage()               {}
  4317  func (*Ebgp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{104} }
  4318  
  4319  func (m *Ebgp) GetConfig() *EbgpConfig {
  4320  	if m != nil {
  4321  		return m.Config
  4322  	}
  4323  	return nil
  4324  }
  4325  
  4326  func (m *Ebgp) GetState() *EbgpState {
  4327  	if m != nil {
  4328  		return m.State
  4329  	}
  4330  	return nil
  4331  }
  4332  
  4333  type IbgpConfig struct {
  4334  	MaximumPaths uint32 `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"`
  4335  }
  4336  
  4337  func (m *IbgpConfig) Reset()                    { *m = IbgpConfig{} }
  4338  func (m *IbgpConfig) String() string            { return proto.CompactTextString(m) }
  4339  func (*IbgpConfig) ProtoMessage()               {}
  4340  func (*IbgpConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{105} }
  4341  
  4342  func (m *IbgpConfig) GetMaximumPaths() uint32 {
  4343  	if m != nil {
  4344  		return m.MaximumPaths
  4345  	}
  4346  	return 0
  4347  }
  4348  
  4349  type IbgpState struct {
  4350  	MaximumPaths uint32 `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"`
  4351  }
  4352  
  4353  func (m *IbgpState) Reset()                    { *m = IbgpState{} }
  4354  func (m *IbgpState) String() string            { return proto.CompactTextString(m) }
  4355  func (*IbgpState) ProtoMessage()               {}
  4356  func (*IbgpState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{106} }
  4357  
  4358  func (m *IbgpState) GetMaximumPaths() uint32 {
  4359  	if m != nil {
  4360  		return m.MaximumPaths
  4361  	}
  4362  	return 0
  4363  }
  4364  
  4365  type Ibgp struct {
  4366  	Config *IbgpConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4367  	State  *IbgpState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4368  }
  4369  
  4370  func (m *Ibgp) Reset()                    { *m = Ibgp{} }
  4371  func (m *Ibgp) String() string            { return proto.CompactTextString(m) }
  4372  func (*Ibgp) ProtoMessage()               {}
  4373  func (*Ibgp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{107} }
  4374  
  4375  func (m *Ibgp) GetConfig() *IbgpConfig {
  4376  	if m != nil {
  4377  		return m.Config
  4378  	}
  4379  	return nil
  4380  }
  4381  
  4382  func (m *Ibgp) GetState() *IbgpState {
  4383  	if m != nil {
  4384  		return m.State
  4385  	}
  4386  	return nil
  4387  }
  4388  
  4389  type UseMultiplePaths struct {
  4390  	Config *UseMultiplePathsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4391  	State  *UseMultiplePathsState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4392  	Ebgp   *Ebgp                   `protobuf:"bytes,3,opt,name=ebgp" json:"ebgp,omitempty"`
  4393  	Ibgp   *Ibgp                   `protobuf:"bytes,4,opt,name=ibgp" json:"ibgp,omitempty"`
  4394  }
  4395  
  4396  func (m *UseMultiplePaths) Reset()                    { *m = UseMultiplePaths{} }
  4397  func (m *UseMultiplePaths) String() string            { return proto.CompactTextString(m) }
  4398  func (*UseMultiplePaths) ProtoMessage()               {}
  4399  func (*UseMultiplePaths) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{108} }
  4400  
  4401  func (m *UseMultiplePaths) GetConfig() *UseMultiplePathsConfig {
  4402  	if m != nil {
  4403  		return m.Config
  4404  	}
  4405  	return nil
  4406  }
  4407  
  4408  func (m *UseMultiplePaths) GetState() *UseMultiplePathsState {
  4409  	if m != nil {
  4410  		return m.State
  4411  	}
  4412  	return nil
  4413  }
  4414  
  4415  func (m *UseMultiplePaths) GetEbgp() *Ebgp {
  4416  	if m != nil {
  4417  		return m.Ebgp
  4418  	}
  4419  	return nil
  4420  }
  4421  
  4422  func (m *UseMultiplePaths) GetIbgp() *Ibgp {
  4423  	if m != nil {
  4424  		return m.Ibgp
  4425  	}
  4426  	return nil
  4427  }
  4428  
  4429  type RouteTargetMembershipConfig struct {
  4430  	DeferralTime uint32 `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"`
  4431  }
  4432  
  4433  func (m *RouteTargetMembershipConfig) Reset()                    { *m = RouteTargetMembershipConfig{} }
  4434  func (m *RouteTargetMembershipConfig) String() string            { return proto.CompactTextString(m) }
  4435  func (*RouteTargetMembershipConfig) ProtoMessage()               {}
  4436  func (*RouteTargetMembershipConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{109} }
  4437  
  4438  func (m *RouteTargetMembershipConfig) GetDeferralTime() uint32 {
  4439  	if m != nil {
  4440  		return m.DeferralTime
  4441  	}
  4442  	return 0
  4443  }
  4444  
  4445  type RouteTargetMembershipState struct {
  4446  	DeferralTime uint32 `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"`
  4447  }
  4448  
  4449  func (m *RouteTargetMembershipState) Reset()                    { *m = RouteTargetMembershipState{} }
  4450  func (m *RouteTargetMembershipState) String() string            { return proto.CompactTextString(m) }
  4451  func (*RouteTargetMembershipState) ProtoMessage()               {}
  4452  func (*RouteTargetMembershipState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{110} }
  4453  
  4454  func (m *RouteTargetMembershipState) GetDeferralTime() uint32 {
  4455  	if m != nil {
  4456  		return m.DeferralTime
  4457  	}
  4458  	return 0
  4459  }
  4460  
  4461  type RouteTargetMembership struct {
  4462  	Config *RouteTargetMembershipConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4463  	State  *RouteTargetMembershipState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4464  }
  4465  
  4466  func (m *RouteTargetMembership) Reset()                    { *m = RouteTargetMembership{} }
  4467  func (m *RouteTargetMembership) String() string            { return proto.CompactTextString(m) }
  4468  func (*RouteTargetMembership) ProtoMessage()               {}
  4469  func (*RouteTargetMembership) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{111} }
  4470  
  4471  func (m *RouteTargetMembership) GetConfig() *RouteTargetMembershipConfig {
  4472  	if m != nil {
  4473  		return m.Config
  4474  	}
  4475  	return nil
  4476  }
  4477  
  4478  func (m *RouteTargetMembership) GetState() *RouteTargetMembershipState {
  4479  	if m != nil {
  4480  		return m.State
  4481  	}
  4482  	return nil
  4483  }
  4484  
  4485  type LongLivedGracefulRestartConfig struct {
  4486  	Enabled     bool   `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  4487  	RestartTime uint32 `protobuf:"varint,2,opt,name=restart_time,json=restartTime" json:"restart_time,omitempty"`
  4488  }
  4489  
  4490  func (m *LongLivedGracefulRestartConfig) Reset()         { *m = LongLivedGracefulRestartConfig{} }
  4491  func (m *LongLivedGracefulRestartConfig) String() string { return proto.CompactTextString(m) }
  4492  func (*LongLivedGracefulRestartConfig) ProtoMessage()    {}
  4493  func (*LongLivedGracefulRestartConfig) Descriptor() ([]byte, []int) {
  4494  	return fileDescriptor0, []int{112}
  4495  }
  4496  
  4497  func (m *LongLivedGracefulRestartConfig) GetEnabled() bool {
  4498  	if m != nil {
  4499  		return m.Enabled
  4500  	}
  4501  	return false
  4502  }
  4503  
  4504  func (m *LongLivedGracefulRestartConfig) GetRestartTime() uint32 {
  4505  	if m != nil {
  4506  		return m.RestartTime
  4507  	}
  4508  	return 0
  4509  }
  4510  
  4511  type LongLivedGracefulRestartState struct {
  4512  	Enabled                 bool   `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  4513  	Received                bool   `protobuf:"varint,2,opt,name=received" json:"received,omitempty"`
  4514  	Advertised              bool   `protobuf:"varint,3,opt,name=advertised" json:"advertised,omitempty"`
  4515  	PeerRestartTime         uint32 `protobuf:"varint,4,opt,name=peer_restart_time,json=peerRestartTime" json:"peer_restart_time,omitempty"`
  4516  	PeerRestartTimerExpired bool   `protobuf:"varint,5,opt,name=peer_restart_timer_expired,json=peerRestartTimerExpired" json:"peer_restart_timer_expired,omitempty"`
  4517  }
  4518  
  4519  func (m *LongLivedGracefulRestartState) Reset()                    { *m = LongLivedGracefulRestartState{} }
  4520  func (m *LongLivedGracefulRestartState) String() string            { return proto.CompactTextString(m) }
  4521  func (*LongLivedGracefulRestartState) ProtoMessage()               {}
  4522  func (*LongLivedGracefulRestartState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{113} }
  4523  
  4524  func (m *LongLivedGracefulRestartState) GetEnabled() bool {
  4525  	if m != nil {
  4526  		return m.Enabled
  4527  	}
  4528  	return false
  4529  }
  4530  
  4531  func (m *LongLivedGracefulRestartState) GetReceived() bool {
  4532  	if m != nil {
  4533  		return m.Received
  4534  	}
  4535  	return false
  4536  }
  4537  
  4538  func (m *LongLivedGracefulRestartState) GetAdvertised() bool {
  4539  	if m != nil {
  4540  		return m.Advertised
  4541  	}
  4542  	return false
  4543  }
  4544  
  4545  func (m *LongLivedGracefulRestartState) GetPeerRestartTime() uint32 {
  4546  	if m != nil {
  4547  		return m.PeerRestartTime
  4548  	}
  4549  	return 0
  4550  }
  4551  
  4552  func (m *LongLivedGracefulRestartState) GetPeerRestartTimerExpired() bool {
  4553  	if m != nil {
  4554  		return m.PeerRestartTimerExpired
  4555  	}
  4556  	return false
  4557  }
  4558  
  4559  type LongLivedGracefulRestart struct {
  4560  	Config *LongLivedGracefulRestartConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4561  	State  *LongLivedGracefulRestartState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4562  }
  4563  
  4564  func (m *LongLivedGracefulRestart) Reset()                    { *m = LongLivedGracefulRestart{} }
  4565  func (m *LongLivedGracefulRestart) String() string            { return proto.CompactTextString(m) }
  4566  func (*LongLivedGracefulRestart) ProtoMessage()               {}
  4567  func (*LongLivedGracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{114} }
  4568  
  4569  func (m *LongLivedGracefulRestart) GetConfig() *LongLivedGracefulRestartConfig {
  4570  	if m != nil {
  4571  		return m.Config
  4572  	}
  4573  	return nil
  4574  }
  4575  
  4576  func (m *LongLivedGracefulRestart) GetState() *LongLivedGracefulRestartState {
  4577  	if m != nil {
  4578  		return m.State
  4579  	}
  4580  	return nil
  4581  }
  4582  
  4583  type AfiSafi struct {
  4584  	MpGracefulRestart *MpGracefulRestart `protobuf:"bytes,1,opt,name=mp_graceful_restart,json=mpGracefulRestart" json:"mp_graceful_restart,omitempty"`
  4585  	Config            *AfiSafiConfig     `protobuf:"bytes,2,opt,name=config" json:"config,omitempty"`
  4586  	State             *AfiSafiState      `protobuf:"bytes,3,opt,name=state" json:"state,omitempty"`
  4587  	ApplyPolicy       *ApplyPolicy       `protobuf:"bytes,4,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"`
  4588  	// TODO:
  4589  	// Support the following structures:
  4590  	// - Ipv4Unicast
  4591  	// - Ipv6Unicast
  4592  	// - Ipv4LabelledUnicast
  4593  	// - Ipv6LabelledUnicast
  4594  	// - L3vpnIpv4Unicast
  4595  	// - L3vpnIpv6Unicast
  4596  	// - L3vpnIpv4Multicast
  4597  	// - L3vpnIpv6Multicast
  4598  	// - L2vpnVpls
  4599  	// - L2vpnEvpn
  4600  	RouteSelectionOptions    *RouteSelectionOptions    `protobuf:"bytes,5,opt,name=route_selection_options,json=routeSelectionOptions" json:"route_selection_options,omitempty"`
  4601  	UseMultiplePaths         *UseMultiplePaths         `protobuf:"bytes,6,opt,name=use_multiple_paths,json=useMultiplePaths" json:"use_multiple_paths,omitempty"`
  4602  	PrefixLimits             *PrefixLimit              `protobuf:"bytes,7,opt,name=prefix_limits,json=prefixLimits" json:"prefix_limits,omitempty"`
  4603  	RouteTargetMembership    *RouteTargetMembership    `protobuf:"bytes,8,opt,name=route_target_membership,json=routeTargetMembership" json:"route_target_membership,omitempty"`
  4604  	LongLivedGracefulRestart *LongLivedGracefulRestart `protobuf:"bytes,9,opt,name=long_lived_graceful_restart,json=longLivedGracefulRestart" json:"long_lived_graceful_restart,omitempty"`
  4605  	AddPaths                 *AddPaths                 `protobuf:"bytes,10,opt,name=add_paths,json=addPaths" json:"add_paths,omitempty"`
  4606  }
  4607  
  4608  func (m *AfiSafi) Reset()                    { *m = AfiSafi{} }
  4609  func (m *AfiSafi) String() string            { return proto.CompactTextString(m) }
  4610  func (*AfiSafi) ProtoMessage()               {}
  4611  func (*AfiSafi) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{115} }
  4612  
  4613  func (m *AfiSafi) GetMpGracefulRestart() *MpGracefulRestart {
  4614  	if m != nil {
  4615  		return m.MpGracefulRestart
  4616  	}
  4617  	return nil
  4618  }
  4619  
  4620  func (m *AfiSafi) GetConfig() *AfiSafiConfig {
  4621  	if m != nil {
  4622  		return m.Config
  4623  	}
  4624  	return nil
  4625  }
  4626  
  4627  func (m *AfiSafi) GetState() *AfiSafiState {
  4628  	if m != nil {
  4629  		return m.State
  4630  	}
  4631  	return nil
  4632  }
  4633  
  4634  func (m *AfiSafi) GetApplyPolicy() *ApplyPolicy {
  4635  	if m != nil {
  4636  		return m.ApplyPolicy
  4637  	}
  4638  	return nil
  4639  }
  4640  
  4641  func (m *AfiSafi) GetRouteSelectionOptions() *RouteSelectionOptions {
  4642  	if m != nil {
  4643  		return m.RouteSelectionOptions
  4644  	}
  4645  	return nil
  4646  }
  4647  
  4648  func (m *AfiSafi) GetUseMultiplePaths() *UseMultiplePaths {
  4649  	if m != nil {
  4650  		return m.UseMultiplePaths
  4651  	}
  4652  	return nil
  4653  }
  4654  
  4655  func (m *AfiSafi) GetPrefixLimits() *PrefixLimit {
  4656  	if m != nil {
  4657  		return m.PrefixLimits
  4658  	}
  4659  	return nil
  4660  }
  4661  
  4662  func (m *AfiSafi) GetRouteTargetMembership() *RouteTargetMembership {
  4663  	if m != nil {
  4664  		return m.RouteTargetMembership
  4665  	}
  4666  	return nil
  4667  }
  4668  
  4669  func (m *AfiSafi) GetLongLivedGracefulRestart() *LongLivedGracefulRestart {
  4670  	if m != nil {
  4671  		return m.LongLivedGracefulRestart
  4672  	}
  4673  	return nil
  4674  }
  4675  
  4676  func (m *AfiSafi) GetAddPaths() *AddPaths {
  4677  	if m != nil {
  4678  		return m.AddPaths
  4679  	}
  4680  	return nil
  4681  }
  4682  
  4683  type AddPathsConfig struct {
  4684  	Receive bool   `protobuf:"varint,1,opt,name=receive" json:"receive,omitempty"`
  4685  	SendMax uint32 `protobuf:"varint,2,opt,name=send_max,json=sendMax" json:"send_max,omitempty"`
  4686  }
  4687  
  4688  func (m *AddPathsConfig) Reset()                    { *m = AddPathsConfig{} }
  4689  func (m *AddPathsConfig) String() string            { return proto.CompactTextString(m) }
  4690  func (*AddPathsConfig) ProtoMessage()               {}
  4691  func (*AddPathsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{116} }
  4692  
  4693  func (m *AddPathsConfig) GetReceive() bool {
  4694  	if m != nil {
  4695  		return m.Receive
  4696  	}
  4697  	return false
  4698  }
  4699  
  4700  func (m *AddPathsConfig) GetSendMax() uint32 {
  4701  	if m != nil {
  4702  		return m.SendMax
  4703  	}
  4704  	return 0
  4705  }
  4706  
  4707  type AddPathsState struct {
  4708  	Receive bool   `protobuf:"varint,1,opt,name=receive" json:"receive,omitempty"`
  4709  	SendMax uint32 `protobuf:"varint,2,opt,name=send_max,json=sendMax" json:"send_max,omitempty"`
  4710  }
  4711  
  4712  func (m *AddPathsState) Reset()                    { *m = AddPathsState{} }
  4713  func (m *AddPathsState) String() string            { return proto.CompactTextString(m) }
  4714  func (*AddPathsState) ProtoMessage()               {}
  4715  func (*AddPathsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{117} }
  4716  
  4717  func (m *AddPathsState) GetReceive() bool {
  4718  	if m != nil {
  4719  		return m.Receive
  4720  	}
  4721  	return false
  4722  }
  4723  
  4724  func (m *AddPathsState) GetSendMax() uint32 {
  4725  	if m != nil {
  4726  		return m.SendMax
  4727  	}
  4728  	return 0
  4729  }
  4730  
  4731  type AddPaths struct {
  4732  	Config *AddPathsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"`
  4733  	State  *AddPathsState  `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  4734  }
  4735  
  4736  func (m *AddPaths) Reset()                    { *m = AddPaths{} }
  4737  func (m *AddPaths) String() string            { return proto.CompactTextString(m) }
  4738  func (*AddPaths) ProtoMessage()               {}
  4739  func (*AddPaths) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{118} }
  4740  
  4741  func (m *AddPaths) GetConfig() *AddPathsConfig {
  4742  	if m != nil {
  4743  		return m.Config
  4744  	}
  4745  	return nil
  4746  }
  4747  
  4748  func (m *AddPaths) GetState() *AddPathsState {
  4749  	if m != nil {
  4750  		return m.State
  4751  	}
  4752  	return nil
  4753  }
  4754  
  4755  type Prefix struct {
  4756  	IpPrefix      string `protobuf:"bytes,1,opt,name=ip_prefix,json=ipPrefix" json:"ip_prefix,omitempty"`
  4757  	MaskLengthMin uint32 `protobuf:"varint,2,opt,name=mask_length_min,json=maskLengthMin" json:"mask_length_min,omitempty"`
  4758  	MaskLengthMax uint32 `protobuf:"varint,3,opt,name=mask_length_max,json=maskLengthMax" json:"mask_length_max,omitempty"`
  4759  }
  4760  
  4761  func (m *Prefix) Reset()                    { *m = Prefix{} }
  4762  func (m *Prefix) String() string            { return proto.CompactTextString(m) }
  4763  func (*Prefix) ProtoMessage()               {}
  4764  func (*Prefix) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{119} }
  4765  
  4766  func (m *Prefix) GetIpPrefix() string {
  4767  	if m != nil {
  4768  		return m.IpPrefix
  4769  	}
  4770  	return ""
  4771  }
  4772  
  4773  func (m *Prefix) GetMaskLengthMin() uint32 {
  4774  	if m != nil {
  4775  		return m.MaskLengthMin
  4776  	}
  4777  	return 0
  4778  }
  4779  
  4780  func (m *Prefix) GetMaskLengthMax() uint32 {
  4781  	if m != nil {
  4782  		return m.MaskLengthMax
  4783  	}
  4784  	return 0
  4785  }
  4786  
  4787  type DefinedSet struct {
  4788  	DefinedType DefinedType `protobuf:"varint,1,opt,name=defined_type,json=definedType,enum=gobgpapi.DefinedType" json:"defined_type,omitempty"`
  4789  	Name        string      `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  4790  	List        []string    `protobuf:"bytes,3,rep,name=list" json:"list,omitempty"`
  4791  	Prefixes    []*Prefix   `protobuf:"bytes,4,rep,name=prefixes" json:"prefixes,omitempty"`
  4792  }
  4793  
  4794  func (m *DefinedSet) Reset()                    { *m = DefinedSet{} }
  4795  func (m *DefinedSet) String() string            { return proto.CompactTextString(m) }
  4796  func (*DefinedSet) ProtoMessage()               {}
  4797  func (*DefinedSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{120} }
  4798  
  4799  func (m *DefinedSet) GetDefinedType() DefinedType {
  4800  	if m != nil {
  4801  		return m.DefinedType
  4802  	}
  4803  	return DefinedType_PREFIX
  4804  }
  4805  
  4806  func (m *DefinedSet) GetName() string {
  4807  	if m != nil {
  4808  		return m.Name
  4809  	}
  4810  	return ""
  4811  }
  4812  
  4813  func (m *DefinedSet) GetList() []string {
  4814  	if m != nil {
  4815  		return m.List
  4816  	}
  4817  	return nil
  4818  }
  4819  
  4820  func (m *DefinedSet) GetPrefixes() []*Prefix {
  4821  	if m != nil {
  4822  		return m.Prefixes
  4823  	}
  4824  	return nil
  4825  }
  4826  
  4827  type MatchSet struct {
  4828  	MatchType MatchType `protobuf:"varint,1,opt,name=match_type,json=matchType,enum=gobgpapi.MatchType" json:"match_type,omitempty"`
  4829  	Name      string    `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
  4830  }
  4831  
  4832  func (m *MatchSet) Reset()                    { *m = MatchSet{} }
  4833  func (m *MatchSet) String() string            { return proto.CompactTextString(m) }
  4834  func (*MatchSet) ProtoMessage()               {}
  4835  func (*MatchSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{121} }
  4836  
  4837  func (m *MatchSet) GetMatchType() MatchType {
  4838  	if m != nil {
  4839  		return m.MatchType
  4840  	}
  4841  	return MatchType_ANY
  4842  }
  4843  
  4844  func (m *MatchSet) GetName() string {
  4845  	if m != nil {
  4846  		return m.Name
  4847  	}
  4848  	return ""
  4849  }
  4850  
  4851  type AsPathLength struct {
  4852  	LengthType AsPathLengthType `protobuf:"varint,1,opt,name=length_type,json=lengthType,enum=gobgpapi.AsPathLengthType" json:"length_type,omitempty"`
  4853  	Length     uint32           `protobuf:"varint,2,opt,name=length" json:"length,omitempty"`
  4854  }
  4855  
  4856  func (m *AsPathLength) Reset()                    { *m = AsPathLength{} }
  4857  func (m *AsPathLength) String() string            { return proto.CompactTextString(m) }
  4858  func (*AsPathLength) ProtoMessage()               {}
  4859  func (*AsPathLength) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{122} }
  4860  
  4861  func (m *AsPathLength) GetLengthType() AsPathLengthType {
  4862  	if m != nil {
  4863  		return m.LengthType
  4864  	}
  4865  	return AsPathLengthType_EQ
  4866  }
  4867  
  4868  func (m *AsPathLength) GetLength() uint32 {
  4869  	if m != nil {
  4870  		return m.Length
  4871  	}
  4872  	return 0
  4873  }
  4874  
  4875  type Conditions struct {
  4876  	PrefixSet         *MatchSet            `protobuf:"bytes,1,opt,name=prefix_set,json=prefixSet" json:"prefix_set,omitempty"`
  4877  	NeighborSet       *MatchSet            `protobuf:"bytes,2,opt,name=neighbor_set,json=neighborSet" json:"neighbor_set,omitempty"`
  4878  	AsPathLength      *AsPathLength        `protobuf:"bytes,3,opt,name=as_path_length,json=asPathLength" json:"as_path_length,omitempty"`
  4879  	AsPathSet         *MatchSet            `protobuf:"bytes,4,opt,name=as_path_set,json=asPathSet" json:"as_path_set,omitempty"`
  4880  	CommunitySet      *MatchSet            `protobuf:"bytes,5,opt,name=community_set,json=communitySet" json:"community_set,omitempty"`
  4881  	ExtCommunitySet   *MatchSet            `protobuf:"bytes,6,opt,name=ext_community_set,json=extCommunitySet" json:"ext_community_set,omitempty"`
  4882  	RpkiResult        int32                `protobuf:"varint,7,opt,name=rpki_result,json=rpkiResult" json:"rpki_result,omitempty"`
  4883  	RouteType         Conditions_RouteType `protobuf:"varint,8,opt,name=route_type,json=routeType,enum=gobgpapi.Conditions_RouteType" json:"route_type,omitempty"`
  4884  	LargeCommunitySet *MatchSet            `protobuf:"bytes,9,opt,name=large_community_set,json=largeCommunitySet" json:"large_community_set,omitempty"`
  4885  	NextHopInList     []string             `protobuf:"bytes,10,rep,name=next_hop_in_list,json=nextHopInList" json:"next_hop_in_list,omitempty"`
  4886  	AfiSafiIn         []*Family            `protobuf:"bytes,11,rep,name=afi_safi_in,json=afiSafiIn" json:"afi_safi_in,omitempty"`
  4887  }
  4888  
  4889  func (m *Conditions) Reset()                    { *m = Conditions{} }
  4890  func (m *Conditions) String() string            { return proto.CompactTextString(m) }
  4891  func (*Conditions) ProtoMessage()               {}
  4892  func (*Conditions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{123} }
  4893  
  4894  func (m *Conditions) GetPrefixSet() *MatchSet {
  4895  	if m != nil {
  4896  		return m.PrefixSet
  4897  	}
  4898  	return nil
  4899  }
  4900  
  4901  func (m *Conditions) GetNeighborSet() *MatchSet {
  4902  	if m != nil {
  4903  		return m.NeighborSet
  4904  	}
  4905  	return nil
  4906  }
  4907  
  4908  func (m *Conditions) GetAsPathLength() *AsPathLength {
  4909  	if m != nil {
  4910  		return m.AsPathLength
  4911  	}
  4912  	return nil
  4913  }
  4914  
  4915  func (m *Conditions) GetAsPathSet() *MatchSet {
  4916  	if m != nil {
  4917  		return m.AsPathSet
  4918  	}
  4919  	return nil
  4920  }
  4921  
  4922  func (m *Conditions) GetCommunitySet() *MatchSet {
  4923  	if m != nil {
  4924  		return m.CommunitySet
  4925  	}
  4926  	return nil
  4927  }
  4928  
  4929  func (m *Conditions) GetExtCommunitySet() *MatchSet {
  4930  	if m != nil {
  4931  		return m.ExtCommunitySet
  4932  	}
  4933  	return nil
  4934  }
  4935  
  4936  func (m *Conditions) GetRpkiResult() int32 {
  4937  	if m != nil {
  4938  		return m.RpkiResult
  4939  	}
  4940  	return 0
  4941  }
  4942  
  4943  func (m *Conditions) GetRouteType() Conditions_RouteType {
  4944  	if m != nil {
  4945  		return m.RouteType
  4946  	}
  4947  	return Conditions_ROUTE_TYPE_NONE
  4948  }
  4949  
  4950  func (m *Conditions) GetLargeCommunitySet() *MatchSet {
  4951  	if m != nil {
  4952  		return m.LargeCommunitySet
  4953  	}
  4954  	return nil
  4955  }
  4956  
  4957  func (m *Conditions) GetNextHopInList() []string {
  4958  	if m != nil {
  4959  		return m.NextHopInList
  4960  	}
  4961  	return nil
  4962  }
  4963  
  4964  func (m *Conditions) GetAfiSafiIn() []*Family {
  4965  	if m != nil {
  4966  		return m.AfiSafiIn
  4967  	}
  4968  	return nil
  4969  }
  4970  
  4971  type CommunityAction struct {
  4972  	ActionType  CommunityActionType `protobuf:"varint,1,opt,name=action_type,json=actionType,enum=gobgpapi.CommunityActionType" json:"action_type,omitempty"`
  4973  	Communities []string            `protobuf:"bytes,2,rep,name=communities" json:"communities,omitempty"`
  4974  }
  4975  
  4976  func (m *CommunityAction) Reset()                    { *m = CommunityAction{} }
  4977  func (m *CommunityAction) String() string            { return proto.CompactTextString(m) }
  4978  func (*CommunityAction) ProtoMessage()               {}
  4979  func (*CommunityAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{124} }
  4980  
  4981  func (m *CommunityAction) GetActionType() CommunityActionType {
  4982  	if m != nil {
  4983  		return m.ActionType
  4984  	}
  4985  	return CommunityActionType_COMMUNITY_ADD
  4986  }
  4987  
  4988  func (m *CommunityAction) GetCommunities() []string {
  4989  	if m != nil {
  4990  		return m.Communities
  4991  	}
  4992  	return nil
  4993  }
  4994  
  4995  type MedAction struct {
  4996  	ActionType MedActionType `protobuf:"varint,1,opt,name=action_type,json=actionType,enum=gobgpapi.MedActionType" json:"action_type,omitempty"`
  4997  	Value      int64         `protobuf:"varint,2,opt,name=value" json:"value,omitempty"`
  4998  }
  4999  
  5000  func (m *MedAction) Reset()                    { *m = MedAction{} }
  5001  func (m *MedAction) String() string            { return proto.CompactTextString(m) }
  5002  func (*MedAction) ProtoMessage()               {}
  5003  func (*MedAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{125} }
  5004  
  5005  func (m *MedAction) GetActionType() MedActionType {
  5006  	if m != nil {
  5007  		return m.ActionType
  5008  	}
  5009  	return MedActionType_MED_MOD
  5010  }
  5011  
  5012  func (m *MedAction) GetValue() int64 {
  5013  	if m != nil {
  5014  		return m.Value
  5015  	}
  5016  	return 0
  5017  }
  5018  
  5019  type AsPrependAction struct {
  5020  	Asn         uint32 `protobuf:"varint,1,opt,name=asn" json:"asn,omitempty"`
  5021  	Repeat      uint32 `protobuf:"varint,2,opt,name=repeat" json:"repeat,omitempty"`
  5022  	UseLeftMost bool   `protobuf:"varint,3,opt,name=use_left_most,json=useLeftMost" json:"use_left_most,omitempty"`
  5023  }
  5024  
  5025  func (m *AsPrependAction) Reset()                    { *m = AsPrependAction{} }
  5026  func (m *AsPrependAction) String() string            { return proto.CompactTextString(m) }
  5027  func (*AsPrependAction) ProtoMessage()               {}
  5028  func (*AsPrependAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{126} }
  5029  
  5030  func (m *AsPrependAction) GetAsn() uint32 {
  5031  	if m != nil {
  5032  		return m.Asn
  5033  	}
  5034  	return 0
  5035  }
  5036  
  5037  func (m *AsPrependAction) GetRepeat() uint32 {
  5038  	if m != nil {
  5039  		return m.Repeat
  5040  	}
  5041  	return 0
  5042  }
  5043  
  5044  func (m *AsPrependAction) GetUseLeftMost() bool {
  5045  	if m != nil {
  5046  		return m.UseLeftMost
  5047  	}
  5048  	return false
  5049  }
  5050  
  5051  type NexthopAction struct {
  5052  	Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  5053  	Self    bool   `protobuf:"varint,2,opt,name=self" json:"self,omitempty"`
  5054  }
  5055  
  5056  func (m *NexthopAction) Reset()                    { *m = NexthopAction{} }
  5057  func (m *NexthopAction) String() string            { return proto.CompactTextString(m) }
  5058  func (*NexthopAction) ProtoMessage()               {}
  5059  func (*NexthopAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{127} }
  5060  
  5061  func (m *NexthopAction) GetAddress() string {
  5062  	if m != nil {
  5063  		return m.Address
  5064  	}
  5065  	return ""
  5066  }
  5067  
  5068  func (m *NexthopAction) GetSelf() bool {
  5069  	if m != nil {
  5070  		return m.Self
  5071  	}
  5072  	return false
  5073  }
  5074  
  5075  type LocalPrefAction struct {
  5076  	Value uint32 `protobuf:"varint,1,opt,name=value" json:"value,omitempty"`
  5077  }
  5078  
  5079  func (m *LocalPrefAction) Reset()                    { *m = LocalPrefAction{} }
  5080  func (m *LocalPrefAction) String() string            { return proto.CompactTextString(m) }
  5081  func (*LocalPrefAction) ProtoMessage()               {}
  5082  func (*LocalPrefAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{128} }
  5083  
  5084  func (m *LocalPrefAction) GetValue() uint32 {
  5085  	if m != nil {
  5086  		return m.Value
  5087  	}
  5088  	return 0
  5089  }
  5090  
  5091  type Actions struct {
  5092  	RouteAction    RouteAction      `protobuf:"varint,1,opt,name=route_action,json=routeAction,enum=gobgpapi.RouteAction" json:"route_action,omitempty"`
  5093  	Community      *CommunityAction `protobuf:"bytes,2,opt,name=community" json:"community,omitempty"`
  5094  	Med            *MedAction       `protobuf:"bytes,3,opt,name=med" json:"med,omitempty"`
  5095  	AsPrepend      *AsPrependAction `protobuf:"bytes,4,opt,name=as_prepend,json=asPrepend" json:"as_prepend,omitempty"`
  5096  	ExtCommunity   *CommunityAction `protobuf:"bytes,5,opt,name=ext_community,json=extCommunity" json:"ext_community,omitempty"`
  5097  	Nexthop        *NexthopAction   `protobuf:"bytes,6,opt,name=nexthop" json:"nexthop,omitempty"`
  5098  	LocalPref      *LocalPrefAction `protobuf:"bytes,7,opt,name=local_pref,json=localPref" json:"local_pref,omitempty"`
  5099  	LargeCommunity *CommunityAction `protobuf:"bytes,8,opt,name=large_community,json=largeCommunity" json:"large_community,omitempty"`
  5100  }
  5101  
  5102  func (m *Actions) Reset()                    { *m = Actions{} }
  5103  func (m *Actions) String() string            { return proto.CompactTextString(m) }
  5104  func (*Actions) ProtoMessage()               {}
  5105  func (*Actions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{129} }
  5106  
  5107  func (m *Actions) GetRouteAction() RouteAction {
  5108  	if m != nil {
  5109  		return m.RouteAction
  5110  	}
  5111  	return RouteAction_NONE
  5112  }
  5113  
  5114  func (m *Actions) GetCommunity() *CommunityAction {
  5115  	if m != nil {
  5116  		return m.Community
  5117  	}
  5118  	return nil
  5119  }
  5120  
  5121  func (m *Actions) GetMed() *MedAction {
  5122  	if m != nil {
  5123  		return m.Med
  5124  	}
  5125  	return nil
  5126  }
  5127  
  5128  func (m *Actions) GetAsPrepend() *AsPrependAction {
  5129  	if m != nil {
  5130  		return m.AsPrepend
  5131  	}
  5132  	return nil
  5133  }
  5134  
  5135  func (m *Actions) GetExtCommunity() *CommunityAction {
  5136  	if m != nil {
  5137  		return m.ExtCommunity
  5138  	}
  5139  	return nil
  5140  }
  5141  
  5142  func (m *Actions) GetNexthop() *NexthopAction {
  5143  	if m != nil {
  5144  		return m.Nexthop
  5145  	}
  5146  	return nil
  5147  }
  5148  
  5149  func (m *Actions) GetLocalPref() *LocalPrefAction {
  5150  	if m != nil {
  5151  		return m.LocalPref
  5152  	}
  5153  	return nil
  5154  }
  5155  
  5156  func (m *Actions) GetLargeCommunity() *CommunityAction {
  5157  	if m != nil {
  5158  		return m.LargeCommunity
  5159  	}
  5160  	return nil
  5161  }
  5162  
  5163  type Statement struct {
  5164  	Name       string      `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  5165  	Conditions *Conditions `protobuf:"bytes,2,opt,name=conditions" json:"conditions,omitempty"`
  5166  	Actions    *Actions    `protobuf:"bytes,3,opt,name=actions" json:"actions,omitempty"`
  5167  }
  5168  
  5169  func (m *Statement) Reset()                    { *m = Statement{} }
  5170  func (m *Statement) String() string            { return proto.CompactTextString(m) }
  5171  func (*Statement) ProtoMessage()               {}
  5172  func (*Statement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{130} }
  5173  
  5174  func (m *Statement) GetName() string {
  5175  	if m != nil {
  5176  		return m.Name
  5177  	}
  5178  	return ""
  5179  }
  5180  
  5181  func (m *Statement) GetConditions() *Conditions {
  5182  	if m != nil {
  5183  		return m.Conditions
  5184  	}
  5185  	return nil
  5186  }
  5187  
  5188  func (m *Statement) GetActions() *Actions {
  5189  	if m != nil {
  5190  		return m.Actions
  5191  	}
  5192  	return nil
  5193  }
  5194  
  5195  type Policy struct {
  5196  	Name       string       `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  5197  	Statements []*Statement `protobuf:"bytes,2,rep,name=statements" json:"statements,omitempty"`
  5198  }
  5199  
  5200  func (m *Policy) Reset()                    { *m = Policy{} }
  5201  func (m *Policy) String() string            { return proto.CompactTextString(m) }
  5202  func (*Policy) ProtoMessage()               {}
  5203  func (*Policy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{131} }
  5204  
  5205  func (m *Policy) GetName() string {
  5206  	if m != nil {
  5207  		return m.Name
  5208  	}
  5209  	return ""
  5210  }
  5211  
  5212  func (m *Policy) GetStatements() []*Statement {
  5213  	if m != nil {
  5214  		return m.Statements
  5215  	}
  5216  	return nil
  5217  }
  5218  
  5219  type PolicyAssignment struct {
  5220  	Name          string          `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  5221  	Direction     PolicyDirection `protobuf:"varint,2,opt,name=direction,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"`
  5222  	Policies      []*Policy       `protobuf:"bytes,4,rep,name=policies" json:"policies,omitempty"`
  5223  	DefaultAction RouteAction     `protobuf:"varint,5,opt,name=default_action,json=defaultAction,enum=gobgpapi.RouteAction" json:"default_action,omitempty"`
  5224  }
  5225  
  5226  func (m *PolicyAssignment) Reset()                    { *m = PolicyAssignment{} }
  5227  func (m *PolicyAssignment) String() string            { return proto.CompactTextString(m) }
  5228  func (*PolicyAssignment) ProtoMessage()               {}
  5229  func (*PolicyAssignment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{132} }
  5230  
  5231  func (m *PolicyAssignment) GetName() string {
  5232  	if m != nil {
  5233  		return m.Name
  5234  	}
  5235  	return ""
  5236  }
  5237  
  5238  func (m *PolicyAssignment) GetDirection() PolicyDirection {
  5239  	if m != nil {
  5240  		return m.Direction
  5241  	}
  5242  	return PolicyDirection_UNKNOWN
  5243  }
  5244  
  5245  func (m *PolicyAssignment) GetPolicies() []*Policy {
  5246  	if m != nil {
  5247  		return m.Policies
  5248  	}
  5249  	return nil
  5250  }
  5251  
  5252  func (m *PolicyAssignment) GetDefaultAction() RouteAction {
  5253  	if m != nil {
  5254  		return m.DefaultAction
  5255  	}
  5256  	return RouteAction_NONE
  5257  }
  5258  
  5259  type RoutingPolicy struct {
  5260  	DefinedSets []*DefinedSet `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets" json:"defined_sets,omitempty"`
  5261  	Policies    []*Policy     `protobuf:"bytes,2,rep,name=policies" json:"policies,omitempty"`
  5262  }
  5263  
  5264  func (m *RoutingPolicy) Reset()                    { *m = RoutingPolicy{} }
  5265  func (m *RoutingPolicy) String() string            { return proto.CompactTextString(m) }
  5266  func (*RoutingPolicy) ProtoMessage()               {}
  5267  func (*RoutingPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{133} }
  5268  
  5269  func (m *RoutingPolicy) GetDefinedSets() []*DefinedSet {
  5270  	if m != nil {
  5271  		return m.DefinedSets
  5272  	}
  5273  	return nil
  5274  }
  5275  
  5276  func (m *RoutingPolicy) GetPolicies() []*Policy {
  5277  	if m != nil {
  5278  		return m.Policies
  5279  	}
  5280  	return nil
  5281  }
  5282  
  5283  type Roa struct {
  5284  	As        uint32    `protobuf:"varint,1,opt,name=as" json:"as,omitempty"`
  5285  	Prefixlen uint32    `protobuf:"varint,2,opt,name=prefixlen" json:"prefixlen,omitempty"`
  5286  	Maxlen    uint32    `protobuf:"varint,3,opt,name=maxlen" json:"maxlen,omitempty"`
  5287  	Prefix    string    `protobuf:"bytes,4,opt,name=prefix" json:"prefix,omitempty"`
  5288  	Conf      *RPKIConf `protobuf:"bytes,5,opt,name=conf" json:"conf,omitempty"`
  5289  }
  5290  
  5291  func (m *Roa) Reset()                    { *m = Roa{} }
  5292  func (m *Roa) String() string            { return proto.CompactTextString(m) }
  5293  func (*Roa) ProtoMessage()               {}
  5294  func (*Roa) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{134} }
  5295  
  5296  func (m *Roa) GetAs() uint32 {
  5297  	if m != nil {
  5298  		return m.As
  5299  	}
  5300  	return 0
  5301  }
  5302  
  5303  func (m *Roa) GetPrefixlen() uint32 {
  5304  	if m != nil {
  5305  		return m.Prefixlen
  5306  	}
  5307  	return 0
  5308  }
  5309  
  5310  func (m *Roa) GetMaxlen() uint32 {
  5311  	if m != nil {
  5312  		return m.Maxlen
  5313  	}
  5314  	return 0
  5315  }
  5316  
  5317  func (m *Roa) GetPrefix() string {
  5318  	if m != nil {
  5319  		return m.Prefix
  5320  	}
  5321  	return ""
  5322  }
  5323  
  5324  func (m *Roa) GetConf() *RPKIConf {
  5325  	if m != nil {
  5326  		return m.Conf
  5327  	}
  5328  	return nil
  5329  }
  5330  
  5331  type Vrf struct {
  5332  	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
  5333  	// Route Distinguisher must be one of
  5334  	// RouteDistinguisherTwoOctetAS,
  5335  	// RouteDistinguisherIPAddressAS,
  5336  	// or RouteDistinguisherFourOctetAS.
  5337  	Rd *google_protobuf.Any `protobuf:"bytes,2,opt,name=rd" json:"rd,omitempty"`
  5338  	// List of the Import Route Targets. Each must be one of
  5339  	// TwoOctetAsSpecificExtended,
  5340  	// IPv4AddressSpecificExtended,
  5341  	// or FourOctetAsSpecificExtended.
  5342  	ImportRt []*google_protobuf.Any `protobuf:"bytes,3,rep,name=import_rt,json=importRt" json:"import_rt,omitempty"`
  5343  	// List of the Export Route Targets. Each must be one of
  5344  	// TwoOctetAsSpecificExtended,
  5345  	// IPv4AddressSpecificExtended,
  5346  	// or FourOctetAsSpecificExtended.
  5347  	ExportRt []*google_protobuf.Any `protobuf:"bytes,4,rep,name=export_rt,json=exportRt" json:"export_rt,omitempty"`
  5348  	Id       uint32                 `protobuf:"varint,5,opt,name=id" json:"id,omitempty"`
  5349  }
  5350  
  5351  func (m *Vrf) Reset()                    { *m = Vrf{} }
  5352  func (m *Vrf) String() string            { return proto.CompactTextString(m) }
  5353  func (*Vrf) ProtoMessage()               {}
  5354  func (*Vrf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{135} }
  5355  
  5356  func (m *Vrf) GetName() string {
  5357  	if m != nil {
  5358  		return m.Name
  5359  	}
  5360  	return ""
  5361  }
  5362  
  5363  func (m *Vrf) GetRd() *google_protobuf.Any {
  5364  	if m != nil {
  5365  		return m.Rd
  5366  	}
  5367  	return nil
  5368  }
  5369  
  5370  func (m *Vrf) GetImportRt() []*google_protobuf.Any {
  5371  	if m != nil {
  5372  		return m.ImportRt
  5373  	}
  5374  	return nil
  5375  }
  5376  
  5377  func (m *Vrf) GetExportRt() []*google_protobuf.Any {
  5378  	if m != nil {
  5379  		return m.ExportRt
  5380  	}
  5381  	return nil
  5382  }
  5383  
  5384  func (m *Vrf) GetId() uint32 {
  5385  	if m != nil {
  5386  		return m.Id
  5387  	}
  5388  	return 0
  5389  }
  5390  
  5391  type DefaultRouteDistance struct {
  5392  	ExternalRouteDistance uint32 `protobuf:"varint,1,opt,name=external_route_distance,json=externalRouteDistance" json:"external_route_distance,omitempty"`
  5393  	InternalRouteDistance uint32 `protobuf:"varint,2,opt,name=internal_route_distance,json=internalRouteDistance" json:"internal_route_distance,omitempty"`
  5394  }
  5395  
  5396  func (m *DefaultRouteDistance) Reset()                    { *m = DefaultRouteDistance{} }
  5397  func (m *DefaultRouteDistance) String() string            { return proto.CompactTextString(m) }
  5398  func (*DefaultRouteDistance) ProtoMessage()               {}
  5399  func (*DefaultRouteDistance) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{136} }
  5400  
  5401  func (m *DefaultRouteDistance) GetExternalRouteDistance() uint32 {
  5402  	if m != nil {
  5403  		return m.ExternalRouteDistance
  5404  	}
  5405  	return 0
  5406  }
  5407  
  5408  func (m *DefaultRouteDistance) GetInternalRouteDistance() uint32 {
  5409  	if m != nil {
  5410  		return m.InternalRouteDistance
  5411  	}
  5412  	return 0
  5413  }
  5414  
  5415  type Global struct {
  5416  	As                    uint32                       `protobuf:"varint,1,opt,name=as" json:"as,omitempty"`
  5417  	RouterId              string                       `protobuf:"bytes,2,opt,name=router_id,json=routerId" json:"router_id,omitempty"`
  5418  	ListenPort            int32                        `protobuf:"varint,3,opt,name=listen_port,json=listenPort" json:"listen_port,omitempty"`
  5419  	ListenAddresses       []string                     `protobuf:"bytes,4,rep,name=listen_addresses,json=listenAddresses" json:"listen_addresses,omitempty"`
  5420  	Families              []uint32                     `protobuf:"varint,5,rep,packed,name=families" json:"families,omitempty"`
  5421  	UseMultiplePaths      bool                         `protobuf:"varint,6,opt,name=use_multiple_paths,json=useMultiplePaths" json:"use_multiple_paths,omitempty"`
  5422  	RouteSelectionOptions *RouteSelectionOptionsConfig `protobuf:"bytes,7,opt,name=route_selection_options,json=routeSelectionOptions" json:"route_selection_options,omitempty"`
  5423  	DefaultRouteDistance  *DefaultRouteDistance        `protobuf:"bytes,8,opt,name=default_route_distance,json=defaultRouteDistance" json:"default_route_distance,omitempty"`
  5424  	Confederation         *Confederation               `protobuf:"bytes,9,opt,name=confederation" json:"confederation,omitempty"`
  5425  	GracefulRestart       *GracefulRestart             `protobuf:"bytes,10,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"`
  5426  	ApplyPolicy           *ApplyPolicy                 `protobuf:"bytes,11,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"`
  5427  }
  5428  
  5429  func (m *Global) Reset()                    { *m = Global{} }
  5430  func (m *Global) String() string            { return proto.CompactTextString(m) }
  5431  func (*Global) ProtoMessage()               {}
  5432  func (*Global) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{137} }
  5433  
  5434  func (m *Global) GetAs() uint32 {
  5435  	if m != nil {
  5436  		return m.As
  5437  	}
  5438  	return 0
  5439  }
  5440  
  5441  func (m *Global) GetRouterId() string {
  5442  	if m != nil {
  5443  		return m.RouterId
  5444  	}
  5445  	return ""
  5446  }
  5447  
  5448  func (m *Global) GetListenPort() int32 {
  5449  	if m != nil {
  5450  		return m.ListenPort
  5451  	}
  5452  	return 0
  5453  }
  5454  
  5455  func (m *Global) GetListenAddresses() []string {
  5456  	if m != nil {
  5457  		return m.ListenAddresses
  5458  	}
  5459  	return nil
  5460  }
  5461  
  5462  func (m *Global) GetFamilies() []uint32 {
  5463  	if m != nil {
  5464  		return m.Families
  5465  	}
  5466  	return nil
  5467  }
  5468  
  5469  func (m *Global) GetUseMultiplePaths() bool {
  5470  	if m != nil {
  5471  		return m.UseMultiplePaths
  5472  	}
  5473  	return false
  5474  }
  5475  
  5476  func (m *Global) GetRouteSelectionOptions() *RouteSelectionOptionsConfig {
  5477  	if m != nil {
  5478  		return m.RouteSelectionOptions
  5479  	}
  5480  	return nil
  5481  }
  5482  
  5483  func (m *Global) GetDefaultRouteDistance() *DefaultRouteDistance {
  5484  	if m != nil {
  5485  		return m.DefaultRouteDistance
  5486  	}
  5487  	return nil
  5488  }
  5489  
  5490  func (m *Global) GetConfederation() *Confederation {
  5491  	if m != nil {
  5492  		return m.Confederation
  5493  	}
  5494  	return nil
  5495  }
  5496  
  5497  func (m *Global) GetGracefulRestart() *GracefulRestart {
  5498  	if m != nil {
  5499  		return m.GracefulRestart
  5500  	}
  5501  	return nil
  5502  }
  5503  
  5504  func (m *Global) GetApplyPolicy() *ApplyPolicy {
  5505  	if m != nil {
  5506  		return m.ApplyPolicy
  5507  	}
  5508  	return nil
  5509  }
  5510  
  5511  type Confederation struct {
  5512  	Enabled      bool     `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"`
  5513  	Identifier   uint32   `protobuf:"varint,2,opt,name=identifier" json:"identifier,omitempty"`
  5514  	MemberAsList []uint32 `protobuf:"varint,3,rep,packed,name=member_as_list,json=memberAsList" json:"member_as_list,omitempty"`
  5515  }
  5516  
  5517  func (m *Confederation) Reset()                    { *m = Confederation{} }
  5518  func (m *Confederation) String() string            { return proto.CompactTextString(m) }
  5519  func (*Confederation) ProtoMessage()               {}
  5520  func (*Confederation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{138} }
  5521  
  5522  func (m *Confederation) GetEnabled() bool {
  5523  	if m != nil {
  5524  		return m.Enabled
  5525  	}
  5526  	return false
  5527  }
  5528  
  5529  func (m *Confederation) GetIdentifier() uint32 {
  5530  	if m != nil {
  5531  		return m.Identifier
  5532  	}
  5533  	return 0
  5534  }
  5535  
  5536  func (m *Confederation) GetMemberAsList() []uint32 {
  5537  	if m != nil {
  5538  		return m.MemberAsList
  5539  	}
  5540  	return nil
  5541  }
  5542  
  5543  type RPKIConf struct {
  5544  	Address    string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
  5545  	RemotePort uint32 `protobuf:"varint,2,opt,name=remote_port,json=remotePort" json:"remote_port,omitempty"`
  5546  }
  5547  
  5548  func (m *RPKIConf) Reset()                    { *m = RPKIConf{} }
  5549  func (m *RPKIConf) String() string            { return proto.CompactTextString(m) }
  5550  func (*RPKIConf) ProtoMessage()               {}
  5551  func (*RPKIConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{139} }
  5552  
  5553  func (m *RPKIConf) GetAddress() string {
  5554  	if m != nil {
  5555  		return m.Address
  5556  	}
  5557  	return ""
  5558  }
  5559  
  5560  func (m *RPKIConf) GetRemotePort() uint32 {
  5561  	if m != nil {
  5562  		return m.RemotePort
  5563  	}
  5564  	return 0
  5565  }
  5566  
  5567  type RPKIState struct {
  5568  	Uptime        *google_protobuf2.Timestamp `protobuf:"bytes,1,opt,name=uptime" json:"uptime,omitempty"`
  5569  	Downtime      *google_protobuf2.Timestamp `protobuf:"bytes,2,opt,name=downtime" json:"downtime,omitempty"`
  5570  	Up            bool                        `protobuf:"varint,3,opt,name=up" json:"up,omitempty"`
  5571  	RecordIpv4    uint32                      `protobuf:"varint,4,opt,name=record_ipv4,json=recordIpv4" json:"record_ipv4,omitempty"`
  5572  	RecordIpv6    uint32                      `protobuf:"varint,5,opt,name=record_ipv6,json=recordIpv6" json:"record_ipv6,omitempty"`
  5573  	PrefixIpv4    uint32                      `protobuf:"varint,6,opt,name=prefix_ipv4,json=prefixIpv4" json:"prefix_ipv4,omitempty"`
  5574  	PrefixIpv6    uint32                      `protobuf:"varint,7,opt,name=prefix_ipv6,json=prefixIpv6" json:"prefix_ipv6,omitempty"`
  5575  	Serial        uint32                      `protobuf:"varint,8,opt,name=serial" json:"serial,omitempty"`
  5576  	ReceivedIpv4  int64                       `protobuf:"varint,9,opt,name=received_ipv4,json=receivedIpv4" json:"received_ipv4,omitempty"`
  5577  	ReceivedIpv6  int64                       `protobuf:"varint,10,opt,name=received_ipv6,json=receivedIpv6" json:"received_ipv6,omitempty"`
  5578  	SerialNotify  int64                       `protobuf:"varint,11,opt,name=serial_notify,json=serialNotify" json:"serial_notify,omitempty"`
  5579  	CacheReset    int64                       `protobuf:"varint,12,opt,name=cache_reset,json=cacheReset" json:"cache_reset,omitempty"`
  5580  	CacheResponse int64                       `protobuf:"varint,13,opt,name=cache_response,json=cacheResponse" json:"cache_response,omitempty"`
  5581  	EndOfData     int64                       `protobuf:"varint,14,opt,name=end_of_data,json=endOfData" json:"end_of_data,omitempty"`
  5582  	Error         int64                       `protobuf:"varint,15,opt,name=error" json:"error,omitempty"`
  5583  	SerialQuery   int64                       `protobuf:"varint,16,opt,name=serial_query,json=serialQuery" json:"serial_query,omitempty"`
  5584  	ResetQuery    int64                       `protobuf:"varint,17,opt,name=reset_query,json=resetQuery" json:"reset_query,omitempty"`
  5585  }
  5586  
  5587  func (m *RPKIState) Reset()                    { *m = RPKIState{} }
  5588  func (m *RPKIState) String() string            { return proto.CompactTextString(m) }
  5589  func (*RPKIState) ProtoMessage()               {}
  5590  func (*RPKIState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{140} }
  5591  
  5592  func (m *RPKIState) GetUptime() *google_protobuf2.Timestamp {
  5593  	if m != nil {
  5594  		return m.Uptime
  5595  	}
  5596  	return nil
  5597  }
  5598  
  5599  func (m *RPKIState) GetDowntime() *google_protobuf2.Timestamp {
  5600  	if m != nil {
  5601  		return m.Downtime
  5602  	}
  5603  	return nil
  5604  }
  5605  
  5606  func (m *RPKIState) GetUp() bool {
  5607  	if m != nil {
  5608  		return m.Up
  5609  	}
  5610  	return false
  5611  }
  5612  
  5613  func (m *RPKIState) GetRecordIpv4() uint32 {
  5614  	if m != nil {
  5615  		return m.RecordIpv4
  5616  	}
  5617  	return 0
  5618  }
  5619  
  5620  func (m *RPKIState) GetRecordIpv6() uint32 {
  5621  	if m != nil {
  5622  		return m.RecordIpv6
  5623  	}
  5624  	return 0
  5625  }
  5626  
  5627  func (m *RPKIState) GetPrefixIpv4() uint32 {
  5628  	if m != nil {
  5629  		return m.PrefixIpv4
  5630  	}
  5631  	return 0
  5632  }
  5633  
  5634  func (m *RPKIState) GetPrefixIpv6() uint32 {
  5635  	if m != nil {
  5636  		return m.PrefixIpv6
  5637  	}
  5638  	return 0
  5639  }
  5640  
  5641  func (m *RPKIState) GetSerial() uint32 {
  5642  	if m != nil {
  5643  		return m.Serial
  5644  	}
  5645  	return 0
  5646  }
  5647  
  5648  func (m *RPKIState) GetReceivedIpv4() int64 {
  5649  	if m != nil {
  5650  		return m.ReceivedIpv4
  5651  	}
  5652  	return 0
  5653  }
  5654  
  5655  func (m *RPKIState) GetReceivedIpv6() int64 {
  5656  	if m != nil {
  5657  		return m.ReceivedIpv6
  5658  	}
  5659  	return 0
  5660  }
  5661  
  5662  func (m *RPKIState) GetSerialNotify() int64 {
  5663  	if m != nil {
  5664  		return m.SerialNotify
  5665  	}
  5666  	return 0
  5667  }
  5668  
  5669  func (m *RPKIState) GetCacheReset() int64 {
  5670  	if m != nil {
  5671  		return m.CacheReset
  5672  	}
  5673  	return 0
  5674  }
  5675  
  5676  func (m *RPKIState) GetCacheResponse() int64 {
  5677  	if m != nil {
  5678  		return m.CacheResponse
  5679  	}
  5680  	return 0
  5681  }
  5682  
  5683  func (m *RPKIState) GetEndOfData() int64 {
  5684  	if m != nil {
  5685  		return m.EndOfData
  5686  	}
  5687  	return 0
  5688  }
  5689  
  5690  func (m *RPKIState) GetError() int64 {
  5691  	if m != nil {
  5692  		return m.Error
  5693  	}
  5694  	return 0
  5695  }
  5696  
  5697  func (m *RPKIState) GetSerialQuery() int64 {
  5698  	if m != nil {
  5699  		return m.SerialQuery
  5700  	}
  5701  	return 0
  5702  }
  5703  
  5704  func (m *RPKIState) GetResetQuery() int64 {
  5705  	if m != nil {
  5706  		return m.ResetQuery
  5707  	}
  5708  	return 0
  5709  }
  5710  
  5711  type Rpki struct {
  5712  	Conf  *RPKIConf  `protobuf:"bytes,1,opt,name=conf" json:"conf,omitempty"`
  5713  	State *RPKIState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"`
  5714  }
  5715  
  5716  func (m *Rpki) Reset()                    { *m = Rpki{} }
  5717  func (m *Rpki) String() string            { return proto.CompactTextString(m) }
  5718  func (*Rpki) ProtoMessage()               {}
  5719  func (*Rpki) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{141} }
  5720  
  5721  func (m *Rpki) GetConf() *RPKIConf {
  5722  	if m != nil {
  5723  		return m.Conf
  5724  	}
  5725  	return nil
  5726  }
  5727  
  5728  func (m *Rpki) GetState() *RPKIState {
  5729  	if m != nil {
  5730  		return m.State
  5731  	}
  5732  	return nil
  5733  }
  5734  
  5735  func init() {
  5736  	proto.RegisterType((*StartBgpRequest)(nil), "gobgpapi.StartBgpRequest")
  5737  	proto.RegisterType((*StopBgpRequest)(nil), "gobgpapi.StopBgpRequest")
  5738  	proto.RegisterType((*GetBgpRequest)(nil), "gobgpapi.GetBgpRequest")
  5739  	proto.RegisterType((*GetBgpResponse)(nil), "gobgpapi.GetBgpResponse")
  5740  	proto.RegisterType((*AddPeerRequest)(nil), "gobgpapi.AddPeerRequest")
  5741  	proto.RegisterType((*DeletePeerRequest)(nil), "gobgpapi.DeletePeerRequest")
  5742  	proto.RegisterType((*ListPeerRequest)(nil), "gobgpapi.ListPeerRequest")
  5743  	proto.RegisterType((*ListPeerResponse)(nil), "gobgpapi.ListPeerResponse")
  5744  	proto.RegisterType((*UpdatePeerRequest)(nil), "gobgpapi.UpdatePeerRequest")
  5745  	proto.RegisterType((*UpdatePeerResponse)(nil), "gobgpapi.UpdatePeerResponse")
  5746  	proto.RegisterType((*ResetPeerRequest)(nil), "gobgpapi.ResetPeerRequest")
  5747  	proto.RegisterType((*ShutdownPeerRequest)(nil), "gobgpapi.ShutdownPeerRequest")
  5748  	proto.RegisterType((*EnablePeerRequest)(nil), "gobgpapi.EnablePeerRequest")
  5749  	proto.RegisterType((*DisablePeerRequest)(nil), "gobgpapi.DisablePeerRequest")
  5750  	proto.RegisterType((*MonitorPeerRequest)(nil), "gobgpapi.MonitorPeerRequest")
  5751  	proto.RegisterType((*MonitorPeerResponse)(nil), "gobgpapi.MonitorPeerResponse")
  5752  	proto.RegisterType((*AddPeerGroupRequest)(nil), "gobgpapi.AddPeerGroupRequest")
  5753  	proto.RegisterType((*DeletePeerGroupRequest)(nil), "gobgpapi.DeletePeerGroupRequest")
  5754  	proto.RegisterType((*UpdatePeerGroupRequest)(nil), "gobgpapi.UpdatePeerGroupRequest")
  5755  	proto.RegisterType((*UpdatePeerGroupResponse)(nil), "gobgpapi.UpdatePeerGroupResponse")
  5756  	proto.RegisterType((*AddDynamicNeighborRequest)(nil), "gobgpapi.AddDynamicNeighborRequest")
  5757  	proto.RegisterType((*AddPathRequest)(nil), "gobgpapi.AddPathRequest")
  5758  	proto.RegisterType((*AddPathResponse)(nil), "gobgpapi.AddPathResponse")
  5759  	proto.RegisterType((*DeletePathRequest)(nil), "gobgpapi.DeletePathRequest")
  5760  	proto.RegisterType((*ListPathRequest)(nil), "gobgpapi.ListPathRequest")
  5761  	proto.RegisterType((*ListPathResponse)(nil), "gobgpapi.ListPathResponse")
  5762  	proto.RegisterType((*AddPathStreamRequest)(nil), "gobgpapi.AddPathStreamRequest")
  5763  	proto.RegisterType((*GetTableRequest)(nil), "gobgpapi.GetTableRequest")
  5764  	proto.RegisterType((*GetTableResponse)(nil), "gobgpapi.GetTableResponse")
  5765  	proto.RegisterType((*MonitorTableRequest)(nil), "gobgpapi.MonitorTableRequest")
  5766  	proto.RegisterType((*MonitorTableResponse)(nil), "gobgpapi.MonitorTableResponse")
  5767  	proto.RegisterType((*AddVrfRequest)(nil), "gobgpapi.AddVrfRequest")
  5768  	proto.RegisterType((*DeleteVrfRequest)(nil), "gobgpapi.DeleteVrfRequest")
  5769  	proto.RegisterType((*ListVrfRequest)(nil), "gobgpapi.ListVrfRequest")
  5770  	proto.RegisterType((*ListVrfResponse)(nil), "gobgpapi.ListVrfResponse")
  5771  	proto.RegisterType((*AddPolicyRequest)(nil), "gobgpapi.AddPolicyRequest")
  5772  	proto.RegisterType((*DeletePolicyRequest)(nil), "gobgpapi.DeletePolicyRequest")
  5773  	proto.RegisterType((*ListPolicyRequest)(nil), "gobgpapi.ListPolicyRequest")
  5774  	proto.RegisterType((*ListPolicyResponse)(nil), "gobgpapi.ListPolicyResponse")
  5775  	proto.RegisterType((*SetPoliciesRequest)(nil), "gobgpapi.SetPoliciesRequest")
  5776  	proto.RegisterType((*AddDefinedSetRequest)(nil), "gobgpapi.AddDefinedSetRequest")
  5777  	proto.RegisterType((*DeleteDefinedSetRequest)(nil), "gobgpapi.DeleteDefinedSetRequest")
  5778  	proto.RegisterType((*ListDefinedSetRequest)(nil), "gobgpapi.ListDefinedSetRequest")
  5779  	proto.RegisterType((*ListDefinedSetResponse)(nil), "gobgpapi.ListDefinedSetResponse")
  5780  	proto.RegisterType((*AddStatementRequest)(nil), "gobgpapi.AddStatementRequest")
  5781  	proto.RegisterType((*DeleteStatementRequest)(nil), "gobgpapi.DeleteStatementRequest")
  5782  	proto.RegisterType((*ListStatementRequest)(nil), "gobgpapi.ListStatementRequest")
  5783  	proto.RegisterType((*ListStatementResponse)(nil), "gobgpapi.ListStatementResponse")
  5784  	proto.RegisterType((*AddPolicyAssignmentRequest)(nil), "gobgpapi.AddPolicyAssignmentRequest")
  5785  	proto.RegisterType((*DeletePolicyAssignmentRequest)(nil), "gobgpapi.DeletePolicyAssignmentRequest")
  5786  	proto.RegisterType((*ListPolicyAssignmentRequest)(nil), "gobgpapi.ListPolicyAssignmentRequest")
  5787  	proto.RegisterType((*ListPolicyAssignmentResponse)(nil), "gobgpapi.ListPolicyAssignmentResponse")
  5788  	proto.RegisterType((*SetPolicyAssignmentRequest)(nil), "gobgpapi.SetPolicyAssignmentRequest")
  5789  	proto.RegisterType((*AddRpkiRequest)(nil), "gobgpapi.AddRpkiRequest")
  5790  	proto.RegisterType((*DeleteRpkiRequest)(nil), "gobgpapi.DeleteRpkiRequest")
  5791  	proto.RegisterType((*ListRpkiRequest)(nil), "gobgpapi.ListRpkiRequest")
  5792  	proto.RegisterType((*ListRpkiResponse)(nil), "gobgpapi.ListRpkiResponse")
  5793  	proto.RegisterType((*EnableRpkiRequest)(nil), "gobgpapi.EnableRpkiRequest")
  5794  	proto.RegisterType((*DisableRpkiRequest)(nil), "gobgpapi.DisableRpkiRequest")
  5795  	proto.RegisterType((*ResetRpkiRequest)(nil), "gobgpapi.ResetRpkiRequest")
  5796  	proto.RegisterType((*ListRpkiTableRequest)(nil), "gobgpapi.ListRpkiTableRequest")
  5797  	proto.RegisterType((*ListRpkiTableResponse)(nil), "gobgpapi.ListRpkiTableResponse")
  5798  	proto.RegisterType((*EnableZebraRequest)(nil), "gobgpapi.EnableZebraRequest")
  5799  	proto.RegisterType((*EnableMrtRequest)(nil), "gobgpapi.EnableMrtRequest")
  5800  	proto.RegisterType((*DisableMrtRequest)(nil), "gobgpapi.DisableMrtRequest")
  5801  	proto.RegisterType((*AddBmpRequest)(nil), "gobgpapi.AddBmpRequest")
  5802  	proto.RegisterType((*DeleteBmpRequest)(nil), "gobgpapi.DeleteBmpRequest")
  5803  	proto.RegisterType((*Family)(nil), "gobgpapi.Family")
  5804  	proto.RegisterType((*Validation)(nil), "gobgpapi.Validation")
  5805  	proto.RegisterType((*Path)(nil), "gobgpapi.Path")
  5806  	proto.RegisterType((*Destination)(nil), "gobgpapi.Destination")
  5807  	proto.RegisterType((*TableLookupPrefix)(nil), "gobgpapi.TableLookupPrefix")
  5808  	proto.RegisterType((*Peer)(nil), "gobgpapi.Peer")
  5809  	proto.RegisterType((*PeerGroup)(nil), "gobgpapi.PeerGroup")
  5810  	proto.RegisterType((*DynamicNeighbor)(nil), "gobgpapi.DynamicNeighbor")
  5811  	proto.RegisterType((*ApplyPolicy)(nil), "gobgpapi.ApplyPolicy")
  5812  	proto.RegisterType((*PrefixLimit)(nil), "gobgpapi.PrefixLimit")
  5813  	proto.RegisterType((*PeerConf)(nil), "gobgpapi.PeerConf")
  5814  	proto.RegisterType((*PeerGroupConf)(nil), "gobgpapi.PeerGroupConf")
  5815  	proto.RegisterType((*PeerGroupState)(nil), "gobgpapi.PeerGroupState")
  5816  	proto.RegisterType((*EbgpMultihop)(nil), "gobgpapi.EbgpMultihop")
  5817  	proto.RegisterType((*RouteReflector)(nil), "gobgpapi.RouteReflector")
  5818  	proto.RegisterType((*PeerState)(nil), "gobgpapi.PeerState")
  5819  	proto.RegisterType((*Messages)(nil), "gobgpapi.Messages")
  5820  	proto.RegisterType((*Message)(nil), "gobgpapi.Message")
  5821  	proto.RegisterType((*Queues)(nil), "gobgpapi.Queues")
  5822  	proto.RegisterType((*Timers)(nil), "gobgpapi.Timers")
  5823  	proto.RegisterType((*TimersConfig)(nil), "gobgpapi.TimersConfig")
  5824  	proto.RegisterType((*TimersState)(nil), "gobgpapi.TimersState")
  5825  	proto.RegisterType((*Transport)(nil), "gobgpapi.Transport")
  5826  	proto.RegisterType((*RouteServer)(nil), "gobgpapi.RouteServer")
  5827  	proto.RegisterType((*GracefulRestart)(nil), "gobgpapi.GracefulRestart")
  5828  	proto.RegisterType((*MpGracefulRestartConfig)(nil), "gobgpapi.MpGracefulRestartConfig")
  5829  	proto.RegisterType((*MpGracefulRestartState)(nil), "gobgpapi.MpGracefulRestartState")
  5830  	proto.RegisterType((*MpGracefulRestart)(nil), "gobgpapi.MpGracefulRestart")
  5831  	proto.RegisterType((*AfiSafiConfig)(nil), "gobgpapi.AfiSafiConfig")
  5832  	proto.RegisterType((*AfiSafiState)(nil), "gobgpapi.AfiSafiState")
  5833  	proto.RegisterType((*RouteSelectionOptionsConfig)(nil), "gobgpapi.RouteSelectionOptionsConfig")
  5834  	proto.RegisterType((*RouteSelectionOptionsState)(nil), "gobgpapi.RouteSelectionOptionsState")
  5835  	proto.RegisterType((*RouteSelectionOptions)(nil), "gobgpapi.RouteSelectionOptions")
  5836  	proto.RegisterType((*UseMultiplePathsConfig)(nil), "gobgpapi.UseMultiplePathsConfig")
  5837  	proto.RegisterType((*UseMultiplePathsState)(nil), "gobgpapi.UseMultiplePathsState")
  5838  	proto.RegisterType((*EbgpConfig)(nil), "gobgpapi.EbgpConfig")
  5839  	proto.RegisterType((*EbgpState)(nil), "gobgpapi.EbgpState")
  5840  	proto.RegisterType((*Ebgp)(nil), "gobgpapi.Ebgp")
  5841  	proto.RegisterType((*IbgpConfig)(nil), "gobgpapi.IbgpConfig")
  5842  	proto.RegisterType((*IbgpState)(nil), "gobgpapi.IbgpState")
  5843  	proto.RegisterType((*Ibgp)(nil), "gobgpapi.Ibgp")
  5844  	proto.RegisterType((*UseMultiplePaths)(nil), "gobgpapi.UseMultiplePaths")
  5845  	proto.RegisterType((*RouteTargetMembershipConfig)(nil), "gobgpapi.RouteTargetMembershipConfig")
  5846  	proto.RegisterType((*RouteTargetMembershipState)(nil), "gobgpapi.RouteTargetMembershipState")
  5847  	proto.RegisterType((*RouteTargetMembership)(nil), "gobgpapi.RouteTargetMembership")
  5848  	proto.RegisterType((*LongLivedGracefulRestartConfig)(nil), "gobgpapi.LongLivedGracefulRestartConfig")
  5849  	proto.RegisterType((*LongLivedGracefulRestartState)(nil), "gobgpapi.LongLivedGracefulRestartState")
  5850  	proto.RegisterType((*LongLivedGracefulRestart)(nil), "gobgpapi.LongLivedGracefulRestart")
  5851  	proto.RegisterType((*AfiSafi)(nil), "gobgpapi.AfiSafi")
  5852  	proto.RegisterType((*AddPathsConfig)(nil), "gobgpapi.AddPathsConfig")
  5853  	proto.RegisterType((*AddPathsState)(nil), "gobgpapi.AddPathsState")
  5854  	proto.RegisterType((*AddPaths)(nil), "gobgpapi.AddPaths")
  5855  	proto.RegisterType((*Prefix)(nil), "gobgpapi.Prefix")
  5856  	proto.RegisterType((*DefinedSet)(nil), "gobgpapi.DefinedSet")
  5857  	proto.RegisterType((*MatchSet)(nil), "gobgpapi.MatchSet")
  5858  	proto.RegisterType((*AsPathLength)(nil), "gobgpapi.AsPathLength")
  5859  	proto.RegisterType((*Conditions)(nil), "gobgpapi.Conditions")
  5860  	proto.RegisterType((*CommunityAction)(nil), "gobgpapi.CommunityAction")
  5861  	proto.RegisterType((*MedAction)(nil), "gobgpapi.MedAction")
  5862  	proto.RegisterType((*AsPrependAction)(nil), "gobgpapi.AsPrependAction")
  5863  	proto.RegisterType((*NexthopAction)(nil), "gobgpapi.NexthopAction")
  5864  	proto.RegisterType((*LocalPrefAction)(nil), "gobgpapi.LocalPrefAction")
  5865  	proto.RegisterType((*Actions)(nil), "gobgpapi.Actions")
  5866  	proto.RegisterType((*Statement)(nil), "gobgpapi.Statement")
  5867  	proto.RegisterType((*Policy)(nil), "gobgpapi.Policy")
  5868  	proto.RegisterType((*PolicyAssignment)(nil), "gobgpapi.PolicyAssignment")
  5869  	proto.RegisterType((*RoutingPolicy)(nil), "gobgpapi.RoutingPolicy")
  5870  	proto.RegisterType((*Roa)(nil), "gobgpapi.Roa")
  5871  	proto.RegisterType((*Vrf)(nil), "gobgpapi.Vrf")
  5872  	proto.RegisterType((*DefaultRouteDistance)(nil), "gobgpapi.DefaultRouteDistance")
  5873  	proto.RegisterType((*Global)(nil), "gobgpapi.Global")
  5874  	proto.RegisterType((*Confederation)(nil), "gobgpapi.Confederation")
  5875  	proto.RegisterType((*RPKIConf)(nil), "gobgpapi.RPKIConf")
  5876  	proto.RegisterType((*RPKIState)(nil), "gobgpapi.RPKIState")
  5877  	proto.RegisterType((*Rpki)(nil), "gobgpapi.Rpki")
  5878  	proto.RegisterEnum("gobgpapi.TableType", TableType_name, TableType_value)
  5879  	proto.RegisterEnum("gobgpapi.TableLookupOption", TableLookupOption_name, TableLookupOption_value)
  5880  	proto.RegisterEnum("gobgpapi.DefinedType", DefinedType_name, DefinedType_value)
  5881  	proto.RegisterEnum("gobgpapi.MatchType", MatchType_name, MatchType_value)
  5882  	proto.RegisterEnum("gobgpapi.AsPathLengthType", AsPathLengthType_name, AsPathLengthType_value)
  5883  	proto.RegisterEnum("gobgpapi.RouteAction", RouteAction_name, RouteAction_value)
  5884  	proto.RegisterEnum("gobgpapi.CommunityActionType", CommunityActionType_name, CommunityActionType_value)
  5885  	proto.RegisterEnum("gobgpapi.MedActionType", MedActionType_name, MedActionType_value)
  5886  	proto.RegisterEnum("gobgpapi.PolicyDirection", PolicyDirection_name, PolicyDirection_value)
  5887  	proto.RegisterEnum("gobgpapi.ResetPeerRequest_SoftResetDirection", ResetPeerRequest_SoftResetDirection_name, ResetPeerRequest_SoftResetDirection_value)
  5888  	proto.RegisterEnum("gobgpapi.ListPathRequest_SortType", ListPathRequest_SortType_name, ListPathRequest_SortType_value)
  5889  	proto.RegisterEnum("gobgpapi.AddBmpRequest_MonitoringPolicy", AddBmpRequest_MonitoringPolicy_name, AddBmpRequest_MonitoringPolicy_value)
  5890  	proto.RegisterEnum("gobgpapi.Family_Afi", Family_Afi_name, Family_Afi_value)
  5891  	proto.RegisterEnum("gobgpapi.Family_Safi", Family_Safi_name, Family_Safi_value)
  5892  	proto.RegisterEnum("gobgpapi.Validation_State", Validation_State_name, Validation_State_value)
  5893  	proto.RegisterEnum("gobgpapi.Validation_Reason", Validation_Reason_name, Validation_Reason_value)
  5894  	proto.RegisterEnum("gobgpapi.PeerConf_RemovePrivateAs", PeerConf_RemovePrivateAs_name, PeerConf_RemovePrivateAs_value)
  5895  	proto.RegisterEnum("gobgpapi.PeerGroupConf_RemovePrivateAs", PeerGroupConf_RemovePrivateAs_name, PeerGroupConf_RemovePrivateAs_value)
  5896  	proto.RegisterEnum("gobgpapi.PeerGroupState_RemovePrivateAs", PeerGroupState_RemovePrivateAs_name, PeerGroupState_RemovePrivateAs_value)
  5897  	proto.RegisterEnum("gobgpapi.PeerState_SessionState", PeerState_SessionState_name, PeerState_SessionState_value)
  5898  	proto.RegisterEnum("gobgpapi.PeerState_AdminState", PeerState_AdminState_name, PeerState_AdminState_value)
  5899  	proto.RegisterEnum("gobgpapi.Conditions_RouteType", Conditions_RouteType_name, Conditions_RouteType_value)
  5900  }
  5901  
  5902  // Reference imports to suppress errors if they are not otherwise used.
  5903  var _ context.Context
  5904  var _ grpc.ClientConn
  5905  
  5906  // This is a compile-time assertion to ensure that this generated file
  5907  // is compatible with the grpc package it is being compiled against.
  5908  const _ = grpc.SupportPackageIsVersion4
  5909  
  5910  // Client API for GobgpApi service
  5911  
  5912  type GobgpApiClient interface {
  5913  	StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5914  	StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5915  	GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error)
  5916  	AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5917  	DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5918  	ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error)
  5919  	UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error)
  5920  	ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5921  	ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5922  	EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5923  	DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5924  	MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error)
  5925  	AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5926  	DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5927  	UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error)
  5928  	AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5929  	AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error)
  5930  	DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5931  	ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error)
  5932  	AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error)
  5933  	GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error)
  5934  	MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error)
  5935  	AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5936  	DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5937  	ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error)
  5938  	AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5939  	DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5940  	ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error)
  5941  	SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5942  	AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5943  	DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5944  	ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error)
  5945  	AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5946  	DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5947  	ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error)
  5948  	AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5949  	DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5950  	ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error)
  5951  	SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5952  	AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5953  	DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5954  	ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error)
  5955  	EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5956  	DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5957  	ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5958  	ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error)
  5959  	EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5960  	EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5961  	DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5962  	AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5963  	DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
  5964  }
  5965  
  5966  type gobgpApiClient struct {
  5967  	cc *grpc.ClientConn
  5968  }
  5969  
  5970  func NewGobgpApiClient(cc *grpc.ClientConn) GobgpApiClient {
  5971  	return &gobgpApiClient{cc}
  5972  }
  5973  
  5974  func (c *gobgpApiClient) StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  5975  	out := new(google_protobuf1.Empty)
  5976  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StartBgp", in, out, c.cc, opts...)
  5977  	if err != nil {
  5978  		return nil, err
  5979  	}
  5980  	return out, nil
  5981  }
  5982  
  5983  func (c *gobgpApiClient) StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  5984  	out := new(google_protobuf1.Empty)
  5985  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StopBgp", in, out, c.cc, opts...)
  5986  	if err != nil {
  5987  		return nil, err
  5988  	}
  5989  	return out, nil
  5990  }
  5991  
  5992  func (c *gobgpApiClient) GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error) {
  5993  	out := new(GetBgpResponse)
  5994  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetBgp", in, out, c.cc, opts...)
  5995  	if err != nil {
  5996  		return nil, err
  5997  	}
  5998  	return out, nil
  5999  }
  6000  
  6001  func (c *gobgpApiClient) AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6002  	out := new(google_protobuf1.Empty)
  6003  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeer", in, out, c.cc, opts...)
  6004  	if err != nil {
  6005  		return nil, err
  6006  	}
  6007  	return out, nil
  6008  }
  6009  
  6010  func (c *gobgpApiClient) DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6011  	out := new(google_protobuf1.Empty)
  6012  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeer", in, out, c.cc, opts...)
  6013  	if err != nil {
  6014  		return nil, err
  6015  	}
  6016  	return out, nil
  6017  }
  6018  
  6019  func (c *gobgpApiClient) ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error) {
  6020  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[0], c.cc, "/gobgpapi.GobgpApi/ListPeer", opts...)
  6021  	if err != nil {
  6022  		return nil, err
  6023  	}
  6024  	x := &gobgpApiListPeerClient{stream}
  6025  	if err := x.ClientStream.SendMsg(in); err != nil {
  6026  		return nil, err
  6027  	}
  6028  	if err := x.ClientStream.CloseSend(); err != nil {
  6029  		return nil, err
  6030  	}
  6031  	return x, nil
  6032  }
  6033  
  6034  type GobgpApi_ListPeerClient interface {
  6035  	Recv() (*ListPeerResponse, error)
  6036  	grpc.ClientStream
  6037  }
  6038  
  6039  type gobgpApiListPeerClient struct {
  6040  	grpc.ClientStream
  6041  }
  6042  
  6043  func (x *gobgpApiListPeerClient) Recv() (*ListPeerResponse, error) {
  6044  	m := new(ListPeerResponse)
  6045  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6046  		return nil, err
  6047  	}
  6048  	return m, nil
  6049  }
  6050  
  6051  func (c *gobgpApiClient) UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error) {
  6052  	out := new(UpdatePeerResponse)
  6053  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeer", in, out, c.cc, opts...)
  6054  	if err != nil {
  6055  		return nil, err
  6056  	}
  6057  	return out, nil
  6058  }
  6059  
  6060  func (c *gobgpApiClient) ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6061  	out := new(google_protobuf1.Empty)
  6062  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetPeer", in, out, c.cc, opts...)
  6063  	if err != nil {
  6064  		return nil, err
  6065  	}
  6066  	return out, nil
  6067  }
  6068  
  6069  func (c *gobgpApiClient) ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6070  	out := new(google_protobuf1.Empty)
  6071  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ShutdownPeer", in, out, c.cc, opts...)
  6072  	if err != nil {
  6073  		return nil, err
  6074  	}
  6075  	return out, nil
  6076  }
  6077  
  6078  func (c *gobgpApiClient) EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6079  	out := new(google_protobuf1.Empty)
  6080  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnablePeer", in, out, c.cc, opts...)
  6081  	if err != nil {
  6082  		return nil, err
  6083  	}
  6084  	return out, nil
  6085  }
  6086  
  6087  func (c *gobgpApiClient) DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6088  	out := new(google_protobuf1.Empty)
  6089  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisablePeer", in, out, c.cc, opts...)
  6090  	if err != nil {
  6091  		return nil, err
  6092  	}
  6093  	return out, nil
  6094  }
  6095  
  6096  func (c *gobgpApiClient) MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error) {
  6097  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[1], c.cc, "/gobgpapi.GobgpApi/MonitorPeer", opts...)
  6098  	if err != nil {
  6099  		return nil, err
  6100  	}
  6101  	x := &gobgpApiMonitorPeerClient{stream}
  6102  	if err := x.ClientStream.SendMsg(in); err != nil {
  6103  		return nil, err
  6104  	}
  6105  	if err := x.ClientStream.CloseSend(); err != nil {
  6106  		return nil, err
  6107  	}
  6108  	return x, nil
  6109  }
  6110  
  6111  type GobgpApi_MonitorPeerClient interface {
  6112  	Recv() (*MonitorPeerResponse, error)
  6113  	grpc.ClientStream
  6114  }
  6115  
  6116  type gobgpApiMonitorPeerClient struct {
  6117  	grpc.ClientStream
  6118  }
  6119  
  6120  func (x *gobgpApiMonitorPeerClient) Recv() (*MonitorPeerResponse, error) {
  6121  	m := new(MonitorPeerResponse)
  6122  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6123  		return nil, err
  6124  	}
  6125  	return m, nil
  6126  }
  6127  
  6128  func (c *gobgpApiClient) AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6129  	out := new(google_protobuf1.Empty)
  6130  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeerGroup", in, out, c.cc, opts...)
  6131  	if err != nil {
  6132  		return nil, err
  6133  	}
  6134  	return out, nil
  6135  }
  6136  
  6137  func (c *gobgpApiClient) DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6138  	out := new(google_protobuf1.Empty)
  6139  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeerGroup", in, out, c.cc, opts...)
  6140  	if err != nil {
  6141  		return nil, err
  6142  	}
  6143  	return out, nil
  6144  }
  6145  
  6146  func (c *gobgpApiClient) UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error) {
  6147  	out := new(UpdatePeerGroupResponse)
  6148  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeerGroup", in, out, c.cc, opts...)
  6149  	if err != nil {
  6150  		return nil, err
  6151  	}
  6152  	return out, nil
  6153  }
  6154  
  6155  func (c *gobgpApiClient) AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6156  	out := new(google_protobuf1.Empty)
  6157  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDynamicNeighbor", in, out, c.cc, opts...)
  6158  	if err != nil {
  6159  		return nil, err
  6160  	}
  6161  	return out, nil
  6162  }
  6163  
  6164  func (c *gobgpApiClient) AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error) {
  6165  	out := new(AddPathResponse)
  6166  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPath", in, out, c.cc, opts...)
  6167  	if err != nil {
  6168  		return nil, err
  6169  	}
  6170  	return out, nil
  6171  }
  6172  
  6173  func (c *gobgpApiClient) DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6174  	out := new(google_protobuf1.Empty)
  6175  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePath", in, out, c.cc, opts...)
  6176  	if err != nil {
  6177  		return nil, err
  6178  	}
  6179  	return out, nil
  6180  }
  6181  
  6182  func (c *gobgpApiClient) ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error) {
  6183  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[2], c.cc, "/gobgpapi.GobgpApi/ListPath", opts...)
  6184  	if err != nil {
  6185  		return nil, err
  6186  	}
  6187  	x := &gobgpApiListPathClient{stream}
  6188  	if err := x.ClientStream.SendMsg(in); err != nil {
  6189  		return nil, err
  6190  	}
  6191  	if err := x.ClientStream.CloseSend(); err != nil {
  6192  		return nil, err
  6193  	}
  6194  	return x, nil
  6195  }
  6196  
  6197  type GobgpApi_ListPathClient interface {
  6198  	Recv() (*ListPathResponse, error)
  6199  	grpc.ClientStream
  6200  }
  6201  
  6202  type gobgpApiListPathClient struct {
  6203  	grpc.ClientStream
  6204  }
  6205  
  6206  func (x *gobgpApiListPathClient) Recv() (*ListPathResponse, error) {
  6207  	m := new(ListPathResponse)
  6208  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6209  		return nil, err
  6210  	}
  6211  	return m, nil
  6212  }
  6213  
  6214  func (c *gobgpApiClient) AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error) {
  6215  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[3], c.cc, "/gobgpapi.GobgpApi/AddPathStream", opts...)
  6216  	if err != nil {
  6217  		return nil, err
  6218  	}
  6219  	x := &gobgpApiAddPathStreamClient{stream}
  6220  	return x, nil
  6221  }
  6222  
  6223  type GobgpApi_AddPathStreamClient interface {
  6224  	Send(*AddPathStreamRequest) error
  6225  	CloseAndRecv() (*google_protobuf1.Empty, error)
  6226  	grpc.ClientStream
  6227  }
  6228  
  6229  type gobgpApiAddPathStreamClient struct {
  6230  	grpc.ClientStream
  6231  }
  6232  
  6233  func (x *gobgpApiAddPathStreamClient) Send(m *AddPathStreamRequest) error {
  6234  	return x.ClientStream.SendMsg(m)
  6235  }
  6236  
  6237  func (x *gobgpApiAddPathStreamClient) CloseAndRecv() (*google_protobuf1.Empty, error) {
  6238  	if err := x.ClientStream.CloseSend(); err != nil {
  6239  		return nil, err
  6240  	}
  6241  	m := new(google_protobuf1.Empty)
  6242  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6243  		return nil, err
  6244  	}
  6245  	return m, nil
  6246  }
  6247  
  6248  func (c *gobgpApiClient) GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error) {
  6249  	out := new(GetTableResponse)
  6250  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetTable", in, out, c.cc, opts...)
  6251  	if err != nil {
  6252  		return nil, err
  6253  	}
  6254  	return out, nil
  6255  }
  6256  
  6257  func (c *gobgpApiClient) MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error) {
  6258  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[4], c.cc, "/gobgpapi.GobgpApi/MonitorTable", opts...)
  6259  	if err != nil {
  6260  		return nil, err
  6261  	}
  6262  	x := &gobgpApiMonitorTableClient{stream}
  6263  	if err := x.ClientStream.SendMsg(in); err != nil {
  6264  		return nil, err
  6265  	}
  6266  	if err := x.ClientStream.CloseSend(); err != nil {
  6267  		return nil, err
  6268  	}
  6269  	return x, nil
  6270  }
  6271  
  6272  type GobgpApi_MonitorTableClient interface {
  6273  	Recv() (*MonitorTableResponse, error)
  6274  	grpc.ClientStream
  6275  }
  6276  
  6277  type gobgpApiMonitorTableClient struct {
  6278  	grpc.ClientStream
  6279  }
  6280  
  6281  func (x *gobgpApiMonitorTableClient) Recv() (*MonitorTableResponse, error) {
  6282  	m := new(MonitorTableResponse)
  6283  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6284  		return nil, err
  6285  	}
  6286  	return m, nil
  6287  }
  6288  
  6289  func (c *gobgpApiClient) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6290  	out := new(google_protobuf1.Empty)
  6291  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddVrf", in, out, c.cc, opts...)
  6292  	if err != nil {
  6293  		return nil, err
  6294  	}
  6295  	return out, nil
  6296  }
  6297  
  6298  func (c *gobgpApiClient) DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6299  	out := new(google_protobuf1.Empty)
  6300  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteVrf", in, out, c.cc, opts...)
  6301  	if err != nil {
  6302  		return nil, err
  6303  	}
  6304  	return out, nil
  6305  }
  6306  
  6307  func (c *gobgpApiClient) ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error) {
  6308  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[5], c.cc, "/gobgpapi.GobgpApi/ListVrf", opts...)
  6309  	if err != nil {
  6310  		return nil, err
  6311  	}
  6312  	x := &gobgpApiListVrfClient{stream}
  6313  	if err := x.ClientStream.SendMsg(in); err != nil {
  6314  		return nil, err
  6315  	}
  6316  	if err := x.ClientStream.CloseSend(); err != nil {
  6317  		return nil, err
  6318  	}
  6319  	return x, nil
  6320  }
  6321  
  6322  type GobgpApi_ListVrfClient interface {
  6323  	Recv() (*ListVrfResponse, error)
  6324  	grpc.ClientStream
  6325  }
  6326  
  6327  type gobgpApiListVrfClient struct {
  6328  	grpc.ClientStream
  6329  }
  6330  
  6331  func (x *gobgpApiListVrfClient) Recv() (*ListVrfResponse, error) {
  6332  	m := new(ListVrfResponse)
  6333  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6334  		return nil, err
  6335  	}
  6336  	return m, nil
  6337  }
  6338  
  6339  func (c *gobgpApiClient) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6340  	out := new(google_protobuf1.Empty)
  6341  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicy", in, out, c.cc, opts...)
  6342  	if err != nil {
  6343  		return nil, err
  6344  	}
  6345  	return out, nil
  6346  }
  6347  
  6348  func (c *gobgpApiClient) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6349  	out := new(google_protobuf1.Empty)
  6350  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicy", in, out, c.cc, opts...)
  6351  	if err != nil {
  6352  		return nil, err
  6353  	}
  6354  	return out, nil
  6355  }
  6356  
  6357  func (c *gobgpApiClient) ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error) {
  6358  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[6], c.cc, "/gobgpapi.GobgpApi/ListPolicy", opts...)
  6359  	if err != nil {
  6360  		return nil, err
  6361  	}
  6362  	x := &gobgpApiListPolicyClient{stream}
  6363  	if err := x.ClientStream.SendMsg(in); err != nil {
  6364  		return nil, err
  6365  	}
  6366  	if err := x.ClientStream.CloseSend(); err != nil {
  6367  		return nil, err
  6368  	}
  6369  	return x, nil
  6370  }
  6371  
  6372  type GobgpApi_ListPolicyClient interface {
  6373  	Recv() (*ListPolicyResponse, error)
  6374  	grpc.ClientStream
  6375  }
  6376  
  6377  type gobgpApiListPolicyClient struct {
  6378  	grpc.ClientStream
  6379  }
  6380  
  6381  func (x *gobgpApiListPolicyClient) Recv() (*ListPolicyResponse, error) {
  6382  	m := new(ListPolicyResponse)
  6383  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6384  		return nil, err
  6385  	}
  6386  	return m, nil
  6387  }
  6388  
  6389  func (c *gobgpApiClient) SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6390  	out := new(google_protobuf1.Empty)
  6391  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicies", in, out, c.cc, opts...)
  6392  	if err != nil {
  6393  		return nil, err
  6394  	}
  6395  	return out, nil
  6396  }
  6397  
  6398  func (c *gobgpApiClient) AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6399  	out := new(google_protobuf1.Empty)
  6400  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDefinedSet", in, out, c.cc, opts...)
  6401  	if err != nil {
  6402  		return nil, err
  6403  	}
  6404  	return out, nil
  6405  }
  6406  
  6407  func (c *gobgpApiClient) DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6408  	out := new(google_protobuf1.Empty)
  6409  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteDefinedSet", in, out, c.cc, opts...)
  6410  	if err != nil {
  6411  		return nil, err
  6412  	}
  6413  	return out, nil
  6414  }
  6415  
  6416  func (c *gobgpApiClient) ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error) {
  6417  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[7], c.cc, "/gobgpapi.GobgpApi/ListDefinedSet", opts...)
  6418  	if err != nil {
  6419  		return nil, err
  6420  	}
  6421  	x := &gobgpApiListDefinedSetClient{stream}
  6422  	if err := x.ClientStream.SendMsg(in); err != nil {
  6423  		return nil, err
  6424  	}
  6425  	if err := x.ClientStream.CloseSend(); err != nil {
  6426  		return nil, err
  6427  	}
  6428  	return x, nil
  6429  }
  6430  
  6431  type GobgpApi_ListDefinedSetClient interface {
  6432  	Recv() (*ListDefinedSetResponse, error)
  6433  	grpc.ClientStream
  6434  }
  6435  
  6436  type gobgpApiListDefinedSetClient struct {
  6437  	grpc.ClientStream
  6438  }
  6439  
  6440  func (x *gobgpApiListDefinedSetClient) Recv() (*ListDefinedSetResponse, error) {
  6441  	m := new(ListDefinedSetResponse)
  6442  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6443  		return nil, err
  6444  	}
  6445  	return m, nil
  6446  }
  6447  
  6448  func (c *gobgpApiClient) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6449  	out := new(google_protobuf1.Empty)
  6450  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddStatement", in, out, c.cc, opts...)
  6451  	if err != nil {
  6452  		return nil, err
  6453  	}
  6454  	return out, nil
  6455  }
  6456  
  6457  func (c *gobgpApiClient) DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6458  	out := new(google_protobuf1.Empty)
  6459  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteStatement", in, out, c.cc, opts...)
  6460  	if err != nil {
  6461  		return nil, err
  6462  	}
  6463  	return out, nil
  6464  }
  6465  
  6466  func (c *gobgpApiClient) ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error) {
  6467  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[8], c.cc, "/gobgpapi.GobgpApi/ListStatement", opts...)
  6468  	if err != nil {
  6469  		return nil, err
  6470  	}
  6471  	x := &gobgpApiListStatementClient{stream}
  6472  	if err := x.ClientStream.SendMsg(in); err != nil {
  6473  		return nil, err
  6474  	}
  6475  	if err := x.ClientStream.CloseSend(); err != nil {
  6476  		return nil, err
  6477  	}
  6478  	return x, nil
  6479  }
  6480  
  6481  type GobgpApi_ListStatementClient interface {
  6482  	Recv() (*ListStatementResponse, error)
  6483  	grpc.ClientStream
  6484  }
  6485  
  6486  type gobgpApiListStatementClient struct {
  6487  	grpc.ClientStream
  6488  }
  6489  
  6490  func (x *gobgpApiListStatementClient) Recv() (*ListStatementResponse, error) {
  6491  	m := new(ListStatementResponse)
  6492  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6493  		return nil, err
  6494  	}
  6495  	return m, nil
  6496  }
  6497  
  6498  func (c *gobgpApiClient) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6499  	out := new(google_protobuf1.Empty)
  6500  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicyAssignment", in, out, c.cc, opts...)
  6501  	if err != nil {
  6502  		return nil, err
  6503  	}
  6504  	return out, nil
  6505  }
  6506  
  6507  func (c *gobgpApiClient) DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6508  	out := new(google_protobuf1.Empty)
  6509  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicyAssignment", in, out, c.cc, opts...)
  6510  	if err != nil {
  6511  		return nil, err
  6512  	}
  6513  	return out, nil
  6514  }
  6515  
  6516  func (c *gobgpApiClient) ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error) {
  6517  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[9], c.cc, "/gobgpapi.GobgpApi/ListPolicyAssignment", opts...)
  6518  	if err != nil {
  6519  		return nil, err
  6520  	}
  6521  	x := &gobgpApiListPolicyAssignmentClient{stream}
  6522  	if err := x.ClientStream.SendMsg(in); err != nil {
  6523  		return nil, err
  6524  	}
  6525  	if err := x.ClientStream.CloseSend(); err != nil {
  6526  		return nil, err
  6527  	}
  6528  	return x, nil
  6529  }
  6530  
  6531  type GobgpApi_ListPolicyAssignmentClient interface {
  6532  	Recv() (*ListPolicyAssignmentResponse, error)
  6533  	grpc.ClientStream
  6534  }
  6535  
  6536  type gobgpApiListPolicyAssignmentClient struct {
  6537  	grpc.ClientStream
  6538  }
  6539  
  6540  func (x *gobgpApiListPolicyAssignmentClient) Recv() (*ListPolicyAssignmentResponse, error) {
  6541  	m := new(ListPolicyAssignmentResponse)
  6542  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6543  		return nil, err
  6544  	}
  6545  	return m, nil
  6546  }
  6547  
  6548  func (c *gobgpApiClient) SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6549  	out := new(google_protobuf1.Empty)
  6550  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicyAssignment", in, out, c.cc, opts...)
  6551  	if err != nil {
  6552  		return nil, err
  6553  	}
  6554  	return out, nil
  6555  }
  6556  
  6557  func (c *gobgpApiClient) AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6558  	out := new(google_protobuf1.Empty)
  6559  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddRpki", in, out, c.cc, opts...)
  6560  	if err != nil {
  6561  		return nil, err
  6562  	}
  6563  	return out, nil
  6564  }
  6565  
  6566  func (c *gobgpApiClient) DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6567  	out := new(google_protobuf1.Empty)
  6568  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteRpki", in, out, c.cc, opts...)
  6569  	if err != nil {
  6570  		return nil, err
  6571  	}
  6572  	return out, nil
  6573  }
  6574  
  6575  func (c *gobgpApiClient) ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error) {
  6576  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[10], c.cc, "/gobgpapi.GobgpApi/ListRpki", opts...)
  6577  	if err != nil {
  6578  		return nil, err
  6579  	}
  6580  	x := &gobgpApiListRpkiClient{stream}
  6581  	if err := x.ClientStream.SendMsg(in); err != nil {
  6582  		return nil, err
  6583  	}
  6584  	if err := x.ClientStream.CloseSend(); err != nil {
  6585  		return nil, err
  6586  	}
  6587  	return x, nil
  6588  }
  6589  
  6590  type GobgpApi_ListRpkiClient interface {
  6591  	Recv() (*ListRpkiResponse, error)
  6592  	grpc.ClientStream
  6593  }
  6594  
  6595  type gobgpApiListRpkiClient struct {
  6596  	grpc.ClientStream
  6597  }
  6598  
  6599  func (x *gobgpApiListRpkiClient) Recv() (*ListRpkiResponse, error) {
  6600  	m := new(ListRpkiResponse)
  6601  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6602  		return nil, err
  6603  	}
  6604  	return m, nil
  6605  }
  6606  
  6607  func (c *gobgpApiClient) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6608  	out := new(google_protobuf1.Empty)
  6609  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableRpki", in, out, c.cc, opts...)
  6610  	if err != nil {
  6611  		return nil, err
  6612  	}
  6613  	return out, nil
  6614  }
  6615  
  6616  func (c *gobgpApiClient) DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6617  	out := new(google_protobuf1.Empty)
  6618  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableRpki", in, out, c.cc, opts...)
  6619  	if err != nil {
  6620  		return nil, err
  6621  	}
  6622  	return out, nil
  6623  }
  6624  
  6625  func (c *gobgpApiClient) ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6626  	out := new(google_protobuf1.Empty)
  6627  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetRpki", in, out, c.cc, opts...)
  6628  	if err != nil {
  6629  		return nil, err
  6630  	}
  6631  	return out, nil
  6632  }
  6633  
  6634  func (c *gobgpApiClient) ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error) {
  6635  	stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[11], c.cc, "/gobgpapi.GobgpApi/ListRpkiTable", opts...)
  6636  	if err != nil {
  6637  		return nil, err
  6638  	}
  6639  	x := &gobgpApiListRpkiTableClient{stream}
  6640  	if err := x.ClientStream.SendMsg(in); err != nil {
  6641  		return nil, err
  6642  	}
  6643  	if err := x.ClientStream.CloseSend(); err != nil {
  6644  		return nil, err
  6645  	}
  6646  	return x, nil
  6647  }
  6648  
  6649  type GobgpApi_ListRpkiTableClient interface {
  6650  	Recv() (*ListRpkiTableResponse, error)
  6651  	grpc.ClientStream
  6652  }
  6653  
  6654  type gobgpApiListRpkiTableClient struct {
  6655  	grpc.ClientStream
  6656  }
  6657  
  6658  func (x *gobgpApiListRpkiTableClient) Recv() (*ListRpkiTableResponse, error) {
  6659  	m := new(ListRpkiTableResponse)
  6660  	if err := x.ClientStream.RecvMsg(m); err != nil {
  6661  		return nil, err
  6662  	}
  6663  	return m, nil
  6664  }
  6665  
  6666  func (c *gobgpApiClient) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6667  	out := new(google_protobuf1.Empty)
  6668  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableZebra", in, out, c.cc, opts...)
  6669  	if err != nil {
  6670  		return nil, err
  6671  	}
  6672  	return out, nil
  6673  }
  6674  
  6675  func (c *gobgpApiClient) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6676  	out := new(google_protobuf1.Empty)
  6677  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableMrt", in, out, c.cc, opts...)
  6678  	if err != nil {
  6679  		return nil, err
  6680  	}
  6681  	return out, nil
  6682  }
  6683  
  6684  func (c *gobgpApiClient) DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6685  	out := new(google_protobuf1.Empty)
  6686  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableMrt", in, out, c.cc, opts...)
  6687  	if err != nil {
  6688  		return nil, err
  6689  	}
  6690  	return out, nil
  6691  }
  6692  
  6693  func (c *gobgpApiClient) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6694  	out := new(google_protobuf1.Empty)
  6695  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddBmp", in, out, c.cc, opts...)
  6696  	if err != nil {
  6697  		return nil, err
  6698  	}
  6699  	return out, nil
  6700  }
  6701  
  6702  func (c *gobgpApiClient) DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
  6703  	out := new(google_protobuf1.Empty)
  6704  	err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteBmp", in, out, c.cc, opts...)
  6705  	if err != nil {
  6706  		return nil, err
  6707  	}
  6708  	return out, nil
  6709  }
  6710  
  6711  // Server API for GobgpApi service
  6712  
  6713  type GobgpApiServer interface {
  6714  	StartBgp(context.Context, *StartBgpRequest) (*google_protobuf1.Empty, error)
  6715  	StopBgp(context.Context, *StopBgpRequest) (*google_protobuf1.Empty, error)
  6716  	GetBgp(context.Context, *GetBgpRequest) (*GetBgpResponse, error)
  6717  	AddPeer(context.Context, *AddPeerRequest) (*google_protobuf1.Empty, error)
  6718  	DeletePeer(context.Context, *DeletePeerRequest) (*google_protobuf1.Empty, error)
  6719  	ListPeer(*ListPeerRequest, GobgpApi_ListPeerServer) error
  6720  	UpdatePeer(context.Context, *UpdatePeerRequest) (*UpdatePeerResponse, error)
  6721  	ResetPeer(context.Context, *ResetPeerRequest) (*google_protobuf1.Empty, error)
  6722  	ShutdownPeer(context.Context, *ShutdownPeerRequest) (*google_protobuf1.Empty, error)
  6723  	EnablePeer(context.Context, *EnablePeerRequest) (*google_protobuf1.Empty, error)
  6724  	DisablePeer(context.Context, *DisablePeerRequest) (*google_protobuf1.Empty, error)
  6725  	MonitorPeer(*MonitorPeerRequest, GobgpApi_MonitorPeerServer) error
  6726  	AddPeerGroup(context.Context, *AddPeerGroupRequest) (*google_protobuf1.Empty, error)
  6727  	DeletePeerGroup(context.Context, *DeletePeerGroupRequest) (*google_protobuf1.Empty, error)
  6728  	UpdatePeerGroup(context.Context, *UpdatePeerGroupRequest) (*UpdatePeerGroupResponse, error)
  6729  	AddDynamicNeighbor(context.Context, *AddDynamicNeighborRequest) (*google_protobuf1.Empty, error)
  6730  	AddPath(context.Context, *AddPathRequest) (*AddPathResponse, error)
  6731  	DeletePath(context.Context, *DeletePathRequest) (*google_protobuf1.Empty, error)
  6732  	ListPath(*ListPathRequest, GobgpApi_ListPathServer) error
  6733  	AddPathStream(GobgpApi_AddPathStreamServer) error
  6734  	GetTable(context.Context, *GetTableRequest) (*GetTableResponse, error)
  6735  	MonitorTable(*MonitorTableRequest, GobgpApi_MonitorTableServer) error
  6736  	AddVrf(context.Context, *AddVrfRequest) (*google_protobuf1.Empty, error)
  6737  	DeleteVrf(context.Context, *DeleteVrfRequest) (*google_protobuf1.Empty, error)
  6738  	ListVrf(*ListVrfRequest, GobgpApi_ListVrfServer) error
  6739  	AddPolicy(context.Context, *AddPolicyRequest) (*google_protobuf1.Empty, error)
  6740  	DeletePolicy(context.Context, *DeletePolicyRequest) (*google_protobuf1.Empty, error)
  6741  	ListPolicy(*ListPolicyRequest, GobgpApi_ListPolicyServer) error
  6742  	SetPolicies(context.Context, *SetPoliciesRequest) (*google_protobuf1.Empty, error)
  6743  	AddDefinedSet(context.Context, *AddDefinedSetRequest) (*google_protobuf1.Empty, error)
  6744  	DeleteDefinedSet(context.Context, *DeleteDefinedSetRequest) (*google_protobuf1.Empty, error)
  6745  	ListDefinedSet(*ListDefinedSetRequest, GobgpApi_ListDefinedSetServer) error
  6746  	AddStatement(context.Context, *AddStatementRequest) (*google_protobuf1.Empty, error)
  6747  	DeleteStatement(context.Context, *DeleteStatementRequest) (*google_protobuf1.Empty, error)
  6748  	ListStatement(*ListStatementRequest, GobgpApi_ListStatementServer) error
  6749  	AddPolicyAssignment(context.Context, *AddPolicyAssignmentRequest) (*google_protobuf1.Empty, error)
  6750  	DeletePolicyAssignment(context.Context, *DeletePolicyAssignmentRequest) (*google_protobuf1.Empty, error)
  6751  	ListPolicyAssignment(*ListPolicyAssignmentRequest, GobgpApi_ListPolicyAssignmentServer) error
  6752  	SetPolicyAssignment(context.Context, *SetPolicyAssignmentRequest) (*google_protobuf1.Empty, error)
  6753  	AddRpki(context.Context, *AddRpkiRequest) (*google_protobuf1.Empty, error)
  6754  	DeleteRpki(context.Context, *DeleteRpkiRequest) (*google_protobuf1.Empty, error)
  6755  	ListRpki(*ListRpkiRequest, GobgpApi_ListRpkiServer) error
  6756  	EnableRpki(context.Context, *EnableRpkiRequest) (*google_protobuf1.Empty, error)
  6757  	DisableRpki(context.Context, *DisableRpkiRequest) (*google_protobuf1.Empty, error)
  6758  	ResetRpki(context.Context, *ResetRpkiRequest) (*google_protobuf1.Empty, error)
  6759  	ListRpkiTable(*ListRpkiTableRequest, GobgpApi_ListRpkiTableServer) error
  6760  	EnableZebra(context.Context, *EnableZebraRequest) (*google_protobuf1.Empty, error)
  6761  	EnableMrt(context.Context, *EnableMrtRequest) (*google_protobuf1.Empty, error)
  6762  	DisableMrt(context.Context, *DisableMrtRequest) (*google_protobuf1.Empty, error)
  6763  	AddBmp(context.Context, *AddBmpRequest) (*google_protobuf1.Empty, error)
  6764  	DeleteBmp(context.Context, *DeleteBmpRequest) (*google_protobuf1.Empty, error)
  6765  }
  6766  
  6767  func RegisterGobgpApiServer(s *grpc.Server, srv GobgpApiServer) {
  6768  	s.RegisterService(&_GobgpApi_serviceDesc, srv)
  6769  }
  6770  
  6771  func _GobgpApi_StartBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6772  	in := new(StartBgpRequest)
  6773  	if err := dec(in); err != nil {
  6774  		return nil, err
  6775  	}
  6776  	if interceptor == nil {
  6777  		return srv.(GobgpApiServer).StartBgp(ctx, in)
  6778  	}
  6779  	info := &grpc.UnaryServerInfo{
  6780  		Server:     srv,
  6781  		FullMethod: "/gobgpapi.GobgpApi/StartBgp",
  6782  	}
  6783  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6784  		return srv.(GobgpApiServer).StartBgp(ctx, req.(*StartBgpRequest))
  6785  	}
  6786  	return interceptor(ctx, in, info, handler)
  6787  }
  6788  
  6789  func _GobgpApi_StopBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6790  	in := new(StopBgpRequest)
  6791  	if err := dec(in); err != nil {
  6792  		return nil, err
  6793  	}
  6794  	if interceptor == nil {
  6795  		return srv.(GobgpApiServer).StopBgp(ctx, in)
  6796  	}
  6797  	info := &grpc.UnaryServerInfo{
  6798  		Server:     srv,
  6799  		FullMethod: "/gobgpapi.GobgpApi/StopBgp",
  6800  	}
  6801  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6802  		return srv.(GobgpApiServer).StopBgp(ctx, req.(*StopBgpRequest))
  6803  	}
  6804  	return interceptor(ctx, in, info, handler)
  6805  }
  6806  
  6807  func _GobgpApi_GetBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6808  	in := new(GetBgpRequest)
  6809  	if err := dec(in); err != nil {
  6810  		return nil, err
  6811  	}
  6812  	if interceptor == nil {
  6813  		return srv.(GobgpApiServer).GetBgp(ctx, in)
  6814  	}
  6815  	info := &grpc.UnaryServerInfo{
  6816  		Server:     srv,
  6817  		FullMethod: "/gobgpapi.GobgpApi/GetBgp",
  6818  	}
  6819  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6820  		return srv.(GobgpApiServer).GetBgp(ctx, req.(*GetBgpRequest))
  6821  	}
  6822  	return interceptor(ctx, in, info, handler)
  6823  }
  6824  
  6825  func _GobgpApi_AddPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6826  	in := new(AddPeerRequest)
  6827  	if err := dec(in); err != nil {
  6828  		return nil, err
  6829  	}
  6830  	if interceptor == nil {
  6831  		return srv.(GobgpApiServer).AddPeer(ctx, in)
  6832  	}
  6833  	info := &grpc.UnaryServerInfo{
  6834  		Server:     srv,
  6835  		FullMethod: "/gobgpapi.GobgpApi/AddPeer",
  6836  	}
  6837  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6838  		return srv.(GobgpApiServer).AddPeer(ctx, req.(*AddPeerRequest))
  6839  	}
  6840  	return interceptor(ctx, in, info, handler)
  6841  }
  6842  
  6843  func _GobgpApi_DeletePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6844  	in := new(DeletePeerRequest)
  6845  	if err := dec(in); err != nil {
  6846  		return nil, err
  6847  	}
  6848  	if interceptor == nil {
  6849  		return srv.(GobgpApiServer).DeletePeer(ctx, in)
  6850  	}
  6851  	info := &grpc.UnaryServerInfo{
  6852  		Server:     srv,
  6853  		FullMethod: "/gobgpapi.GobgpApi/DeletePeer",
  6854  	}
  6855  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6856  		return srv.(GobgpApiServer).DeletePeer(ctx, req.(*DeletePeerRequest))
  6857  	}
  6858  	return interceptor(ctx, in, info, handler)
  6859  }
  6860  
  6861  func _GobgpApi_ListPeer_Handler(srv interface{}, stream grpc.ServerStream) error {
  6862  	m := new(ListPeerRequest)
  6863  	if err := stream.RecvMsg(m); err != nil {
  6864  		return err
  6865  	}
  6866  	return srv.(GobgpApiServer).ListPeer(m, &gobgpApiListPeerServer{stream})
  6867  }
  6868  
  6869  type GobgpApi_ListPeerServer interface {
  6870  	Send(*ListPeerResponse) error
  6871  	grpc.ServerStream
  6872  }
  6873  
  6874  type gobgpApiListPeerServer struct {
  6875  	grpc.ServerStream
  6876  }
  6877  
  6878  func (x *gobgpApiListPeerServer) Send(m *ListPeerResponse) error {
  6879  	return x.ServerStream.SendMsg(m)
  6880  }
  6881  
  6882  func _GobgpApi_UpdatePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6883  	in := new(UpdatePeerRequest)
  6884  	if err := dec(in); err != nil {
  6885  		return nil, err
  6886  	}
  6887  	if interceptor == nil {
  6888  		return srv.(GobgpApiServer).UpdatePeer(ctx, in)
  6889  	}
  6890  	info := &grpc.UnaryServerInfo{
  6891  		Server:     srv,
  6892  		FullMethod: "/gobgpapi.GobgpApi/UpdatePeer",
  6893  	}
  6894  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6895  		return srv.(GobgpApiServer).UpdatePeer(ctx, req.(*UpdatePeerRequest))
  6896  	}
  6897  	return interceptor(ctx, in, info, handler)
  6898  }
  6899  
  6900  func _GobgpApi_ResetPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6901  	in := new(ResetPeerRequest)
  6902  	if err := dec(in); err != nil {
  6903  		return nil, err
  6904  	}
  6905  	if interceptor == nil {
  6906  		return srv.(GobgpApiServer).ResetPeer(ctx, in)
  6907  	}
  6908  	info := &grpc.UnaryServerInfo{
  6909  		Server:     srv,
  6910  		FullMethod: "/gobgpapi.GobgpApi/ResetPeer",
  6911  	}
  6912  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6913  		return srv.(GobgpApiServer).ResetPeer(ctx, req.(*ResetPeerRequest))
  6914  	}
  6915  	return interceptor(ctx, in, info, handler)
  6916  }
  6917  
  6918  func _GobgpApi_ShutdownPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6919  	in := new(ShutdownPeerRequest)
  6920  	if err := dec(in); err != nil {
  6921  		return nil, err
  6922  	}
  6923  	if interceptor == nil {
  6924  		return srv.(GobgpApiServer).ShutdownPeer(ctx, in)
  6925  	}
  6926  	info := &grpc.UnaryServerInfo{
  6927  		Server:     srv,
  6928  		FullMethod: "/gobgpapi.GobgpApi/ShutdownPeer",
  6929  	}
  6930  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6931  		return srv.(GobgpApiServer).ShutdownPeer(ctx, req.(*ShutdownPeerRequest))
  6932  	}
  6933  	return interceptor(ctx, in, info, handler)
  6934  }
  6935  
  6936  func _GobgpApi_EnablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6937  	in := new(EnablePeerRequest)
  6938  	if err := dec(in); err != nil {
  6939  		return nil, err
  6940  	}
  6941  	if interceptor == nil {
  6942  		return srv.(GobgpApiServer).EnablePeer(ctx, in)
  6943  	}
  6944  	info := &grpc.UnaryServerInfo{
  6945  		Server:     srv,
  6946  		FullMethod: "/gobgpapi.GobgpApi/EnablePeer",
  6947  	}
  6948  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6949  		return srv.(GobgpApiServer).EnablePeer(ctx, req.(*EnablePeerRequest))
  6950  	}
  6951  	return interceptor(ctx, in, info, handler)
  6952  }
  6953  
  6954  func _GobgpApi_DisablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6955  	in := new(DisablePeerRequest)
  6956  	if err := dec(in); err != nil {
  6957  		return nil, err
  6958  	}
  6959  	if interceptor == nil {
  6960  		return srv.(GobgpApiServer).DisablePeer(ctx, in)
  6961  	}
  6962  	info := &grpc.UnaryServerInfo{
  6963  		Server:     srv,
  6964  		FullMethod: "/gobgpapi.GobgpApi/DisablePeer",
  6965  	}
  6966  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  6967  		return srv.(GobgpApiServer).DisablePeer(ctx, req.(*DisablePeerRequest))
  6968  	}
  6969  	return interceptor(ctx, in, info, handler)
  6970  }
  6971  
  6972  func _GobgpApi_MonitorPeer_Handler(srv interface{}, stream grpc.ServerStream) error {
  6973  	m := new(MonitorPeerRequest)
  6974  	if err := stream.RecvMsg(m); err != nil {
  6975  		return err
  6976  	}
  6977  	return srv.(GobgpApiServer).MonitorPeer(m, &gobgpApiMonitorPeerServer{stream})
  6978  }
  6979  
  6980  type GobgpApi_MonitorPeerServer interface {
  6981  	Send(*MonitorPeerResponse) error
  6982  	grpc.ServerStream
  6983  }
  6984  
  6985  type gobgpApiMonitorPeerServer struct {
  6986  	grpc.ServerStream
  6987  }
  6988  
  6989  func (x *gobgpApiMonitorPeerServer) Send(m *MonitorPeerResponse) error {
  6990  	return x.ServerStream.SendMsg(m)
  6991  }
  6992  
  6993  func _GobgpApi_AddPeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  6994  	in := new(AddPeerGroupRequest)
  6995  	if err := dec(in); err != nil {
  6996  		return nil, err
  6997  	}
  6998  	if interceptor == nil {
  6999  		return srv.(GobgpApiServer).AddPeerGroup(ctx, in)
  7000  	}
  7001  	info := &grpc.UnaryServerInfo{
  7002  		Server:     srv,
  7003  		FullMethod: "/gobgpapi.GobgpApi/AddPeerGroup",
  7004  	}
  7005  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7006  		return srv.(GobgpApiServer).AddPeerGroup(ctx, req.(*AddPeerGroupRequest))
  7007  	}
  7008  	return interceptor(ctx, in, info, handler)
  7009  }
  7010  
  7011  func _GobgpApi_DeletePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7012  	in := new(DeletePeerGroupRequest)
  7013  	if err := dec(in); err != nil {
  7014  		return nil, err
  7015  	}
  7016  	if interceptor == nil {
  7017  		return srv.(GobgpApiServer).DeletePeerGroup(ctx, in)
  7018  	}
  7019  	info := &grpc.UnaryServerInfo{
  7020  		Server:     srv,
  7021  		FullMethod: "/gobgpapi.GobgpApi/DeletePeerGroup",
  7022  	}
  7023  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7024  		return srv.(GobgpApiServer).DeletePeerGroup(ctx, req.(*DeletePeerGroupRequest))
  7025  	}
  7026  	return interceptor(ctx, in, info, handler)
  7027  }
  7028  
  7029  func _GobgpApi_UpdatePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7030  	in := new(UpdatePeerGroupRequest)
  7031  	if err := dec(in); err != nil {
  7032  		return nil, err
  7033  	}
  7034  	if interceptor == nil {
  7035  		return srv.(GobgpApiServer).UpdatePeerGroup(ctx, in)
  7036  	}
  7037  	info := &grpc.UnaryServerInfo{
  7038  		Server:     srv,
  7039  		FullMethod: "/gobgpapi.GobgpApi/UpdatePeerGroup",
  7040  	}
  7041  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7042  		return srv.(GobgpApiServer).UpdatePeerGroup(ctx, req.(*UpdatePeerGroupRequest))
  7043  	}
  7044  	return interceptor(ctx, in, info, handler)
  7045  }
  7046  
  7047  func _GobgpApi_AddDynamicNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7048  	in := new(AddDynamicNeighborRequest)
  7049  	if err := dec(in); err != nil {
  7050  		return nil, err
  7051  	}
  7052  	if interceptor == nil {
  7053  		return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, in)
  7054  	}
  7055  	info := &grpc.UnaryServerInfo{
  7056  		Server:     srv,
  7057  		FullMethod: "/gobgpapi.GobgpApi/AddDynamicNeighbor",
  7058  	}
  7059  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7060  		return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, req.(*AddDynamicNeighborRequest))
  7061  	}
  7062  	return interceptor(ctx, in, info, handler)
  7063  }
  7064  
  7065  func _GobgpApi_AddPath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7066  	in := new(AddPathRequest)
  7067  	if err := dec(in); err != nil {
  7068  		return nil, err
  7069  	}
  7070  	if interceptor == nil {
  7071  		return srv.(GobgpApiServer).AddPath(ctx, in)
  7072  	}
  7073  	info := &grpc.UnaryServerInfo{
  7074  		Server:     srv,
  7075  		FullMethod: "/gobgpapi.GobgpApi/AddPath",
  7076  	}
  7077  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7078  		return srv.(GobgpApiServer).AddPath(ctx, req.(*AddPathRequest))
  7079  	}
  7080  	return interceptor(ctx, in, info, handler)
  7081  }
  7082  
  7083  func _GobgpApi_DeletePath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7084  	in := new(DeletePathRequest)
  7085  	if err := dec(in); err != nil {
  7086  		return nil, err
  7087  	}
  7088  	if interceptor == nil {
  7089  		return srv.(GobgpApiServer).DeletePath(ctx, in)
  7090  	}
  7091  	info := &grpc.UnaryServerInfo{
  7092  		Server:     srv,
  7093  		FullMethod: "/gobgpapi.GobgpApi/DeletePath",
  7094  	}
  7095  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7096  		return srv.(GobgpApiServer).DeletePath(ctx, req.(*DeletePathRequest))
  7097  	}
  7098  	return interceptor(ctx, in, info, handler)
  7099  }
  7100  
  7101  func _GobgpApi_ListPath_Handler(srv interface{}, stream grpc.ServerStream) error {
  7102  	m := new(ListPathRequest)
  7103  	if err := stream.RecvMsg(m); err != nil {
  7104  		return err
  7105  	}
  7106  	return srv.(GobgpApiServer).ListPath(m, &gobgpApiListPathServer{stream})
  7107  }
  7108  
  7109  type GobgpApi_ListPathServer interface {
  7110  	Send(*ListPathResponse) error
  7111  	grpc.ServerStream
  7112  }
  7113  
  7114  type gobgpApiListPathServer struct {
  7115  	grpc.ServerStream
  7116  }
  7117  
  7118  func (x *gobgpApiListPathServer) Send(m *ListPathResponse) error {
  7119  	return x.ServerStream.SendMsg(m)
  7120  }
  7121  
  7122  func _GobgpApi_AddPathStream_Handler(srv interface{}, stream grpc.ServerStream) error {
  7123  	return srv.(GobgpApiServer).AddPathStream(&gobgpApiAddPathStreamServer{stream})
  7124  }
  7125  
  7126  type GobgpApi_AddPathStreamServer interface {
  7127  	SendAndClose(*google_protobuf1.Empty) error
  7128  	Recv() (*AddPathStreamRequest, error)
  7129  	grpc.ServerStream
  7130  }
  7131  
  7132  type gobgpApiAddPathStreamServer struct {
  7133  	grpc.ServerStream
  7134  }
  7135  
  7136  func (x *gobgpApiAddPathStreamServer) SendAndClose(m *google_protobuf1.Empty) error {
  7137  	return x.ServerStream.SendMsg(m)
  7138  }
  7139  
  7140  func (x *gobgpApiAddPathStreamServer) Recv() (*AddPathStreamRequest, error) {
  7141  	m := new(AddPathStreamRequest)
  7142  	if err := x.ServerStream.RecvMsg(m); err != nil {
  7143  		return nil, err
  7144  	}
  7145  	return m, nil
  7146  }
  7147  
  7148  func _GobgpApi_GetTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7149  	in := new(GetTableRequest)
  7150  	if err := dec(in); err != nil {
  7151  		return nil, err
  7152  	}
  7153  	if interceptor == nil {
  7154  		return srv.(GobgpApiServer).GetTable(ctx, in)
  7155  	}
  7156  	info := &grpc.UnaryServerInfo{
  7157  		Server:     srv,
  7158  		FullMethod: "/gobgpapi.GobgpApi/GetTable",
  7159  	}
  7160  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7161  		return srv.(GobgpApiServer).GetTable(ctx, req.(*GetTableRequest))
  7162  	}
  7163  	return interceptor(ctx, in, info, handler)
  7164  }
  7165  
  7166  func _GobgpApi_MonitorTable_Handler(srv interface{}, stream grpc.ServerStream) error {
  7167  	m := new(MonitorTableRequest)
  7168  	if err := stream.RecvMsg(m); err != nil {
  7169  		return err
  7170  	}
  7171  	return srv.(GobgpApiServer).MonitorTable(m, &gobgpApiMonitorTableServer{stream})
  7172  }
  7173  
  7174  type GobgpApi_MonitorTableServer interface {
  7175  	Send(*MonitorTableResponse) error
  7176  	grpc.ServerStream
  7177  }
  7178  
  7179  type gobgpApiMonitorTableServer struct {
  7180  	grpc.ServerStream
  7181  }
  7182  
  7183  func (x *gobgpApiMonitorTableServer) Send(m *MonitorTableResponse) error {
  7184  	return x.ServerStream.SendMsg(m)
  7185  }
  7186  
  7187  func _GobgpApi_AddVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7188  	in := new(AddVrfRequest)
  7189  	if err := dec(in); err != nil {
  7190  		return nil, err
  7191  	}
  7192  	if interceptor == nil {
  7193  		return srv.(GobgpApiServer).AddVrf(ctx, in)
  7194  	}
  7195  	info := &grpc.UnaryServerInfo{
  7196  		Server:     srv,
  7197  		FullMethod: "/gobgpapi.GobgpApi/AddVrf",
  7198  	}
  7199  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7200  		return srv.(GobgpApiServer).AddVrf(ctx, req.(*AddVrfRequest))
  7201  	}
  7202  	return interceptor(ctx, in, info, handler)
  7203  }
  7204  
  7205  func _GobgpApi_DeleteVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7206  	in := new(DeleteVrfRequest)
  7207  	if err := dec(in); err != nil {
  7208  		return nil, err
  7209  	}
  7210  	if interceptor == nil {
  7211  		return srv.(GobgpApiServer).DeleteVrf(ctx, in)
  7212  	}
  7213  	info := &grpc.UnaryServerInfo{
  7214  		Server:     srv,
  7215  		FullMethod: "/gobgpapi.GobgpApi/DeleteVrf",
  7216  	}
  7217  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7218  		return srv.(GobgpApiServer).DeleteVrf(ctx, req.(*DeleteVrfRequest))
  7219  	}
  7220  	return interceptor(ctx, in, info, handler)
  7221  }
  7222  
  7223  func _GobgpApi_ListVrf_Handler(srv interface{}, stream grpc.ServerStream) error {
  7224  	m := new(ListVrfRequest)
  7225  	if err := stream.RecvMsg(m); err != nil {
  7226  		return err
  7227  	}
  7228  	return srv.(GobgpApiServer).ListVrf(m, &gobgpApiListVrfServer{stream})
  7229  }
  7230  
  7231  type GobgpApi_ListVrfServer interface {
  7232  	Send(*ListVrfResponse) error
  7233  	grpc.ServerStream
  7234  }
  7235  
  7236  type gobgpApiListVrfServer struct {
  7237  	grpc.ServerStream
  7238  }
  7239  
  7240  func (x *gobgpApiListVrfServer) Send(m *ListVrfResponse) error {
  7241  	return x.ServerStream.SendMsg(m)
  7242  }
  7243  
  7244  func _GobgpApi_AddPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7245  	in := new(AddPolicyRequest)
  7246  	if err := dec(in); err != nil {
  7247  		return nil, err
  7248  	}
  7249  	if interceptor == nil {
  7250  		return srv.(GobgpApiServer).AddPolicy(ctx, in)
  7251  	}
  7252  	info := &grpc.UnaryServerInfo{
  7253  		Server:     srv,
  7254  		FullMethod: "/gobgpapi.GobgpApi/AddPolicy",
  7255  	}
  7256  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7257  		return srv.(GobgpApiServer).AddPolicy(ctx, req.(*AddPolicyRequest))
  7258  	}
  7259  	return interceptor(ctx, in, info, handler)
  7260  }
  7261  
  7262  func _GobgpApi_DeletePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7263  	in := new(DeletePolicyRequest)
  7264  	if err := dec(in); err != nil {
  7265  		return nil, err
  7266  	}
  7267  	if interceptor == nil {
  7268  		return srv.(GobgpApiServer).DeletePolicy(ctx, in)
  7269  	}
  7270  	info := &grpc.UnaryServerInfo{
  7271  		Server:     srv,
  7272  		FullMethod: "/gobgpapi.GobgpApi/DeletePolicy",
  7273  	}
  7274  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7275  		return srv.(GobgpApiServer).DeletePolicy(ctx, req.(*DeletePolicyRequest))
  7276  	}
  7277  	return interceptor(ctx, in, info, handler)
  7278  }
  7279  
  7280  func _GobgpApi_ListPolicy_Handler(srv interface{}, stream grpc.ServerStream) error {
  7281  	m := new(ListPolicyRequest)
  7282  	if err := stream.RecvMsg(m); err != nil {
  7283  		return err
  7284  	}
  7285  	return srv.(GobgpApiServer).ListPolicy(m, &gobgpApiListPolicyServer{stream})
  7286  }
  7287  
  7288  type GobgpApi_ListPolicyServer interface {
  7289  	Send(*ListPolicyResponse) error
  7290  	grpc.ServerStream
  7291  }
  7292  
  7293  type gobgpApiListPolicyServer struct {
  7294  	grpc.ServerStream
  7295  }
  7296  
  7297  func (x *gobgpApiListPolicyServer) Send(m *ListPolicyResponse) error {
  7298  	return x.ServerStream.SendMsg(m)
  7299  }
  7300  
  7301  func _GobgpApi_SetPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7302  	in := new(SetPoliciesRequest)
  7303  	if err := dec(in); err != nil {
  7304  		return nil, err
  7305  	}
  7306  	if interceptor == nil {
  7307  		return srv.(GobgpApiServer).SetPolicies(ctx, in)
  7308  	}
  7309  	info := &grpc.UnaryServerInfo{
  7310  		Server:     srv,
  7311  		FullMethod: "/gobgpapi.GobgpApi/SetPolicies",
  7312  	}
  7313  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7314  		return srv.(GobgpApiServer).SetPolicies(ctx, req.(*SetPoliciesRequest))
  7315  	}
  7316  	return interceptor(ctx, in, info, handler)
  7317  }
  7318  
  7319  func _GobgpApi_AddDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7320  	in := new(AddDefinedSetRequest)
  7321  	if err := dec(in); err != nil {
  7322  		return nil, err
  7323  	}
  7324  	if interceptor == nil {
  7325  		return srv.(GobgpApiServer).AddDefinedSet(ctx, in)
  7326  	}
  7327  	info := &grpc.UnaryServerInfo{
  7328  		Server:     srv,
  7329  		FullMethod: "/gobgpapi.GobgpApi/AddDefinedSet",
  7330  	}
  7331  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7332  		return srv.(GobgpApiServer).AddDefinedSet(ctx, req.(*AddDefinedSetRequest))
  7333  	}
  7334  	return interceptor(ctx, in, info, handler)
  7335  }
  7336  
  7337  func _GobgpApi_DeleteDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7338  	in := new(DeleteDefinedSetRequest)
  7339  	if err := dec(in); err != nil {
  7340  		return nil, err
  7341  	}
  7342  	if interceptor == nil {
  7343  		return srv.(GobgpApiServer).DeleteDefinedSet(ctx, in)
  7344  	}
  7345  	info := &grpc.UnaryServerInfo{
  7346  		Server:     srv,
  7347  		FullMethod: "/gobgpapi.GobgpApi/DeleteDefinedSet",
  7348  	}
  7349  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7350  		return srv.(GobgpApiServer).DeleteDefinedSet(ctx, req.(*DeleteDefinedSetRequest))
  7351  	}
  7352  	return interceptor(ctx, in, info, handler)
  7353  }
  7354  
  7355  func _GobgpApi_ListDefinedSet_Handler(srv interface{}, stream grpc.ServerStream) error {
  7356  	m := new(ListDefinedSetRequest)
  7357  	if err := stream.RecvMsg(m); err != nil {
  7358  		return err
  7359  	}
  7360  	return srv.(GobgpApiServer).ListDefinedSet(m, &gobgpApiListDefinedSetServer{stream})
  7361  }
  7362  
  7363  type GobgpApi_ListDefinedSetServer interface {
  7364  	Send(*ListDefinedSetResponse) error
  7365  	grpc.ServerStream
  7366  }
  7367  
  7368  type gobgpApiListDefinedSetServer struct {
  7369  	grpc.ServerStream
  7370  }
  7371  
  7372  func (x *gobgpApiListDefinedSetServer) Send(m *ListDefinedSetResponse) error {
  7373  	return x.ServerStream.SendMsg(m)
  7374  }
  7375  
  7376  func _GobgpApi_AddStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7377  	in := new(AddStatementRequest)
  7378  	if err := dec(in); err != nil {
  7379  		return nil, err
  7380  	}
  7381  	if interceptor == nil {
  7382  		return srv.(GobgpApiServer).AddStatement(ctx, in)
  7383  	}
  7384  	info := &grpc.UnaryServerInfo{
  7385  		Server:     srv,
  7386  		FullMethod: "/gobgpapi.GobgpApi/AddStatement",
  7387  	}
  7388  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7389  		return srv.(GobgpApiServer).AddStatement(ctx, req.(*AddStatementRequest))
  7390  	}
  7391  	return interceptor(ctx, in, info, handler)
  7392  }
  7393  
  7394  func _GobgpApi_DeleteStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7395  	in := new(DeleteStatementRequest)
  7396  	if err := dec(in); err != nil {
  7397  		return nil, err
  7398  	}
  7399  	if interceptor == nil {
  7400  		return srv.(GobgpApiServer).DeleteStatement(ctx, in)
  7401  	}
  7402  	info := &grpc.UnaryServerInfo{
  7403  		Server:     srv,
  7404  		FullMethod: "/gobgpapi.GobgpApi/DeleteStatement",
  7405  	}
  7406  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7407  		return srv.(GobgpApiServer).DeleteStatement(ctx, req.(*DeleteStatementRequest))
  7408  	}
  7409  	return interceptor(ctx, in, info, handler)
  7410  }
  7411  
  7412  func _GobgpApi_ListStatement_Handler(srv interface{}, stream grpc.ServerStream) error {
  7413  	m := new(ListStatementRequest)
  7414  	if err := stream.RecvMsg(m); err != nil {
  7415  		return err
  7416  	}
  7417  	return srv.(GobgpApiServer).ListStatement(m, &gobgpApiListStatementServer{stream})
  7418  }
  7419  
  7420  type GobgpApi_ListStatementServer interface {
  7421  	Send(*ListStatementResponse) error
  7422  	grpc.ServerStream
  7423  }
  7424  
  7425  type gobgpApiListStatementServer struct {
  7426  	grpc.ServerStream
  7427  }
  7428  
  7429  func (x *gobgpApiListStatementServer) Send(m *ListStatementResponse) error {
  7430  	return x.ServerStream.SendMsg(m)
  7431  }
  7432  
  7433  func _GobgpApi_AddPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7434  	in := new(AddPolicyAssignmentRequest)
  7435  	if err := dec(in); err != nil {
  7436  		return nil, err
  7437  	}
  7438  	if interceptor == nil {
  7439  		return srv.(GobgpApiServer).AddPolicyAssignment(ctx, in)
  7440  	}
  7441  	info := &grpc.UnaryServerInfo{
  7442  		Server:     srv,
  7443  		FullMethod: "/gobgpapi.GobgpApi/AddPolicyAssignment",
  7444  	}
  7445  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7446  		return srv.(GobgpApiServer).AddPolicyAssignment(ctx, req.(*AddPolicyAssignmentRequest))
  7447  	}
  7448  	return interceptor(ctx, in, info, handler)
  7449  }
  7450  
  7451  func _GobgpApi_DeletePolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7452  	in := new(DeletePolicyAssignmentRequest)
  7453  	if err := dec(in); err != nil {
  7454  		return nil, err
  7455  	}
  7456  	if interceptor == nil {
  7457  		return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, in)
  7458  	}
  7459  	info := &grpc.UnaryServerInfo{
  7460  		Server:     srv,
  7461  		FullMethod: "/gobgpapi.GobgpApi/DeletePolicyAssignment",
  7462  	}
  7463  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7464  		return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, req.(*DeletePolicyAssignmentRequest))
  7465  	}
  7466  	return interceptor(ctx, in, info, handler)
  7467  }
  7468  
  7469  func _GobgpApi_ListPolicyAssignment_Handler(srv interface{}, stream grpc.ServerStream) error {
  7470  	m := new(ListPolicyAssignmentRequest)
  7471  	if err := stream.RecvMsg(m); err != nil {
  7472  		return err
  7473  	}
  7474  	return srv.(GobgpApiServer).ListPolicyAssignment(m, &gobgpApiListPolicyAssignmentServer{stream})
  7475  }
  7476  
  7477  type GobgpApi_ListPolicyAssignmentServer interface {
  7478  	Send(*ListPolicyAssignmentResponse) error
  7479  	grpc.ServerStream
  7480  }
  7481  
  7482  type gobgpApiListPolicyAssignmentServer struct {
  7483  	grpc.ServerStream
  7484  }
  7485  
  7486  func (x *gobgpApiListPolicyAssignmentServer) Send(m *ListPolicyAssignmentResponse) error {
  7487  	return x.ServerStream.SendMsg(m)
  7488  }
  7489  
  7490  func _GobgpApi_SetPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7491  	in := new(SetPolicyAssignmentRequest)
  7492  	if err := dec(in); err != nil {
  7493  		return nil, err
  7494  	}
  7495  	if interceptor == nil {
  7496  		return srv.(GobgpApiServer).SetPolicyAssignment(ctx, in)
  7497  	}
  7498  	info := &grpc.UnaryServerInfo{
  7499  		Server:     srv,
  7500  		FullMethod: "/gobgpapi.GobgpApi/SetPolicyAssignment",
  7501  	}
  7502  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7503  		return srv.(GobgpApiServer).SetPolicyAssignment(ctx, req.(*SetPolicyAssignmentRequest))
  7504  	}
  7505  	return interceptor(ctx, in, info, handler)
  7506  }
  7507  
  7508  func _GobgpApi_AddRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7509  	in := new(AddRpkiRequest)
  7510  	if err := dec(in); err != nil {
  7511  		return nil, err
  7512  	}
  7513  	if interceptor == nil {
  7514  		return srv.(GobgpApiServer).AddRpki(ctx, in)
  7515  	}
  7516  	info := &grpc.UnaryServerInfo{
  7517  		Server:     srv,
  7518  		FullMethod: "/gobgpapi.GobgpApi/AddRpki",
  7519  	}
  7520  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7521  		return srv.(GobgpApiServer).AddRpki(ctx, req.(*AddRpkiRequest))
  7522  	}
  7523  	return interceptor(ctx, in, info, handler)
  7524  }
  7525  
  7526  func _GobgpApi_DeleteRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7527  	in := new(DeleteRpkiRequest)
  7528  	if err := dec(in); err != nil {
  7529  		return nil, err
  7530  	}
  7531  	if interceptor == nil {
  7532  		return srv.(GobgpApiServer).DeleteRpki(ctx, in)
  7533  	}
  7534  	info := &grpc.UnaryServerInfo{
  7535  		Server:     srv,
  7536  		FullMethod: "/gobgpapi.GobgpApi/DeleteRpki",
  7537  	}
  7538  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7539  		return srv.(GobgpApiServer).DeleteRpki(ctx, req.(*DeleteRpkiRequest))
  7540  	}
  7541  	return interceptor(ctx, in, info, handler)
  7542  }
  7543  
  7544  func _GobgpApi_ListRpki_Handler(srv interface{}, stream grpc.ServerStream) error {
  7545  	m := new(ListRpkiRequest)
  7546  	if err := stream.RecvMsg(m); err != nil {
  7547  		return err
  7548  	}
  7549  	return srv.(GobgpApiServer).ListRpki(m, &gobgpApiListRpkiServer{stream})
  7550  }
  7551  
  7552  type GobgpApi_ListRpkiServer interface {
  7553  	Send(*ListRpkiResponse) error
  7554  	grpc.ServerStream
  7555  }
  7556  
  7557  type gobgpApiListRpkiServer struct {
  7558  	grpc.ServerStream
  7559  }
  7560  
  7561  func (x *gobgpApiListRpkiServer) Send(m *ListRpkiResponse) error {
  7562  	return x.ServerStream.SendMsg(m)
  7563  }
  7564  
  7565  func _GobgpApi_EnableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7566  	in := new(EnableRpkiRequest)
  7567  	if err := dec(in); err != nil {
  7568  		return nil, err
  7569  	}
  7570  	if interceptor == nil {
  7571  		return srv.(GobgpApiServer).EnableRpki(ctx, in)
  7572  	}
  7573  	info := &grpc.UnaryServerInfo{
  7574  		Server:     srv,
  7575  		FullMethod: "/gobgpapi.GobgpApi/EnableRpki",
  7576  	}
  7577  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7578  		return srv.(GobgpApiServer).EnableRpki(ctx, req.(*EnableRpkiRequest))
  7579  	}
  7580  	return interceptor(ctx, in, info, handler)
  7581  }
  7582  
  7583  func _GobgpApi_DisableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7584  	in := new(DisableRpkiRequest)
  7585  	if err := dec(in); err != nil {
  7586  		return nil, err
  7587  	}
  7588  	if interceptor == nil {
  7589  		return srv.(GobgpApiServer).DisableRpki(ctx, in)
  7590  	}
  7591  	info := &grpc.UnaryServerInfo{
  7592  		Server:     srv,
  7593  		FullMethod: "/gobgpapi.GobgpApi/DisableRpki",
  7594  	}
  7595  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7596  		return srv.(GobgpApiServer).DisableRpki(ctx, req.(*DisableRpkiRequest))
  7597  	}
  7598  	return interceptor(ctx, in, info, handler)
  7599  }
  7600  
  7601  func _GobgpApi_ResetRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7602  	in := new(ResetRpkiRequest)
  7603  	if err := dec(in); err != nil {
  7604  		return nil, err
  7605  	}
  7606  	if interceptor == nil {
  7607  		return srv.(GobgpApiServer).ResetRpki(ctx, in)
  7608  	}
  7609  	info := &grpc.UnaryServerInfo{
  7610  		Server:     srv,
  7611  		FullMethod: "/gobgpapi.GobgpApi/ResetRpki",
  7612  	}
  7613  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7614  		return srv.(GobgpApiServer).ResetRpki(ctx, req.(*ResetRpkiRequest))
  7615  	}
  7616  	return interceptor(ctx, in, info, handler)
  7617  }
  7618  
  7619  func _GobgpApi_ListRpkiTable_Handler(srv interface{}, stream grpc.ServerStream) error {
  7620  	m := new(ListRpkiTableRequest)
  7621  	if err := stream.RecvMsg(m); err != nil {
  7622  		return err
  7623  	}
  7624  	return srv.(GobgpApiServer).ListRpkiTable(m, &gobgpApiListRpkiTableServer{stream})
  7625  }
  7626  
  7627  type GobgpApi_ListRpkiTableServer interface {
  7628  	Send(*ListRpkiTableResponse) error
  7629  	grpc.ServerStream
  7630  }
  7631  
  7632  type gobgpApiListRpkiTableServer struct {
  7633  	grpc.ServerStream
  7634  }
  7635  
  7636  func (x *gobgpApiListRpkiTableServer) Send(m *ListRpkiTableResponse) error {
  7637  	return x.ServerStream.SendMsg(m)
  7638  }
  7639  
  7640  func _GobgpApi_EnableZebra_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7641  	in := new(EnableZebraRequest)
  7642  	if err := dec(in); err != nil {
  7643  		return nil, err
  7644  	}
  7645  	if interceptor == nil {
  7646  		return srv.(GobgpApiServer).EnableZebra(ctx, in)
  7647  	}
  7648  	info := &grpc.UnaryServerInfo{
  7649  		Server:     srv,
  7650  		FullMethod: "/gobgpapi.GobgpApi/EnableZebra",
  7651  	}
  7652  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7653  		return srv.(GobgpApiServer).EnableZebra(ctx, req.(*EnableZebraRequest))
  7654  	}
  7655  	return interceptor(ctx, in, info, handler)
  7656  }
  7657  
  7658  func _GobgpApi_EnableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7659  	in := new(EnableMrtRequest)
  7660  	if err := dec(in); err != nil {
  7661  		return nil, err
  7662  	}
  7663  	if interceptor == nil {
  7664  		return srv.(GobgpApiServer).EnableMrt(ctx, in)
  7665  	}
  7666  	info := &grpc.UnaryServerInfo{
  7667  		Server:     srv,
  7668  		FullMethod: "/gobgpapi.GobgpApi/EnableMrt",
  7669  	}
  7670  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7671  		return srv.(GobgpApiServer).EnableMrt(ctx, req.(*EnableMrtRequest))
  7672  	}
  7673  	return interceptor(ctx, in, info, handler)
  7674  }
  7675  
  7676  func _GobgpApi_DisableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7677  	in := new(DisableMrtRequest)
  7678  	if err := dec(in); err != nil {
  7679  		return nil, err
  7680  	}
  7681  	if interceptor == nil {
  7682  		return srv.(GobgpApiServer).DisableMrt(ctx, in)
  7683  	}
  7684  	info := &grpc.UnaryServerInfo{
  7685  		Server:     srv,
  7686  		FullMethod: "/gobgpapi.GobgpApi/DisableMrt",
  7687  	}
  7688  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7689  		return srv.(GobgpApiServer).DisableMrt(ctx, req.(*DisableMrtRequest))
  7690  	}
  7691  	return interceptor(ctx, in, info, handler)
  7692  }
  7693  
  7694  func _GobgpApi_AddBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7695  	in := new(AddBmpRequest)
  7696  	if err := dec(in); err != nil {
  7697  		return nil, err
  7698  	}
  7699  	if interceptor == nil {
  7700  		return srv.(GobgpApiServer).AddBmp(ctx, in)
  7701  	}
  7702  	info := &grpc.UnaryServerInfo{
  7703  		Server:     srv,
  7704  		FullMethod: "/gobgpapi.GobgpApi/AddBmp",
  7705  	}
  7706  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7707  		return srv.(GobgpApiServer).AddBmp(ctx, req.(*AddBmpRequest))
  7708  	}
  7709  	return interceptor(ctx, in, info, handler)
  7710  }
  7711  
  7712  func _GobgpApi_DeleteBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
  7713  	in := new(DeleteBmpRequest)
  7714  	if err := dec(in); err != nil {
  7715  		return nil, err
  7716  	}
  7717  	if interceptor == nil {
  7718  		return srv.(GobgpApiServer).DeleteBmp(ctx, in)
  7719  	}
  7720  	info := &grpc.UnaryServerInfo{
  7721  		Server:     srv,
  7722  		FullMethod: "/gobgpapi.GobgpApi/DeleteBmp",
  7723  	}
  7724  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
  7725  		return srv.(GobgpApiServer).DeleteBmp(ctx, req.(*DeleteBmpRequest))
  7726  	}
  7727  	return interceptor(ctx, in, info, handler)
  7728  }
  7729  
  7730  var _GobgpApi_serviceDesc = grpc.ServiceDesc{
  7731  	ServiceName: "gobgpapi.GobgpApi",
  7732  	HandlerType: (*GobgpApiServer)(nil),
  7733  	Methods: []grpc.MethodDesc{
  7734  		{
  7735  			MethodName: "StartBgp",
  7736  			Handler:    _GobgpApi_StartBgp_Handler,
  7737  		},
  7738  		{
  7739  			MethodName: "StopBgp",
  7740  			Handler:    _GobgpApi_StopBgp_Handler,
  7741  		},
  7742  		{
  7743  			MethodName: "GetBgp",
  7744  			Handler:    _GobgpApi_GetBgp_Handler,
  7745  		},
  7746  		{
  7747  			MethodName: "AddPeer",
  7748  			Handler:    _GobgpApi_AddPeer_Handler,
  7749  		},
  7750  		{
  7751  			MethodName: "DeletePeer",
  7752  			Handler:    _GobgpApi_DeletePeer_Handler,
  7753  		},
  7754  		{
  7755  			MethodName: "UpdatePeer",
  7756  			Handler:    _GobgpApi_UpdatePeer_Handler,
  7757  		},
  7758  		{
  7759  			MethodName: "ResetPeer",
  7760  			Handler:    _GobgpApi_ResetPeer_Handler,
  7761  		},
  7762  		{
  7763  			MethodName: "ShutdownPeer",
  7764  			Handler:    _GobgpApi_ShutdownPeer_Handler,
  7765  		},
  7766  		{
  7767  			MethodName: "EnablePeer",
  7768  			Handler:    _GobgpApi_EnablePeer_Handler,
  7769  		},
  7770  		{
  7771  			MethodName: "DisablePeer",
  7772  			Handler:    _GobgpApi_DisablePeer_Handler,
  7773  		},
  7774  		{
  7775  			MethodName: "AddPeerGroup",
  7776  			Handler:    _GobgpApi_AddPeerGroup_Handler,
  7777  		},
  7778  		{
  7779  			MethodName: "DeletePeerGroup",
  7780  			Handler:    _GobgpApi_DeletePeerGroup_Handler,
  7781  		},
  7782  		{
  7783  			MethodName: "UpdatePeerGroup",
  7784  			Handler:    _GobgpApi_UpdatePeerGroup_Handler,
  7785  		},
  7786  		{
  7787  			MethodName: "AddDynamicNeighbor",
  7788  			Handler:    _GobgpApi_AddDynamicNeighbor_Handler,
  7789  		},
  7790  		{
  7791  			MethodName: "AddPath",
  7792  			Handler:    _GobgpApi_AddPath_Handler,
  7793  		},
  7794  		{
  7795  			MethodName: "DeletePath",
  7796  			Handler:    _GobgpApi_DeletePath_Handler,
  7797  		},
  7798  		{
  7799  			MethodName: "GetTable",
  7800  			Handler:    _GobgpApi_GetTable_Handler,
  7801  		},
  7802  		{
  7803  			MethodName: "AddVrf",
  7804  			Handler:    _GobgpApi_AddVrf_Handler,
  7805  		},
  7806  		{
  7807  			MethodName: "DeleteVrf",
  7808  			Handler:    _GobgpApi_DeleteVrf_Handler,
  7809  		},
  7810  		{
  7811  			MethodName: "AddPolicy",
  7812  			Handler:    _GobgpApi_AddPolicy_Handler,
  7813  		},
  7814  		{
  7815  			MethodName: "DeletePolicy",
  7816  			Handler:    _GobgpApi_DeletePolicy_Handler,
  7817  		},
  7818  		{
  7819  			MethodName: "SetPolicies",
  7820  			Handler:    _GobgpApi_SetPolicies_Handler,
  7821  		},
  7822  		{
  7823  			MethodName: "AddDefinedSet",
  7824  			Handler:    _GobgpApi_AddDefinedSet_Handler,
  7825  		},
  7826  		{
  7827  			MethodName: "DeleteDefinedSet",
  7828  			Handler:    _GobgpApi_DeleteDefinedSet_Handler,
  7829  		},
  7830  		{
  7831  			MethodName: "AddStatement",
  7832  			Handler:    _GobgpApi_AddStatement_Handler,
  7833  		},
  7834  		{
  7835  			MethodName: "DeleteStatement",
  7836  			Handler:    _GobgpApi_DeleteStatement_Handler,
  7837  		},
  7838  		{
  7839  			MethodName: "AddPolicyAssignment",
  7840  			Handler:    _GobgpApi_AddPolicyAssignment_Handler,
  7841  		},
  7842  		{
  7843  			MethodName: "DeletePolicyAssignment",
  7844  			Handler:    _GobgpApi_DeletePolicyAssignment_Handler,
  7845  		},
  7846  		{
  7847  			MethodName: "SetPolicyAssignment",
  7848  			Handler:    _GobgpApi_SetPolicyAssignment_Handler,
  7849  		},
  7850  		{
  7851  			MethodName: "AddRpki",
  7852  			Handler:    _GobgpApi_AddRpki_Handler,
  7853  		},
  7854  		{
  7855  			MethodName: "DeleteRpki",
  7856  			Handler:    _GobgpApi_DeleteRpki_Handler,
  7857  		},
  7858  		{
  7859  			MethodName: "EnableRpki",
  7860  			Handler:    _GobgpApi_EnableRpki_Handler,
  7861  		},
  7862  		{
  7863  			MethodName: "DisableRpki",
  7864  			Handler:    _GobgpApi_DisableRpki_Handler,
  7865  		},
  7866  		{
  7867  			MethodName: "ResetRpki",
  7868  			Handler:    _GobgpApi_ResetRpki_Handler,
  7869  		},
  7870  		{
  7871  			MethodName: "EnableZebra",
  7872  			Handler:    _GobgpApi_EnableZebra_Handler,
  7873  		},
  7874  		{
  7875  			MethodName: "EnableMrt",
  7876  			Handler:    _GobgpApi_EnableMrt_Handler,
  7877  		},
  7878  		{
  7879  			MethodName: "DisableMrt",
  7880  			Handler:    _GobgpApi_DisableMrt_Handler,
  7881  		},
  7882  		{
  7883  			MethodName: "AddBmp",
  7884  			Handler:    _GobgpApi_AddBmp_Handler,
  7885  		},
  7886  		{
  7887  			MethodName: "DeleteBmp",
  7888  			Handler:    _GobgpApi_DeleteBmp_Handler,
  7889  		},
  7890  	},
  7891  	Streams: []grpc.StreamDesc{
  7892  		{
  7893  			StreamName:    "ListPeer",
  7894  			Handler:       _GobgpApi_ListPeer_Handler,
  7895  			ServerStreams: true,
  7896  		},
  7897  		{
  7898  			StreamName:    "MonitorPeer",
  7899  			Handler:       _GobgpApi_MonitorPeer_Handler,
  7900  			ServerStreams: true,
  7901  		},
  7902  		{
  7903  			StreamName:    "ListPath",
  7904  			Handler:       _GobgpApi_ListPath_Handler,
  7905  			ServerStreams: true,
  7906  		},
  7907  		{
  7908  			StreamName:    "AddPathStream",
  7909  			Handler:       _GobgpApi_AddPathStream_Handler,
  7910  			ClientStreams: true,
  7911  		},
  7912  		{
  7913  			StreamName:    "MonitorTable",
  7914  			Handler:       _GobgpApi_MonitorTable_Handler,
  7915  			ServerStreams: true,
  7916  		},
  7917  		{
  7918  			StreamName:    "ListVrf",
  7919  			Handler:       _GobgpApi_ListVrf_Handler,
  7920  			ServerStreams: true,
  7921  		},
  7922  		{
  7923  			StreamName:    "ListPolicy",
  7924  			Handler:       _GobgpApi_ListPolicy_Handler,
  7925  			ServerStreams: true,
  7926  		},
  7927  		{
  7928  			StreamName:    "ListDefinedSet",
  7929  			Handler:       _GobgpApi_ListDefinedSet_Handler,
  7930  			ServerStreams: true,
  7931  		},
  7932  		{
  7933  			StreamName:    "ListStatement",
  7934  			Handler:       _GobgpApi_ListStatement_Handler,
  7935  			ServerStreams: true,
  7936  		},
  7937  		{
  7938  			StreamName:    "ListPolicyAssignment",
  7939  			Handler:       _GobgpApi_ListPolicyAssignment_Handler,
  7940  			ServerStreams: true,
  7941  		},
  7942  		{
  7943  			StreamName:    "ListRpki",
  7944  			Handler:       _GobgpApi_ListRpki_Handler,
  7945  			ServerStreams: true,
  7946  		},
  7947  		{
  7948  			StreamName:    "ListRpkiTable",
  7949  			Handler:       _GobgpApi_ListRpkiTable_Handler,
  7950  			ServerStreams: true,
  7951  		},
  7952  	},
  7953  	Metadata: "gobgp.proto",
  7954  }
  7955  
  7956  func init() { proto.RegisterFile("gobgp.proto", fileDescriptor0) }
  7957  
  7958  var fileDescriptor0 = []byte{
  7959  	// 7776 bytes of a gzipped FileDescriptorProto
  7960  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x4b, 0x6c, 0x1b, 0x59,
  7961  	0xb6, 0x58, 0xf3, 0x23, 0x8a, 0x3c, 0x24, 0xc5, 0xd2, 0x95, 0x2c, 0x51, 0x72, 0xfb, 0xd3, 0x35,
  7962  	0xdd, 0xb6, 0x5b, 0x6d, 0xbb, 0x6d, 0x77, 0x8f, 0xbb, 0xc7, 0x7e, 0xee, 0x6e, 0x5a, 0xa2, 0x65,
  7963  	0xb6, 0x29, 0x92, 0x5d, 0xa4, 0xdc, 0xee, 0x49, 0x1a, 0xf5, 0x4a, 0xac, 0x4b, 0xaa, 0xd2, 0x64,
  7964  	0x55, 0x75, 0x55, 0x51, 0x96, 0x56, 0x79, 0x99, 0x97, 0x4c, 0x16, 0x41, 0x80, 0x20, 0x59, 0xbc,
  7965  	0x45, 0x26, 0x48, 0xd6, 0x83, 0x64, 0x97, 0x2c, 0x82, 0x2c, 0x12, 0x04, 0x09, 0x10, 0x64, 0x80,
  7966  	0xac, 0x02, 0x04, 0xc8, 0x22, 0x01, 0x82, 0xac, 0x03, 0x24, 0x8b, 0x20, 0xcb, 0xe0, 0x7e, 0xaa,
  7967  	0xea, 0xd6, 0x87, 0x92, 0xfc, 0x99, 0x99, 0x37, 0xc0, 0xac, 0xc4, 0x7b, 0xce, 0xb9, 0xe7, 0xfe,
  7968  	0xce, 0x3d, 0x9f, 0x7b, 0x6f, 0x1d, 0x41, 0x79, 0x6c, 0x1d, 0x8c, 0xed, 0xdb, 0xb6, 0x63, 0x79,
  7969  	0x16, 0x2a, 0xd2, 0x82, 0x66, 0x1b, 0x9b, 0x1b, 0x63, 0xcb, 0x1a, 0x4f, 0xf0, 0xc7, 0x14, 0x7e,
  7970  	0x30, 0x1b, 0x7d, 0xac, 0x99, 0x27, 0x8c, 0x68, 0xf3, 0x62, 0x1c, 0x85, 0xa7, 0xb6, 0xe7, 0x23,
  7971  	0xaf, 0xc4, 0x91, 0x9e, 0x31, 0xc5, 0xae, 0xa7, 0x4d, 0x79, 0x13, 0xf2, 0x43, 0xa8, 0xf5, 0x3d,
  7972  	0xcd, 0xf1, 0x1e, 0x8f, 0x6d, 0x05, 0xff, 0x38, 0xc3, 0xae, 0x87, 0x6e, 0x40, 0x61, 0x3c, 0xb1,
  7973  	0x0e, 0xb4, 0x49, 0x3d, 0x73, 0x35, 0x73, 0xa3, 0x7c, 0x4f, 0xba, 0xed, 0x77, 0xe3, 0xf6, 0x2e,
  7974  	0x85, 0x2b, 0x1c, 0x2f, 0x4b, 0xb0, 0xd4, 0xf7, 0x2c, 0x3b, 0xac, 0x2b, 0xd7, 0xa0, 0xba, 0x8b,
  7975  	0x05, 0x66, 0xf2, 0x03, 0x58, 0xf2, 0x01, 0xae, 0x6d, 0x99, 0x2e, 0x7e, 0x05, 0xf6, 0x9f, 0xc2,
  7976  	0x52, 0x43, 0xd7, 0x7b, 0x18, 0x3b, 0x7e, 0xd7, 0x64, 0xc8, 0xdb, 0x18, 0x3b, 0xbc, 0xe6, 0x52,
  7977  	0x58, 0x93, 0x12, 0x51, 0x9c, 0xfc, 0x0c, 0x96, 0x77, 0xf0, 0x04, 0x7b, 0x58, 0xac, 0x58, 0x87,
  7978  	0x45, 0x4d, 0xd7, 0x1d, 0xec, 0xba, 0xb4, 0x6e, 0x49, 0xf1, 0x8b, 0xe8, 0x5d, 0x28, 0x19, 0xa6,
  7979  	0x87, 0x9d, 0x91, 0x36, 0xc4, 0xf5, 0x2c, 0xc5, 0x85, 0x00, 0xf9, 0x5b, 0xa8, 0xb5, 0x0d, 0xd7,
  7980  	0x3b, 0x1f, 0xab, 0x2d, 0x90, 0xb0, 0xa9, 0x1d, 0x4c, 0x70, 0x43, 0x3f, 0xc2, 0x8e, 0x67, 0xb8,
  7981  	0x58, 0xa7, 0x1c, 0x8b, 0x4a, 0x02, 0x2e, 0xdf, 0x07, 0x29, 0x64, 0xcc, 0x67, 0xe6, 0x3c, 0xa3,
  7982  	0xfb, 0x53, 0x58, 0xde, 0xb7, 0x75, 0x2d, 0x3a, 0xba, 0x73, 0x54, 0x44, 0xd7, 0x41, 0xd2, 0x2d,
  7983  	0xd5, 0xb5, 0x46, 0x9e, 0xea, 0x60, 0x17, 0x7b, 0xaa, 0x61, 0xf2, 0xce, 0x55, 0x75, 0xab, 0x6f,
  7984  	0x8d, 0x3c, 0x85, 0x40, 0x5b, 0xa6, 0xbc, 0x0d, 0x48, 0x6c, 0x81, 0xf7, 0xed, 0x16, 0xac, 0x98,
  7985  	0x18, 0xeb, 0x6e, 0x8c, 0x43, 0x86, 0x0d, 0x8f, 0xa2, 0x44, 0x26, 0xff, 0x33, 0x03, 0x12, 0xfd,
  7986  	0x7d, 0xbe, 0x99, 0x7b, 0x1f, 0xaa, 0x43, 0x6b, 0x3a, 0x9d, 0x99, 0xc6, 0x50, 0xf3, 0x0c, 0xcb,
  7987  	0xe4, 0x0b, 0x11, 0x05, 0x22, 0x04, 0x79, 0xd2, 0x7a, 0x3d, 0x47, 0x1b, 0xa5, 0xbf, 0xd1, 0x33,
  7988  	0x28, 0xe9, 0x86, 0x83, 0x87, 0xb4, 0x56, 0xfe, 0x6a, 0xe6, 0xc6, 0xd2, 0xbd, 0x5b, 0xe1, 0xf8,
  7989  	0xe3, 0x5d, 0xb8, 0x1d, 0xf4, 0x71, 0xc7, 0xaf, 0xa4, 0x84, 0xf5, 0xe5, 0x8f, 0x01, 0x25, 0x09,
  7990  	0x50, 0x01, 0xb2, 0xad, 0x8e, 0xf4, 0x0e, 0x5a, 0x84, 0x5c, 0x77, 0x7f, 0x20, 0x65, 0x50, 0x11,
  7991  	0xf2, 0x8f, 0xbb, 0x83, 0xa7, 0x52, 0x56, 0xde, 0x87, 0x95, 0xfe, 0xe1, 0xcc, 0xd3, 0xad, 0x97,
  7992  	0xe6, 0x5b, 0x1c, 0xa8, 0x7c, 0x0b, 0x96, 0x9b, 0x54, 0x60, 0xce, 0xc5, 0x54, 0x1e, 0x00, 0xda,
  7993  	0x31, 0xdc, 0x73, 0xd3, 0x9f, 0xb3, 0x13, 0x4f, 0x01, 0xed, 0x59, 0xa6, 0xe1, 0x59, 0xce, 0xf9,
  7994  	0xb8, 0xd6, 0x61, 0x71, 0x38, 0x73, 0x1c, 0x6c, 0x7a, 0x5c, 0xae, 0xfc, 0xa2, 0xfc, 0x33, 0x58,
  7995  	0x89, 0x70, 0x7a, 0x05, 0x71, 0x6f, 0xc1, 0x0a, 0x57, 0x01, 0xbb, 0x8e, 0x35, 0x0b, 0x54, 0xd4,
  7996  	0x3d, 0x00, 0x82, 0x56, 0xc7, 0x04, 0xc8, 0x19, 0xac, 0x44, 0x19, 0x30, 0xfa, 0x92, 0xed, 0xff,
  7997  	0x94, 0x6f, 0xc2, 0x5a, 0xa8, 0x17, 0x22, 0xdc, 0x10, 0xe4, 0x4d, 0x6d, 0x8a, 0xf9, 0x80, 0xe8,
  7998  	0x6f, 0x79, 0x06, 0x6b, 0xe1, 0x2e, 0x78, 0xd3, 0xb6, 0xcf, 0xbf, 0xf9, 0x9e, 0xc2, 0x7a, 0xa2,
  7999  	0xd9, 0xd7, 0xdb, 0x81, 0x1a, 0x6c, 0x34, 0x74, 0x7d, 0xe7, 0xc4, 0xd4, 0xa6, 0xc6, 0xb0, 0x83,
  8000  	0x8d, 0xf1, 0xe1, 0x81, 0x15, 0xac, 0xe2, 0x0e, 0x48, 0x3a, 0xc3, 0xa8, 0x26, 0x47, 0xf1, 0x91,
  8001  	0x6c, 0x84, 0x23, 0x89, 0xd7, 0xad, 0xe9, 0x51, 0x80, 0xfc, 0xd7, 0x99, 0x7e, 0xd6, 0xbc, 0x43,
  8002  	0x61, 0x6e, 0x3c, 0x22, 0x87, 0xaa, 0x77, 0x62, 0xb3, 0xf9, 0x5c, 0x12, 0xe7, 0x66, 0x40, 0x70,
  8003  	0x83, 0x13, 0x1b, 0x2b, 0x25, 0xcf, 0xff, 0x89, 0x2e, 0x40, 0xe1, 0xc8, 0x19, 0xa9, 0x86, 0xce,
  8004  	0xc5, 0x70, 0xe1, 0xc8, 0x19, 0xb5, 0x74, 0x2a, 0x1d, 0x9a, 0x77, 0x48, 0x37, 0x7b, 0x54, 0x3a,
  8005  	0x48, 0x7b, 0x14, 0x27, 0x7f, 0x00, 0xb5, 0xa0, 0x03, 0x7c, 0x96, 0x10, 0xe4, 0x67, 0x33, 0x43,
  8006  	0xa7, 0x6d, 0x57, 0x14, 0xfa, 0x5b, 0xfe, 0x37, 0x99, 0xc0, 0x24, 0xfc, 0x76, 0xfa, 0x7a, 0x03,
  8007  	0x0a, 0x23, 0x6d, 0x6a, 0x4c, 0x4e, 0x78, 0x6f, 0x05, 0x93, 0xf6, 0x84, 0xc2, 0x15, 0x8e, 0x0f,
  8008  	0x46, 0x95, 0x9f, 0x3f, 0xaa, 0x60, 0x08, 0x0b, 0xc2, 0x10, 0xfe, 0x71, 0x96, 0x1b, 0xa2, 0x37,
  8009  	0x1c, 0x80, 0x2f, 0xea, 0xd9, 0x50, 0xd4, 0x5f, 0xa1, 0xf7, 0x9f, 0x41, 0xd1, 0x76, 0xf0, 0xc8,
  8010  	0x38, 0xc6, 0x6e, 0x3d, 0x7f, 0x35, 0x77, 0xa3, 0x7c, 0xef, 0x62, 0xac, 0xbd, 0xb6, 0x65, 0xfd,
  8011  	0x30, 0xb3, 0x7b, 0x94, 0x48, 0x09, 0x88, 0xd1, 0x97, 0x50, 0x72, 0x2d, 0xc7, 0x63, 0x3d, 0x5d,
  8012  	0xa0, 0x3d, 0x95, 0xc3, 0x9a, 0xb1, 0x81, 0xdd, 0xee, 0x5b, 0x8e, 0x47, 0x3b, 0x5e, 0x74, 0xf9,
  8013  	0x2f, 0xf9, 0x2a, 0x14, 0x7d, 0x28, 0x51, 0xbf, 0x9d, 0x6e, 0xa7, 0x29, 0xbd, 0x83, 0x00, 0x0a,
  8014  	0x3d, 0xa5, 0xf9, 0xa4, 0xf5, 0x42, 0xca, 0xc8, 0xcf, 0xb8, 0x41, 0x15, 0x85, 0xe1, 0x33, 0x28,
  8015  	0xeb, 0xd8, 0xf5, 0x0c, 0x93, 0xa9, 0x39, 0x26, 0xe1, 0x17, 0x04, 0x09, 0x0f, 0x91, 0x8a, 0x48,
  8016  	0x29, 0xff, 0xed, 0x0c, 0xac, 0x72, 0xc9, 0xea, 0x7b, 0x0e, 0xd6, 0xa6, 0xbf, 0x05, 0xa1, 0x79,
  8017  	0x1f, 0x16, 0xc8, 0x72, 0xbb, 0xf5, 0x1c, 0x9d, 0xc9, 0xb8, 0x2c, 0x30, 0xa4, 0xfc, 0xe7, 0x19,
  8018  	0xa8, 0xed, 0x62, 0x8f, 0x32, 0x7e, 0x93, 0x4e, 0x84, 0x8b, 0x9c, 0x3d, 0x63, 0x91, 0x7d, 0x11,
  8019  	0xc9, 0x09, 0xda, 0xf0, 0x04, 0xa4, 0xb0, 0x13, 0x7c, 0x72, 0xaf, 0x43, 0xcd, 0x9c, 0x4d, 0xd5,
  8020  	0xf8, 0x04, 0xe7, 0x95, 0x25, 0x73, 0x36, 0x15, 0x66, 0x16, 0x6d, 0x40, 0x91, 0x10, 0x52, 0xb9,
  8021  	0xcf, 0x52, 0x8a, 0x45, 0x73, 0x36, 0x25, 0x83, 0x44, 0xef, 0x41, 0x85, 0xa0, 0xb4, 0xe1, 0x10,
  8022  	0xdb, 0x1e, 0xd6, 0x69, 0x9b, 0x79, 0xa5, 0x6c, 0xce, 0xa6, 0x0d, 0x0e, 0x92, 0xff, 0x6d, 0x26,
  8023  	0xb0, 0x1e, 0x6f, 0x3c, 0x09, 0x6f, 0x26, 0xfd, 0x82, 0x81, 0xcb, 0x47, 0x0c, 0x1c, 0xba, 0x02,
  8024  	0x65, 0xdb, 0x72, 0x3d, 0xd5, 0xb6, 0x26, 0xc6, 0xf0, 0x84, 0x0a, 0x78, 0x51, 0x01, 0x02, 0xea,
  8025  	0x51, 0x88, 0xfc, 0x00, 0x56, 0xa3, 0x63, 0x10, 0x4c, 0x20, 0x99, 0x96, 0xcc, 0x29, 0x4a, 0xee,
  8026  	0x0e, 0x54, 0x1b, 0xba, 0xfe, 0xdc, 0x19, 0xf9, 0x23, 0xbf, 0x02, 0xb9, 0x23, 0x67, 0xc4, 0xeb,
  8027  	0x54, 0xc3, 0x3a, 0x84, 0x84, 0x60, 0xe4, 0x6b, 0x20, 0x31, 0x75, 0x27, 0x54, 0x4a, 0xb3, 0x71,
  8028  	0xef, 0xc3, 0x12, 0xd9, 0x32, 0x67, 0x50, 0xdd, 0x63, 0x9a, 0x87, 0x52, 0xf1, 0x6e, 0x9f, 0xd9,
  8029  	0x83, 0x63, 0x90, 0xc8, 0xf6, 0xa1, 0x83, 0x17, 0xc2, 0x0a, 0x3e, 0x3f, 0x09, 0xbf, 0x9f, 0x13,
  8030  	0x72, 0x3c, 0x7a, 0x00, 0x1b, 0x0e, 0x1e, 0x61, 0x47, 0xc5, 0xc7, 0x06, 0x11, 0xa3, 0xb1, 0xea,
  8031  	0x7a, 0x9a, 0x87, 0xa7, 0xd8, 0xf4, 0x5c, 0x6e, 0x36, 0xd7, 0x29, 0x41, 0x93, 0xe3, 0xfb, 0x01,
  8032  	0x5a, 0xfe, 0x45, 0x06, 0x56, 0xb8, 0xae, 0x7f, 0xcd, 0xd6, 0x3f, 0x86, 0x15, 0x9b, 0x58, 0x57,
  8033  	0xe7, 0x08, 0x27, 0xdb, 0x45, 0x3e, 0x2a, 0x6c, 0x12, 0x49, 0x90, 0xd3, 0x26, 0x13, 0xee, 0x95,
  8034  	0x92, 0x9f, 0xf2, 0x75, 0x58, 0xa6, 0xba, 0x28, 0xd2, 0x83, 0xb4, 0xb9, 0xfd, 0x02, 0x90, 0x48,
  8035  	0x18, 0x46, 0x48, 0xe7, 0xeb, 0xab, 0xfc, 0x2f, 0x33, 0x80, 0xfa, 0x98, 0xd5, 0x37, 0xb0, 0xeb,
  8036  	0x37, 0xf5, 0x19, 0x54, 0x74, 0x3c, 0x32, 0x4c, 0xac, 0xab, 0x2e, 0xf6, 0x88, 0xa7, 0x46, 0x34,
  8037  	0xcc, 0xaa, 0xa8, 0xf8, 0x28, 0xb6, 0x8f, 0x3d, 0xa2, 0xf7, 0xfc, 0xdf, 0x2e, 0xba, 0x09, 0x45,
  8038  	0x9b, 0xf3, 0xaa, 0x67, 0x69, 0xa5, 0x64, 0xdb, 0x01, 0x05, 0xfa, 0x13, 0x28, 0x6b, 0xae, 0x6b,
  8039  	0x8c, 0x4d, 0x36, 0x43, 0x4c, 0x8f, 0x6d, 0xc6, 0x2b, 0x34, 0x02, 0x12, 0x45, 0x24, 0x97, 0xf7,
  8040  	0xa8, 0x8a, 0x15, 0x7a, 0xc2, 0x3b, 0xff, 0x53, 0x28, 0x0b, 0x9d, 0xe7, 0x53, 0x90, 0xde, 0x77,
  8041  	0x08, 0xfb, 0x2e, 0x1f, 0xc0, 0x3a, 0x5b, 0xf7, 0xb7, 0xc5, 0xd1, 0x5f, 0xd7, 0x6c, 0xb8, 0xae,
  8042  	0x18, 0x2e, 0x90, 0xe5, 0x4a, 0xb6, 0xf0, 0x79, 0x38, 0xe1, 0x82, 0x3a, 0xba, 0x90, 0x68, 0x82,
  8043  	0x2a, 0x24, 0xbf, 0x33, 0xf3, 0x54, 0x92, 0xdc, 0x85, 0xb5, 0x78, 0x33, 0x5c, 0x32, 0x5e, 0x73,
  8044  	0x6e, 0x9e, 0x52, 0x2f, 0x3a, 0x10, 0x59, 0xbf, 0xd7, 0x77, 0xa1, 0x14, 0x08, 0x78, 0xd2, 0x91,
  8045  	0x0d, 0xc9, 0x43, 0x2a, 0xf9, 0x7b, 0xdf, 0x89, 0x7e, 0x0b, 0xcc, 0x52, 0x26, 0x78, 0x0b, 0x56,
  8046  	0xc9, 0xc8, 0x13, 0xcc, 0xd3, 0xf6, 0xce, 0xd7, 0x6c, 0x31, 0x04, 0x5a, 0x3e, 0x49, 0xaf, 0x31,
  8047  	0xac, 0x17, 0xb0, 0x19, 0xe8, 0x2b, 0x41, 0x5e, 0x79, 0xeb, 0x0f, 0x00, 0x42, 0xc1, 0xe5, 0x1c,
  8048  	0x4f, 0x13, 0x73, 0x81, 0x5a, 0x9e, 0xc2, 0x25, 0x51, 0x1d, 0xbd, 0x55, 0xe6, 0x29, 0x13, 0xf8,
  8049  	0xd7, 0xe0, 0x62, 0xa8, 0x50, 0x92, 0x8d, 0xa5, 0xcc, 0x23, 0xfa, 0x4c, 0x8c, 0xa0, 0xb3, 0x54,
  8050  	0x70, 0x37, 0xe2, 0xed, 0xa7, 0x46, 0xcb, 0x3f, 0x87, 0x77, 0xd3, 0xdb, 0xe2, 0xeb, 0xf0, 0x26,
  8051  	0xd3, 0xf6, 0x02, 0x36, 0x7d, 0xbd, 0xf6, 0x96, 0x17, 0xe4, 0xe7, 0x34, 0x68, 0x51, 0xec, 0x1f,
  8052  	0x8c, 0xb3, 0x43, 0x5a, 0x04, 0x79, 0xdb, 0x72, 0x58, 0x3c, 0x5b, 0x55, 0xe8, 0x6f, 0xb4, 0x09,
  8053  	0xc5, 0x89, 0x31, 0xc2, 0x9e, 0xc1, 0x5d, 0xa4, 0x9c, 0x12, 0x94, 0xe5, 0x86, 0x1f, 0x67, 0xbc,
  8054  	0x36, 0x7b, 0xf9, 0x21, 0xb3, 0xb6, 0x22, 0x83, 0xd0, 0x43, 0xc9, 0x9c, 0xee, 0xa1, 0xc8, 0x0f,
  8055  	0x98, 0x0f, 0xcc, 0x2a, 0xf3, 0x55, 0xb8, 0x06, 0x05, 0x6a, 0xb0, 0x52, 0xe2, 0x6c, 0x4a, 0xc7,
  8056  	0xb1, 0xa4, 0xef, 0xec, 0xcc, 0xe1, 0xf5, 0xfb, 0xfe, 0x38, 0x38, 0x87, 0x78, 0x7d, 0x1e, 0x03,
  8057  	0x7e, 0x6e, 0xf4, 0xfa, 0x0b, 0x94, 0x72, 0x4a, 0x24, 0x7f, 0xc5, 0xf4, 0x0a, 0x61, 0x1a, 0x71,
  8058  	0x22, 0xcf, 0x3f, 0xb5, 0x9f, 0x33, 0x6d, 0x23, 0x70, 0x08, 0x7d, 0x21, 0xc7, 0xd2, 0x92, 0xbe,
  8059  	0x90, 0x62, 0x69, 0x0a, 0xc1, 0xc8, 0xbf, 0xc9, 0x00, 0x62, 0x33, 0xfb, 0x73, 0x7c, 0xe0, 0x68,
  8060  	0x7e, 0xd3, 0x12, 0xe4, 0x66, 0xce, 0x84, 0x0f, 0x88, 0xfc, 0x24, 0x5e, 0xa4, 0x63, 0xcd, 0x3c,
  8061  	0xe6, 0xd1, 0x32, 0xfb, 0x5b, 0x52, 0x80, 0x82, 0x88, 0xa9, 0xa0, 0x27, 0x2c, 0x47, 0xd8, 0x71,
  8062  	0xc9, 0x3e, 0xcd, 0xd1, 0x01, 0xfb, 0x45, 0xf4, 0x29, 0xac, 0x99, 0xf8, 0xd8, 0x3b, 0xb4, 0x6c,
  8063  	0xd5, 0x73, 0x8c, 0xf1, 0x98, 0xf8, 0x4e, 0xb4, 0x49, 0xee, 0xa9, 0xae, 0x72, 0xec, 0x80, 0x21,
  8064  	0x59, 0x77, 0xd0, 0x3d, 0xb8, 0x10, 0xaf, 0xa5, 0xe3, 0x89, 0xc6, 0x1c, 0xd8, 0xaa, 0xb2, 0x12,
  8065  	0xad, 0xb4, 0x43, 0x50, 0xf2, 0x3f, 0xca, 0x80, 0xc4, 0xaa, 0xef, 0x39, 0xc1, 0x7e, 0xbc, 0x08,
  8066  	0x25, 0x7d, 0x36, 0xb5, 0x43, 0xdb, 0xb7, 0xa0, 0x14, 0x09, 0x80, 0x5a, 0xb8, 0x4d, 0x28, 0x8e,
  8067  	0x8c, 0x09, 0x16, 0xac, 0x5c, 0x50, 0x46, 0x3f, 0x81, 0x2a, 0xad, 0x48, 0x0f, 0x5c, 0x8f, 0xb4,
  8068  	0x09, 0x0f, 0x00, 0x2a, 0x04, 0xd8, 0xe2, 0x30, 0xf4, 0x11, 0x2c, 0x3b, 0x96, 0x47, 0x63, 0x89,
  8069  	0x90, 0x30, 0x4f, 0x09, 0x25, 0x1f, 0xe1, 0x13, 0xcb, 0x2b, 0xb0, 0xcc, 0x65, 0x30, 0xec, 0x9f,
  8070  	0xfc, 0x7f, 0x32, 0xd4, 0x87, 0x7e, 0x3c, 0xb5, 0x5f, 0x4f, 0xa4, 0xbe, 0x0a, 0x1c, 0xb2, 0x1c,
  8071  	0xd5, 0x8f, 0x37, 0xc2, 0x65, 0x8e, 0xb0, 0xbd, 0xcd, 0x9d, 0x7c, 0xc3, 0x1c, 0xc7, 0x9c, 0xca,
  8072  	0x9b, 0xb0, 0x4c, 0x0c, 0x0f, 0x71, 0x57, 0x87, 0xee, 0xc0, 0x98, 0x62, 0x6b, 0xc6, 0xa2, 0x88,
  8073  	0x05, 0x25, 0x89, 0x90, 0xb7, 0x41, 0x8a, 0x73, 0x42, 0x8b, 0x90, 0xeb, 0x29, 0x24, 0xe8, 0x2d,
  8074  	0x42, 0xbe, 0xd7, 0xed, 0x47, 0xce, 0x21, 0x51, 0x09, 0x16, 0xda, 0xdd, 0xed, 0x46, 0x5b, 0xca,
  8075  	0x11, 0xba, 0x46, 0xbb, 0x2d, 0xe5, 0xe5, 0xaf, 0xfc, 0x28, 0xe0, 0x75, 0x87, 0x2d, 0xff, 0xd7,
  8076  	0x1c, 0x14, 0xd8, 0x36, 0x40, 0xd7, 0x20, 0xa7, 0x8d, 0x0c, 0xee, 0xd7, 0xac, 0xc6, 0x77, 0xc9,
  8077  	0xed, 0xc6, 0xc8, 0x50, 0x08, 0x01, 0xfa, 0x10, 0xf2, 0x2e, 0x21, 0xcc, 0xc6, 0x1d, 0x20, 0x4e,
  8078  	0xd8, 0xd7, 0x46, 0x86, 0x42, 0x49, 0xe4, 0x1e, 0xe4, 0x1a, 0x23, 0x03, 0xd5, 0xa0, 0xdc, 0x78,
  8079  	0xd2, 0x52, 0xf7, 0x3b, 0xcf, 0x3a, 0xdd, 0x6f, 0x3b, 0x2c, 0xa8, 0x27, 0x80, 0x56, 0x4f, 0xca,
  8080  	0xa0, 0x32, 0x2c, 0xb2, 0xdf, 0xf7, 0xa5, 0x2c, 0xaa, 0x42, 0x89, 0x14, 0xda, 0xf7, 0x9e, 0xf7,
  8081  	0x3a, 0xd2, 0x06, 0x92, 0x00, 0x48, 0xb1, 0xdb, 0x6b, 0x7c, 0xb3, 0xdf, 0x94, 0xfe, 0xee, 0x9f,
  8082  	0x65, 0xe4, 0x5f, 0x67, 0x21, 0x4f, 0x1a, 0x40, 0x12, 0x54, 0xfa, 0x51, 0xa6, 0x21, 0xa4, 0xb5,
  8083  	0xdd, 0xa0, 0x93, 0x87, 0x60, 0x89, 0x42, 0xf6, 0xf6, 0xdb, 0x03, 0x06, 0xcb, 0xa2, 0x15, 0xa8,
  8084  	0x31, 0x58, 0xaf, 0xdd, 0x57, 0xdb, 0x8d, 0xc7, 0xcd, 0xb6, 0x94, 0x47, 0x6b, 0x80, 0x28, 0xb0,
  8085  	0xd9, 0xd9, 0x6e, 0xf4, 0xfa, 0xfb, 0xed, 0xc6, 0xa0, 0xd5, 0xed, 0x48, 0x8b, 0xa4, 0x3b, 0x14,
  8086  	0xfe, 0xbc, 0xd7, 0xee, 0x4b, 0x8d, 0xa0, 0xd8, 0x24, 0xbd, 0x7b, 0x82, 0x10, 0x54, 0x43, 0x56,
  8087  	0x04, 0xf4, 0x67, 0x19, 0xf4, 0x2e, 0xac, 0x47, 0x60, 0x42, 0xdb, 0x7f, 0x23, 0x83, 0x64, 0xb8,
  8088  	0x44, 0xb1, 0x4a, 0x77, 0x7f, 0xd0, 0x54, 0x07, 0x0d, 0x65, 0xb7, 0x39, 0x50, 0xb7, 0xbb, 0x9d,
  8089  	0xfe, 0x40, 0x69, 0xb4, 0x3a, 0x83, 0xbe, 0xf4, 0x37, 0x33, 0xe8, 0x22, 0xac, 0x51, 0x9a, 0x27,
  8090  	0xed, 0xee, 0xb7, 0x6a, 0xbf, 0xd7, 0xdc, 0x0e, 0x06, 0xf4, 0xb7, 0x32, 0x68, 0x9d, 0x77, 0x34,
  8091  	0x44, 0x92, 0x76, 0x7f, 0x99, 0x41, 0x2b, 0x7c, 0xa8, 0xcf, 0x9a, 0xdf, 0xa9, 0xcf, 0x1b, 0xed,
  8092  	0xfd, 0xa6, 0xf4, 0xbf, 0x33, 0xf2, 0x5f, 0xe4, 0x00, 0x9e, 0x6b, 0x13, 0x43, 0x67, 0x41, 0xfa,
  8093  	0x1d, 0x58, 0xa0, 0xee, 0x10, 0x5f, 0x62, 0xc1, 0x9a, 0x86, 0x44, 0xcc, 0x77, 0x52, 0x18, 0x21,
  8094  	0xfa, 0x04, 0x0a, 0x0e, 0xd6, 0xdc, 0xc0, 0x69, 0xb8, 0x98, 0x5a, 0x45, 0xa1, 0x24, 0x0a, 0x27,
  8095  	0x45, 0xd7, 0x61, 0x71, 0xaa, 0x79, 0xc3, 0x43, 0x1a, 0xeb, 0xe7, 0x92, 0x1a, 0xd3, 0xc7, 0xa2,
  8096  	0x3b, 0x50, 0x99, 0x99, 0xbc, 0xa0, 0x6a, 0xfe, 0x71, 0x53, 0x8c, 0xba, 0x1c, 0x90, 0x34, 0x5c,
  8097  	0xf4, 0x39, 0x48, 0x61, 0x8d, 0x09, 0x36, 0xc7, 0xde, 0x61, 0x7d, 0x21, 0xad, 0x56, 0x2d, 0x20,
  8098  	0x6b, 0x53, 0x2a, 0xb9, 0x07, 0x0b, 0x74, 0x64, 0x68, 0x09, 0xa0, 0x3f, 0x68, 0x0c, 0x9a, 0x2a,
  8099  	0x3f, 0x5f, 0x22, 0xf2, 0xc0, 0xcb, 0x03, 0xf5, 0x49, 0x77, 0xbf, 0xb3, 0x23, 0x65, 0x88, 0xc0,
  8100  	0x32, 0xe0, 0xf3, 0x46, 0xbb, 0xb5, 0x23, 0x65, 0xd1, 0x32, 0x54, 0x19, 0xa0, 0xd5, 0x61, 0xa0,
  8101  	0x9c, 0xfc, 0x10, 0x0a, 0x6c, 0xe0, 0x84, 0x5a, 0x69, 0x36, 0xfa, 0xdd, 0x81, 0xcf, 0xb3, 0x0a,
  8102  	0x25, 0x0a, 0xe8, 0xa8, 0x8d, 0xbe, 0x94, 0x21, 0x95, 0x79, 0xb1, 0xdd, 0xec, 0xec, 0xd2, 0x4b,
  8103  	0x85, 0xff, 0xbe, 0x00, 0x79, 0x7a, 0x3a, 0x72, 0x03, 0xf2, 0xe6, 0xc4, 0x31, 0x04, 0x37, 0xdf,
  8104  	0x1a, 0x4f, 0xf0, 0x6d, 0xff, 0x2e, 0xef, 0x76, 0xc3, 0x3c, 0x51, 0x28, 0x05, 0xba, 0x09, 0x05,
  8105  	0x5b, 0xf3, 0x3c, 0xc7, 0x8f, 0xda, 0xd2, 0x69, 0x39, 0x0d, 0xba, 0x09, 0x39, 0x6d, 0x8c, 0xf9,
  8106  	0x79, 0xc7, 0x66, 0x82, 0x74, 0xe0, 0x5f, 0x11, 0x2a, 0x84, 0x8c, 0x68, 0x86, 0x03, 0xec, 0xfa,
  8107  	0x67, 0x1e, 0xf4, 0x37, 0x31, 0x55, 0x86, 0xab, 0xbe, 0x34, 0xbc, 0x43, 0xdd, 0xd1, 0x5e, 0xfa,
  8108  	0x07, 0x1e, 0x86, 0xfb, 0x2d, 0x87, 0xa0, 0x4f, 0x01, 0x8e, 0x02, 0x21, 0xa8, 0x2f, 0xc6, 0xe3,
  8109  	0x94, 0x50, 0x40, 0x14, 0x81, 0x0e, 0xdd, 0x81, 0x55, 0xd3, 0x52, 0x8d, 0xa9, 0x4d, 0x02, 0x4c,
  8110  	0x2f, 0xe4, 0x5f, 0x64, 0xb1, 0xb7, 0x69, 0xb5, 0x38, 0x2a, 0x68, 0x27, 0x34, 0xe0, 0xa5, 0x33,
  8111  	0x4e, 0x6f, 0x2e, 0x01, 0xb8, 0xd6, 0xcc, 0x19, 0x62, 0x55, 0x73, 0xcd, 0x3a, 0x50, 0x35, 0x57,
  8112  	0x62, 0x90, 0x86, 0x6b, 0x12, 0x13, 0xc6, 0xd1, 0x86, 0x5e, 0x2f, 0x33, 0x33, 0xc5, 0x00, 0x2d,
  8113  	0x9d, 0x9b, 0x30, 0x0f, 0x3b, 0x58, 0xaf, 0x57, 0x68, 0x5f, 0x82, 0x32, 0x5a, 0xa5, 0x1b, 0x67,
  8114  	0x82, 0xeb, 0x55, 0x8a, 0x60, 0x05, 0x74, 0x03, 0x24, 0xc3, 0x55, 0x47, 0x8e, 0x35, 0x55, 0xf1,
  8115  	0xb1, 0x87, 0x1d, 0x53, 0x9b, 0xd4, 0x97, 0x28, 0xc1, 0x92, 0xe1, 0x3e, 0x71, 0xac, 0x69, 0x93,
  8116  	0x43, 0xc9, 0x54, 0xfa, 0x47, 0xf0, 0xaa, 0x61, 0xd7, 0x6b, 0xb4, 0x69, 0xf0, 0x41, 0x2d, 0x3b,
  8117  	0x38, 0x0e, 0x96, 0xc2, 0xe3, 0x60, 0x74, 0x13, 0x90, 0xe1, 0xaa, 0xbe, 0xf1, 0x36, 0x4c, 0x3a,
  8118  	0x87, 0xf5, 0x65, 0x76, 0x15, 0x60, 0xb8, 0x1d, 0x86, 0x68, 0x31, 0x38, 0xba, 0x0c, 0x60, 0xe8,
  8119  	0xd8, 0xf4, 0x8c, 0x91, 0x81, 0x9d, 0x3a, 0xa2, 0x43, 0x17, 0x20, 0xe8, 0x43, 0x90, 0x26, 0xd6,
  8120  	0x50, 0x9b, 0xa8, 0x02, 0xd5, 0x0a, 0xa5, 0xaa, 0x51, 0x78, 0x2b, 0x24, 0x25, 0xbd, 0x9d, 0x38,
  8121  	0x86, 0x7a, 0x60, 0x98, 0x9a, 0x73, 0x52, 0x5f, 0xa5, 0x7d, 0x02, 0x02, 0x7a, 0x4c, 0x21, 0xc4,
  8122  	0xa2, 0x33, 0x29, 0xf3, 0x49, 0x2e, 0x5c, 0xcd, 0xdd, 0xa8, 0x28, 0x15, 0x06, 0x64, 0x44, 0xf2,
  8123  	0x33, 0x28, 0x8b, 0x07, 0x84, 0x6b, 0x50, 0x60, 0x27, 0xc5, 0xdc, 0x28, 0xf1, 0x52, 0x78, 0x42,
  8124  	0x9a, 0x3d, 0xed, 0x84, 0x74, 0x0a, 0xcb, 0x89, 0xa3, 0xe7, 0xb9, 0x2c, 0xbf, 0x82, 0xea, 0x84,
  8125  	0xd2, 0xa9, 0x96, 0x2d, 0x04, 0x3c, 0xe9, 0xc7, 0xd8, 0x5d, 0x4a, 0xa2, 0x54, 0x26, 0x42, 0x49,
  8126  	0xfe, 0x27, 0x79, 0xc8, 0xf7, 0x30, 0x76, 0x48, 0xcc, 0xaf, 0xd9, 0xf6, 0xe4, 0x44, 0x8d, 0x9c,
  8127  	0xd5, 0x08, 0x26, 0xaf, 0x41, 0xb0, 0xdc, 0x0f, 0x28, 0x6b, 0x61, 0x01, 0x5d, 0x83, 0xfc, 0xd0,
  8128  	0x32, 0x47, 0xfc, 0x24, 0x16, 0x45, 0xef, 0x8e, 0xb6, 0x2d, 0x73, 0xa4, 0x50, 0x3c, 0x7a, 0x08,
  8129  	0x55, 0x7c, 0x30, 0xb6, 0xd5, 0xe9, 0x6c, 0xe2, 0x19, 0x87, 0x96, 0xcd, 0x77, 0xec, 0x5a, 0x58,
  8130  	0xa1, 0x79, 0x30, 0xb6, 0xf7, 0x38, 0x56, 0xa9, 0x60, 0xa1, 0x84, 0x1a, 0x50, 0x63, 0xde, 0xa4,
  8131  	0x83, 0x47, 0x13, 0x3c, 0xf4, 0x2c, 0x87, 0x5f, 0x3a, 0xd4, 0x45, 0x6d, 0x38, 0xf3, 0xb0, 0xe2,
  8132  	0xe3, 0x95, 0x25, 0x27, 0x52, 0x46, 0x1f, 0xfa, 0x36, 0x61, 0x21, 0xed, 0x92, 0x2b, 0x62, 0x0c,
  8133  	0x6e, 0x40, 0x81, 0x44, 0x40, 0x8e, 0x5b, 0x2f, 0xc4, 0xf7, 0xe1, 0x80, 0xc2, 0x15, 0x8e, 0x27,
  8134  	0xd1, 0xb9, 0xe7, 0x68, 0xa6, 0x4b, 0xbd, 0x8d, 0xc5, 0x38, 0xe3, 0x81, 0x8f, 0x52, 0x42, 0x2a,
  8135  	0x32, 0xd3, 0x6c, 0x28, 0x3c, 0x90, 0x29, 0xc6, 0x67, 0x9a, 0x8e, 0xa3, 0x4f, 0x91, 0x0a, 0xf3,
  8136  	0xa1, 0x59, 0x01, 0xed, 0x80, 0x34, 0x76, 0xb4, 0x21, 0x1e, 0xcd, 0x26, 0xaa, 0x43, 0x94, 0x9a,
  8137  	0xe3, 0x71, 0x45, 0x21, 0x84, 0xb8, 0xbb, 0x9c, 0x42, 0x61, 0x04, 0x4a, 0x6d, 0x1c, 0x05, 0xa0,
  8138  	0xdb, 0x50, 0xd2, 0x46, 0x86, 0x4a, 0xbc, 0x16, 0xb7, 0x0e, 0x54, 0x16, 0x97, 0x85, 0x65, 0x1e,
  8139  	0x19, 0xd4, 0xab, 0x29, 0x6a, 0xec, 0x87, 0x2b, 0xff, 0xb3, 0x3c, 0x94, 0x82, 0xfb, 0xbb, 0x37,
  8140  	0x90, 0x93, 0x8f, 0x22, 0x72, 0xb2, 0x9e, 0x72, 0xc7, 0xf8, 0x97, 0x48, 0x58, 0x6e, 0x42, 0xde,
  8141  	0x30, 0x47, 0x16, 0x97, 0x95, 0x7a, 0x4a, 0x67, 0x99, 0xc0, 0x50, 0xaa, 0x3f, 0xca, 0x8b, 0x28,
  8142  	0x2f, 0x4f, 0xa1, 0x16, 0xbb, 0x6b, 0x9d, 0xab, 0xbf, 0x2e, 0x45, 0x2e, 0x9f, 0xf9, 0x73, 0x95,
  8143  	0xf0, 0x8e, 0xfb, 0x3f, 0x64, 0xa0, 0x2c, 0x88, 0x13, 0xfa, 0x0c, 0x4a, 0x86, 0x19, 0x15, 0xbc,
  8144  	0xd3, 0xce, 0x49, 0x8a, 0x86, 0xc9, 0x2b, 0x7e, 0x09, 0x55, 0x7c, 0x4c, 0x26, 0xd3, 0xaf, 0x9c,
  8145  	0x3d, 0xb3, 0x72, 0x85, 0x55, 0x08, 0x19, 0x18, 0x53, 0x91, 0x41, 0xee, 0x6c, 0x06, 0xac, 0x02,
  8146  	0xbf, 0x32, 0xf9, 0x7b, 0x19, 0x28, 0x33, 0x65, 0xde, 0x36, 0xa6, 0xc6, 0x2b, 0x84, 0xea, 0xe8,
  8147  	0x3d, 0xa8, 0x4c, 0xb5, 0x63, 0x35, 0xb8, 0xa9, 0x64, 0x21, 0x4d, 0x79, 0xaa, 0x1d, 0xf7, 0xfc,
  8148  	0xfb, 0xc8, 0x4f, 0x61, 0xcd, 0xe5, 0xef, 0x36, 0x54, 0xef, 0xd0, 0xc1, 0xee, 0xa1, 0x35, 0xd1,
  8149  	0x55, 0x7b, 0xe8, 0xf1, 0xc0, 0x7a, 0xd5, 0xc7, 0x0e, 0x7c, 0x64, 0x6f, 0xe8, 0xc9, 0xff, 0x2b,
  8150  	0x0f, 0x45, 0x5f, 0x45, 0x13, 0x43, 0xa7, 0xcd, 0xbc, 0x43, 0xd5, 0xd6, 0x5c, 0xf7, 0xa5, 0xe5,
  8151  	0xe8, 0x7c, 0xa1, 0x2a, 0x04, 0xd8, 0xe3, 0x30, 0x74, 0x95, 0x5e, 0x40, 0x0e, 0x1d, 0xc3, 0x16,
  8152  	0xde, 0x59, 0x88, 0x20, 0xb4, 0x01, 0x45, 0x66, 0x7b, 0x35, 0xd7, 0x0f, 0xea, 0x69, 0xb9, 0xe1,
  8153  	0x12, 0xb3, 0x1c, 0x78, 0x06, 0x7e, 0xd4, 0x96, 0xa7, 0x1c, 0x6a, 0x3e, 0xbc, 0xc1, 0xa3, 0xb7,
  8154  	0x75, 0x58, 0xa4, 0x62, 0xa1, 0xb9, 0x3c, 0x76, 0x2f, 0x90, 0x62, 0xc3, 0x8d, 0xc9, 0x4b, 0x21,
  8155  	0x26, 0x2f, 0xc4, 0xeb, 0xa1, 0x68, 0x1a, 0xb8, 0x2f, 0xd2, 0x9a, 0x45, 0x02, 0xa0, 0x81, 0x7b,
  8156  	0x07, 0x96, 0x1d, 0x3c, 0xb5, 0x8e, 0xb0, 0x6a, 0x3b, 0xc6, 0x91, 0xe6, 0x11, 0xcf, 0x89, 0xee,
  8157  	0xa5, 0xc8, 0xe5, 0xad, 0x3f, 0x21, 0xb7, 0x15, 0x4a, 0xdb, 0x63, 0xa4, 0x0d, 0x57, 0xa9, 0x39,
  8158  	0x51, 0x00, 0x71, 0x5a, 0xd8, 0xb6, 0x1c, 0x4d, 0x34, 0x5b, 0xd5, 0xb5, 0xa9, 0x6d, 0x98, 0x63,
  8159  	0xba, 0xbd, 0x8a, 0x24, 0x90, 0x9f, 0x79, 0xf8, 0xc9, 0x44, 0xb3, 0x77, 0x18, 0x1c, 0x7d, 0x00,
  8160  	0x4b, 0x2e, 0x36, 0x75, 0x95, 0x3f, 0x4a, 0xf1, 0x4e, 0xb8, 0xcf, 0x56, 0x25, 0xd0, 0x6d, 0x1f,
  8161  	0x88, 0x6e, 0x01, 0x0a, 0xdd, 0xa7, 0xe0, 0x1d, 0x17, 0x73, 0xe0, 0x96, 0x03, 0x2f, 0xca, 0x47,
  8162  	0x20, 0x89, 0xdd, 0x5c, 0x55, 0xd8, 0xa9, 0xcb, 0x91, 0x33, 0x42, 0x57, 0xa1, 0xa2, 0x4d, 0x26,
  8163  	0xd6, 0x4b, 0x95, 0xc8, 0x82, 0xe6, 0x52, 0x37, 0xae, 0xaa, 0x00, 0x85, 0x75, 0x5f, 0x9a, 0x0d,
  8164  	0x17, 0x5d, 0x83, 0x9a, 0x83, 0xed, 0x89, 0x36, 0xc4, 0xaa, 0x3f, 0xc9, 0xcc, 0x95, 0xab, 0x72,
  8165  	0x70, 0x2f, 0x98, 0x6b, 0x4d, 0x9f, 0x1a, 0xa6, 0x4a, 0x04, 0x87, 0x3a, 0x72, 0x45, 0xa5, 0x44,
  8166  	0x21, 0x3b, 0xd6, 0x4b, 0x53, 0xbe, 0x0b, 0xb5, 0xd8, 0x14, 0x09, 0x37, 0xd9, 0x3c, 0x6a, 0xa7,
  8167  	0x11, 0xaf, 0xd2, 0xec, 0xb5, 0x1b, 0xdb, 0x4d, 0x29, 0x2b, 0xff, 0xd3, 0x1c, 0x54, 0x23, 0xba,
  8168  	0xfe, 0x77, 0x20, 0x75, 0x82, 0x28, 0xe5, 0x23, 0xa2, 0x74, 0x0d, 0x6a, 0xa1, 0x28, 0xa9, 0xf4,
  8169  	0x38, 0x67, 0x81, 0xbd, 0x1b, 0x0a, 0xe4, 0xa9, 0xa3, 0x4d, 0x71, 0x54, 0xa6, 0x0a, 0x31, 0x99,
  8170  	0xea, 0xa7, 0xc9, 0xd4, 0x22, 0x95, 0xa9, 0xeb, 0x73, 0xec, 0xdb, 0xeb, 0x0a, 0x56, 0xf1, 0xdc,
  8171  	0x82, 0x55, 0x4a, 0x11, 0xac, 0xd7, 0x59, 0xae, 0xff, 0x9b, 0x83, 0xa5, 0xa8, 0xb5, 0xfb, 0x83,
  8172  	0x5f, 0xaf, 0xc1, 0xfc, 0xf5, 0xba, 0x31, 0xcf, 0xc4, 0xff, 0x7e, 0x16, 0x8c, 0x84, 0x26, 0x9e,
  8173  	0xe5, 0x69, 0x13, 0x95, 0xc5, 0x0c, 0x4c, 0x5b, 0x00, 0x05, 0x91, 0x70, 0xc1, 0x25, 0x7c, 0x38,
  8174  	0x81, 0x6f, 0x19, 0xca, 0x8c, 0x0f, 0xa3, 0xe1, 0xc0, 0xd7, 0x59, 0xf8, 0x67, 0x50, 0x11, 0x9d,
  8175  	0x2b, 0x54, 0x87, 0x45, 0x76, 0xfc, 0xaa, 0xf3, 0xe7, 0x59, 0x7e, 0x91, 0xda, 0x26, 0x4e, 0xa5,
  8176  	0x7a, 0xde, 0x24, 0xb0, 0x4d, 0x1c, 0x36, 0xf0, 0x26, 0xf2, 0x9f, 0x67, 0x60, 0x29, 0xea, 0x6b,
  8177  	0x11, 0x73, 0x15, 0x73, 0xcf, 0xd4, 0xe1, 0xc4, 0xf0, 0xef, 0x3e, 0x8a, 0xca, 0x6a, 0xd4, 0x17,
  8178  	0xdb, 0xa6, 0x38, 0xf4, 0x10, 0x36, 0x93, 0xb5, 0x66, 0xae, 0x87, 0x9d, 0xf0, 0x2d, 0xca, 0x7a,
  8179  	0xbc, 0x26, 0xc5, 0xb7, 0x74, 0xf9, 0x57, 0x8b, 0xcc, 0x87, 0xfd, 0x5d, 0x89, 0xf1, 0x6d, 0x28,
  8180  	0x4e, 0xb1, 0xeb, 0x6a, 0x63, 0xec, 0x72, 0xd7, 0x53, 0x88, 0x8b, 0xf6, 0x38, 0x46, 0x09, 0x68,
  8181  	0x52, 0x8d, 0xe3, 0xc2, 0x99, 0xc6, 0xb1, 0x70, 0x8a, 0x71, 0x5c, 0x3c, 0xd5, 0x38, 0x16, 0x63,
  8182  	0x1b, 0xe3, 0x06, 0x14, 0x7e, 0x9c, 0xe1, 0x19, 0x76, 0x93, 0x07, 0x0f, 0xdf, 0x50, 0xb8, 0xc2,
  8183  	0xf1, 0x68, 0x2b, 0x6d, 0x0b, 0x31, 0xe9, 0x3c, 0xe7, 0xc6, 0x28, 0x9f, 0x7b, 0x63, 0x54, 0xd2,
  8184  	0x36, 0x46, 0x13, 0xaa, 0x2e, 0x76, 0x5d, 0xc3, 0x32, 0xd9, 0x7b, 0x06, 0x6a, 0xe2, 0x96, 0xee,
  8185  	0x5d, 0x4d, 0x09, 0xe7, 0x6e, 0xf7, 0x19, 0x21, 0x73, 0xd5, 0x2b, 0xae, 0x50, 0x42, 0x5f, 0x42,
  8186  	0x99, 0x99, 0x37, 0xc6, 0xa4, 0x46, 0x99, 0x5c, 0x4e, 0x63, 0xd2, 0x20, 0x64, 0x8c, 0x05, 0xb3,
  8187  	0x88, 0x8c, 0xc1, 0x0a, 0x2c, 0x58, 0x33, 0x4f, 0xfd, 0x91, 0x9e, 0x64, 0x54, 0x95, 0xbc, 0x35,
  8188  	0xf3, 0xbe, 0x41, 0xab, 0xb0, 0x30, 0x9a, 0x58, 0xb6, 0x4b, 0x0f, 0x2f, 0xaa, 0x0a, 0x2b, 0xa0,
  8189  	0x4f, 0x00, 0xc8, 0xd4, 0x78, 0x58, 0x1d, 0x6a, 0x76, 0x1d, 0x9d, 0x72, 0xa6, 0x55, 0x62, 0x74,
  8190  	0xdb, 0x9a, 0x4d, 0x22, 0x05, 0x26, 0x5d, 0xa4, 0xce, 0xca, 0x29, 0x75, 0x98, 0x10, 0x92, 0x2a,
  8191  	0x17, 0xa1, 0x44, 0x67, 0x95, 0xee, 0x88, 0x55, 0x76, 0xea, 0xc3, 0x00, 0x2d, 0x5d, 0x36, 0xa1,
  8192  	0x22, 0x4e, 0x07, 0xd9, 0xf2, 0xe1, 0x81, 0x72, 0x11, 0xf2, 0xad, 0x9d, 0x76, 0x93, 0x69, 0x82,
  8193  	0xed, 0x6e, 0xa7, 0xd3, 0xdc, 0x1e, 0x48, 0x59, 0x7a, 0x78, 0xbd, 0x3d, 0x68, 0x3d, 0x6f, 0x4a,
  8194  	0x39, 0x54, 0x81, 0x62, 0xb7, 0xd7, 0xec, 0xf4, 0x9b, 0x9d, 0x81, 0x94, 0x47, 0x35, 0x28, 0x93,
  8195  	0xd2, 0x76, 0xb7, 0xf3, 0xa4, 0xa5, 0xec, 0x49, 0x0b, 0x04, 0xd0, 0xec, 0x0f, 0x1a, 0x8f, 0xdb,
  8196  	0xad, 0xfe, 0xd3, 0xe6, 0x8e, 0x54, 0x90, 0xb7, 0x00, 0xc2, 0x99, 0x43, 0x05, 0xc8, 0xee, 0xf7,
  8197  	0x58, 0x43, 0x3b, 0xa4, 0xc9, 0x0c, 0x7d, 0xed, 0xf6, 0xe4, 0x85, 0x4a, 0xda, 0x91, 0xff, 0x14,
  8198  	0x8a, 0xfe, 0xa6, 0x40, 0xb7, 0xa0, 0xe8, 0xe0, 0x21, 0x36, 0x8e, 0xb8, 0xba, 0x89, 0x44, 0x1b,
  8199  	0x9c, 0x4a, 0x09, 0x48, 0xd0, 0x07, 0x90, 0x77, 0xfd, 0x47, 0xba, 0xa9, 0xa4, 0x14, 0x2d, 0xff,
  8200  	0x45, 0x16, 0x16, 0x39, 0x04, 0xc9, 0x50, 0x31, 0x2d, 0xcf, 0x18, 0xf9, 0xef, 0x85, 0xd9, 0x3b,
  8201  	0xaf, 0x08, 0x8c, 0x44, 0x2c, 0x33, 0xfa, 0x72, 0x95, 0xbf, 0xf1, 0xe2, 0x25, 0x84, 0x20, 0x6f,
  8202  	0xd9, 0xd8, 0xe4, 0x37, 0x3b, 0xf4, 0x37, 0x7a, 0x17, 0x4a, 0x3f, 0x60, 0x6c, 0x6b, 0x13, 0xe3,
  8203  	0x08, 0xf3, 0x9b, 0x9c, 0x10, 0x40, 0xb4, 0xa7, 0x83, 0x47, 0xc4, 0xef, 0xa6, 0x3b, 0x3a, 0xaf,
  8204  	0xf8, 0x45, 0x52, 0x4f, 0x37, 0xdc, 0xa1, 0xe6, 0xe8, 0x58, 0xa7, 0x7b, 0x39, 0xaf, 0x84, 0x00,
  8205  	0x22, 0x4a, 0x54, 0x93, 0xd3, 0x9d, 0x9c, 0x57, 0x58, 0x01, 0x5d, 0x87, 0x9a, 0x7f, 0x8e, 0xa8,
  8206  	0xf2, 0x0e, 0x16, 0xd9, 0x33, 0x35, 0x1f, 0xcc, 0x1e, 0xdc, 0x46, 0x08, 0x79, 0xec, 0x55, 0x8a,
  8207  	0x12, 0x32, 0x13, 0x21, 0xdf, 0x87, 0x02, 0xdb, 0xe2, 0xa4, 0x45, 0xc3, 0xb4, 0x67, 0x4c, 0x0d,
  8208  	0x57, 0x15, 0x56, 0x20, 0x33, 0x61, 0xcd, 0x3c, 0x02, 0x66, 0xda, 0x9d, 0x97, 0x64, 0x0c, 0x05,
  8209  	0x16, 0xdb, 0xa2, 0xdb, 0x50, 0x20, 0x31, 0xbb, 0x31, 0xe6, 0xeb, 0xb5, 0x16, 0x8f, 0x7e, 0xb7,
  8210  	0x29, 0x56, 0xe1, 0x54, 0xe8, 0x23, 0xff, 0x20, 0x26, 0x1b, 0x8f, 0x64, 0x19, 0xb9, 0x78, 0x14,
  8211  	0x23, 0xff, 0xfb, 0x0c, 0x54, 0x44, 0x2e, 0x44, 0x79, 0x0f, 0x2d, 0xd3, 0xc4, 0x43, 0x4f, 0x75,
  8212  	0xb0, 0xe7, 0x9c, 0xf8, 0xcb, 0xc7, 0x81, 0x0a, 0x81, 0x91, 0x9d, 0x40, 0x63, 0x20, 0x7a, 0xaf,
  8213  	0xcd, 0x56, 0xb0, 0x48, 0x00, 0x84, 0x13, 0x71, 0xb2, 0x83, 0xe5, 0x89, 0xdf, 0xd5, 0x2d, 0x07,
  8214  	0x98, 0xe0, 0xc2, 0x6e, 0x07, 0x2e, 0x4f, 0x0d, 0xd3, 0x98, 0xce, 0xa6, 0xaa, 0xe6, 0x7f, 0xf1,
  8215  	0x40, 0x22, 0xbc, 0xf8, 0xed, 0xdd, 0xbb, 0x9c, 0xaa, 0x21, 0x12, 0x05, 0x37, 0x79, 0xff, 0x23,
  8216  	0x0b, 0x65, 0x61, 0x78, 0x7f, 0xa0, 0xc3, 0xa0, 0x67, 0xda, 0x78, 0x6c, 0x79, 0x86, 0xe6, 0x61,
  8217  	0x5d, 0x0d, 0x3b, 0xc7, 0x44, 0x1b, 0x85, 0xb8, 0xa7, 0x7e, 0x37, 0xef, 0x91, 0x9d, 0x44, 0x69,
  8218  	0x0a, 0x67, 0x9e, 0xd0, 0x73, 0x4a, 0x74, 0x1f, 0x8a, 0x24, 0xea, 0xa0, 0xb5, 0x16, 0xcf, 0xac,
  8219  	0x15, 0xd0, 0xca, 0xff, 0x2f, 0x03, 0xa5, 0xe0, 0x0c, 0x85, 0x4c, 0x31, 0xb7, 0xcf, 0x91, 0x4b,
  8220  	0xc2, 0x0a, 0x33, 0xd2, 0xdc, 0x9c, 0x5e, 0x02, 0x60, 0x44, 0xc2, 0x7d, 0x21, 0x53, 0xbc, 0x3d,
  8221  	0xce, 0x63, 0xea, 0xcd, 0x54, 0xb2, 0x2d, 0xad, 0x23, 0xec, 0x9c, 0xf0, 0x7b, 0xf8, 0xca, 0xd4,
  8222  	0x9b, 0xed, 0xf8, 0x30, 0xe2, 0x06, 0x11, 0x57, 0x82, 0xac, 0xc3, 0xd4, 0xd2, 0xfd, 0x5b, 0xea,
  8223  	0x32, 0x87, 0xed, 0x59, 0x3a, 0x26, 0xc6, 0x8d, 0x9b, 0x80, 0xa8, 0x79, 0xaf, 0x32, 0xa8, 0xdf,
  8224  	0x9b, 0x2b, 0x50, 0xe6, 0x64, 0xb4, 0x3b, 0xcc, 0xc0, 0x73, 0xe3, 0x41, 0xfb, 0xb3, 0x0e, 0x8b,
  8225  	0xde, 0xd0, 0x56, 0xa7, 0xae, 0xcb, 0x03, 0xdc, 0x82, 0x37, 0xb4, 0xf7, 0x5c, 0x57, 0x7e, 0x04,
  8226  	0x65, 0xe1, 0x1c, 0x08, 0xdd, 0x86, 0x15, 0xf1, 0xd0, 0x28, 0xea, 0x60, 0x2d, 0x0b, 0x87, 0x44,
  8227  	0xcc, 0xbb, 0x92, 0xff, 0x79, 0x0e, 0x6a, 0xb1, 0x93, 0xa0, 0xd3, 0xfd, 0x3e, 0x7e, 0x9e, 0x14,
  8228  	0x8a, 0x66, 0x55, 0x29, 0x73, 0x18, 0x5d, 0xf6, 0x2b, 0x50, 0x3e, 0xc4, 0x13, 0x1b, 0x3b, 0xaa,
  8229  	0x65, 0x4e, 0xfc, 0x69, 0x03, 0x06, 0xea, 0x9a, 0x13, 0x7a, 0xb4, 0xae, 0xe3, 0x11, 0x76, 0x1c,
  8230  	0x6d, 0xc2, 0x98, 0x30, 0x7f, 0xbf, 0xe2, 0x03, 0x29, 0x97, 0xbb, 0xb0, 0x2a, 0xaa, 0x65, 0xd5,
  8231  	0xef, 0x0f, 0xbb, 0xa2, 0x59, 0x11, 0x71, 0x4d, 0xde, 0xb7, 0x8f, 0x60, 0x79, 0x62, 0x99, 0x63,
  8232  	0x22, 0xfb, 0x7a, 0x40, 0x5f, 0x60, 0x3e, 0x47, 0x80, 0xf0, 0x89, 0xb7, 0x60, 0x99, 0xde, 0x70,
  8233  	0xa8, 0x74, 0x46, 0x5c, 0x35, 0x90, 0xb8, 0xaa, 0x52, 0xa3, 0x08, 0x3a, 0xa7, 0xf4, 0x26, 0x9b,
  8234  	0xd0, 0x52, 0x07, 0x2a, 0x32, 0x72, 0xe6, 0x48, 0xd1, 0xd0, 0x44, 0x11, 0x46, 0x7f, 0x9d, 0x47,
  8235  	0x2b, 0x9c, 0x36, 0x3c, 0x19, 0x58, 0x12, 0x28, 0x89, 0xd3, 0x13, 0x5c, 0x56, 0x08, 0x94, 0x40,
  8236  	0x29, 0xd9, 0x65, 0x85, 0x40, 0x8a, 0x20, 0x4f, 0xa5, 0x8b, 0x9d, 0x06, 0xd0, 0xdf, 0xf2, 0x27,
  8237  	0xb0, 0xbe, 0x67, 0xc7, 0xd6, 0x8d, 0xeb, 0xc9, 0xb9, 0xab, 0x27, 0xff, 0xbb, 0x0c, 0xac, 0x25,
  8238  	0x6a, 0x31, 0xad, 0x34, 0x7f, 0xc9, 0x37, 0x05, 0xb3, 0xcc, 0x5e, 0x68, 0x85, 0x36, 0xf8, 0x32,
  8239  	0x80, 0x16, 0x7e, 0x23, 0xc6, 0x97, 0x3a, 0x84, 0xa0, 0x5b, 0xb0, 0x42, 0x1c, 0x3b, 0x6b, 0xa4,
  8240  	0x3a, 0xc6, 0x81, 0x1a, 0xb0, 0xc9, 0xfb, 0x1f, 0x93, 0xe9, 0xdd, 0x91, 0x62, 0x1c, 0x28, 0xa1,
  8241  	0x49, 0xaf, 0x09, 0xe4, 0xd4, 0xba, 0xb3, 0xf5, 0xae, 0xf8, 0xa4, 0x7d, 0x22, 0xb2, 0xbf, 0xcc,
  8242  	0xc0, 0x72, 0x62, 0x18, 0xe8, 0x67, 0x31, 0x63, 0xf4, 0x9e, 0xe0, 0x11, 0xa4, 0xcf, 0x54, 0x60,
  8243  	0x97, 0xee, 0x47, 0xed, 0xd2, 0xd5, 0x53, 0x6a, 0x46, 0x4c, 0x54, 0x1f, 0xaa, 0xfc, 0x14, 0x94,
  8244  	0x4f, 0xfd, 0xf9, 0x0f, 0xf7, 0x84, 0xf9, 0xce, 0x46, 0x17, 0xe9, 0xd7, 0x19, 0xa8, 0x70, 0xae,
  8245  	0x7d, 0xff, 0x4e, 0xe2, 0x4d, 0x99, 0x46, 0x16, 0x91, 0x19, 0x8a, 0x70, 0x11, 0x37, 0xa1, 0x18,
  8246  	0x3c, 0x5c, 0x67, 0x96, 0x20, 0x28, 0xc7, 0x16, 0x98, 0xe9, 0x7a, 0x01, 0x22, 0xff, 0x83, 0x1c,
  8247  	0x5c, 0xe4, 0xda, 0x67, 0xc2, 0x9e, 0xd3, 0xb1, 0xeb, 0x25, 0xdf, 0x66, 0xdf, 0x04, 0xa4, 0x4d,
  8248  	0x5e, 0x6a, 0x27, 0x2e, 0x71, 0xee, 0x6d, 0xcd, 0xc1, 0xea, 0x34, 0x90, 0x30, 0x89, 0x61, 0xb6,
  8249  	0x19, 0x62, 0x0f, 0xeb, 0xe8, 0x2e, 0x5c, 0x30, 0xc6, 0xa6, 0xe5, 0x90, 0xd0, 0x82, 0x86, 0xbf,
  8250  	0xfe, 0xfd, 0x37, 0x7f, 0xb4, 0xcc, 0x90, 0x0d, 0x97, 0xc4, 0xc1, 0xec, 0xce, 0x9b, 0x04, 0x87,
  8251  	0xfe, 0xc5, 0x64, 0xd0, 0x44, 0xe8, 0x0a, 0x33, 0x89, 0x5c, 0xf7, 0x29, 0x78, 0x53, 0x0a, 0xf7,
  8252  	0x8c, 0xd1, 0x03, 0xd8, 0x08, 0xc6, 0xa2, 0x1a, 0xa6, 0x36, 0xf4, 0x88, 0x26, 0x67, 0x1a, 0x81,
  8253  	0x0b, 0xe9, 0x7a, 0x40, 0xd0, 0xe2, 0x78, 0xa6, 0x18, 0x88, 0x9a, 0x63, 0x93, 0xab, 0x6a, 0xc6,
  8254  	0xd8, 0xf6, 0xaf, 0x8e, 0xf9, 0xf7, 0x91, 0xc6, 0xd8, 0x46, 0x0f, 0x60, 0x93, 0x0f, 0xc6, 0xc4,
  8255  	0xc7, 0x9e, 0x4a, 0x2f, 0x38, 0xc7, 0xb6, 0x3a, 0xc5, 0x9e, 0x63, 0x0c, 0xb9, 0x5e, 0x5a, 0x63,
  8256  	0x14, 0x1d, 0x7c, 0xec, 0x3d, 0xb5, 0xec, 0xd6, 0xd8, 0xde, 0xa3, 0x58, 0xf4, 0x08, 0x2e, 0xea,
  8257  	0xec, 0xf5, 0x8f, 0x7a, 0x80, 0x5d, 0x8f, 0xcd, 0x85, 0xeb, 0x4f, 0x31, 0xd5, 0x53, 0x45, 0xa5,
  8258  	0xce, 0x49, 0x1e, 0x63, 0xf6, 0xb9, 0x48, 0xb0, 0x04, 0xf2, 0xdf, 0xcf, 0xc1, 0x66, 0xea, 0xaa,
  8259  	0x30, 0x81, 0xfa, 0xe3, 0xa2, 0xfc, 0x5e, 0x16, 0x25, 0x03, 0x17, 0x52, 0x17, 0x05, 0x3d, 0x8a,
  8260  	0x69, 0xae, 0x0f, 0x12, 0x37, 0x3c, 0x69, 0x7b, 0x2b, 0xd0, 0x5e, 0x0f, 0xa2, 0xda, 0xeb, 0xfd,
  8261  	0x33, 0x6a, 0x47, 0x34, 0xd8, 0x3d, 0x58, 0xdb, 0x77, 0x31, 0x3d, 0xf0, 0xb1, 0x27, 0xf4, 0xb3,
  8262  	0x32, 0xf7, 0x4c, 0x2b, 0x72, 0x17, 0x2e, 0xc4, 0xeb, 0x9c, 0x61, 0x43, 0xe4, 0xef, 0x01, 0x9a,
  8263  	0x07, 0x63, 0x9b, 0xb3, 0xde, 0x82, 0x65, 0x76, 0x54, 0x3d, 0xe5, 0x3c, 0x54, 0xcd, 0xe5, 0x35,
  8264  	0x6a, 0x14, 0xe1, 0xf3, 0x6e, 0xb8, 0xd4, 0x0d, 0xd3, 0x8e, 0xa9, 0xf3, 0xea, 0xdf, 0xa1, 0x53,
  8265  	0x67, 0x81, 0x03, 0x69, 0xeb, 0xf2, 0x5f, 0x85, 0x12, 0x61, 0xcf, 0x7a, 0xf1, 0xd6, 0xb9, 0xab,
  8266  	0x90, 0x27, 0xdc, 0xd1, 0xcd, 0xd8, 0x32, 0xad, 0x46, 0xaf, 0x24, 0x63, 0xab, 0xf2, 0x61, 0x74,
  8267  	0x55, 0x56, 0xa2, 0xc4, 0x91, 0x45, 0xb8, 0x0b, 0xd0, 0x0a, 0x67, 0x27, 0xd1, 0xa7, 0x4c, 0x4a,
  8268  	0x9f, 0xee, 0x40, 0xa9, 0x15, 0x8c, 0xf8, 0x5c, 0x35, 0x54, 0xc8, 0xb7, 0xce, 0x18, 0x45, 0xeb,
  8269  	0x55, 0x46, 0xd1, 0x8a, 0x8f, 0xe2, 0x37, 0x19, 0x90, 0xe2, 0x72, 0x81, 0x3e, 0x8f, 0xb5, 0x26,
  8270  	0x98, 0xd6, 0x74, 0xb9, 0x0b, 0x5a, 0xfe, 0x69, 0xb4, 0xe5, 0x2b, 0xf3, 0x2b, 0x46, 0x2e, 0xf0,
  8271  	0x65, 0xc8, 0xe3, 0x83, 0xb1, 0x9d, 0xfc, 0xdc, 0x92, 0xcc, 0xba, 0x42, 0x71, 0x84, 0xc6, 0x20,
  8272  	0x34, 0x89, 0x8f, 0x17, 0x5b, 0x94, 0x86, 0xe0, 0xe4, 0xc7, 0xdc, 0xae, 0x0d, 0x34, 0x67, 0x8c,
  8273  	0xbd, 0x3d, 0x3c, 0x3d, 0xc0, 0x8e, 0x7b, 0x68, 0x08, 0x8b, 0x14, 0xf5, 0x61, 0x33, 0x49, 0x1f,
  8274  	0x56, 0x6e, 0x70, 0x2d, 0x1c, 0xe7, 0x11, 0xac, 0xda, 0xd9, 0x2c, 0x02, 0xa5, 0x11, 0xe7, 0x71,
  8275  	0xa6, 0xd2, 0x48, 0xef, 0xf8, 0x79, 0x95, 0x46, 0x6a, 0x97, 0xfd, 0x95, 0xfe, 0x1e, 0x2e, 0xb7,
  8276  	0x2d, 0x73, 0xdc, 0x26, 0xde, 0xc3, 0x2b, 0xba, 0xa0, 0xe7, 0x08, 0x20, 0xe4, 0xff, 0x96, 0x81,
  8277  	0x4b, 0xf3, 0xf8, 0xff, 0x36, 0x9d, 0xd5, 0x54, 0x37, 0x3f, 0x9f, 0xee, 0xe6, 0x3f, 0x84, 0xcd,
  8278  	0x04, 0xad, 0xa3, 0xe2, 0x63, 0xdb, 0x70, 0x82, 0x20, 0x65, 0x3d, 0x56, 0xc9, 0x69, 0x32, 0xb4,
  8279  	0xfc, 0x0f, 0x33, 0x50, 0x9f, 0x37, 0x40, 0xf4, 0x55, 0x6c, 0x5d, 0x85, 0xeb, 0x89, 0xd3, 0x27,
  8280  	0x3d, 0x58, 0xda, 0x47, 0xd1, 0xa5, 0xbd, 0x7e, 0x36, 0x83, 0xc8, 0xea, 0xfe, 0xab, 0x05, 0x58,
  8281  	0xe4, 0xfe, 0x27, 0x7a, 0x06, 0x2b, 0x53, 0x5b, 0x4d, 0x3c, 0x25, 0x60, 0x3d, 0xbb, 0x78, 0x8a,
  8282  	0x9b, 0xac, 0x2c, 0x4f, 0x13, 0x0e, 0xfa, 0xc7, 0xc1, 0xc8, 0x12, 0x0f, 0x41, 0x22, 0x5e, 0x74,
  8283  	0x30, 0x90, 0x9b, 0xfe, 0x40, 0x12, 0x4f, 0x40, 0x44, 0xff, 0xd8, 0xdf, 0xf9, 0xf1, 0xf7, 0x29,
  8284  	0xf9, 0x73, 0xbf, 0x4f, 0xf9, 0x16, 0xd6, 0xfd, 0x90, 0x99, 0x9b, 0x4a, 0xfe, 0xaa, 0xca, 0xe5,
  8285  	0xaf, 0x40, 0xae, 0x9c, 0x61, 0x52, 0x95, 0x0b, 0x4e, 0xaa, 0x61, 0x7f, 0x0a, 0x68, 0xe6, 0xe2,
  8286  	0xd0, 0x10, 0x31, 0xed, 0x5c, 0x88, 0xbf, 0x20, 0x88, 0x2b, 0x34, 0x45, 0x9a, 0xc5, 0xf5, 0xe8,
  8287  	0x03, 0xa8, 0xb2, 0xb3, 0x3c, 0x75, 0x62, 0x4c, 0x0d, 0xcf, 0xe5, 0x87, 0x23, 0xc2, 0xe8, 0x84,
  8288  	0x37, 0x06, 0x4a, 0xc5, 0x0e, 0x0b, 0x6e, 0x38, 0x3c, 0x8f, 0x6e, 0x6a, 0x75, 0x1a, 0xec, 0x6a,
  8289  	0xfe, 0xa2, 0xe4, 0xca, 0x19, 0x9b, 0x9f, 0x0f, 0x2f, 0xa1, 0x82, 0x34, 0xb8, 0x48, 0xe2, 0x6a,
  8290  	0x95, 0x45, 0xdc, 0x73, 0x1e, 0x9c, 0xc8, 0x67, 0x8b, 0x9f, 0x52, 0x9f, 0xcc, 0xdb, 0x0d, 0x1f,
  8291  	0x43, 0x49, 0xd3, 0x75, 0xe1, 0x2a, 0x2c, 0x72, 0x9f, 0xc2, 0x3f, 0x6d, 0x76, 0x95, 0xa2, 0xc6,
  8292  	0x7f, 0xc9, 0xcd, 0xe0, 0x5b, 0x7e, 0xc1, 0x91, 0xe1, 0x2a, 0xc0, 0x57, 0x16, 0xbc, 0x88, 0x36,
  8293  	0xa0, 0x48, 0xef, 0x1d, 0xa6, 0xda, 0x31, 0xd7, 0x43, 0x8b, 0xa4, 0xbc, 0xa7, 0x1d, 0xcb, 0x3b,
  8294  	0xf4, 0xa1, 0x7d, 0xd4, 0xb7, 0x79, 0x75, 0x2e, 0x3f, 0x40, 0xd1, 0xe7, 0x82, 0xee, 0xc4, 0xf6,
  8295  	0x75, 0x3d, 0x39, 0x8c, 0x98, 0xf8, 0xdf, 0x8a, 0xee, 0xe3, 0xf5, 0x64, 0x85, 0xc8, 0xbe, 0x9d,
  8296  	0x41, 0x81, 0x3f, 0x1a, 0xbc, 0x08, 0x25, 0xc3, 0x56, 0x23, 0xef, 0x6e, 0x8a, 0x86, 0xff, 0xa2,
  8297  	0xf0, 0x1a, 0xd4, 0xa6, 0x9a, 0xfb, 0x03, 0x77, 0xe2, 0xd5, 0x29, 0xcf, 0xe0, 0x50, 0x55, 0xaa,
  8298  	0x04, 0xcc, 0x1c, 0xf8, 0x3d, 0xc3, 0x4c, 0xd0, 0x69, 0xc7, 0xfc, 0xaa, 0x4b, 0xa4, 0xd3, 0x8e,
  8299  	0xe5, 0x5f, 0x65, 0x00, 0xc2, 0xcf, 0xf5, 0xde, 0xee, 0x17, 0x84, 0x04, 0x36, 0x31, 0x5c, 0x8f,
  8300  	0xbe, 0xb1, 0x2e, 0x29, 0xf4, 0x37, 0xfd, 0xb6, 0x33, 0xfa, 0xf1, 0xbe, 0x14, 0xdf, 0x05, 0xe1,
  8301  	0x17, 0xfb, 0xb2, 0x02, 0xc5, 0x3d, 0xcd, 0x1b, 0x1e, 0x92, 0xbe, 0xdd, 0x03, 0xa0, 0x0f, 0xa6,
  8302  	0xe7, 0x7c, 0x6a, 0x4d, 0xe9, 0xd8, 0xa7, 0xd6, 0x53, 0xff, 0x67, 0xea, 0x77, 0x8d, 0x43, 0xa8,
  8303  	0xc4, 0xc2, 0x9d, 0x32, 0x9f, 0x25, 0x81, 0xb1, 0xb0, 0xbf, 0x45, 0x62, 0xca, 0x1f, 0x26, 0xc1,
  8304  	0x6f, 0xb4, 0x06, 0x05, 0x21, 0x9e, 0xaa, 0x2a, 0xbc, 0x24, 0xff, 0xc7, 0x05, 0x80, 0x6d, 0xcb,
  8305  	0xd4, 0x0d, 0xa6, 0x4a, 0xee, 0x02, 0x70, 0x05, 0x10, 0x7e, 0x30, 0x89, 0x62, 0x7d, 0xef, 0x63,
  8306  	0x4f, 0x29, 0x31, 0x2a, 0x32, 0xdc, 0x9f, 0x42, 0x25, 0xb8, 0x5a, 0x24, 0x95, 0xb2, 0x73, 0x2b,
  8307  	0x05, 0x2f, 0x77, 0x49, 0xb5, 0x3f, 0x81, 0xa5, 0x58, 0xa0, 0x97, 0x54, 0xbf, 0xc2, 0x80, 0x94,
  8308  	0x8a, 0x26, 0xce, 0xc5, 0x3d, 0x28, 0xfb, 0xb5, 0x49, 0x9b, 0xf9, 0xf9, 0x1d, 0x65, 0xd5, 0x48,
  8309  	0x8b, 0x9f, 0x05, 0x79, 0x5c, 0xbc, 0x13, 0x5a, 0x6b, 0x61, 0x6e, 0xad, 0x4a, 0x40, 0x48, 0x2a,
  8310  	0x7e, 0x01, 0xcb, 0x24, 0x8a, 0x8b, 0x56, 0x2e, 0xcc, 0xad, 0x5c, 0xc3, 0xc7, 0xde, 0xb6, 0x58,
  8311  	0xff, 0x0a, 0x94, 0x1d, 0xfb, 0x07, 0x83, 0x68, 0xac, 0xd9, 0x84, 0xbd, 0xca, 0x5b, 0x50, 0xc0,
  8312  	0x61, 0x9f, 0x9d, 0xcd, 0x26, 0x1e, 0x7a, 0x04, 0x10, 0x7e, 0xca, 0xc4, 0xdf, 0x0c, 0x09, 0x57,
  8313  	0x85, 0xe1, 0xfa, 0x70, 0xc5, 0x49, 0x85, 0x27, 0xf8, 0xd2, 0x09, 0x3d, 0x86, 0x95, 0x09, 0x51,
  8314  	0x9a, 0xb1, 0x1e, 0x96, 0xe6, 0xf6, 0x70, 0x99, 0x92, 0x47, 0xfa, 0x78, 0x1d, 0xa4, 0x30, 0x54,
  8315  	0x35, 0x55, 0xba, 0x1d, 0x80, 0x6e, 0x87, 0xaa, 0xc9, 0x23, 0x54, 0xb3, 0x4d, 0xf6, 0xc5, 0x1d,
  8316  	0x28, 0xfb, 0xaf, 0xf5, 0x54, 0xc3, 0xac, 0x97, 0xe3, 0x5b, 0x83, 0x9f, 0x15, 0x95, 0xf8, 0x73,
  8317  	0xbd, 0x96, 0x29, 0x1f, 0x42, 0x29, 0xe8, 0x36, 0x5a, 0x81, 0x1a, 0xff, 0x62, 0xe3, 0xbb, 0x5e,
  8318  	0xf0, 0xe1, 0xc0, 0x3a, 0xac, 0x08, 0xc0, 0x56, 0x67, 0xd0, 0x54, 0x3a, 0x8d, 0xb6, 0x94, 0x89,
  8319  	0x21, 0x9a, 0x2f, 0x38, 0x22, 0x8b, 0x56, 0x41, 0x12, 0x10, 0xfc, 0x63, 0x1e, 0xd9, 0x85, 0x5a,
  8320  	0x30, 0xa8, 0x06, 0xcb, 0x46, 0xf4, 0x05, 0x94, 0x35, 0x66, 0x6b, 0x85, 0x4d, 0x73, 0x49, 0x9c,
  8321  	0xdb, 0x08, 0x3d, 0xdb, 0x37, 0x5a, 0xf0, 0x1b, 0x5d, 0x85, 0xb2, 0x3f, 0xab, 0x46, 0xf0, 0x95,
  8322  	0x99, 0x08, 0x92, 0xff, 0x0a, 0x94, 0xf6, 0xb0, 0xce, 0x9b, 0xfb, 0x3c, 0xad, 0xb9, 0x75, 0xf1,
  8323  	0xd2, 0x50, 0x9f, 0xd3, 0xd0, 0x2a, 0x2c, 0x1c, 0x69, 0x93, 0x19, 0x53, 0x01, 0x39, 0x85, 0x15,
  8324  	0x64, 0x15, 0x6a, 0x0d, 0xb7, 0xe7, 0x60, 0x1b, 0x9b, 0x7e, 0x13, 0x12, 0xe4, 0x34, 0xd7, 0xe4,
  8325  	0x6e, 0x3c, 0xf9, 0x49, 0xf6, 0x36, 0xa1, 0xd0, 0x82, 0x1b, 0x34, 0x56, 0x42, 0x32, 0x54, 0x89,
  8326  	0x5f, 0x30, 0xc1, 0x23, 0x4f, 0x9d, 0x5a, 0xae, 0xff, 0x8d, 0x5f, 0x79, 0xe6, 0xe2, 0x36, 0x1e,
  8327  	0x79, 0x7b, 0x96, 0xeb, 0xc9, 0x8f, 0xa0, 0xca, 0x9f, 0xbf, 0x73, 0xf6, 0xa7, 0x7e, 0xf3, 0xe4,
  8328  	0xe2, 0xc9, 0x88, 0x3b, 0xbc, 0xf4, 0xb7, 0x7c, 0x1d, 0x6a, 0x6d, 0x7a, 0x97, 0xe1, 0xe0, 0x11,
  8329  	0x67, 0x10, 0x0c, 0x84, 0xdf, 0xf2, 0xb1, 0x81, 0xfc, 0xa7, 0x1c, 0x2c, 0x32, 0x02, 0x37, 0x7c,
  8330  	0x70, 0xca, 0x86, 0x9f, 0x54, 0xde, 0x54, 0x5c, 0x18, 0x35, 0x7f, 0x70, 0xca, 0x79, 0x7f, 0x06,
  8331  	0xa5, 0xf0, 0xf6, 0x3e, 0x1b, 0x7f, 0x69, 0x1a, 0x5b, 0x4b, 0x25, 0xa4, 0x45, 0x1f, 0x40, 0x6e,
  8332  	0xca, 0xbd, 0xf1, 0x48, 0x78, 0x19, 0xac, 0x87, 0x42, 0xf0, 0xe8, 0x73, 0x00, 0xa2, 0x56, 0xd8,
  8333  	0x7c, 0x73, 0xad, 0xb2, 0x11, 0x51, 0x48, 0xe2, 0x52, 0x50, 0xe5, 0xc2, 0x00, 0xe8, 0x0b, 0xa8,
  8334  	0x46, 0x74, 0x04, 0x57, 0x2e, 0xa7, 0xf4, 0xae, 0x22, 0xaa, 0x09, 0x74, 0x17, 0x16, 0xf9, 0xf7,
  8335  	0x09, 0x5c, 0xb3, 0x08, 0x42, 0x13, 0x59, 0x20, 0xc5, 0xa7, 0x23, 0x9d, 0xe5, 0x37, 0x4b, 0x0e,
  8336  	0x1e, 0x71, 0x4f, 0x6d, 0x43, 0x74, 0x83, 0x22, 0xeb, 0xe2, 0x5f, 0x3a, 0x39, 0x78, 0x84, 0x1e,
  8337  	0x43, 0x2d, 0xa6, 0x30, 0xb8, 0x8b, 0x76, 0x4a, 0x77, 0x97, 0xa2, 0x3a, 0x43, 0xfe, 0x45, 0x06,
  8338  	0x4a, 0xc1, 0xc7, 0xe1, 0xa9, 0x5f, 0x4a, 0x7f, 0x0a, 0x30, 0x0c, 0x34, 0x17, 0x5f, 0xad, 0xd5,
  8339  	0x34, 0xad, 0xa6, 0x08, 0x74, 0xe8, 0x23, 0x58, 0x64, 0x62, 0xe1, 0xf2, 0xd5, 0x12, 0xdf, 0x02,
  8340  	0x33, 0x84, 0xe2, 0x53, 0xc8, 0xdf, 0x40, 0x81, 0x3b, 0xd7, 0x69, 0x1d, 0xf8, 0x04, 0x20, 0x92,
  8341  	0x91, 0x22, 0x37, 0xef, 0xd3, 0x76, 0x81, 0x8c, 0x9e, 0x2f, 0xc4, 0xdf, 0xda, 0xbe, 0xd5, 0x0f,
  8342  	0xc1, 0x23, 0x59, 0x23, 0xf2, 0xe7, 0xc8, 0x1a, 0xb1, 0xa4, 0xe3, 0x91, 0x36, 0x9b, 0x78, 0xfe,
  8343  	0x76, 0x59, 0x38, 0x6d, 0xbb, 0x54, 0x39, 0x31, 0x2b, 0xca, 0x47, 0x50, 0x25, 0xd8, 0xf0, 0xbb,
  8344  	0xc8, 0xdf, 0x4d, 0xae, 0x0b, 0xf9, 0xef, 0x64, 0x20, 0xa7, 0x58, 0x1a, 0x5a, 0x82, 0xac, 0xe6,
  8345  	0x1f, 0x14, 0x65, 0x35, 0x9a, 0x3e, 0x90, 0x79, 0x0e, 0x13, 0xec, 0x3b, 0x84, 0x21, 0x80, 0x28,
  8346  	0xb2, 0xa9, 0x46, 0x51, 0xcc, 0x07, 0xe4, 0x25, 0xe1, 0x79, 0x77, 0x3e, 0xf2, 0xbc, 0xdb, 0xff,
  8347  	0x32, 0x24, 0x61, 0xc8, 0x95, 0xde, 0xb3, 0x56, 0xf8, 0xd8, 0x5f, 0xfe, 0x17, 0x19, 0xc8, 0x3d,
  8348  	0x77, 0x46, 0xa9, 0xcb, 0xf8, 0x3e, 0x64, 0x1d, 0x5d, 0x90, 0xce, 0xe4, 0xfb, 0x97, 0xac, 0xa3,
  8349  	0xa3, 0xbb, 0x50, 0xe2, 0xef, 0xb3, 0x1d, 0x8f, 0x7f, 0x8a, 0x37, 0xe7, 0xb1, 0x0c, 0x23, 0x53,
  8350  	0x68, 0x86, 0x07, 0xfe, 0x26, 0xdc, 0xf1, 0xf8, 0x3a, 0xcf, 0xa9, 0xc2, 0xc8, 0x14, 0x8f, 0xcc,
  8351  	0x16, 0x4f, 0x64, 0x55, 0x55, 0xb2, 0x86, 0x2e, 0xff, 0x32, 0x03, 0xab, 0x3b, 0x6c, 0x3d, 0xe9,
  8352  	0x1a, 0xef, 0x18, 0xae, 0xa7, 0x99, 0x43, 0x8c, 0xee, 0x43, 0x70, 0xae, 0xcd, 0x8e, 0xac, 0x55,
  8353  	0x9d, 0xa3, 0xf8, 0x5c, 0x5f, 0xf0, 0xd1, 0x89, 0x7a, 0xf4, 0x36, 0x3e, 0xa5, 0x1e, 0x5b, 0x8c,
  8354  	0x0b, 0x3e, 0x3a, 0x52, 0x4f, 0xfe, 0xd7, 0x79, 0x28, 0xb0, 0x6c, 0x93, 0x89, 0x15, 0x8d, 0xbc,
  8355  	0x09, 0xca, 0x46, 0xdf, 0x04, 0x11, 0xcf, 0x87, 0x78, 0x12, 0xd8, 0x64, 0xd7, 0xcd, 0x39, 0xe6,
  8356  	0xf9, 0x30, 0x10, 0xbd, 0x6e, 0xfe, 0x10, 0x24, 0x4e, 0xc0, 0xad, 0x0c, 0xdf, 0x13, 0x25, 0xa5,
  8357  	0xc6, 0xe0, 0x0d, 0x1f, 0x4c, 0xbf, 0x2a, 0x23, 0xbe, 0x05, 0x11, 0xc0, 0x85, 0xab, 0xb9, 0x1b,
  8358  	0x55, 0x25, 0x28, 0xa3, 0x9b, 0x73, 0x23, 0xe0, 0x62, 0x4a, 0x94, 0xfb, 0xfd, 0xfc, 0x40, 0x7c,
  8359  	0xf1, 0x55, 0x4e, 0xc6, 0xe7, 0x84, 0xe3, 0x03, 0x58, 0xf3, 0x77, 0x6c, 0x6c, 0x8e, 0x99, 0x92,
  8360  	0xbd, 0x1c, 0xd9, 0x6c, 0x89, 0xc5, 0x55, 0x56, 0xf5, 0xb4, 0x25, 0x7f, 0x44, 0xdf, 0x73, 0x8c,
  8361  	0xb0, 0x8e, 0x1d, 0xf6, 0xaa, 0xa8, 0x14, 0x37, 0x13, 0xdb, 0x22, 0x5a, 0x89, 0x52, 0xa7, 0x7e,
  8362  	0xaa, 0x01, 0xaf, 0xfc, 0xa9, 0x46, 0xfc, 0xf0, 0xa3, 0x7c, 0xde, 0xc3, 0x0f, 0xd9, 0x82, 0x6a,
  8363  	0xa4, 0x7f, 0xa7, 0x1c, 0xae, 0x45, 0xbf, 0xbf, 0xcb, 0x26, 0xbe, 0xbf, 0x7b, 0x1f, 0x96, 0xd8,
  8364  	0xd9, 0x82, 0xaa, 0xb9, 0x6a, 0x10, 0xb7, 0x55, 0x95, 0x0a, 0x83, 0x36, 0x5c, 0xe2, 0xa7, 0xca,
  8365  	0x4d, 0x28, 0xfa, 0x5a, 0xe0, 0x14, 0x9f, 0x26, 0xf6, 0x1e, 0x22, 0x1b, 0x7f, 0x0f, 0x21, 0xff,
  8366  	0xe7, 0x3c, 0x94, 0x08, 0x1f, 0x16, 0x9e, 0x87, 0x6f, 0x4d, 0x32, 0xaf, 0xf5, 0xd6, 0x24, 0x7b,
  8367  	0xfe, 0xb7, 0x26, 0x64, 0xa3, 0xcd, 0x6c, 0xee, 0xb2, 0x65, 0x67, 0x36, 0xeb, 0xea, 0xd0, 0x72,
  8368  	0x74, 0xd5, 0xb0, 0x8f, 0x3e, 0xe5, 0x27, 0x86, 0xc0, 0x40, 0x2d, 0xfb, 0xe8, 0xd3, 0x28, 0xc1,
  8369  	0x7d, 0xae, 0x46, 0x42, 0x82, 0xfb, 0x34, 0xef, 0x16, 0x0b, 0xee, 0x28, 0x07, 0xfe, 0xf8, 0x83,
  8370  	0x81, 0x7c, 0x0e, 0x21, 0xc1, 0x7d, 0xfe, 0x4e, 0x21, 0x24, 0xb8, 0x4f, 0x14, 0xb1, 0x8b, 0x1d,
  8371  	0x43, 0x9b, 0xf0, 0x77, 0x09, 0xbc, 0x84, 0x7e, 0x02, 0x55, 0xff, 0xfc, 0x93, 0xf1, 0x2e, 0x51,
  8372  	0x27, 0xb6, 0xe2, 0x03, 0x29, 0xf7, 0x18, 0xd1, 0x7d, 0x2a, 0x7f, 0x51, 0xa2, 0xfb, 0x84, 0x88,
  8373  	0xf1, 0x54, 0xe9, 0xdb, 0x0b, 0x26, 0x62, 0x39, 0xa5, 0xc2, 0x80, 0x1d, 0x0a, 0x23, 0xfd, 0x1c,
  8374  	0x6a, 0xc3, 0x43, 0xcc, 0xd2, 0x3a, 0xd2, 0x67, 0x9c, 0x39, 0x05, 0x28, 0x88, 0x66, 0xc3, 0x40,
  8375  	0x1f, 0xc0, 0x52, 0x40, 0x40, 0xf3, 0x4e, 0xd0, 0x47, 0x9c, 0x39, 0xa5, 0xea, 0xd3, 0xb0, 0x64,
  8376  	0x14, 0x97, 0xa1, 0xcc, 0x1f, 0x02, 0xe8, 0x9a, 0xa7, 0xd1, 0xcf, 0x14, 0x72, 0x4a, 0x89, 0x3e,
  8377  	0x02, 0xd8, 0xd1, 0x3c, 0x8d, 0xb8, 0xb2, 0xd8, 0x71, 0x2c, 0x87, 0xbe, 0xde, 0xcc, 0x29, 0xac,
  8378  	0x80, 0xde, 0x03, 0xde, 0x1b, 0xf5, 0xc7, 0x19, 0x76, 0x4e, 0xe8, 0xfb, 0xcc, 0x9c, 0x52, 0x66,
  8379  	0xb0, 0x6f, 0x08, 0x88, 0x2d, 0x85, 0x8b, 0x3d, 0x4e, 0xb1, 0xcc, 0x3a, 0x48, 0x41, 0x94, 0x40,
  8380  	0xfe, 0x0e, 0xf2, 0x8a, 0xfd, 0x83, 0x11, 0x58, 0xb0, 0xcc, 0xe9, 0x16, 0xec, 0x94, 0x0b, 0x92,
  8381  	0x40, 0x38, 0xf9, 0x01, 0xcd, 0xd6, 0x0e, 0x94, 0x82, 0x6c, 0x6e, 0x08, 0xa0, 0xb0, 0xdb, 0xee,
  8382  	0x3e, 0x6e, 0xb4, 0xa5, 0x77, 0xc2, 0xac, 0x07, 0xf4, 0x6d, 0x64, 0x63, 0xe7, 0x6b, 0xb5, 0xd5,
  8383  	0x91, 0xb2, 0x34, 0x69, 0xc0, 0xce, 0xd7, 0x6a, 0x77, 0x7f, 0xc0, 0xd2, 0x21, 0x3c, 0x57, 0x9e,
  8384  	0x48, 0xf9, 0xad, 0x76, 0xe4, 0x33, 0x51, 0xa6, 0xda, 0x90, 0x04, 0x95, 0x76, 0xb7, 0xfb, 0x6c,
  8385  	0xbf, 0xa7, 0x36, 0x5f, 0x34, 0xb6, 0x07, 0xd2, 0x3b, 0x68, 0x19, 0xaa, 0x1c, 0xd2, 0xee, 0x76,
  8386  	0x76, 0x9b, 0x0a, 0xcb, 0x14, 0xc0, 0x41, 0xfd, 0xa7, 0x5d, 0x65, 0xd0, 0x54, 0xa4, 0xec, 0xd6,
  8387  	0x2f, 0x32, 0x50, 0x16, 0x4e, 0x64, 0x84, 0x4c, 0x84, 0xef, 0xa0, 0x0a, 0x14, 0x3b, 0xcd, 0xd6,
  8388  	0xee, 0xd3, 0xc7, 0x5d, 0x52, 0x7b, 0x11, 0x72, 0x83, 0xc6, 0x2e, 0xef, 0x56, 0x5f, 0xed, 0x35,
  8389  	0x06, 0x4f, 0xa5, 0x1c, 0xaa, 0x42, 0x69, 0xbb, 0xbb, 0xb7, 0xb7, 0xdf, 0x69, 0x0d, 0xbe, 0x93,
  8390  	0xf2, 0xa4, 0xd5, 0xe6, 0x8b, 0x81, 0x1a, 0x82, 0x16, 0x48, 0x5c, 0xd9, 0x6e, 0x28, 0xbb, 0x4d,
  8391  	0x01, 0x58, 0x60, 0xac, 0x5f, 0x0c, 0xd4, 0xa7, 0xdd, 0x9e, 0xb4, 0xb8, 0xf5, 0x21, 0x94, 0x82,
  8392  	0xb3, 0x17, 0xfa, 0x32, 0xbd, 0xf3, 0x9d, 0xf8, 0x44, 0x1d, 0xa0, 0xd0, 0xea, 0x3c, 0x6f, 0x2a,
  8393  	0x03, 0x29, 0xbb, 0xb5, 0x05, 0x52, 0xfc, 0x34, 0x05, 0x15, 0x20, 0xdb, 0xfc, 0x46, 0x7a, 0x87,
  8394  	0xfc, 0xdd, 0x6d, 0x4a, 0x19, 0xf2, 0xb7, 0xdd, 0x94, 0xb2, 0x5b, 0x1f, 0xf3, 0x87, 0x51, 0x3c,
  8395  	0x44, 0x89, 0xa4, 0x5b, 0x6c, 0x6c, 0x6f, 0x37, 0x7b, 0x03, 0xc6, 0x5c, 0x69, 0x7e, 0x4d, 0x1f,
  8396  	0xbd, 0x6e, 0xed, 0xc3, 0x4a, 0x4a, 0xd4, 0x49, 0x06, 0x15, 0xf4, 0x5d, 0x6d, 0xec, 0xec, 0x48,
  8397  	0xef, 0x90, 0x28, 0x37, 0x04, 0x29, 0xcd, 0xbd, 0xee, 0x73, 0xd2, 0xf0, 0x05, 0x58, 0x16, 0xa1,
  8398  	0xfc, 0x55, 0xfd, 0xd6, 0x2d, 0xa8, 0x46, 0xa2, 0x4b, 0x32, 0x83, 0x7b, 0xcd, 0x1d, 0x75, 0xaf,
  8399  	0x4b, 0x58, 0xd5, 0xa0, 0x4c, 0x0a, 0x3e, 0x79, 0x66, 0xeb, 0x3e, 0xd4, 0x62, 0x3e, 0x6a, 0xf4,
  8400  	0xc5, 0x2e, 0x99, 0x8e, 0xbd, 0x5e, 0x57, 0xe1, 0xbd, 0x6f, 0xbe, 0xa0, 0xbf, 0xb3, 0xf7, 0xfe,
  8401  	0xcb, 0xbb, 0x50, 0xdc, 0x25, 0xc2, 0xd7, 0xb0, 0x0d, 0xf4, 0x08, 0x8a, 0x7e, 0x3a, 0x6c, 0xb4,
  8402  	0x11, 0xf1, 0xac, 0xc5, 0x14, 0xd9, 0x9b, 0x6b, 0x09, 0x85, 0xd7, 0x9c, 0xda, 0xde, 0x09, 0x7a,
  8403  	0x08, 0x8b, 0x3c, 0x21, 0x36, 0xaa, 0x8b, 0xb5, 0xc5, 0x1c, 0xd9, 0xa7, 0x54, 0x2e, 0xb0, 0x54,
  8404  	0xd9, 0x48, 0xb0, 0x81, 0x91, 0x6c, 0xda, 0x9b, 0xf5, 0x24, 0x82, 0xef, 0xfc, 0x87, 0xb0, 0xc8,
  8405  	0x13, 0xe5, 0xa2, 0xd8, 0x09, 0x69, 0x98, 0xbc, 0x77, 0x6e, 0xcb, 0x0d, 0x80, 0x30, 0x35, 0x2e,
  8406  	0xba, 0x28, 0x9a, 0xf3, 0x58, 0x22, 0xed, 0xb9, 0x2c, 0xb6, 0xa1, 0xe8, 0xe7, 0xb3, 0x16, 0x27,
  8407  	0x2e, 0x96, 0x3c, 0x7b, 0x73, 0x33, 0x0d, 0xc5, 0x86, 0x70, 0x27, 0x83, 0x76, 0x01, 0xc2, 0xec,
  8408  	0xb7, 0x62, 0x3f, 0x12, 0x29, 0xaf, 0x37, 0xdf, 0x4d, 0x47, 0xf2, 0xd9, 0xf8, 0x12, 0x4a, 0x41,
  8409  	0xea, 0x67, 0xb4, 0x39, 0x3f, 0x1f, 0xf4, 0xdc, 0xe1, 0x34, 0xa1, 0x22, 0x26, 0x76, 0x46, 0xc2,
  8410  	0x01, 0x4b, 0x4a, 0xc2, 0xe7, 0xd3, 0x26, 0x36, 0x4c, 0xe4, 0x2c, 0x0e, 0x28, 0x91, 0xde, 0xf9,
  8411  	0x94, 0x89, 0x2d, 0x0b, 0xc9, 0x9d, 0x91, 0x30, 0xee, 0x64, 0xce, 0xe7, 0xb9, 0x4c, 0xda, 0x50,
  8412  	0x16, 0x32, 0x30, 0x8b, 0x4c, 0x92, 0x29, 0x9e, 0x37, 0x2f, 0xcd, 0xc1, 0x06, 0xcb, 0xd4, 0x84,
  8413  	0x8a, 0x98, 0x94, 0x59, 0x9c, 0x9c, 0x94, 0x64, 0xcd, 0x73, 0x3b, 0xf5, 0x0c, 0x6a, 0xb1, 0x84,
  8414  	0xcc, 0xe8, 0x6a, 0x9a, 0xe8, 0x9d, 0x8b, 0xd9, 0x73, 0xa8, 0xc5, 0x12, 0x27, 0x8b, 0xcc, 0xd2,
  8415  	0x53, 0x39, 0x6f, 0xbe, 0x77, 0x0a, 0x05, 0x97, 0xa4, 0x6f, 0x00, 0x25, 0xd3, 0x28, 0xa3, 0x9f,
  8416  	0x44, 0x46, 0x9c, 0x9e, 0x64, 0x79, 0x6e, 0x57, 0xbf, 0x60, 0x5b, 0x55, 0xf3, 0x0e, 0x51, 0xf2,
  8417  	0x32, 0xc3, 0xaf, 0xbc, 0x91, 0x82, 0xe1, 0x5d, 0x0a, 0x77, 0x2b, 0x61, 0x91, 0xdc, 0xad, 0x02,
  8418  	0x97, 0xb3, 0x76, 0x2b, 0x61, 0xb0, 0x31, 0x37, 0x11, 0x6f, 0x62, 0xb7, 0x0a, 0xbd, 0xb8, 0x93,
  8419  	0x41, 0xad, 0xe0, 0xae, 0x87, 0xe5, 0xc8, 0x45, 0x97, 0x13, 0x7d, 0x8e, 0x24, 0xcf, 0x9d, 0xd7,
  8420  	0x9b, 0x1b, 0x19, 0xd4, 0x80, 0xa2, 0x9f, 0x5f, 0x56, 0xec, 0x4f, 0x2c, 0xf1, 0xad, 0xd8, 0x9f,
  8421  	0x44, 0x3a, 0xda, 0x2e, 0x54, 0xc4, 0x14, 0xab, 0x28, 0x29, 0xc5, 0x11, 0x56, 0x97, 0xe7, 0xa1,
  8422  	0x83, 0xe1, 0xfd, 0x0c, 0x0a, 0x2c, 0xef, 0x2a, 0x8a, 0xde, 0x20, 0x85, 0xe9, 0x52, 0xe7, 0x4e,
  8423  	0xef, 0x97, 0x50, 0x0a, 0x12, 0xb0, 0x8a, 0xea, 0x27, 0x9e, 0x95, 0x75, 0x2e, 0x83, 0xaf, 0x60,
  8424  	0x91, 0xe7, 0x5c, 0x15, 0x45, 0x24, 0x9a, 0xac, 0x75, 0x73, 0x23, 0x05, 0x13, 0xf4, 0xfe, 0x4b,
  8425  	0x28, 0x05, 0x19, 0x0d, 0xc5, 0x2e, 0xc4, 0xd3, 0xb2, 0x9e, 0xa6, 0x01, 0xc5, 0xc4, 0x85, 0xe2,
  8426  	0x7c, 0xa6, 0xe4, 0x57, 0x9d, 0xcb, 0xa6, 0x05, 0x10, 0x26, 0x09, 0x14, 0x85, 0x35, 0x91, 0x20,
  8427  	0x55, 0x54, 0xe9, 0xc9, 0xa4, 0xa8, 0x77, 0x32, 0x44, 0x13, 0x0a, 0xb9, 0x4e, 0x45, 0x25, 0x96,
  8428  	0x4c, 0x81, 0x3a, 0xb7, 0x3f, 0xbb, 0x54, 0x68, 0x85, 0x8b, 0xb7, 0xa8, 0xd0, 0x26, 0x52, 0x7b,
  8429  	0xce, 0x65, 0xb4, 0xe7, 0xa7, 0xd7, 0x12, 0x78, 0xbd, 0x17, 0x9f, 0xa3, 0xf3, 0xb3, 0xdb, 0x67,
  8430  	0xb9, 0x78, 0x05, 0x66, 0x57, 0xa2, 0xd3, 0x91, 0x64, 0x75, 0x75, 0x3e, 0x41, 0x4c, 0x55, 0x87,
  8431  	0xc7, 0x9a, 0x51, 0x55, 0x1d, 0xcf, 0xb3, 0x79, 0xb6, 0xaa, 0x0e, 0x39, 0x25, 0x54, 0xf5, 0xb9,
  8432  	0x99, 0x29, 0x50, 0x8d, 0x24, 0xee, 0x14, 0x97, 0x20, 0x2d, 0xfb, 0xe7, 0xe6, 0x95, 0xb9, 0xf8,
  8433  	0x60, 0x9c, 0x7d, 0xf6, 0x7f, 0x02, 0xe2, 0xc7, 0x9c, 0xef, 0xa7, 0x08, 0x7e, 0x22, 0x9d, 0xe4,
  8434  	0xdc, 0x8e, 0x7e, 0x17, 0xfc, 0xc7, 0x80, 0x38, 0xdf, 0xeb, 0xe9, 0x9b, 0xe1, 0xfc, 0xac, 0xc7,
  8435  	0x2c, 0x21, 0x61, 0x82, 0xf1, 0x07, 0x69, 0x7b, 0x20, 0xc9, 0xf6, 0xda, 0x59, 0x64, 0xe2, 0xc4,
  8436  	0xa4, 0x24, 0xd2, 0x14, 0x27, 0x66, 0x7e, 0x9e, 0xcd, 0xd3, 0xdc, 0x5c, 0x9e, 0x43, 0x33, 0x66,
  8437  	0xc1, 0x84, 0xac, 0x8d, 0x67, 0x3b, 0x9b, 0xb4, 0x7e, 0xc2, 0x7c, 0x9d, 0x87, 0x05, 0x37, 0x5f,
  8438  	0x94, 0x41, 0x4c, 0x0b, 0x8a, 0xd5, 0x37, 0xd3, 0x50, 0xc1, 0xcc, 0x04, 0xbe, 0x59, 0xbc, 0x1f,
  8439  	0x89, 0x34, 0x98, 0xe7, 0xf0, 0xcd, 0x28, 0x8f, 0xa4, 0x6f, 0x76, 0x1e, 0x26, 0xbe, 0xaf, 0x4a,
  8440  	0x59, 0xc4, 0x7d, 0xd5, 0xf3, 0x30, 0xe0, 0xfb, 0x29, 0x48, 0x4d, 0x19, 0xdf, 0x4f, 0xf1, 0xac,
  8441  	0x97, 0xf1, 0xfd, 0x94, 0xc8, 0x69, 0xc9, 0x74, 0xad, 0x90, 0xb3, 0x52, 0x1c, 0x59, 0x32, 0x95,
  8442  	0xe5, 0x69, 0x23, 0x0b, 0x52, 0x45, 0x8a, 0x23, 0x8b, 0xe7, 0x8f, 0x3c, 0x55, 0x54, 0x82, 0x64,
  8443  	0x8e, 0x11, 0x51, 0x89, 0xa7, 0x78, 0x9c, 0xcb, 0x82, 0x59, 0xf1, 0xc7, 0x53, 0x3b, 0x66, 0xc5,
  8444  	0xc3, 0xa4, 0x88, 0x67, 0x5b, 0x71, 0x52, 0x3b, 0x61, 0xc5, 0xcf, 0x66, 0x70, 0x50, 0xa0, 0xe5,
  8445  	0x4f, 0xfe, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc5, 0x7d, 0xf2, 0xb4, 0xd4, 0x69, 0x00, 0x00,
  8446  }