// Code generated by protoc-gen-go. // source: gobgp.proto // DO NOT EDIT! /* Package gobgpapi is a generated protocol buffer package. It is generated from these files: gobgp.proto attribute.proto capability.proto It has these top-level messages: StartBgpRequest StopBgpRequest GetBgpRequest GetBgpResponse AddPeerRequest DeletePeerRequest ListPeerRequest ListPeerResponse UpdatePeerRequest UpdatePeerResponse ResetPeerRequest ShutdownPeerRequest EnablePeerRequest DisablePeerRequest MonitorPeerRequest MonitorPeerResponse AddPeerGroupRequest DeletePeerGroupRequest UpdatePeerGroupRequest UpdatePeerGroupResponse AddDynamicNeighborRequest AddPathRequest AddPathResponse DeletePathRequest ListPathRequest ListPathResponse AddPathStreamRequest GetTableRequest GetTableResponse MonitorTableRequest MonitorTableResponse AddVrfRequest DeleteVrfRequest ListVrfRequest ListVrfResponse AddPolicyRequest DeletePolicyRequest ListPolicyRequest ListPolicyResponse SetPoliciesRequest AddDefinedSetRequest DeleteDefinedSetRequest ListDefinedSetRequest ListDefinedSetResponse AddStatementRequest DeleteStatementRequest ListStatementRequest ListStatementResponse AddPolicyAssignmentRequest DeletePolicyAssignmentRequest ListPolicyAssignmentRequest ListPolicyAssignmentResponse SetPolicyAssignmentRequest AddRpkiRequest DeleteRpkiRequest ListRpkiRequest ListRpkiResponse EnableRpkiRequest DisableRpkiRequest ResetRpkiRequest ListRpkiTableRequest ListRpkiTableResponse EnableZebraRequest EnableMrtRequest DisableMrtRequest AddBmpRequest DeleteBmpRequest Family RPKIValidation Path Destination TableLookupPrefix Peer PeerGroup DynamicNeighbor ApplyPolicy PrefixLimit PeerConf PeerGroupConf PeerGroupState EbgpMultihop RouteReflector PeerState Messages Message Queues Timers TimersConfig TimersState Transport RouteServer GracefulRestart MpGracefulRestartConfig MpGracefulRestartState MpGracefulRestart AfiSafiConfig AfiSafiState RouteSelectionOptionsConfig RouteSelectionOptionsState RouteSelectionOptions UseMultiplePathsConfig UseMultiplePathsState EbgpConfig EbgpState Ebgp IbgpConfig IbgpState Ibgp UseMultiplePaths RouteTargetMembershipConfig RouteTargetMembershipState RouteTargetMembership LongLivedGracefulRestartConfig LongLivedGracefulRestartState LongLivedGracefulRestart AfiSafi AddPathsConfig AddPathsState AddPaths Prefix DefinedSet MatchSet AsPathLength Conditions CommunityAction MedAction AsPrependAction NexthopAction LocalPrefAction Actions Statement Policy PolicyAssignment RoutingPolicy Roa Vrf DefaultRouteDistance Global Confederation RPKIConf RPKIState Rpki OriginAttribute AsSegment AsPathAttribute NextHopAttribute MultiExitDiscAttribute LocalPrefAttribute AtomicAggregateAttribute AggregatorAttribute CommunitiesAttribute OriginatorIdAttribute ClusterListAttribute IPAddressPrefix LabeledIPAddressPrefix EncapsulationNLRI RouteDistinguisherTwoOctetAS RouteDistinguisherIPAddress RouteDistinguisherFourOctetAS EthernetSegmentIdentifier EVPNEthernetAutoDiscoveryRoute EVPNMACIPAdvertisementRoute EVPNInclusiveMulticastEthernetTagRoute EVPNEthernetSegmentRoute EVPNIPPrefixRoute LabeledVPNIPAddressPrefix RouteTargetMembershipNLRI FlowSpecIPPrefix FlowSpecMAC FlowSpecComponentItem FlowSpecComponent FlowSpecNLRI VPNFlowSpecNLRI OpaqueNLRI MpReachNLRIAttribute MpUnreachNLRIAttribute TwoOctetAsSpecificExtended IPv4AddressSpecificExtended FourOctetAsSpecificExtended ValidationExtended ColorExtended EncapExtended DefaultGatewayExtended OpaqueExtended ESILabelExtended ESImportRouteTarget MacMobilityExtended RouterMacExtended TrafficRateExtended TrafficActionExtended RedirectTwoOctetAsSpecificExtended RedirectIPv4AddressSpecificExtended RedirectFourOctetAsSpecificExtended TrafficRemarkExtended UnknownExtended ExtendedCommunitiesAttribute As4PathAttribute As4AggregatorAttribute PmsiTunnelAttribute TunnelEncapSubTLVEncapsulation TunnelEncapSubTLVProtocol TunnelEncapSubTLVColor TunnelEncapSubTLVUnknown TunnelEncapTLV TunnelEncapAttribute IPv6AddressSpecificExtended RedirectIPv6AddressSpecificExtended IP6ExtendedCommunitiesAttribute AigpTLVIGPMetric AigpTLVUnknown AigpAttribute LargeCommunity LargeCommunitiesAttribute UnknownAttribute MultiProtocolCapability RouteRefreshCapability CarryingLabelInfoCapability ExtendedNexthopCapabilityTuple ExtendedNexthopCapability GracefulRestartCapabilityTuple GracefulRestartCapability FourOctetASNumberCapability AddPathCapabilityTuple AddPathCapability EnhancedRouteRefreshCapability LongLivedGracefulRestartCapabilityTuple LongLivedGracefulRestartCapability RouteRefreshCiscoCapability UnknownCapability */ package gobgpapi import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" import google_protobuf "github.com/golang/protobuf/ptypes/any" import google_protobuf1 "github.com/golang/protobuf/ptypes/empty" import ( context "golang.org/x/net/context" grpc "google.golang.org/grpc" ) // Reference imports to suppress errors if they are not otherwise used. var _ = proto.Marshal var _ = fmt.Errorf var _ = math.Inf // This is a compile-time assertion to ensure that this generated file // is compatible with the proto package it is being compiled against. // A compilation error at this line likely means your copy of the // proto package needs to be updated. const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package type Resource int32 const ( Resource_GLOBAL Resource = 0 Resource_LOCAL Resource = 1 Resource_ADJ_IN Resource = 2 Resource_ADJ_OUT Resource = 3 Resource_VRF Resource = 4 ) var Resource_name = map[int32]string{ 0: "GLOBAL", 1: "LOCAL", 2: "ADJ_IN", 3: "ADJ_OUT", 4: "VRF", } var Resource_value = map[string]int32{ "GLOBAL": 0, "LOCAL": 1, "ADJ_IN": 2, "ADJ_OUT": 3, "VRF": 4, } func (x Resource) String() string { return proto.EnumName(Resource_name, int32(x)) } func (Resource) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } // API representation of table.LookupOption type TableLookupOption int32 const ( TableLookupOption_LOOKUP_EXACT TableLookupOption = 0 TableLookupOption_LOOKUP_LONGER TableLookupOption = 1 TableLookupOption_LOOKUP_SHORTER TableLookupOption = 2 ) var TableLookupOption_name = map[int32]string{ 0: "LOOKUP_EXACT", 1: "LOOKUP_LONGER", 2: "LOOKUP_SHORTER", } var TableLookupOption_value = map[string]int32{ "LOOKUP_EXACT": 0, "LOOKUP_LONGER": 1, "LOOKUP_SHORTER": 2, } func (x TableLookupOption) String() string { return proto.EnumName(TableLookupOption_name, int32(x)) } func (TableLookupOption) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } type DefinedType int32 const ( DefinedType_PREFIX DefinedType = 0 DefinedType_NEIGHBOR DefinedType = 1 DefinedType_TAG DefinedType = 2 DefinedType_AS_PATH DefinedType = 3 DefinedType_COMMUNITY DefinedType = 4 DefinedType_EXT_COMMUNITY DefinedType = 5 DefinedType_LARGE_COMMUNITY DefinedType = 6 DefinedType_NEXT_HOP DefinedType = 7 ) var DefinedType_name = map[int32]string{ 0: "PREFIX", 1: "NEIGHBOR", 2: "TAG", 3: "AS_PATH", 4: "COMMUNITY", 5: "EXT_COMMUNITY", 6: "LARGE_COMMUNITY", 7: "NEXT_HOP", } var DefinedType_value = map[string]int32{ "PREFIX": 0, "NEIGHBOR": 1, "TAG": 2, "AS_PATH": 3, "COMMUNITY": 4, "EXT_COMMUNITY": 5, "LARGE_COMMUNITY": 6, "NEXT_HOP": 7, } func (x DefinedType) String() string { return proto.EnumName(DefinedType_name, int32(x)) } func (DefinedType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } type MatchType int32 const ( MatchType_ANY MatchType = 0 MatchType_ALL MatchType = 1 MatchType_INVERT MatchType = 2 ) var MatchType_name = map[int32]string{ 0: "ANY", 1: "ALL", 2: "INVERT", } var MatchType_value = map[string]int32{ "ANY": 0, "ALL": 1, "INVERT": 2, } func (x MatchType) String() string { return proto.EnumName(MatchType_name, int32(x)) } func (MatchType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } type AsPathLengthType int32 const ( AsPathLengthType_EQ AsPathLengthType = 0 AsPathLengthType_GE AsPathLengthType = 1 AsPathLengthType_LE AsPathLengthType = 2 ) var AsPathLengthType_name = map[int32]string{ 0: "EQ", 1: "GE", 2: "LE", } var AsPathLengthType_value = map[string]int32{ "EQ": 0, "GE": 1, "LE": 2, } func (x AsPathLengthType) String() string { return proto.EnumName(AsPathLengthType_name, int32(x)) } func (AsPathLengthType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } type RouteAction int32 const ( RouteAction_NONE RouteAction = 0 RouteAction_ACCEPT RouteAction = 1 RouteAction_REJECT RouteAction = 2 ) var RouteAction_name = map[int32]string{ 0: "NONE", 1: "ACCEPT", 2: "REJECT", } var RouteAction_value = map[string]int32{ "NONE": 0, "ACCEPT": 1, "REJECT": 2, } func (x RouteAction) String() string { return proto.EnumName(RouteAction_name, int32(x)) } func (RouteAction) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } type CommunityActionType int32 const ( CommunityActionType_COMMUNITY_ADD CommunityActionType = 0 CommunityActionType_COMMUNITY_REMOVE CommunityActionType = 1 CommunityActionType_COMMUNITY_REPLACE CommunityActionType = 2 ) var CommunityActionType_name = map[int32]string{ 0: "COMMUNITY_ADD", 1: "COMMUNITY_REMOVE", 2: "COMMUNITY_REPLACE", } var CommunityActionType_value = map[string]int32{ "COMMUNITY_ADD": 0, "COMMUNITY_REMOVE": 1, "COMMUNITY_REPLACE": 2, } func (x CommunityActionType) String() string { return proto.EnumName(CommunityActionType_name, int32(x)) } func (CommunityActionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } type MedActionType int32 const ( MedActionType_MED_MOD MedActionType = 0 MedActionType_MED_REPLACE MedActionType = 1 ) var MedActionType_name = map[int32]string{ 0: "MED_MOD", 1: "MED_REPLACE", } var MedActionType_value = map[string]int32{ "MED_MOD": 0, "MED_REPLACE": 1, } func (x MedActionType) String() string { return proto.EnumName(MedActionType_name, int32(x)) } func (MedActionType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } type PolicyDirection int32 const ( PolicyDirection_UNKNOWN PolicyDirection = 0 PolicyDirection_IMPORT PolicyDirection = 1 PolicyDirection_EXPORT PolicyDirection = 2 ) var PolicyDirection_name = map[int32]string{ 0: "UNKNOWN", 1: "IMPORT", 2: "EXPORT", } var PolicyDirection_value = map[string]int32{ "UNKNOWN": 0, "IMPORT": 1, "EXPORT": 2, } func (x PolicyDirection) String() string { return proto.EnumName(PolicyDirection_name, int32(x)) } func (PolicyDirection) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } type ResetPeerRequest_SoftResetDirection int32 const ( ResetPeerRequest_IN ResetPeerRequest_SoftResetDirection = 0 ResetPeerRequest_OUT ResetPeerRequest_SoftResetDirection = 1 ResetPeerRequest_BOTH ResetPeerRequest_SoftResetDirection = 2 ) var ResetPeerRequest_SoftResetDirection_name = map[int32]string{ 0: "IN", 1: "OUT", 2: "BOTH", } var ResetPeerRequest_SoftResetDirection_value = map[string]int32{ "IN": 0, "OUT": 1, "BOTH": 2, } func (x ResetPeerRequest_SoftResetDirection) String() string { return proto.EnumName(ResetPeerRequest_SoftResetDirection_name, int32(x)) } func (ResetPeerRequest_SoftResetDirection) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{10, 0} } type AddBmpRequest_MonitoringPolicy int32 const ( AddBmpRequest_PRE AddBmpRequest_MonitoringPolicy = 0 AddBmpRequest_POST AddBmpRequest_MonitoringPolicy = 1 AddBmpRequest_BOTH AddBmpRequest_MonitoringPolicy = 2 AddBmpRequest_LOCAL AddBmpRequest_MonitoringPolicy = 3 AddBmpRequest_ALL AddBmpRequest_MonitoringPolicy = 4 ) var AddBmpRequest_MonitoringPolicy_name = map[int32]string{ 0: "PRE", 1: "POST", 2: "BOTH", 3: "LOCAL", 4: "ALL", } var AddBmpRequest_MonitoringPolicy_value = map[string]int32{ "PRE": 0, "POST": 1, "BOTH": 2, "LOCAL": 3, "ALL": 4, } func (x AddBmpRequest_MonitoringPolicy) String() string { return proto.EnumName(AddBmpRequest_MonitoringPolicy_name, int32(x)) } func (AddBmpRequest_MonitoringPolicy) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{65, 0} } type Family_Afi int32 const ( Family_AFI_UNKNOWN Family_Afi = 0 Family_AFI_IP Family_Afi = 1 Family_AFI_IP6 Family_Afi = 2 Family_AFI_L2VPN Family_Afi = 25 Family_AFI_OPAQUE Family_Afi = 16397 ) var Family_Afi_name = map[int32]string{ 0: "AFI_UNKNOWN", 1: "AFI_IP", 2: "AFI_IP6", 25: "AFI_L2VPN", 16397: "AFI_OPAQUE", } var Family_Afi_value = map[string]int32{ "AFI_UNKNOWN": 0, "AFI_IP": 1, "AFI_IP6": 2, "AFI_L2VPN": 25, "AFI_OPAQUE": 16397, } func (x Family_Afi) String() string { return proto.EnumName(Family_Afi_name, int32(x)) } func (Family_Afi) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{67, 0} } type Family_Safi int32 const ( Family_SAFI_UNKNOWN Family_Safi = 0 Family_SAFI_UNICAST Family_Safi = 1 Family_SAFI_MULTICAST Family_Safi = 2 Family_SAFI_MPLS_LABEL Family_Safi = 4 Family_SAFI_ENCAPSULATION Family_Safi = 7 Family_SAFI_VPLS Family_Safi = 65 Family_SAFI_EVPN Family_Safi = 70 Family_SAFI_MPLS_VPN Family_Safi = 128 Family_SAFI_MPLS_VPN_MULTICAST Family_Safi = 129 Family_SAFI_ROUTE_TARGET_CONSTRAINTS Family_Safi = 132 Family_SAFI_FLOW_SPEC_UNICAST Family_Safi = 133 Family_SAFI_FLOW_SPEC_VPN Family_Safi = 134 Family_SAFI_KEY_VALUE Family_Safi = 241 ) var Family_Safi_name = map[int32]string{ 0: "SAFI_UNKNOWN", 1: "SAFI_UNICAST", 2: "SAFI_MULTICAST", 4: "SAFI_MPLS_LABEL", 7: "SAFI_ENCAPSULATION", 65: "SAFI_VPLS", 70: "SAFI_EVPN", 128: "SAFI_MPLS_VPN", 129: "SAFI_MPLS_VPN_MULTICAST", 132: "SAFI_ROUTE_TARGET_CONSTRAINTS", 133: "SAFI_FLOW_SPEC_UNICAST", 134: "SAFI_FLOW_SPEC_VPN", 241: "SAFI_KEY_VALUE", } var Family_Safi_value = map[string]int32{ "SAFI_UNKNOWN": 0, "SAFI_UNICAST": 1, "SAFI_MULTICAST": 2, "SAFI_MPLS_LABEL": 4, "SAFI_ENCAPSULATION": 7, "SAFI_VPLS": 65, "SAFI_EVPN": 70, "SAFI_MPLS_VPN": 128, "SAFI_MPLS_VPN_MULTICAST": 129, "SAFI_ROUTE_TARGET_CONSTRAINTS": 132, "SAFI_FLOW_SPEC_UNICAST": 133, "SAFI_FLOW_SPEC_VPN": 134, "SAFI_KEY_VALUE": 241, } func (x Family_Safi) String() string { return proto.EnumName(Family_Safi_name, int32(x)) } func (Family_Safi) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{67, 1} } type RPKIValidation_State int32 const ( RPKIValidation_STATE_NONE RPKIValidation_State = 0 RPKIValidation_STATE_NOT_FOUND RPKIValidation_State = 1 RPKIValidation_STATE_VALID RPKIValidation_State = 2 RPKIValidation_STATE_INVALID RPKIValidation_State = 3 ) var RPKIValidation_State_name = map[int32]string{ 0: "STATE_NONE", 1: "STATE_NOT_FOUND", 2: "STATE_VALID", 3: "STATE_INVALID", } var RPKIValidation_State_value = map[string]int32{ "STATE_NONE": 0, "STATE_NOT_FOUND": 1, "STATE_VALID": 2, "STATE_INVALID": 3, } func (x RPKIValidation_State) String() string { return proto.EnumName(RPKIValidation_State_name, int32(x)) } func (RPKIValidation_State) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{68, 0} } type RPKIValidation_Reason int32 const ( RPKIValidation_REASOT_NONE RPKIValidation_Reason = 0 RPKIValidation_REASON_AS RPKIValidation_Reason = 1 RPKIValidation_REASON_LENGTH RPKIValidation_Reason = 2 ) var RPKIValidation_Reason_name = map[int32]string{ 0: "REASOT_NONE", 1: "REASON_AS", 2: "REASON_LENGTH", } var RPKIValidation_Reason_value = map[string]int32{ "REASOT_NONE": 0, "REASON_AS": 1, "REASON_LENGTH": 2, } func (x RPKIValidation_Reason) String() string { return proto.EnumName(RPKIValidation_Reason_name, int32(x)) } func (RPKIValidation_Reason) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{68, 1} } type PeerConf_RemovePrivateAs int32 const ( PeerConf_NONE PeerConf_RemovePrivateAs = 0 PeerConf_ALL PeerConf_RemovePrivateAs = 1 PeerConf_REPLACE PeerConf_RemovePrivateAs = 2 ) var PeerConf_RemovePrivateAs_name = map[int32]string{ 0: "NONE", 1: "ALL", 2: "REPLACE", } var PeerConf_RemovePrivateAs_value = map[string]int32{ "NONE": 0, "ALL": 1, "REPLACE": 2, } func (x PeerConf_RemovePrivateAs) String() string { return proto.EnumName(PeerConf_RemovePrivateAs_name, int32(x)) } func (PeerConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{77, 0} } type PeerGroupConf_RemovePrivateAs int32 const ( PeerGroupConf_NONE PeerGroupConf_RemovePrivateAs = 0 PeerGroupConf_ALL PeerGroupConf_RemovePrivateAs = 1 PeerGroupConf_REPLACE PeerGroupConf_RemovePrivateAs = 2 ) var PeerGroupConf_RemovePrivateAs_name = map[int32]string{ 0: "NONE", 1: "ALL", 2: "REPLACE", } var PeerGroupConf_RemovePrivateAs_value = map[string]int32{ "NONE": 0, "ALL": 1, "REPLACE": 2, } func (x PeerGroupConf_RemovePrivateAs) String() string { return proto.EnumName(PeerGroupConf_RemovePrivateAs_name, int32(x)) } func (PeerGroupConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{78, 0} } type PeerGroupState_RemovePrivateAs int32 const ( PeerGroupState_NONE PeerGroupState_RemovePrivateAs = 0 PeerGroupState_ALL PeerGroupState_RemovePrivateAs = 1 PeerGroupState_REPLACE PeerGroupState_RemovePrivateAs = 2 ) var PeerGroupState_RemovePrivateAs_name = map[int32]string{ 0: "NONE", 1: "ALL", 2: "REPLACE", } var PeerGroupState_RemovePrivateAs_value = map[string]int32{ "NONE": 0, "ALL": 1, "REPLACE": 2, } func (x PeerGroupState_RemovePrivateAs) String() string { return proto.EnumName(PeerGroupState_RemovePrivateAs_name, int32(x)) } func (PeerGroupState_RemovePrivateAs) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{79, 0} } type PeerState_SessionState int32 const ( PeerState_UNKNOWN PeerState_SessionState = 0 PeerState_IDLE PeerState_SessionState = 1 PeerState_CONNECT PeerState_SessionState = 2 PeerState_ACTIVE PeerState_SessionState = 3 PeerState_OPENSENT PeerState_SessionState = 4 PeerState_OPENCONFIRM PeerState_SessionState = 5 PeerState_ESTABLISHED PeerState_SessionState = 6 ) var PeerState_SessionState_name = map[int32]string{ 0: "UNKNOWN", 1: "IDLE", 2: "CONNECT", 3: "ACTIVE", 4: "OPENSENT", 5: "OPENCONFIRM", 6: "ESTABLISHED", } var PeerState_SessionState_value = map[string]int32{ "UNKNOWN": 0, "IDLE": 1, "CONNECT": 2, "ACTIVE": 3, "OPENSENT": 4, "OPENCONFIRM": 5, "ESTABLISHED": 6, } func (x PeerState_SessionState) String() string { return proto.EnumName(PeerState_SessionState_name, int32(x)) } func (PeerState_SessionState) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{82, 0} } type PeerState_AdminState int32 const ( PeerState_UP PeerState_AdminState = 0 PeerState_DOWN PeerState_AdminState = 1 PeerState_PFX_CT PeerState_AdminState = 2 ) var PeerState_AdminState_name = map[int32]string{ 0: "UP", 1: "DOWN", 2: "PFX_CT", } var PeerState_AdminState_value = map[string]int32{ "UP": 0, "DOWN": 1, "PFX_CT": 2, } func (x PeerState_AdminState) String() string { return proto.EnumName(PeerState_AdminState_name, int32(x)) } func (PeerState_AdminState) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{82, 1} } type Conditions_RouteType int32 const ( Conditions_ROUTE_TYPE_NONE Conditions_RouteType = 0 Conditions_ROUTE_TYPE_INTERNAL Conditions_RouteType = 1 Conditions_ROUTE_TYPE_EXTERNAL Conditions_RouteType = 2 Conditions_ROUTE_TYPE_LOCAL Conditions_RouteType = 3 ) var Conditions_RouteType_name = map[int32]string{ 0: "ROUTE_TYPE_NONE", 1: "ROUTE_TYPE_INTERNAL", 2: "ROUTE_TYPE_EXTERNAL", 3: "ROUTE_TYPE_LOCAL", } var Conditions_RouteType_value = map[string]int32{ "ROUTE_TYPE_NONE": 0, "ROUTE_TYPE_INTERNAL": 1, "ROUTE_TYPE_EXTERNAL": 2, "ROUTE_TYPE_LOCAL": 3, } func (x Conditions_RouteType) String() string { return proto.EnumName(Conditions_RouteType_name, int32(x)) } func (Conditions_RouteType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{123, 0} } type StartBgpRequest struct { Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"` } func (m *StartBgpRequest) Reset() { *m = StartBgpRequest{} } func (m *StartBgpRequest) String() string { return proto.CompactTextString(m) } func (*StartBgpRequest) ProtoMessage() {} func (*StartBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } func (m *StartBgpRequest) GetGlobal() *Global { if m != nil { return m.Global } return nil } type StopBgpRequest struct { } func (m *StopBgpRequest) Reset() { *m = StopBgpRequest{} } func (m *StopBgpRequest) String() string { return proto.CompactTextString(m) } func (*StopBgpRequest) ProtoMessage() {} func (*StopBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } type GetBgpRequest struct { } func (m *GetBgpRequest) Reset() { *m = GetBgpRequest{} } func (m *GetBgpRequest) String() string { return proto.CompactTextString(m) } func (*GetBgpRequest) ProtoMessage() {} func (*GetBgpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } type GetBgpResponse struct { Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"` } func (m *GetBgpResponse) Reset() { *m = GetBgpResponse{} } func (m *GetBgpResponse) String() string { return proto.CompactTextString(m) } func (*GetBgpResponse) ProtoMessage() {} func (*GetBgpResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } func (m *GetBgpResponse) GetGlobal() *Global { if m != nil { return m.Global } return nil } type AddPeerRequest struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` } func (m *AddPeerRequest) Reset() { *m = AddPeerRequest{} } func (m *AddPeerRequest) String() string { return proto.CompactTextString(m) } func (*AddPeerRequest) ProtoMessage() {} func (*AddPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } func (m *AddPeerRequest) GetPeer() *Peer { if m != nil { return m.Peer } return nil } type DeletePeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Interface string `protobuf:"bytes,2,opt,name=interface" json:"interface,omitempty"` } func (m *DeletePeerRequest) Reset() { *m = DeletePeerRequest{} } func (m *DeletePeerRequest) String() string { return proto.CompactTextString(m) } func (*DeletePeerRequest) ProtoMessage() {} func (*DeletePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } func (m *DeletePeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *DeletePeerRequest) GetInterface() string { if m != nil { return m.Interface } return "" } type ListPeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` EnableAdvertised bool `protobuf:"varint,2,opt,name=enableAdvertised" json:"enableAdvertised,omitempty"` } func (m *ListPeerRequest) Reset() { *m = ListPeerRequest{} } func (m *ListPeerRequest) String() string { return proto.CompactTextString(m) } func (*ListPeerRequest) ProtoMessage() {} func (*ListPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } func (m *ListPeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *ListPeerRequest) GetEnableAdvertised() bool { if m != nil { return m.EnableAdvertised } return false } type ListPeerResponse struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` } func (m *ListPeerResponse) Reset() { *m = ListPeerResponse{} } func (m *ListPeerResponse) String() string { return proto.CompactTextString(m) } func (*ListPeerResponse) ProtoMessage() {} func (*ListPeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } func (m *ListPeerResponse) GetPeer() *Peer { if m != nil { return m.Peer } return nil } type UpdatePeerRequest struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` // Calls SoftResetIn after updating the peer configuration if needed. DoSoftResetIn bool `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn" json:"do_soft_reset_in,omitempty"` } func (m *UpdatePeerRequest) Reset() { *m = UpdatePeerRequest{} } func (m *UpdatePeerRequest) String() string { return proto.CompactTextString(m) } func (*UpdatePeerRequest) ProtoMessage() {} func (*UpdatePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } func (m *UpdatePeerRequest) GetPeer() *Peer { if m != nil { return m.Peer } return nil } func (m *UpdatePeerRequest) GetDoSoftResetIn() bool { if m != nil { return m.DoSoftResetIn } return false } type UpdatePeerResponse struct { // Indicates whether calling SoftResetIn is required due to this update. If // "true" is set, the client should call SoftResetIn manually. If // "do_soft_reset_in = true" is set in the request, always returned with // "false". NeedsSoftResetIn bool `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn" json:"needs_soft_reset_in,omitempty"` } func (m *UpdatePeerResponse) Reset() { *m = UpdatePeerResponse{} } func (m *UpdatePeerResponse) String() string { return proto.CompactTextString(m) } func (*UpdatePeerResponse) ProtoMessage() {} func (*UpdatePeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } func (m *UpdatePeerResponse) GetNeedsSoftResetIn() bool { if m != nil { return m.NeedsSoftResetIn } return false } type ResetPeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Communication string `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"` Soft bool `protobuf:"varint,3,opt,name=soft" json:"soft,omitempty"` Direction ResetPeerRequest_SoftResetDirection `protobuf:"varint,4,opt,name=direction,enum=gobgpapi.ResetPeerRequest_SoftResetDirection" json:"direction,omitempty"` } func (m *ResetPeerRequest) Reset() { *m = ResetPeerRequest{} } func (m *ResetPeerRequest) String() string { return proto.CompactTextString(m) } func (*ResetPeerRequest) ProtoMessage() {} func (*ResetPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } func (m *ResetPeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *ResetPeerRequest) GetCommunication() string { if m != nil { return m.Communication } return "" } func (m *ResetPeerRequest) GetSoft() bool { if m != nil { return m.Soft } return false } func (m *ResetPeerRequest) GetDirection() ResetPeerRequest_SoftResetDirection { if m != nil { return m.Direction } return ResetPeerRequest_IN } type ShutdownPeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Communication string `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"` } func (m *ShutdownPeerRequest) Reset() { *m = ShutdownPeerRequest{} } func (m *ShutdownPeerRequest) String() string { return proto.CompactTextString(m) } func (*ShutdownPeerRequest) ProtoMessage() {} func (*ShutdownPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} } func (m *ShutdownPeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *ShutdownPeerRequest) GetCommunication() string { if m != nil { return m.Communication } return "" } type EnablePeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *EnablePeerRequest) Reset() { *m = EnablePeerRequest{} } func (m *EnablePeerRequest) String() string { return proto.CompactTextString(m) } func (*EnablePeerRequest) ProtoMessage() {} func (*EnablePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} } func (m *EnablePeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } type DisablePeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Communication string `protobuf:"bytes,2,opt,name=communication" json:"communication,omitempty"` } func (m *DisablePeerRequest) Reset() { *m = DisablePeerRequest{} } func (m *DisablePeerRequest) String() string { return proto.CompactTextString(m) } func (*DisablePeerRequest) ProtoMessage() {} func (*DisablePeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} } func (m *DisablePeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *DisablePeerRequest) GetCommunication() string { if m != nil { return m.Communication } return "" } type MonitorPeerRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Current bool `protobuf:"varint,2,opt,name=current" json:"current,omitempty"` } func (m *MonitorPeerRequest) Reset() { *m = MonitorPeerRequest{} } func (m *MonitorPeerRequest) String() string { return proto.CompactTextString(m) } func (*MonitorPeerRequest) ProtoMessage() {} func (*MonitorPeerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} } func (m *MonitorPeerRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *MonitorPeerRequest) GetCurrent() bool { if m != nil { return m.Current } return false } type MonitorPeerResponse struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` } func (m *MonitorPeerResponse) Reset() { *m = MonitorPeerResponse{} } func (m *MonitorPeerResponse) String() string { return proto.CompactTextString(m) } func (*MonitorPeerResponse) ProtoMessage() {} func (*MonitorPeerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} } func (m *MonitorPeerResponse) GetPeer() *Peer { if m != nil { return m.Peer } return nil } type AddPeerGroupRequest struct { PeerGroup *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"` } func (m *AddPeerGroupRequest) Reset() { *m = AddPeerGroupRequest{} } func (m *AddPeerGroupRequest) String() string { return proto.CompactTextString(m) } func (*AddPeerGroupRequest) ProtoMessage() {} func (*AddPeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} } func (m *AddPeerGroupRequest) GetPeerGroup() *PeerGroup { if m != nil { return m.PeerGroup } return nil } type DeletePeerGroupRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *DeletePeerGroupRequest) Reset() { *m = DeletePeerGroupRequest{} } func (m *DeletePeerGroupRequest) String() string { return proto.CompactTextString(m) } func (*DeletePeerGroupRequest) ProtoMessage() {} func (*DeletePeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} } func (m *DeletePeerGroupRequest) GetName() string { if m != nil { return m.Name } return "" } type UpdatePeerGroupRequest struct { PeerGroup *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"` DoSoftResetIn bool `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn" json:"do_soft_reset_in,omitempty"` } func (m *UpdatePeerGroupRequest) Reset() { *m = UpdatePeerGroupRequest{} } func (m *UpdatePeerGroupRequest) String() string { return proto.CompactTextString(m) } func (*UpdatePeerGroupRequest) ProtoMessage() {} func (*UpdatePeerGroupRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} } func (m *UpdatePeerGroupRequest) GetPeerGroup() *PeerGroup { if m != nil { return m.PeerGroup } return nil } func (m *UpdatePeerGroupRequest) GetDoSoftResetIn() bool { if m != nil { return m.DoSoftResetIn } return false } type UpdatePeerGroupResponse struct { NeedsSoftResetIn bool `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn" json:"needs_soft_reset_in,omitempty"` } func (m *UpdatePeerGroupResponse) Reset() { *m = UpdatePeerGroupResponse{} } func (m *UpdatePeerGroupResponse) String() string { return proto.CompactTextString(m) } func (*UpdatePeerGroupResponse) ProtoMessage() {} func (*UpdatePeerGroupResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} } func (m *UpdatePeerGroupResponse) GetNeedsSoftResetIn() bool { if m != nil { return m.NeedsSoftResetIn } return false } type AddDynamicNeighborRequest struct { DynamicNeighbor *DynamicNeighbor `protobuf:"bytes,1,opt,name=dynamic_neighbor,json=dynamicNeighbor" json:"dynamic_neighbor,omitempty"` } func (m *AddDynamicNeighborRequest) Reset() { *m = AddDynamicNeighborRequest{} } func (m *AddDynamicNeighborRequest) String() string { return proto.CompactTextString(m) } func (*AddDynamicNeighborRequest) ProtoMessage() {} func (*AddDynamicNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} } func (m *AddDynamicNeighborRequest) GetDynamicNeighbor() *DynamicNeighbor { if m != nil { return m.DynamicNeighbor } return nil } type AddPathRequest struct { Resource Resource `protobuf:"varint,1,opt,name=resource,enum=gobgpapi.Resource" json:"resource,omitempty"` VrfId string `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"` Path *Path `protobuf:"bytes,3,opt,name=path" json:"path,omitempty"` } func (m *AddPathRequest) Reset() { *m = AddPathRequest{} } func (m *AddPathRequest) String() string { return proto.CompactTextString(m) } func (*AddPathRequest) ProtoMessage() {} func (*AddPathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{21} } func (m *AddPathRequest) GetResource() Resource { if m != nil { return m.Resource } return Resource_GLOBAL } func (m *AddPathRequest) GetVrfId() string { if m != nil { return m.VrfId } return "" } func (m *AddPathRequest) GetPath() *Path { if m != nil { return m.Path } return nil } type AddPathResponse struct { Uuid []byte `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` } func (m *AddPathResponse) Reset() { *m = AddPathResponse{} } func (m *AddPathResponse) String() string { return proto.CompactTextString(m) } func (*AddPathResponse) ProtoMessage() {} func (*AddPathResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} } func (m *AddPathResponse) GetUuid() []byte { if m != nil { return m.Uuid } return nil } type DeletePathRequest struct { Resource Resource `protobuf:"varint,1,opt,name=resource,enum=gobgpapi.Resource" json:"resource,omitempty"` VrfId string `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"` Family *Family `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"` Path *Path `protobuf:"bytes,4,opt,name=path" json:"path,omitempty"` Uuid []byte `protobuf:"bytes,5,opt,name=uuid,proto3" json:"uuid,omitempty"` } func (m *DeletePathRequest) Reset() { *m = DeletePathRequest{} } func (m *DeletePathRequest) String() string { return proto.CompactTextString(m) } func (*DeletePathRequest) ProtoMessage() {} func (*DeletePathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{23} } func (m *DeletePathRequest) GetResource() Resource { if m != nil { return m.Resource } return Resource_GLOBAL } func (m *DeletePathRequest) GetVrfId() string { if m != nil { return m.VrfId } return "" } func (m *DeletePathRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *DeletePathRequest) GetPath() *Path { if m != nil { return m.Path } return nil } func (m *DeletePathRequest) GetUuid() []byte { if m != nil { return m.Uuid } return nil } type ListPathRequest struct { Type Resource `protobuf:"varint,1,opt,name=type,enum=gobgpapi.Resource" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` Family *Family `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"` Prefixes []*TableLookupPrefix `protobuf:"bytes,4,rep,name=prefixes" json:"prefixes,omitempty"` } func (m *ListPathRequest) Reset() { *m = ListPathRequest{} } func (m *ListPathRequest) String() string { return proto.CompactTextString(m) } func (*ListPathRequest) ProtoMessage() {} func (*ListPathRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} } func (m *ListPathRequest) GetType() Resource { if m != nil { return m.Type } return Resource_GLOBAL } func (m *ListPathRequest) GetName() string { if m != nil { return m.Name } return "" } func (m *ListPathRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *ListPathRequest) GetPrefixes() []*TableLookupPrefix { if m != nil { return m.Prefixes } return nil } type ListPathResponse struct { Destination *Destination `protobuf:"bytes,1,opt,name=destination" json:"destination,omitempty"` } func (m *ListPathResponse) Reset() { *m = ListPathResponse{} } func (m *ListPathResponse) String() string { return proto.CompactTextString(m) } func (*ListPathResponse) ProtoMessage() {} func (*ListPathResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} } func (m *ListPathResponse) GetDestination() *Destination { if m != nil { return m.Destination } return nil } type AddPathStreamRequest struct { Resource Resource `protobuf:"varint,1,opt,name=resource,enum=gobgpapi.Resource" json:"resource,omitempty"` VrfId string `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId" json:"vrf_id,omitempty"` Paths []*Path `protobuf:"bytes,3,rep,name=paths" json:"paths,omitempty"` } func (m *AddPathStreamRequest) Reset() { *m = AddPathStreamRequest{} } func (m *AddPathStreamRequest) String() string { return proto.CompactTextString(m) } func (*AddPathStreamRequest) ProtoMessage() {} func (*AddPathStreamRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} } func (m *AddPathStreamRequest) GetResource() Resource { if m != nil { return m.Resource } return Resource_GLOBAL } func (m *AddPathStreamRequest) GetVrfId() string { if m != nil { return m.VrfId } return "" } func (m *AddPathStreamRequest) GetPaths() []*Path { if m != nil { return m.Paths } return nil } type GetTableRequest struct { Type Resource `protobuf:"varint,1,opt,name=type,enum=gobgpapi.Resource" json:"type,omitempty"` Family *Family `protobuf:"bytes,2,opt,name=family" json:"family,omitempty"` Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` } func (m *GetTableRequest) Reset() { *m = GetTableRequest{} } func (m *GetTableRequest) String() string { return proto.CompactTextString(m) } func (*GetTableRequest) ProtoMessage() {} func (*GetTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{27} } func (m *GetTableRequest) GetType() Resource { if m != nil { return m.Type } return Resource_GLOBAL } func (m *GetTableRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *GetTableRequest) GetName() string { if m != nil { return m.Name } return "" } type GetTableResponse struct { NumDestination uint64 `protobuf:"varint,1,opt,name=num_destination,json=numDestination" json:"num_destination,omitempty"` NumPath uint64 `protobuf:"varint,2,opt,name=num_path,json=numPath" json:"num_path,omitempty"` NumAccepted uint64 `protobuf:"varint,3,opt,name=num_accepted,json=numAccepted" json:"num_accepted,omitempty"` } func (m *GetTableResponse) Reset() { *m = GetTableResponse{} } func (m *GetTableResponse) String() string { return proto.CompactTextString(m) } func (*GetTableResponse) ProtoMessage() {} func (*GetTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} } func (m *GetTableResponse) GetNumDestination() uint64 { if m != nil { return m.NumDestination } return 0 } func (m *GetTableResponse) GetNumPath() uint64 { if m != nil { return m.NumPath } return 0 } func (m *GetTableResponse) GetNumAccepted() uint64 { if m != nil { return m.NumAccepted } return 0 } type MonitorTableRequest struct { Type Resource `protobuf:"varint,1,opt,name=type,enum=gobgpapi.Resource" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` Family *Family `protobuf:"bytes,3,opt,name=family" json:"family,omitempty"` Current bool `protobuf:"varint,4,opt,name=current" json:"current,omitempty"` PostPolicy bool `protobuf:"varint,5,opt,name=post_policy,json=postPolicy" json:"post_policy,omitempty"` } func (m *MonitorTableRequest) Reset() { *m = MonitorTableRequest{} } func (m *MonitorTableRequest) String() string { return proto.CompactTextString(m) } func (*MonitorTableRequest) ProtoMessage() {} func (*MonitorTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{29} } func (m *MonitorTableRequest) GetType() Resource { if m != nil { return m.Type } return Resource_GLOBAL } func (m *MonitorTableRequest) GetName() string { if m != nil { return m.Name } return "" } func (m *MonitorTableRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *MonitorTableRequest) GetCurrent() bool { if m != nil { return m.Current } return false } func (m *MonitorTableRequest) GetPostPolicy() bool { if m != nil { return m.PostPolicy } return false } type MonitorTableResponse struct { Path *Path `protobuf:"bytes,1,opt,name=path" json:"path,omitempty"` } func (m *MonitorTableResponse) Reset() { *m = MonitorTableResponse{} } func (m *MonitorTableResponse) String() string { return proto.CompactTextString(m) } func (*MonitorTableResponse) ProtoMessage() {} func (*MonitorTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} } func (m *MonitorTableResponse) GetPath() *Path { if m != nil { return m.Path } return nil } type AddVrfRequest struct { Vrf *Vrf `protobuf:"bytes,1,opt,name=vrf" json:"vrf,omitempty"` } func (m *AddVrfRequest) Reset() { *m = AddVrfRequest{} } func (m *AddVrfRequest) String() string { return proto.CompactTextString(m) } func (*AddVrfRequest) ProtoMessage() {} func (*AddVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{31} } func (m *AddVrfRequest) GetVrf() *Vrf { if m != nil { return m.Vrf } return nil } type DeleteVrfRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *DeleteVrfRequest) Reset() { *m = DeleteVrfRequest{} } func (m *DeleteVrfRequest) String() string { return proto.CompactTextString(m) } func (*DeleteVrfRequest) ProtoMessage() {} func (*DeleteVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{32} } func (m *DeleteVrfRequest) GetName() string { if m != nil { return m.Name } return "" } type ListVrfRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *ListVrfRequest) Reset() { *m = ListVrfRequest{} } func (m *ListVrfRequest) String() string { return proto.CompactTextString(m) } func (*ListVrfRequest) ProtoMessage() {} func (*ListVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{33} } func (m *ListVrfRequest) GetName() string { if m != nil { return m.Name } return "" } type ListVrfResponse struct { Vrf *Vrf `protobuf:"bytes,1,opt,name=vrf" json:"vrf,omitempty"` } func (m *ListVrfResponse) Reset() { *m = ListVrfResponse{} } func (m *ListVrfResponse) String() string { return proto.CompactTextString(m) } func (*ListVrfResponse) ProtoMessage() {} func (*ListVrfResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} } func (m *ListVrfResponse) GetVrf() *Vrf { if m != nil { return m.Vrf } return nil } type AddPolicyRequest struct { Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` // if this flag is set, gobgpd won't define new statements // but refer existing statements using statement's names in this arguments. ReferExistingStatements bool `protobuf:"varint,2,opt,name=refer_existing_statements,json=referExistingStatements" json:"refer_existing_statements,omitempty"` } func (m *AddPolicyRequest) Reset() { *m = AddPolicyRequest{} } func (m *AddPolicyRequest) String() string { return proto.CompactTextString(m) } func (*AddPolicyRequest) ProtoMessage() {} func (*AddPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} } func (m *AddPolicyRequest) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } func (m *AddPolicyRequest) GetReferExistingStatements() bool { if m != nil { return m.ReferExistingStatements } return false } type DeletePolicyRequest struct { Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` // if this flag is set, gobgpd won't delete any statements // even if some statements get not used by any policy by this operation. PreserveStatements bool `protobuf:"varint,2,opt,name=preserve_statements,json=preserveStatements" json:"preserve_statements,omitempty"` All bool `protobuf:"varint,3,opt,name=all" json:"all,omitempty"` } func (m *DeletePolicyRequest) Reset() { *m = DeletePolicyRequest{} } func (m *DeletePolicyRequest) String() string { return proto.CompactTextString(m) } func (*DeletePolicyRequest) ProtoMessage() {} func (*DeletePolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{36} } func (m *DeletePolicyRequest) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } func (m *DeletePolicyRequest) GetPreserveStatements() bool { if m != nil { return m.PreserveStatements } return false } func (m *DeletePolicyRequest) GetAll() bool { if m != nil { return m.All } return false } type ListPolicyRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *ListPolicyRequest) Reset() { *m = ListPolicyRequest{} } func (m *ListPolicyRequest) String() string { return proto.CompactTextString(m) } func (*ListPolicyRequest) ProtoMessage() {} func (*ListPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{37} } func (m *ListPolicyRequest) GetName() string { if m != nil { return m.Name } return "" } type ListPolicyResponse struct { Policy *Policy `protobuf:"bytes,1,opt,name=policy" json:"policy,omitempty"` } func (m *ListPolicyResponse) Reset() { *m = ListPolicyResponse{} } func (m *ListPolicyResponse) String() string { return proto.CompactTextString(m) } func (*ListPolicyResponse) ProtoMessage() {} func (*ListPolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{38} } func (m *ListPolicyResponse) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } type SetPoliciesRequest struct { DefinedSets []*DefinedSet `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets" json:"defined_sets,omitempty"` Policies []*Policy `protobuf:"bytes,2,rep,name=policies" json:"policies,omitempty"` Assignments []*PolicyAssignment `protobuf:"bytes,3,rep,name=assignments" json:"assignments,omitempty"` } func (m *SetPoliciesRequest) Reset() { *m = SetPoliciesRequest{} } func (m *SetPoliciesRequest) String() string { return proto.CompactTextString(m) } func (*SetPoliciesRequest) ProtoMessage() {} func (*SetPoliciesRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} } func (m *SetPoliciesRequest) GetDefinedSets() []*DefinedSet { if m != nil { return m.DefinedSets } return nil } func (m *SetPoliciesRequest) GetPolicies() []*Policy { if m != nil { return m.Policies } return nil } func (m *SetPoliciesRequest) GetAssignments() []*PolicyAssignment { if m != nil { return m.Assignments } return nil } type AddDefinedSetRequest struct { DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"` } func (m *AddDefinedSetRequest) Reset() { *m = AddDefinedSetRequest{} } func (m *AddDefinedSetRequest) String() string { return proto.CompactTextString(m) } func (*AddDefinedSetRequest) ProtoMessage() {} func (*AddDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{40} } func (m *AddDefinedSetRequest) GetDefinedSet() *DefinedSet { if m != nil { return m.DefinedSet } return nil } type DeleteDefinedSetRequest struct { DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"` All bool `protobuf:"varint,2,opt,name=all" json:"all,omitempty"` } func (m *DeleteDefinedSetRequest) Reset() { *m = DeleteDefinedSetRequest{} } func (m *DeleteDefinedSetRequest) String() string { return proto.CompactTextString(m) } func (*DeleteDefinedSetRequest) ProtoMessage() {} func (*DeleteDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} } func (m *DeleteDefinedSetRequest) GetDefinedSet() *DefinedSet { if m != nil { return m.DefinedSet } return nil } func (m *DeleteDefinedSetRequest) GetAll() bool { if m != nil { return m.All } return false } type ListDefinedSetRequest struct { Type DefinedType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.DefinedType" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` } func (m *ListDefinedSetRequest) Reset() { *m = ListDefinedSetRequest{} } func (m *ListDefinedSetRequest) String() string { return proto.CompactTextString(m) } func (*ListDefinedSetRequest) ProtoMessage() {} func (*ListDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{42} } func (m *ListDefinedSetRequest) GetType() DefinedType { if m != nil { return m.Type } return DefinedType_PREFIX } func (m *ListDefinedSetRequest) GetName() string { if m != nil { return m.Name } return "" } type ListDefinedSetResponse struct { DefinedSet *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet" json:"defined_set,omitempty"` } func (m *ListDefinedSetResponse) Reset() { *m = ListDefinedSetResponse{} } func (m *ListDefinedSetResponse) String() string { return proto.CompactTextString(m) } func (*ListDefinedSetResponse) ProtoMessage() {} func (*ListDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} } func (m *ListDefinedSetResponse) GetDefinedSet() *DefinedSet { if m != nil { return m.DefinedSet } return nil } type AddStatementRequest struct { Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"` } func (m *AddStatementRequest) Reset() { *m = AddStatementRequest{} } func (m *AddStatementRequest) String() string { return proto.CompactTextString(m) } func (*AddStatementRequest) ProtoMessage() {} func (*AddStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{44} } func (m *AddStatementRequest) GetStatement() *Statement { if m != nil { return m.Statement } return nil } type DeleteStatementRequest struct { Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"` All bool `protobuf:"varint,2,opt,name=all" json:"all,omitempty"` } func (m *DeleteStatementRequest) Reset() { *m = DeleteStatementRequest{} } func (m *DeleteStatementRequest) String() string { return proto.CompactTextString(m) } func (*DeleteStatementRequest) ProtoMessage() {} func (*DeleteStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} } func (m *DeleteStatementRequest) GetStatement() *Statement { if m != nil { return m.Statement } return nil } func (m *DeleteStatementRequest) GetAll() bool { if m != nil { return m.All } return false } type ListStatementRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` } func (m *ListStatementRequest) Reset() { *m = ListStatementRequest{} } func (m *ListStatementRequest) String() string { return proto.CompactTextString(m) } func (*ListStatementRequest) ProtoMessage() {} func (*ListStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} } func (m *ListStatementRequest) GetName() string { if m != nil { return m.Name } return "" } type ListStatementResponse struct { Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"` } func (m *ListStatementResponse) Reset() { *m = ListStatementResponse{} } func (m *ListStatementResponse) String() string { return proto.CompactTextString(m) } func (*ListStatementResponse) ProtoMessage() {} func (*ListStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} } func (m *ListStatementResponse) GetStatement() *Statement { if m != nil { return m.Statement } return nil } type AddPolicyAssignmentRequest struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *AddPolicyAssignmentRequest) Reset() { *m = AddPolicyAssignmentRequest{} } func (m *AddPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*AddPolicyAssignmentRequest) ProtoMessage() {} func (*AddPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{48} } func (m *AddPolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type DeletePolicyAssignmentRequest struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` All bool `protobuf:"varint,2,opt,name=all" json:"all,omitempty"` } func (m *DeletePolicyAssignmentRequest) Reset() { *m = DeletePolicyAssignmentRequest{} } func (m *DeletePolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*DeletePolicyAssignmentRequest) ProtoMessage() {} func (*DeletePolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{49} } func (m *DeletePolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } func (m *DeletePolicyAssignmentRequest) GetAll() bool { if m != nil { return m.All } return false } type ListPolicyAssignmentRequest struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Direction PolicyDirection `protobuf:"varint,2,opt,name=direction,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"` } func (m *ListPolicyAssignmentRequest) Reset() { *m = ListPolicyAssignmentRequest{} } func (m *ListPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*ListPolicyAssignmentRequest) ProtoMessage() {} func (*ListPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{50} } func (m *ListPolicyAssignmentRequest) GetName() string { if m != nil { return m.Name } return "" } func (m *ListPolicyAssignmentRequest) GetDirection() PolicyDirection { if m != nil { return m.Direction } return PolicyDirection_UNKNOWN } type ListPolicyAssignmentResponse struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *ListPolicyAssignmentResponse) Reset() { *m = ListPolicyAssignmentResponse{} } func (m *ListPolicyAssignmentResponse) String() string { return proto.CompactTextString(m) } func (*ListPolicyAssignmentResponse) ProtoMessage() {} func (*ListPolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{51} } func (m *ListPolicyAssignmentResponse) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type SetPolicyAssignmentRequest struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *SetPolicyAssignmentRequest) Reset() { *m = SetPolicyAssignmentRequest{} } func (m *SetPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*SetPolicyAssignmentRequest) ProtoMessage() {} func (*SetPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{52} } func (m *SetPolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type AddRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` Lifetime int64 `protobuf:"varint,3,opt,name=lifetime" json:"lifetime,omitempty"` } func (m *AddRpkiRequest) Reset() { *m = AddRpkiRequest{} } func (m *AddRpkiRequest) String() string { return proto.CompactTextString(m) } func (*AddRpkiRequest) ProtoMessage() {} func (*AddRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{53} } func (m *AddRpkiRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *AddRpkiRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } func (m *AddRpkiRequest) GetLifetime() int64 { if m != nil { return m.Lifetime } return 0 } type DeleteRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` } func (m *DeleteRpkiRequest) Reset() { *m = DeleteRpkiRequest{} } func (m *DeleteRpkiRequest) String() string { return proto.CompactTextString(m) } func (*DeleteRpkiRequest) ProtoMessage() {} func (*DeleteRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{54} } func (m *DeleteRpkiRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *DeleteRpkiRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } type ListRpkiRequest struct { Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"` } func (m *ListRpkiRequest) Reset() { *m = ListRpkiRequest{} } func (m *ListRpkiRequest) String() string { return proto.CompactTextString(m) } func (*ListRpkiRequest) ProtoMessage() {} func (*ListRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{55} } func (m *ListRpkiRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } type ListRpkiResponse struct { Server *Rpki `protobuf:"bytes,1,opt,name=server" json:"server,omitempty"` } func (m *ListRpkiResponse) Reset() { *m = ListRpkiResponse{} } func (m *ListRpkiResponse) String() string { return proto.CompactTextString(m) } func (*ListRpkiResponse) ProtoMessage() {} func (*ListRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{56} } func (m *ListRpkiResponse) GetServer() *Rpki { if m != nil { return m.Server } return nil } type EnableRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` } func (m *EnableRpkiRequest) Reset() { *m = EnableRpkiRequest{} } func (m *EnableRpkiRequest) String() string { return proto.CompactTextString(m) } func (*EnableRpkiRequest) ProtoMessage() {} func (*EnableRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{57} } func (m *EnableRpkiRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *EnableRpkiRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } type DisableRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` } func (m *DisableRpkiRequest) Reset() { *m = DisableRpkiRequest{} } func (m *DisableRpkiRequest) String() string { return proto.CompactTextString(m) } func (*DisableRpkiRequest) ProtoMessage() {} func (*DisableRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{58} } func (m *DisableRpkiRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *DisableRpkiRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } type ResetRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` Soft bool `protobuf:"varint,3,opt,name=soft" json:"soft,omitempty"` } func (m *ResetRpkiRequest) Reset() { *m = ResetRpkiRequest{} } func (m *ResetRpkiRequest) String() string { return proto.CompactTextString(m) } func (*ResetRpkiRequest) ProtoMessage() {} func (*ResetRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{59} } func (m *ResetRpkiRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *ResetRpkiRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } func (m *ResetRpkiRequest) GetSoft() bool { if m != nil { return m.Soft } return false } type ListRpkiTableRequest struct { Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"` } func (m *ListRpkiTableRequest) Reset() { *m = ListRpkiTableRequest{} } func (m *ListRpkiTableRequest) String() string { return proto.CompactTextString(m) } func (*ListRpkiTableRequest) ProtoMessage() {} func (*ListRpkiTableRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{60} } func (m *ListRpkiTableRequest) GetFamily() *Family { if m != nil { return m.Family } return nil } type ListRpkiTableResponse struct { Roa *Roa `protobuf:"bytes,1,opt,name=roa" json:"roa,omitempty"` } func (m *ListRpkiTableResponse) Reset() { *m = ListRpkiTableResponse{} } func (m *ListRpkiTableResponse) String() string { return proto.CompactTextString(m) } func (*ListRpkiTableResponse) ProtoMessage() {} func (*ListRpkiTableResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{61} } func (m *ListRpkiTableResponse) GetRoa() *Roa { if m != nil { return m.Roa } return nil } type EnableZebraRequest struct { Url string `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"` RouteTypes []string `protobuf:"bytes,2,rep,name=route_types,json=routeTypes" json:"route_types,omitempty"` Version uint32 `protobuf:"varint,3,opt,name=version" json:"version,omitempty"` NexthopTriggerEnable bool `protobuf:"varint,4,opt,name=nexthop_trigger_enable,json=nexthopTriggerEnable" json:"nexthop_trigger_enable,omitempty"` NexthopTriggerDelay uint32 `protobuf:"varint,5,opt,name=nexthop_trigger_delay,json=nexthopTriggerDelay" json:"nexthop_trigger_delay,omitempty"` } func (m *EnableZebraRequest) Reset() { *m = EnableZebraRequest{} } func (m *EnableZebraRequest) String() string { return proto.CompactTextString(m) } func (*EnableZebraRequest) ProtoMessage() {} func (*EnableZebraRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{62} } func (m *EnableZebraRequest) GetUrl() string { if m != nil { return m.Url } return "" } func (m *EnableZebraRequest) GetRouteTypes() []string { if m != nil { return m.RouteTypes } return nil } func (m *EnableZebraRequest) GetVersion() uint32 { if m != nil { return m.Version } return 0 } func (m *EnableZebraRequest) GetNexthopTriggerEnable() bool { if m != nil { return m.NexthopTriggerEnable } return false } func (m *EnableZebraRequest) GetNexthopTriggerDelay() uint32 { if m != nil { return m.NexthopTriggerDelay } return 0 } type EnableMrtRequest struct { DumpType int32 `protobuf:"varint,1,opt,name=dump_type,json=dumpType" json:"dump_type,omitempty"` Filename string `protobuf:"bytes,2,opt,name=filename" json:"filename,omitempty"` DumpInterval uint64 `protobuf:"varint,3,opt,name=dump_interval" json:"dump_interval,omitempty"` RotationInterval uint64 `protobuf:"varint,4,opt,name=rotation_interval" json:"rotation_interval,omitempty"` } func (m *EnableMrtRequest) Reset() { *m = EnableMrtRequest{} } func (m *EnableMrtRequest) String() string { return proto.CompactTextString(m) } func (*EnableMrtRequest) ProtoMessage() {} func (*EnableMrtRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{63} } func (m *EnableMrtRequest) GetDumpType() int32 { if m != nil { return m.DumpType } return 0 } func (m *EnableMrtRequest) GetFilename() string { if m != nil { return m.Filename } return "" } func (m *EnableMrtRequest) GetDumpInterval() uint64 { if m != nil { return m.DumpInterval } return 0 } func (m *EnableMrtRequest) GetRotationInterval() uint64 { if m != nil { return m.RotationInterval } return 0 } type DisableMrtRequest struct { } func (m *DisableMrtRequest) Reset() { *m = DisableMrtRequest{} } func (m *DisableMrtRequest) String() string { return proto.CompactTextString(m) } func (*DisableMrtRequest) ProtoMessage() {} func (*DisableMrtRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{64} } type AddBmpRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` Type AddBmpRequest_MonitoringPolicy `protobuf:"varint,3,opt,name=type,enum=gobgpapi.AddBmpRequest_MonitoringPolicy" json:"type,omitempty"` StatisticsTimeout int32 `protobuf:"varint,4,opt,name=statistics_timeout" json:"statistics_timeout,omitempty"` } func (m *AddBmpRequest) Reset() { *m = AddBmpRequest{} } func (m *AddBmpRequest) String() string { return proto.CompactTextString(m) } func (*AddBmpRequest) ProtoMessage() {} func (*AddBmpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{65} } func (m *AddBmpRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *AddBmpRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } func (m *AddBmpRequest) GetType() AddBmpRequest_MonitoringPolicy { if m != nil { return m.Type } return AddBmpRequest_PRE } func (m *AddBmpRequest) GetStatisticsTimeout() int32 { if m != nil { return m.StatisticsTimeout } return 0 } type DeleteBmpRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Port uint32 `protobuf:"varint,2,opt,name=port" json:"port,omitempty"` } func (m *DeleteBmpRequest) Reset() { *m = DeleteBmpRequest{} } func (m *DeleteBmpRequest) String() string { return proto.CompactTextString(m) } func (*DeleteBmpRequest) ProtoMessage() {} func (*DeleteBmpRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{66} } func (m *DeleteBmpRequest) GetAddress() string { if m != nil { return m.Address } return "" } func (m *DeleteBmpRequest) GetPort() uint32 { if m != nil { return m.Port } return 0 } type Family struct { Afi Family_Afi `protobuf:"varint,1,opt,name=afi,enum=gobgpapi.Family_Afi" json:"afi,omitempty"` Safi Family_Safi `protobuf:"varint,2,opt,name=safi,enum=gobgpapi.Family_Safi" json:"safi,omitempty"` } func (m *Family) Reset() { *m = Family{} } func (m *Family) String() string { return proto.CompactTextString(m) } func (*Family) ProtoMessage() {} func (*Family) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{67} } func (m *Family) GetAfi() Family_Afi { if m != nil { return m.Afi } return Family_AFI_UNKNOWN } func (m *Family) GetSafi() Family_Safi { if m != nil { return m.Safi } return Family_SAFI_UNKNOWN } type RPKIValidation struct { State RPKIValidation_State `protobuf:"varint,1,opt,name=state,enum=gobgpapi.RPKIValidation_State" json:"state,omitempty"` Reason RPKIValidation_Reason `protobuf:"varint,2,opt,name=reason,enum=gobgpapi.RPKIValidation_Reason" json:"reason,omitempty"` Matched []*Roa `protobuf:"bytes,3,rep,name=matched" json:"matched,omitempty"` UnmatchedAs []*Roa `protobuf:"bytes,4,rep,name=unmatched_as,json=unmatchedAs" json:"unmatched_as,omitempty"` UnmatchedLength []*Roa `protobuf:"bytes,5,rep,name=unmatched_length,json=unmatchedLength" json:"unmatched_length,omitempty"` } func (m *RPKIValidation) Reset() { *m = RPKIValidation{} } func (m *RPKIValidation) String() string { return proto.CompactTextString(m) } func (*RPKIValidation) ProtoMessage() {} func (*RPKIValidation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{68} } func (m *RPKIValidation) GetState() RPKIValidation_State { if m != nil { return m.State } return RPKIValidation_STATE_NONE } func (m *RPKIValidation) GetReason() RPKIValidation_Reason { if m != nil { return m.Reason } return RPKIValidation_REASOT_NONE } func (m *RPKIValidation) GetMatched() []*Roa { if m != nil { return m.Matched } return nil } func (m *RPKIValidation) GetUnmatchedAs() []*Roa { if m != nil { return m.UnmatchedAs } return nil } func (m *RPKIValidation) GetUnmatchedLength() []*Roa { if m != nil { return m.UnmatchedLength } return nil } type Path struct { Nlri []byte `protobuf:"bytes,1,opt,name=nlri,proto3" json:"nlri,omitempty"` Pattrs [][]byte `protobuf:"bytes,2,rep,name=pattrs,proto3" json:"pattrs,omitempty"` Age int64 `protobuf:"varint,3,opt,name=age" json:"age,omitempty"` Best bool `protobuf:"varint,4,opt,name=best" json:"best,omitempty"` IsWithdraw bool `protobuf:"varint,5,opt,name=is_withdraw,json=isWithdraw" json:"is_withdraw,omitempty"` ValidationDetail *RPKIValidation `protobuf:"bytes,7,opt,name=validation_detail,json=validationDetail" json:"validation_detail,omitempty"` NoImplicitWithdraw bool `protobuf:"varint,8,opt,name=no_implicit_withdraw,json=noImplicitWithdraw" json:"no_implicit_withdraw,omitempty"` Family *Family `protobuf:"bytes,9,opt,name=family" json:"family,omitempty"` SourceAsn uint32 `protobuf:"varint,10,opt,name=source_asn,json=sourceAsn" json:"source_asn,omitempty"` SourceId string `protobuf:"bytes,11,opt,name=source_id,json=sourceId" json:"source_id,omitempty"` Filtered bool `protobuf:"varint,12,opt,name=filtered" json:"filtered,omitempty"` Stale bool `protobuf:"varint,13,opt,name=stale" json:"stale,omitempty"` IsFromExternal bool `protobuf:"varint,14,opt,name=is_from_external,json=isFromExternal" json:"is_from_external,omitempty"` NeighborIp string `protobuf:"bytes,15,opt,name=neighbor_ip,json=neighborIp" json:"neighbor_ip,omitempty"` Uuid []byte `protobuf:"bytes,16,opt,name=uuid,proto3" json:"uuid,omitempty"` IsNexthopInvalid bool `protobuf:"varint,17,opt,name=is_nexthop_invalid,json=isNexthopInvalid" json:"is_nexthop_invalid,omitempty"` Identifier uint32 `protobuf:"varint,18,opt,name=identifier" json:"identifier,omitempty"` LocalIdentifier uint32 `protobuf:"varint,19,opt,name=local_identifier,json=localIdentifier" json:"local_identifier,omitempty"` // One of the following defined in "api/attribute.proto": // - IPAddressPrefix // - LabeledIPAddressPrefix // - EncapsulationNLRI // - EVPNEthernetAutoDiscoveryRoute // - EVPNMACIPAdvertisementRoute // - EVPNInclusiveMulticastEthernetTagRoute // - EVPNEthernetSegmentRoute // - EVPNIPPrefixRoute // - LabeledVPNIPAddressPrefix // - RouteTargetMembershipNLRI // - FlowSpecNLRI // - VPNFlowSpecNLRI // - OpaqueNLRI AnyNlri *google_protobuf.Any `protobuf:"bytes,20,opt,name=any_nlri,json=anyNlri" json:"any_nlri,omitempty"` // Each attribute must be one of *Attribute defined in // "api/attribute.proto". AnyPattrs []*google_protobuf.Any `protobuf:"bytes,21,rep,name=any_pattrs,json=anyPattrs" json:"any_pattrs,omitempty"` } func (m *Path) Reset() { *m = Path{} } func (m *Path) String() string { return proto.CompactTextString(m) } func (*Path) ProtoMessage() {} func (*Path) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{69} } func (m *Path) GetNlri() []byte { if m != nil { return m.Nlri } return nil } func (m *Path) GetPattrs() [][]byte { if m != nil { return m.Pattrs } return nil } func (m *Path) GetAge() int64 { if m != nil { return m.Age } return 0 } func (m *Path) GetBest() bool { if m != nil { return m.Best } return false } func (m *Path) GetIsWithdraw() bool { if m != nil { return m.IsWithdraw } return false } func (m *Path) GetValidationDetail() *RPKIValidation { if m != nil { return m.ValidationDetail } return nil } func (m *Path) GetNoImplicitWithdraw() bool { if m != nil { return m.NoImplicitWithdraw } return false } func (m *Path) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *Path) GetSourceAsn() uint32 { if m != nil { return m.SourceAsn } return 0 } func (m *Path) GetSourceId() string { if m != nil { return m.SourceId } return "" } func (m *Path) GetFiltered() bool { if m != nil { return m.Filtered } return false } func (m *Path) GetStale() bool { if m != nil { return m.Stale } return false } func (m *Path) GetIsFromExternal() bool { if m != nil { return m.IsFromExternal } return false } func (m *Path) GetNeighborIp() string { if m != nil { return m.NeighborIp } return "" } func (m *Path) GetUuid() []byte { if m != nil { return m.Uuid } return nil } func (m *Path) GetIsNexthopInvalid() bool { if m != nil { return m.IsNexthopInvalid } return false } func (m *Path) GetIdentifier() uint32 { if m != nil { return m.Identifier } return 0 } func (m *Path) GetLocalIdentifier() uint32 { if m != nil { return m.LocalIdentifier } return 0 } func (m *Path) GetAnyNlri() *google_protobuf.Any { if m != nil { return m.AnyNlri } return nil } func (m *Path) GetAnyPattrs() []*google_protobuf.Any { if m != nil { return m.AnyPattrs } return nil } type Destination struct { Prefix string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"` Paths []*Path `protobuf:"bytes,2,rep,name=paths" json:"paths,omitempty"` } func (m *Destination) Reset() { *m = Destination{} } func (m *Destination) String() string { return proto.CompactTextString(m) } func (*Destination) ProtoMessage() {} func (*Destination) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{70} } func (m *Destination) GetPrefix() string { if m != nil { return m.Prefix } return "" } func (m *Destination) GetPaths() []*Path { if m != nil { return m.Paths } return nil } // API representation of table.LookupPrefix type TableLookupPrefix struct { Prefix string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"` LookupOption TableLookupOption `protobuf:"varint,2,opt,name=lookup_option,json=lookupOption,enum=gobgpapi.TableLookupOption" json:"lookup_option,omitempty"` } func (m *TableLookupPrefix) Reset() { *m = TableLookupPrefix{} } func (m *TableLookupPrefix) String() string { return proto.CompactTextString(m) } func (*TableLookupPrefix) ProtoMessage() {} func (*TableLookupPrefix) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{71} } func (m *TableLookupPrefix) GetPrefix() string { if m != nil { return m.Prefix } return "" } func (m *TableLookupPrefix) GetLookupOption() TableLookupOption { if m != nil { return m.LookupOption } return TableLookupOption_LOOKUP_EXACT } type Peer struct { ApplyPolicy *ApplyPolicy `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"` Conf *PeerConf `protobuf:"bytes,2,opt,name=conf" json:"conf,omitempty"` EbgpMultihop *EbgpMultihop `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop" json:"ebgp_multihop,omitempty"` RouteReflector *RouteReflector `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector" json:"route_reflector,omitempty"` State *PeerState `protobuf:"bytes,5,opt,name=state" json:"state,omitempty"` Timers *Timers `protobuf:"bytes,6,opt,name=timers" json:"timers,omitempty"` Transport *Transport `protobuf:"bytes,7,opt,name=transport" json:"transport,omitempty"` RouteServer *RouteServer `protobuf:"bytes,8,opt,name=route_server,json=routeServer" json:"route_server,omitempty"` GracefulRestart *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"` AfiSafis []*AfiSafi `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis" json:"afi_safis,omitempty"` AddPaths *AddPaths `protobuf:"bytes,11,opt,name=add_paths,json=addPaths" json:"add_paths,omitempty"` } func (m *Peer) Reset() { *m = Peer{} } func (m *Peer) String() string { return proto.CompactTextString(m) } func (*Peer) ProtoMessage() {} func (*Peer) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{72} } func (m *Peer) GetApplyPolicy() *ApplyPolicy { if m != nil { return m.ApplyPolicy } return nil } func (m *Peer) GetConf() *PeerConf { if m != nil { return m.Conf } return nil } func (m *Peer) GetEbgpMultihop() *EbgpMultihop { if m != nil { return m.EbgpMultihop } return nil } func (m *Peer) GetRouteReflector() *RouteReflector { if m != nil { return m.RouteReflector } return nil } func (m *Peer) GetState() *PeerState { if m != nil { return m.State } return nil } func (m *Peer) GetTimers() *Timers { if m != nil { return m.Timers } return nil } func (m *Peer) GetTransport() *Transport { if m != nil { return m.Transport } return nil } func (m *Peer) GetRouteServer() *RouteServer { if m != nil { return m.RouteServer } return nil } func (m *Peer) GetGracefulRestart() *GracefulRestart { if m != nil { return m.GracefulRestart } return nil } func (m *Peer) GetAfiSafis() []*AfiSafi { if m != nil { return m.AfiSafis } return nil } func (m *Peer) GetAddPaths() *AddPaths { if m != nil { return m.AddPaths } return nil } type PeerGroup struct { ApplyPolicy *ApplyPolicy `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"` Conf *PeerGroupConf `protobuf:"bytes,2,opt,name=conf" json:"conf,omitempty"` EbgpMultihop *EbgpMultihop `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop" json:"ebgp_multihop,omitempty"` RouteReflector *RouteReflector `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector" json:"route_reflector,omitempty"` Info *PeerGroupState `protobuf:"bytes,5,opt,name=info" json:"info,omitempty"` Timers *Timers `protobuf:"bytes,6,opt,name=timers" json:"timers,omitempty"` Transport *Transport `protobuf:"bytes,7,opt,name=transport" json:"transport,omitempty"` RouteServer *RouteServer `protobuf:"bytes,8,opt,name=route_server,json=routeServer" json:"route_server,omitempty"` GracefulRestart *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"` AfiSafis []*AfiSafi `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis" json:"afi_safis,omitempty"` AddPaths *AddPaths `protobuf:"bytes,11,opt,name=add_paths,json=addPaths" json:"add_paths,omitempty"` } func (m *PeerGroup) Reset() { *m = PeerGroup{} } func (m *PeerGroup) String() string { return proto.CompactTextString(m) } func (*PeerGroup) ProtoMessage() {} func (*PeerGroup) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{73} } func (m *PeerGroup) GetApplyPolicy() *ApplyPolicy { if m != nil { return m.ApplyPolicy } return nil } func (m *PeerGroup) GetConf() *PeerGroupConf { if m != nil { return m.Conf } return nil } func (m *PeerGroup) GetEbgpMultihop() *EbgpMultihop { if m != nil { return m.EbgpMultihop } return nil } func (m *PeerGroup) GetRouteReflector() *RouteReflector { if m != nil { return m.RouteReflector } return nil } func (m *PeerGroup) GetInfo() *PeerGroupState { if m != nil { return m.Info } return nil } func (m *PeerGroup) GetTimers() *Timers { if m != nil { return m.Timers } return nil } func (m *PeerGroup) GetTransport() *Transport { if m != nil { return m.Transport } return nil } func (m *PeerGroup) GetRouteServer() *RouteServer { if m != nil { return m.RouteServer } return nil } func (m *PeerGroup) GetGracefulRestart() *GracefulRestart { if m != nil { return m.GracefulRestart } return nil } func (m *PeerGroup) GetAfiSafis() []*AfiSafi { if m != nil { return m.AfiSafis } return nil } func (m *PeerGroup) GetAddPaths() *AddPaths { if m != nil { return m.AddPaths } return nil } type DynamicNeighbor struct { Prefix string `protobuf:"bytes,1,opt,name=prefix" json:"prefix,omitempty"` PeerGroup string `protobuf:"bytes,2,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"` } func (m *DynamicNeighbor) Reset() { *m = DynamicNeighbor{} } func (m *DynamicNeighbor) String() string { return proto.CompactTextString(m) } func (*DynamicNeighbor) ProtoMessage() {} func (*DynamicNeighbor) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{74} } func (m *DynamicNeighbor) GetPrefix() string { if m != nil { return m.Prefix } return "" } func (m *DynamicNeighbor) GetPeerGroup() string { if m != nil { return m.PeerGroup } return "" } type ApplyPolicy struct { InPolicy *PolicyAssignment `protobuf:"bytes,1,opt,name=in_policy,json=inPolicy" json:"in_policy,omitempty"` ExportPolicy *PolicyAssignment `protobuf:"bytes,2,opt,name=export_policy,json=exportPolicy" json:"export_policy,omitempty"` ImportPolicy *PolicyAssignment `protobuf:"bytes,3,opt,name=import_policy,json=importPolicy" json:"import_policy,omitempty"` } func (m *ApplyPolicy) Reset() { *m = ApplyPolicy{} } func (m *ApplyPolicy) String() string { return proto.CompactTextString(m) } func (*ApplyPolicy) ProtoMessage() {} func (*ApplyPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{75} } func (m *ApplyPolicy) GetInPolicy() *PolicyAssignment { if m != nil { return m.InPolicy } return nil } func (m *ApplyPolicy) GetExportPolicy() *PolicyAssignment { if m != nil { return m.ExportPolicy } return nil } func (m *ApplyPolicy) GetImportPolicy() *PolicyAssignment { if m != nil { return m.ImportPolicy } return nil } type PrefixLimit struct { Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"` MaxPrefixes uint32 `protobuf:"varint,2,opt,name=max_prefixes,json=maxPrefixes" json:"max_prefixes,omitempty"` ShutdownThresholdPct uint32 `protobuf:"varint,3,opt,name=shutdown_threshold_pct,json=shutdownThresholdPct" json:"shutdown_threshold_pct,omitempty"` } func (m *PrefixLimit) Reset() { *m = PrefixLimit{} } func (m *PrefixLimit) String() string { return proto.CompactTextString(m) } func (*PrefixLimit) ProtoMessage() {} func (*PrefixLimit) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{76} } func (m *PrefixLimit) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *PrefixLimit) GetMaxPrefixes() uint32 { if m != nil { return m.MaxPrefixes } return 0 } func (m *PrefixLimit) GetShutdownThresholdPct() uint32 { if m != nil { return m.ShutdownThresholdPct } return 0 } type PeerConf struct { AuthPassword string `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"` Description string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"` LocalAs uint32 `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"` NeighborAddress string `protobuf:"bytes,4,opt,name=neighbor_address,json=neighborAddress" json:"neighbor_address,omitempty"` PeerAs uint32 `protobuf:"varint,5,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"` PeerGroup string `protobuf:"bytes,6,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"` PeerType uint32 `protobuf:"varint,7,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"` RemovePrivateAs PeerConf_RemovePrivateAs `protobuf:"varint,8,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerConf_RemovePrivateAs" json:"remove_private_as,omitempty"` RouteFlapDamping bool `protobuf:"varint,9,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"` SendCommunity uint32 `protobuf:"varint,10,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"` // Each attribute must be one of *Capability defined in // "api/capability.proto". RemoteCap []*google_protobuf.Any `protobuf:"bytes,11,rep,name=remote_cap,json=remoteCap" json:"remote_cap,omitempty"` LocalCap []*google_protobuf.Any `protobuf:"bytes,12,rep,name=local_cap,json=localCap" json:"local_cap,omitempty"` Id string `protobuf:"bytes,13,opt,name=id" json:"id,omitempty"` NeighborInterface string `protobuf:"bytes,14,opt,name=neighbor_interface,json=neighborInterface" json:"neighbor_interface,omitempty"` Vrf string `protobuf:"bytes,15,opt,name=vrf" json:"vrf,omitempty"` AllowOwnAs uint32 `protobuf:"varint,16,opt,name=allow_own_as,json=allowOwnAs" json:"allow_own_as,omitempty"` ReplacePeerAs bool `protobuf:"varint,17,opt,name=replace_peer_as,json=replacePeerAs" json:"replace_peer_as,omitempty"` AdminDown bool `protobuf:"varint,18,opt,name=admin_down,json=adminDown" json:"admin_down,omitempty"` } func (m *PeerConf) Reset() { *m = PeerConf{} } func (m *PeerConf) String() string { return proto.CompactTextString(m) } func (*PeerConf) ProtoMessage() {} func (*PeerConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{77} } func (m *PeerConf) GetAuthPassword() string { if m != nil { return m.AuthPassword } return "" } func (m *PeerConf) GetDescription() string { if m != nil { return m.Description } return "" } func (m *PeerConf) GetLocalAs() uint32 { if m != nil { return m.LocalAs } return 0 } func (m *PeerConf) GetNeighborAddress() string { if m != nil { return m.NeighborAddress } return "" } func (m *PeerConf) GetPeerAs() uint32 { if m != nil { return m.PeerAs } return 0 } func (m *PeerConf) GetPeerGroup() string { if m != nil { return m.PeerGroup } return "" } func (m *PeerConf) GetPeerType() uint32 { if m != nil { return m.PeerType } return 0 } func (m *PeerConf) GetRemovePrivateAs() PeerConf_RemovePrivateAs { if m != nil { return m.RemovePrivateAs } return PeerConf_NONE } func (m *PeerConf) GetRouteFlapDamping() bool { if m != nil { return m.RouteFlapDamping } return false } func (m *PeerConf) GetSendCommunity() uint32 { if m != nil { return m.SendCommunity } return 0 } func (m *PeerConf) GetRemoteCap() []*google_protobuf.Any { if m != nil { return m.RemoteCap } return nil } func (m *PeerConf) GetLocalCap() []*google_protobuf.Any { if m != nil { return m.LocalCap } return nil } func (m *PeerConf) GetId() string { if m != nil { return m.Id } return "" } func (m *PeerConf) GetNeighborInterface() string { if m != nil { return m.NeighborInterface } return "" } func (m *PeerConf) GetVrf() string { if m != nil { return m.Vrf } return "" } func (m *PeerConf) GetAllowOwnAs() uint32 { if m != nil { return m.AllowOwnAs } return 0 } func (m *PeerConf) GetReplacePeerAs() bool { if m != nil { return m.ReplacePeerAs } return false } type PeerGroupConf struct { AuthPassword string `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"` Description string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"` LocalAs uint32 `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"` PeerAs uint32 `protobuf:"varint,4,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"` PeerGroupName string `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName" json:"peer_group_name,omitempty"` PeerType uint32 `protobuf:"varint,6,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"` RemovePrivateAs PeerGroupConf_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerGroupConf_RemovePrivateAs" json:"remove_private_as,omitempty"` RouteFlapDamping bool `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"` SendCommunity uint32 `protobuf:"varint,9,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"` } func (m *PeerGroupConf) Reset() { *m = PeerGroupConf{} } func (m *PeerGroupConf) String() string { return proto.CompactTextString(m) } func (*PeerGroupConf) ProtoMessage() {} func (*PeerGroupConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{78} } func (m *PeerGroupConf) GetAuthPassword() string { if m != nil { return m.AuthPassword } return "" } func (m *PeerGroupConf) GetDescription() string { if m != nil { return m.Description } return "" } func (m *PeerGroupConf) GetLocalAs() uint32 { if m != nil { return m.LocalAs } return 0 } func (m *PeerGroupConf) GetPeerAs() uint32 { if m != nil { return m.PeerAs } return 0 } func (m *PeerGroupConf) GetPeerGroupName() string { if m != nil { return m.PeerGroupName } return "" } func (m *PeerGroupConf) GetPeerType() uint32 { if m != nil { return m.PeerType } return 0 } func (m *PeerGroupConf) GetRemovePrivateAs() PeerGroupConf_RemovePrivateAs { if m != nil { return m.RemovePrivateAs } return PeerGroupConf_NONE } func (m *PeerGroupConf) GetRouteFlapDamping() bool { if m != nil { return m.RouteFlapDamping } return false } func (m *PeerGroupConf) GetSendCommunity() uint32 { if m != nil { return m.SendCommunity } return 0 } type PeerGroupState struct { AuthPassword string `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"` Description string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"` LocalAs uint32 `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"` PeerAs uint32 `protobuf:"varint,4,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"` PeerGroupName string `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName" json:"peer_group_name,omitempty"` PeerType uint32 `protobuf:"varint,6,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"` RemovePrivateAs PeerGroupState_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,enum=gobgpapi.PeerGroupState_RemovePrivateAs" json:"remove_private_as,omitempty"` RouteFlapDamping bool `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"` SendCommunity uint32 `protobuf:"varint,9,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"` TotalPaths uint32 `protobuf:"varint,10,opt,name=total_paths,json=totalPaths" json:"total_paths,omitempty"` TotalPrefixes uint32 `protobuf:"varint,11,opt,name=total_prefixes,json=totalPrefixes" json:"total_prefixes,omitempty"` } func (m *PeerGroupState) Reset() { *m = PeerGroupState{} } func (m *PeerGroupState) String() string { return proto.CompactTextString(m) } func (*PeerGroupState) ProtoMessage() {} func (*PeerGroupState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{79} } func (m *PeerGroupState) GetAuthPassword() string { if m != nil { return m.AuthPassword } return "" } func (m *PeerGroupState) GetDescription() string { if m != nil { return m.Description } return "" } func (m *PeerGroupState) GetLocalAs() uint32 { if m != nil { return m.LocalAs } return 0 } func (m *PeerGroupState) GetPeerAs() uint32 { if m != nil { return m.PeerAs } return 0 } func (m *PeerGroupState) GetPeerGroupName() string { if m != nil { return m.PeerGroupName } return "" } func (m *PeerGroupState) GetPeerType() uint32 { if m != nil { return m.PeerType } return 0 } func (m *PeerGroupState) GetRemovePrivateAs() PeerGroupState_RemovePrivateAs { if m != nil { return m.RemovePrivateAs } return PeerGroupState_NONE } func (m *PeerGroupState) GetRouteFlapDamping() bool { if m != nil { return m.RouteFlapDamping } return false } func (m *PeerGroupState) GetSendCommunity() uint32 { if m != nil { return m.SendCommunity } return 0 } func (m *PeerGroupState) GetTotalPaths() uint32 { if m != nil { return m.TotalPaths } return 0 } func (m *PeerGroupState) GetTotalPrefixes() uint32 { if m != nil { return m.TotalPrefixes } return 0 } type EbgpMultihop struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` MultihopTtl uint32 `protobuf:"varint,2,opt,name=multihop_ttl,json=multihopTtl" json:"multihop_ttl,omitempty"` } func (m *EbgpMultihop) Reset() { *m = EbgpMultihop{} } func (m *EbgpMultihop) String() string { return proto.CompactTextString(m) } func (*EbgpMultihop) ProtoMessage() {} func (*EbgpMultihop) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{80} } func (m *EbgpMultihop) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *EbgpMultihop) GetMultihopTtl() uint32 { if m != nil { return m.MultihopTtl } return 0 } type RouteReflector struct { RouteReflectorClient bool `protobuf:"varint,1,opt,name=route_reflector_client,json=routeReflectorClient" json:"route_reflector_client,omitempty"` RouteReflectorClusterId string `protobuf:"bytes,2,opt,name=route_reflector_cluster_id,json=routeReflectorClusterId" json:"route_reflector_cluster_id,omitempty"` } func (m *RouteReflector) Reset() { *m = RouteReflector{} } func (m *RouteReflector) String() string { return proto.CompactTextString(m) } func (*RouteReflector) ProtoMessage() {} func (*RouteReflector) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{81} } func (m *RouteReflector) GetRouteReflectorClient() bool { if m != nil { return m.RouteReflectorClient } return false } func (m *RouteReflector) GetRouteReflectorClusterId() string { if m != nil { return m.RouteReflectorClusterId } return "" } type PeerState struct { AuthPassword string `protobuf:"bytes,1,opt,name=auth_password,json=authPassword" json:"auth_password,omitempty"` Description string `protobuf:"bytes,2,opt,name=description" json:"description,omitempty"` LocalAs uint32 `protobuf:"varint,3,opt,name=local_as,json=localAs" json:"local_as,omitempty"` Messages *Messages `protobuf:"bytes,4,opt,name=messages" json:"messages,omitempty"` NeighborAddress string `protobuf:"bytes,5,opt,name=neighbor_address,json=neighborAddress" json:"neighbor_address,omitempty"` PeerAs uint32 `protobuf:"varint,6,opt,name=peer_as,json=peerAs" json:"peer_as,omitempty"` PeerGroup string `protobuf:"bytes,7,opt,name=peer_group,json=peerGroup" json:"peer_group,omitempty"` PeerType uint32 `protobuf:"varint,8,opt,name=peer_type,json=peerType" json:"peer_type,omitempty"` Queues *Queues `protobuf:"bytes,9,opt,name=queues" json:"queues,omitempty"` RemovePrivateAs uint32 `protobuf:"varint,10,opt,name=remove_private_as,json=removePrivateAs" json:"remove_private_as,omitempty"` RouteFlapDamping bool `protobuf:"varint,11,opt,name=route_flap_damping,json=routeFlapDamping" json:"route_flap_damping,omitempty"` SendCommunity uint32 `protobuf:"varint,12,opt,name=send_community,json=sendCommunity" json:"send_community,omitempty"` SessionState PeerState_SessionState `protobuf:"varint,13,opt,name=session_state,json=sessionState,enum=gobgpapi.PeerState_SessionState" json:"session_state,omitempty"` SupportedCapabilities []string `protobuf:"bytes,14,rep,name=supported_capabilities,json=supportedCapabilities" json:"supported_capabilities,omitempty"` AdminState PeerState_AdminState `protobuf:"varint,15,opt,name=admin_state,json=adminState,enum=gobgpapi.PeerState_AdminState" json:"admin_state,omitempty"` Received uint32 `protobuf:"varint,16,opt,name=received" json:"received,omitempty"` Accepted uint32 `protobuf:"varint,17,opt,name=accepted" json:"accepted,omitempty"` Advertised uint32 `protobuf:"varint,18,opt,name=advertised" json:"advertised,omitempty"` OutQ uint32 `protobuf:"varint,19,opt,name=out_q,json=outQ" json:"out_q,omitempty"` Flops uint32 `protobuf:"varint,20,opt,name=flops" json:"flops,omitempty"` } func (m *PeerState) Reset() { *m = PeerState{} } func (m *PeerState) String() string { return proto.CompactTextString(m) } func (*PeerState) ProtoMessage() {} func (*PeerState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{82} } func (m *PeerState) GetAuthPassword() string { if m != nil { return m.AuthPassword } return "" } func (m *PeerState) GetDescription() string { if m != nil { return m.Description } return "" } func (m *PeerState) GetLocalAs() uint32 { if m != nil { return m.LocalAs } return 0 } func (m *PeerState) GetMessages() *Messages { if m != nil { return m.Messages } return nil } func (m *PeerState) GetNeighborAddress() string { if m != nil { return m.NeighborAddress } return "" } func (m *PeerState) GetPeerAs() uint32 { if m != nil { return m.PeerAs } return 0 } func (m *PeerState) GetPeerGroup() string { if m != nil { return m.PeerGroup } return "" } func (m *PeerState) GetPeerType() uint32 { if m != nil { return m.PeerType } return 0 } func (m *PeerState) GetQueues() *Queues { if m != nil { return m.Queues } return nil } func (m *PeerState) GetRemovePrivateAs() uint32 { if m != nil { return m.RemovePrivateAs } return 0 } func (m *PeerState) GetRouteFlapDamping() bool { if m != nil { return m.RouteFlapDamping } return false } func (m *PeerState) GetSendCommunity() uint32 { if m != nil { return m.SendCommunity } return 0 } func (m *PeerState) GetSessionState() PeerState_SessionState { if m != nil { return m.SessionState } return PeerState_UNKNOWN } func (m *PeerState) GetSupportedCapabilities() []string { if m != nil { return m.SupportedCapabilities } return nil } func (m *PeerState) GetAdminState() PeerState_AdminState { if m != nil { return m.AdminState } return PeerState_UP } func (m *PeerState) GetReceived() uint32 { if m != nil { return m.Received } return 0 } func (m *PeerState) GetAccepted() uint32 { if m != nil { return m.Accepted } return 0 } func (m *PeerState) GetAdvertised() uint32 { if m != nil { return m.Advertised } return 0 } func (m *PeerState) GetOutQ() uint32 { if m != nil { return m.OutQ } return 0 } func (m *PeerState) GetFlops() uint32 { if m != nil { return m.Flops } return 0 } type Messages struct { Received *Message `protobuf:"bytes,1,opt,name=received" json:"received,omitempty"` Sent *Message `protobuf:"bytes,2,opt,name=sent" json:"sent,omitempty"` } func (m *Messages) Reset() { *m = Messages{} } func (m *Messages) String() string { return proto.CompactTextString(m) } func (*Messages) ProtoMessage() {} func (*Messages) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{83} } func (m *Messages) GetReceived() *Message { if m != nil { return m.Received } return nil } func (m *Messages) GetSent() *Message { if m != nil { return m.Sent } return nil } type Message struct { Notification uint64 `protobuf:"varint,1,opt,name=notification" json:"notification,omitempty"` Update uint64 `protobuf:"varint,2,opt,name=update" json:"update,omitempty"` Open uint64 `protobuf:"varint,3,opt,name=open" json:"open,omitempty"` Keepalive uint64 `protobuf:"varint,4,opt,name=keepalive" json:"keepalive,omitempty"` Refresh uint64 `protobuf:"varint,5,opt,name=refresh" json:"refresh,omitempty"` Discarded uint64 `protobuf:"varint,6,opt,name=discarded" json:"discarded,omitempty"` Total uint64 `protobuf:"varint,7,opt,name=total" json:"total,omitempty"` } func (m *Message) Reset() { *m = Message{} } func (m *Message) String() string { return proto.CompactTextString(m) } func (*Message) ProtoMessage() {} func (*Message) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{84} } func (m *Message) GetNotification() uint64 { if m != nil { return m.Notification } return 0 } func (m *Message) GetUpdate() uint64 { if m != nil { return m.Update } return 0 } func (m *Message) GetOpen() uint64 { if m != nil { return m.Open } return 0 } func (m *Message) GetKeepalive() uint64 { if m != nil { return m.Keepalive } return 0 } func (m *Message) GetRefresh() uint64 { if m != nil { return m.Refresh } return 0 } func (m *Message) GetDiscarded() uint64 { if m != nil { return m.Discarded } return 0 } func (m *Message) GetTotal() uint64 { if m != nil { return m.Total } return 0 } type Queues struct { Input uint32 `protobuf:"varint,1,opt,name=input" json:"input,omitempty"` Output uint32 `protobuf:"varint,2,opt,name=output" json:"output,omitempty"` } func (m *Queues) Reset() { *m = Queues{} } func (m *Queues) String() string { return proto.CompactTextString(m) } func (*Queues) ProtoMessage() {} func (*Queues) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{85} } func (m *Queues) GetInput() uint32 { if m != nil { return m.Input } return 0 } func (m *Queues) GetOutput() uint32 { if m != nil { return m.Output } return 0 } type Timers struct { Config *TimersConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *TimersState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *Timers) Reset() { *m = Timers{} } func (m *Timers) String() string { return proto.CompactTextString(m) } func (*Timers) ProtoMessage() {} func (*Timers) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{86} } func (m *Timers) GetConfig() *TimersConfig { if m != nil { return m.Config } return nil } func (m *Timers) GetState() *TimersState { if m != nil { return m.State } return nil } type TimersConfig struct { ConnectRetry uint64 `protobuf:"varint,1,opt,name=connect_retry,json=connectRetry" json:"connect_retry,omitempty"` HoldTime uint64 `protobuf:"varint,2,opt,name=hold_time,json=holdTime" json:"hold_time,omitempty"` KeepaliveInterval uint64 `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval" json:"keepalive_interval,omitempty"` MinimumAdvertisementInterval uint64 `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval" json:"minimum_advertisement_interval,omitempty"` } func (m *TimersConfig) Reset() { *m = TimersConfig{} } func (m *TimersConfig) String() string { return proto.CompactTextString(m) } func (*TimersConfig) ProtoMessage() {} func (*TimersConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{87} } func (m *TimersConfig) GetConnectRetry() uint64 { if m != nil { return m.ConnectRetry } return 0 } func (m *TimersConfig) GetHoldTime() uint64 { if m != nil { return m.HoldTime } return 0 } func (m *TimersConfig) GetKeepaliveInterval() uint64 { if m != nil { return m.KeepaliveInterval } return 0 } func (m *TimersConfig) GetMinimumAdvertisementInterval() uint64 { if m != nil { return m.MinimumAdvertisementInterval } return 0 } type TimersState struct { ConnectRetry uint64 `protobuf:"varint,1,opt,name=connect_retry,json=connectRetry" json:"connect_retry,omitempty"` HoldTime uint64 `protobuf:"varint,2,opt,name=hold_time,json=holdTime" json:"hold_time,omitempty"` KeepaliveInterval uint64 `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval" json:"keepalive_interval,omitempty"` MinimumAdvertisementInterval uint64 `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval" json:"minimum_advertisement_interval,omitempty"` NegotiatedHoldTime uint64 `protobuf:"varint,5,opt,name=negotiated_hold_time,json=negotiatedHoldTime" json:"negotiated_hold_time,omitempty"` Uptime uint64 `protobuf:"varint,6,opt,name=uptime" json:"uptime,omitempty"` Downtime uint64 `protobuf:"varint,7,opt,name=downtime" json:"downtime,omitempty"` } func (m *TimersState) Reset() { *m = TimersState{} } func (m *TimersState) String() string { return proto.CompactTextString(m) } func (*TimersState) ProtoMessage() {} func (*TimersState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{88} } func (m *TimersState) GetConnectRetry() uint64 { if m != nil { return m.ConnectRetry } return 0 } func (m *TimersState) GetHoldTime() uint64 { if m != nil { return m.HoldTime } return 0 } func (m *TimersState) GetKeepaliveInterval() uint64 { if m != nil { return m.KeepaliveInterval } return 0 } func (m *TimersState) GetMinimumAdvertisementInterval() uint64 { if m != nil { return m.MinimumAdvertisementInterval } return 0 } func (m *TimersState) GetNegotiatedHoldTime() uint64 { if m != nil { return m.NegotiatedHoldTime } return 0 } func (m *TimersState) GetUptime() uint64 { if m != nil { return m.Uptime } return 0 } func (m *TimersState) GetDowntime() uint64 { if m != nil { return m.Downtime } return 0 } type Transport struct { LocalAddress string `protobuf:"bytes,1,opt,name=local_address,json=localAddress" json:"local_address,omitempty"` LocalPort uint32 `protobuf:"varint,2,opt,name=local_port,json=localPort" json:"local_port,omitempty"` MtuDiscovery bool `protobuf:"varint,3,opt,name=mtu_discovery,json=mtuDiscovery" json:"mtu_discovery,omitempty"` PassiveMode bool `protobuf:"varint,4,opt,name=passive_mode,json=passiveMode" json:"passive_mode,omitempty"` RemoteAddress string `protobuf:"bytes,5,opt,name=remote_address,json=remoteAddress" json:"remote_address,omitempty"` RemotePort uint32 `protobuf:"varint,6,opt,name=remote_port,json=remotePort" json:"remote_port,omitempty"` TcpMss uint32 `protobuf:"varint,7,opt,name=tcp_mss,json=tcpMss" json:"tcp_mss,omitempty"` } func (m *Transport) Reset() { *m = Transport{} } func (m *Transport) String() string { return proto.CompactTextString(m) } func (*Transport) ProtoMessage() {} func (*Transport) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{89} } func (m *Transport) GetLocalAddress() string { if m != nil { return m.LocalAddress } return "" } func (m *Transport) GetLocalPort() uint32 { if m != nil { return m.LocalPort } return 0 } func (m *Transport) GetMtuDiscovery() bool { if m != nil { return m.MtuDiscovery } return false } func (m *Transport) GetPassiveMode() bool { if m != nil { return m.PassiveMode } return false } func (m *Transport) GetRemoteAddress() string { if m != nil { return m.RemoteAddress } return "" } func (m *Transport) GetRemotePort() uint32 { if m != nil { return m.RemotePort } return 0 } func (m *Transport) GetTcpMss() uint32 { if m != nil { return m.TcpMss } return 0 } type RouteServer struct { RouteServerClient bool `protobuf:"varint,1,opt,name=route_server_client,json=routeServerClient" json:"route_server_client,omitempty"` } func (m *RouteServer) Reset() { *m = RouteServer{} } func (m *RouteServer) String() string { return proto.CompactTextString(m) } func (*RouteServer) ProtoMessage() {} func (*RouteServer) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{90} } func (m *RouteServer) GetRouteServerClient() bool { if m != nil { return m.RouteServerClient } return false } type GracefulRestart struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` RestartTime uint32 `protobuf:"varint,2,opt,name=restart_time,json=restartTime" json:"restart_time,omitempty"` HelperOnly bool `protobuf:"varint,3,opt,name=helper_only,json=helperOnly" json:"helper_only,omitempty"` DeferralTime uint32 `protobuf:"varint,4,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"` NotificationEnabled bool `protobuf:"varint,5,opt,name=notification_enabled,json=notificationEnabled" json:"notification_enabled,omitempty"` LonglivedEnabled bool `protobuf:"varint,6,opt,name=longlived_enabled,json=longlivedEnabled" json:"longlived_enabled,omitempty"` StaleRoutesTime uint32 `protobuf:"varint,7,opt,name=stale_routes_time,json=staleRoutesTime" json:"stale_routes_time,omitempty"` PeerRestartTime uint32 `protobuf:"varint,8,opt,name=peer_restart_time,json=peerRestartTime" json:"peer_restart_time,omitempty"` PeerRestarting bool `protobuf:"varint,9,opt,name=peer_restarting,json=peerRestarting" json:"peer_restarting,omitempty"` LocalRestarting bool `protobuf:"varint,10,opt,name=local_restarting,json=localRestarting" json:"local_restarting,omitempty"` Mode string `protobuf:"bytes,11,opt,name=mode" json:"mode,omitempty"` } func (m *GracefulRestart) Reset() { *m = GracefulRestart{} } func (m *GracefulRestart) String() string { return proto.CompactTextString(m) } func (*GracefulRestart) ProtoMessage() {} func (*GracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{91} } func (m *GracefulRestart) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *GracefulRestart) GetRestartTime() uint32 { if m != nil { return m.RestartTime } return 0 } func (m *GracefulRestart) GetHelperOnly() bool { if m != nil { return m.HelperOnly } return false } func (m *GracefulRestart) GetDeferralTime() uint32 { if m != nil { return m.DeferralTime } return 0 } func (m *GracefulRestart) GetNotificationEnabled() bool { if m != nil { return m.NotificationEnabled } return false } func (m *GracefulRestart) GetLonglivedEnabled() bool { if m != nil { return m.LonglivedEnabled } return false } func (m *GracefulRestart) GetStaleRoutesTime() uint32 { if m != nil { return m.StaleRoutesTime } return 0 } func (m *GracefulRestart) GetPeerRestartTime() uint32 { if m != nil { return m.PeerRestartTime } return 0 } func (m *GracefulRestart) GetPeerRestarting() bool { if m != nil { return m.PeerRestarting } return false } func (m *GracefulRestart) GetLocalRestarting() bool { if m != nil { return m.LocalRestarting } return false } func (m *GracefulRestart) GetMode() string { if m != nil { return m.Mode } return "" } type MpGracefulRestartConfig struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` } func (m *MpGracefulRestartConfig) Reset() { *m = MpGracefulRestartConfig{} } func (m *MpGracefulRestartConfig) String() string { return proto.CompactTextString(m) } func (*MpGracefulRestartConfig) ProtoMessage() {} func (*MpGracefulRestartConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{92} } func (m *MpGracefulRestartConfig) GetEnabled() bool { if m != nil { return m.Enabled } return false } type MpGracefulRestartState struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` Received bool `protobuf:"varint,2,opt,name=received" json:"received,omitempty"` Advertised bool `protobuf:"varint,3,opt,name=advertised" json:"advertised,omitempty"` EndOfRibReceived bool `protobuf:"varint,4,opt,name=end_of_rib_received,json=endOfRibReceived" json:"end_of_rib_received,omitempty"` EndOfRibSent bool `protobuf:"varint,5,opt,name=end_of_rib_sent,json=endOfRibSent" json:"end_of_rib_sent,omitempty"` } func (m *MpGracefulRestartState) Reset() { *m = MpGracefulRestartState{} } func (m *MpGracefulRestartState) String() string { return proto.CompactTextString(m) } func (*MpGracefulRestartState) ProtoMessage() {} func (*MpGracefulRestartState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{93} } func (m *MpGracefulRestartState) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *MpGracefulRestartState) GetReceived() bool { if m != nil { return m.Received } return false } func (m *MpGracefulRestartState) GetAdvertised() bool { if m != nil { return m.Advertised } return false } func (m *MpGracefulRestartState) GetEndOfRibReceived() bool { if m != nil { return m.EndOfRibReceived } return false } func (m *MpGracefulRestartState) GetEndOfRibSent() bool { if m != nil { return m.EndOfRibSent } return false } type MpGracefulRestart struct { Config *MpGracefulRestartConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *MpGracefulRestartState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *MpGracefulRestart) Reset() { *m = MpGracefulRestart{} } func (m *MpGracefulRestart) String() string { return proto.CompactTextString(m) } func (*MpGracefulRestart) ProtoMessage() {} func (*MpGracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{94} } func (m *MpGracefulRestart) GetConfig() *MpGracefulRestartConfig { if m != nil { return m.Config } return nil } func (m *MpGracefulRestart) GetState() *MpGracefulRestartState { if m != nil { return m.State } return nil } type AfiSafiConfig struct { Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"` Enabled bool `protobuf:"varint,2,opt,name=enabled" json:"enabled,omitempty"` } func (m *AfiSafiConfig) Reset() { *m = AfiSafiConfig{} } func (m *AfiSafiConfig) String() string { return proto.CompactTextString(m) } func (*AfiSafiConfig) ProtoMessage() {} func (*AfiSafiConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{95} } func (m *AfiSafiConfig) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *AfiSafiConfig) GetEnabled() bool { if m != nil { return m.Enabled } return false } type AfiSafiState struct { Family *Family `protobuf:"bytes,1,opt,name=family" json:"family,omitempty"` Enabled bool `protobuf:"varint,2,opt,name=enabled" json:"enabled,omitempty"` TotalPaths uint32 `protobuf:"varint,3,opt,name=total_paths,json=totalPaths" json:"total_paths,omitempty"` TotalPrefixes uint32 `protobuf:"varint,4,opt,name=total_prefixes,json=totalPrefixes" json:"total_prefixes,omitempty"` } func (m *AfiSafiState) Reset() { *m = AfiSafiState{} } func (m *AfiSafiState) String() string { return proto.CompactTextString(m) } func (*AfiSafiState) ProtoMessage() {} func (*AfiSafiState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{96} } func (m *AfiSafiState) GetFamily() *Family { if m != nil { return m.Family } return nil } func (m *AfiSafiState) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *AfiSafiState) GetTotalPaths() uint32 { if m != nil { return m.TotalPaths } return 0 } func (m *AfiSafiState) GetTotalPrefixes() uint32 { if m != nil { return m.TotalPrefixes } return 0 } type RouteSelectionOptionsConfig struct { AlwaysCompareMed bool `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed" json:"always_compare_med,omitempty"` IgnoreAsPathLength bool `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength" json:"ignore_as_path_length,omitempty"` ExternalCompareRouterId bool `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId" json:"external_compare_router_id,omitempty"` AdvertiseInactiveRoutes bool `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes" json:"advertise_inactive_routes,omitempty"` EnableAigp bool `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp" json:"enable_aigp,omitempty"` IgnoreNextHopIgpMetric bool `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric" json:"ignore_next_hop_igp_metric,omitempty"` DisableBestPathSelection bool `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection" json:"disable_best_path_selection,omitempty"` } func (m *RouteSelectionOptionsConfig) Reset() { *m = RouteSelectionOptionsConfig{} } func (m *RouteSelectionOptionsConfig) String() string { return proto.CompactTextString(m) } func (*RouteSelectionOptionsConfig) ProtoMessage() {} func (*RouteSelectionOptionsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{97} } func (m *RouteSelectionOptionsConfig) GetAlwaysCompareMed() bool { if m != nil { return m.AlwaysCompareMed } return false } func (m *RouteSelectionOptionsConfig) GetIgnoreAsPathLength() bool { if m != nil { return m.IgnoreAsPathLength } return false } func (m *RouteSelectionOptionsConfig) GetExternalCompareRouterId() bool { if m != nil { return m.ExternalCompareRouterId } return false } func (m *RouteSelectionOptionsConfig) GetAdvertiseInactiveRoutes() bool { if m != nil { return m.AdvertiseInactiveRoutes } return false } func (m *RouteSelectionOptionsConfig) GetEnableAigp() bool { if m != nil { return m.EnableAigp } return false } func (m *RouteSelectionOptionsConfig) GetIgnoreNextHopIgpMetric() bool { if m != nil { return m.IgnoreNextHopIgpMetric } return false } func (m *RouteSelectionOptionsConfig) GetDisableBestPathSelection() bool { if m != nil { return m.DisableBestPathSelection } return false } type RouteSelectionOptionsState struct { AlwaysCompareMed bool `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed" json:"always_compare_med,omitempty"` IgnoreAsPathLength bool `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength" json:"ignore_as_path_length,omitempty"` ExternalCompareRouterId bool `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId" json:"external_compare_router_id,omitempty"` AdvertiseInactiveRoutes bool `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes" json:"advertise_inactive_routes,omitempty"` EnableAigp bool `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp" json:"enable_aigp,omitempty"` IgnoreNextHopIgpMetric bool `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric" json:"ignore_next_hop_igp_metric,omitempty"` DisableBestPathSelection bool `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection" json:"disable_best_path_selection,omitempty"` } func (m *RouteSelectionOptionsState) Reset() { *m = RouteSelectionOptionsState{} } func (m *RouteSelectionOptionsState) String() string { return proto.CompactTextString(m) } func (*RouteSelectionOptionsState) ProtoMessage() {} func (*RouteSelectionOptionsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{98} } func (m *RouteSelectionOptionsState) GetAlwaysCompareMed() bool { if m != nil { return m.AlwaysCompareMed } return false } func (m *RouteSelectionOptionsState) GetIgnoreAsPathLength() bool { if m != nil { return m.IgnoreAsPathLength } return false } func (m *RouteSelectionOptionsState) GetExternalCompareRouterId() bool { if m != nil { return m.ExternalCompareRouterId } return false } func (m *RouteSelectionOptionsState) GetAdvertiseInactiveRoutes() bool { if m != nil { return m.AdvertiseInactiveRoutes } return false } func (m *RouteSelectionOptionsState) GetEnableAigp() bool { if m != nil { return m.EnableAigp } return false } func (m *RouteSelectionOptionsState) GetIgnoreNextHopIgpMetric() bool { if m != nil { return m.IgnoreNextHopIgpMetric } return false } func (m *RouteSelectionOptionsState) GetDisableBestPathSelection() bool { if m != nil { return m.DisableBestPathSelection } return false } type RouteSelectionOptions struct { Config *RouteSelectionOptionsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *RouteSelectionOptionsState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *RouteSelectionOptions) Reset() { *m = RouteSelectionOptions{} } func (m *RouteSelectionOptions) String() string { return proto.CompactTextString(m) } func (*RouteSelectionOptions) ProtoMessage() {} func (*RouteSelectionOptions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{99} } func (m *RouteSelectionOptions) GetConfig() *RouteSelectionOptionsConfig { if m != nil { return m.Config } return nil } func (m *RouteSelectionOptions) GetState() *RouteSelectionOptionsState { if m != nil { return m.State } return nil } type UseMultiplePathsConfig struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` } func (m *UseMultiplePathsConfig) Reset() { *m = UseMultiplePathsConfig{} } func (m *UseMultiplePathsConfig) String() string { return proto.CompactTextString(m) } func (*UseMultiplePathsConfig) ProtoMessage() {} func (*UseMultiplePathsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{100} } func (m *UseMultiplePathsConfig) GetEnabled() bool { if m != nil { return m.Enabled } return false } type UseMultiplePathsState struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` } func (m *UseMultiplePathsState) Reset() { *m = UseMultiplePathsState{} } func (m *UseMultiplePathsState) String() string { return proto.CompactTextString(m) } func (*UseMultiplePathsState) ProtoMessage() {} func (*UseMultiplePathsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{101} } func (m *UseMultiplePathsState) GetEnabled() bool { if m != nil { return m.Enabled } return false } type EbgpConfig struct { AllowMultipleAs bool `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs" json:"allow_multiple_as,omitempty"` MaximumPaths uint32 `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"` } func (m *EbgpConfig) Reset() { *m = EbgpConfig{} } func (m *EbgpConfig) String() string { return proto.CompactTextString(m) } func (*EbgpConfig) ProtoMessage() {} func (*EbgpConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{102} } func (m *EbgpConfig) GetAllowMultipleAs() bool { if m != nil { return m.AllowMultipleAs } return false } func (m *EbgpConfig) GetMaximumPaths() uint32 { if m != nil { return m.MaximumPaths } return 0 } type EbgpState struct { AllowMultipleAs bool `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs" json:"allow_multiple_as,omitempty"` MaximumPaths uint32 `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"` } func (m *EbgpState) Reset() { *m = EbgpState{} } func (m *EbgpState) String() string { return proto.CompactTextString(m) } func (*EbgpState) ProtoMessage() {} func (*EbgpState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{103} } func (m *EbgpState) GetAllowMultipleAs() bool { if m != nil { return m.AllowMultipleAs } return false } func (m *EbgpState) GetMaximumPaths() uint32 { if m != nil { return m.MaximumPaths } return 0 } type Ebgp struct { Config *EbgpConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *EbgpState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *Ebgp) Reset() { *m = Ebgp{} } func (m *Ebgp) String() string { return proto.CompactTextString(m) } func (*Ebgp) ProtoMessage() {} func (*Ebgp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{104} } func (m *Ebgp) GetConfig() *EbgpConfig { if m != nil { return m.Config } return nil } func (m *Ebgp) GetState() *EbgpState { if m != nil { return m.State } return nil } type IbgpConfig struct { MaximumPaths uint32 `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"` } func (m *IbgpConfig) Reset() { *m = IbgpConfig{} } func (m *IbgpConfig) String() string { return proto.CompactTextString(m) } func (*IbgpConfig) ProtoMessage() {} func (*IbgpConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{105} } func (m *IbgpConfig) GetMaximumPaths() uint32 { if m != nil { return m.MaximumPaths } return 0 } type IbgpState struct { MaximumPaths uint32 `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths" json:"maximum_paths,omitempty"` } func (m *IbgpState) Reset() { *m = IbgpState{} } func (m *IbgpState) String() string { return proto.CompactTextString(m) } func (*IbgpState) ProtoMessage() {} func (*IbgpState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{106} } func (m *IbgpState) GetMaximumPaths() uint32 { if m != nil { return m.MaximumPaths } return 0 } type Ibgp struct { Config *IbgpConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *IbgpState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *Ibgp) Reset() { *m = Ibgp{} } func (m *Ibgp) String() string { return proto.CompactTextString(m) } func (*Ibgp) ProtoMessage() {} func (*Ibgp) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{107} } func (m *Ibgp) GetConfig() *IbgpConfig { if m != nil { return m.Config } return nil } func (m *Ibgp) GetState() *IbgpState { if m != nil { return m.State } return nil } type UseMultiplePaths struct { Config *UseMultiplePathsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *UseMultiplePathsState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` Ebgp *Ebgp `protobuf:"bytes,3,opt,name=ebgp" json:"ebgp,omitempty"` Ibgp *Ibgp `protobuf:"bytes,4,opt,name=ibgp" json:"ibgp,omitempty"` } func (m *UseMultiplePaths) Reset() { *m = UseMultiplePaths{} } func (m *UseMultiplePaths) String() string { return proto.CompactTextString(m) } func (*UseMultiplePaths) ProtoMessage() {} func (*UseMultiplePaths) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{108} } func (m *UseMultiplePaths) GetConfig() *UseMultiplePathsConfig { if m != nil { return m.Config } return nil } func (m *UseMultiplePaths) GetState() *UseMultiplePathsState { if m != nil { return m.State } return nil } func (m *UseMultiplePaths) GetEbgp() *Ebgp { if m != nil { return m.Ebgp } return nil } func (m *UseMultiplePaths) GetIbgp() *Ibgp { if m != nil { return m.Ibgp } return nil } type RouteTargetMembershipConfig struct { DeferralTime uint32 `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"` } func (m *RouteTargetMembershipConfig) Reset() { *m = RouteTargetMembershipConfig{} } func (m *RouteTargetMembershipConfig) String() string { return proto.CompactTextString(m) } func (*RouteTargetMembershipConfig) ProtoMessage() {} func (*RouteTargetMembershipConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{109} } func (m *RouteTargetMembershipConfig) GetDeferralTime() uint32 { if m != nil { return m.DeferralTime } return 0 } type RouteTargetMembershipState struct { DeferralTime uint32 `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime" json:"deferral_time,omitempty"` } func (m *RouteTargetMembershipState) Reset() { *m = RouteTargetMembershipState{} } func (m *RouteTargetMembershipState) String() string { return proto.CompactTextString(m) } func (*RouteTargetMembershipState) ProtoMessage() {} func (*RouteTargetMembershipState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{110} } func (m *RouteTargetMembershipState) GetDeferralTime() uint32 { if m != nil { return m.DeferralTime } return 0 } type RouteTargetMembership struct { Config *RouteTargetMembershipConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *RouteTargetMembershipState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *RouteTargetMembership) Reset() { *m = RouteTargetMembership{} } func (m *RouteTargetMembership) String() string { return proto.CompactTextString(m) } func (*RouteTargetMembership) ProtoMessage() {} func (*RouteTargetMembership) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{111} } func (m *RouteTargetMembership) GetConfig() *RouteTargetMembershipConfig { if m != nil { return m.Config } return nil } func (m *RouteTargetMembership) GetState() *RouteTargetMembershipState { if m != nil { return m.State } return nil } type LongLivedGracefulRestartConfig struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` RestartTime uint32 `protobuf:"varint,2,opt,name=restart_time,json=restartTime" json:"restart_time,omitempty"` } func (m *LongLivedGracefulRestartConfig) Reset() { *m = LongLivedGracefulRestartConfig{} } func (m *LongLivedGracefulRestartConfig) String() string { return proto.CompactTextString(m) } func (*LongLivedGracefulRestartConfig) ProtoMessage() {} func (*LongLivedGracefulRestartConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{112} } func (m *LongLivedGracefulRestartConfig) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *LongLivedGracefulRestartConfig) GetRestartTime() uint32 { if m != nil { return m.RestartTime } return 0 } type LongLivedGracefulRestartState struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` Received bool `protobuf:"varint,2,opt,name=received" json:"received,omitempty"` Advertised bool `protobuf:"varint,3,opt,name=advertised" json:"advertised,omitempty"` PeerRestartTime uint32 `protobuf:"varint,4,opt,name=peer_restart_time,json=peerRestartTime" json:"peer_restart_time,omitempty"` PeerRestartTimerExpired bool `protobuf:"varint,5,opt,name=peer_restart_timer_expired,json=peerRestartTimerExpired" json:"peer_restart_timer_expired,omitempty"` } func (m *LongLivedGracefulRestartState) Reset() { *m = LongLivedGracefulRestartState{} } func (m *LongLivedGracefulRestartState) String() string { return proto.CompactTextString(m) } func (*LongLivedGracefulRestartState) ProtoMessage() {} func (*LongLivedGracefulRestartState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{113} } func (m *LongLivedGracefulRestartState) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *LongLivedGracefulRestartState) GetReceived() bool { if m != nil { return m.Received } return false } func (m *LongLivedGracefulRestartState) GetAdvertised() bool { if m != nil { return m.Advertised } return false } func (m *LongLivedGracefulRestartState) GetPeerRestartTime() uint32 { if m != nil { return m.PeerRestartTime } return 0 } func (m *LongLivedGracefulRestartState) GetPeerRestartTimerExpired() bool { if m != nil { return m.PeerRestartTimerExpired } return false } type LongLivedGracefulRestart struct { Config *LongLivedGracefulRestartConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *LongLivedGracefulRestartState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *LongLivedGracefulRestart) Reset() { *m = LongLivedGracefulRestart{} } func (m *LongLivedGracefulRestart) String() string { return proto.CompactTextString(m) } func (*LongLivedGracefulRestart) ProtoMessage() {} func (*LongLivedGracefulRestart) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{114} } func (m *LongLivedGracefulRestart) GetConfig() *LongLivedGracefulRestartConfig { if m != nil { return m.Config } return nil } func (m *LongLivedGracefulRestart) GetState() *LongLivedGracefulRestartState { if m != nil { return m.State } return nil } type AfiSafi struct { MpGracefulRestart *MpGracefulRestart `protobuf:"bytes,1,opt,name=mp_graceful_restart,json=mpGracefulRestart" json:"mp_graceful_restart,omitempty"` Config *AfiSafiConfig `protobuf:"bytes,2,opt,name=config" json:"config,omitempty"` ApplyPolicy *ApplyPolicy `protobuf:"bytes,3,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"` // TODO: // Support the following structures: // - Ipv4Unicast // - Ipv6Unicast // - Ipv4LabelledUnicast // - Ipv6LabelledUnicast // - L3vpnIpv4Unicast // - L3vpnIpv6Unicast // - L3vpnIpv4Multicast // - L3vpnIpv6Multicast // - L2vpnVpls // - L2vpnEvpn RouteSelectionOptions *RouteSelectionOptions `protobuf:"bytes,4,opt,name=route_selection_options,json=routeSelectionOptions" json:"route_selection_options,omitempty"` UseMultiplePaths *UseMultiplePaths `protobuf:"bytes,5,opt,name=use_multiple_paths,json=useMultiplePaths" json:"use_multiple_paths,omitempty"` PrefixLimits *PrefixLimit `protobuf:"bytes,6,opt,name=prefix_limits,json=prefixLimits" json:"prefix_limits,omitempty"` RouteTargetMembership *RouteTargetMembership `protobuf:"bytes,7,opt,name=route_target_membership,json=routeTargetMembership" json:"route_target_membership,omitempty"` LongLivedGracefulRestart *LongLivedGracefulRestart `protobuf:"bytes,8,opt,name=long_lived_graceful_restart,json=longLivedGracefulRestart" json:"long_lived_graceful_restart,omitempty"` AddPaths *AddPaths `protobuf:"bytes,9,opt,name=add_paths,json=addPaths" json:"add_paths,omitempty"` } func (m *AfiSafi) Reset() { *m = AfiSafi{} } func (m *AfiSafi) String() string { return proto.CompactTextString(m) } func (*AfiSafi) ProtoMessage() {} func (*AfiSafi) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{115} } func (m *AfiSafi) GetMpGracefulRestart() *MpGracefulRestart { if m != nil { return m.MpGracefulRestart } return nil } func (m *AfiSafi) GetConfig() *AfiSafiConfig { if m != nil { return m.Config } return nil } func (m *AfiSafi) GetApplyPolicy() *ApplyPolicy { if m != nil { return m.ApplyPolicy } return nil } func (m *AfiSafi) GetRouteSelectionOptions() *RouteSelectionOptions { if m != nil { return m.RouteSelectionOptions } return nil } func (m *AfiSafi) GetUseMultiplePaths() *UseMultiplePaths { if m != nil { return m.UseMultiplePaths } return nil } func (m *AfiSafi) GetPrefixLimits() *PrefixLimit { if m != nil { return m.PrefixLimits } return nil } func (m *AfiSafi) GetRouteTargetMembership() *RouteTargetMembership { if m != nil { return m.RouteTargetMembership } return nil } func (m *AfiSafi) GetLongLivedGracefulRestart() *LongLivedGracefulRestart { if m != nil { return m.LongLivedGracefulRestart } return nil } func (m *AfiSafi) GetAddPaths() *AddPaths { if m != nil { return m.AddPaths } return nil } type AddPathsConfig struct { Receive bool `protobuf:"varint,1,opt,name=receive" json:"receive,omitempty"` SendMax uint32 `protobuf:"varint,2,opt,name=send_max,json=sendMax" json:"send_max,omitempty"` } func (m *AddPathsConfig) Reset() { *m = AddPathsConfig{} } func (m *AddPathsConfig) String() string { return proto.CompactTextString(m) } func (*AddPathsConfig) ProtoMessage() {} func (*AddPathsConfig) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{116} } func (m *AddPathsConfig) GetReceive() bool { if m != nil { return m.Receive } return false } func (m *AddPathsConfig) GetSendMax() uint32 { if m != nil { return m.SendMax } return 0 } type AddPathsState struct { Receive bool `protobuf:"varint,1,opt,name=receive" json:"receive,omitempty"` SendMax uint32 `protobuf:"varint,2,opt,name=send_max,json=sendMax" json:"send_max,omitempty"` } func (m *AddPathsState) Reset() { *m = AddPathsState{} } func (m *AddPathsState) String() string { return proto.CompactTextString(m) } func (*AddPathsState) ProtoMessage() {} func (*AddPathsState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{117} } func (m *AddPathsState) GetReceive() bool { if m != nil { return m.Receive } return false } func (m *AddPathsState) GetSendMax() uint32 { if m != nil { return m.SendMax } return 0 } type AddPaths struct { Config *AddPathsConfig `protobuf:"bytes,1,opt,name=config" json:"config,omitempty"` State *AddPathsState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *AddPaths) Reset() { *m = AddPaths{} } func (m *AddPaths) String() string { return proto.CompactTextString(m) } func (*AddPaths) ProtoMessage() {} func (*AddPaths) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{118} } func (m *AddPaths) GetConfig() *AddPathsConfig { if m != nil { return m.Config } return nil } func (m *AddPaths) GetState() *AddPathsState { if m != nil { return m.State } return nil } type Prefix struct { IpPrefix string `protobuf:"bytes,1,opt,name=ip_prefix,json=ipPrefix" json:"ip_prefix,omitempty"` MaskLengthMin uint32 `protobuf:"varint,2,opt,name=mask_length_min,json=maskLengthMin" json:"mask_length_min,omitempty"` MaskLengthMax uint32 `protobuf:"varint,3,opt,name=mask_length_max,json=maskLengthMax" json:"mask_length_max,omitempty"` } func (m *Prefix) Reset() { *m = Prefix{} } func (m *Prefix) String() string { return proto.CompactTextString(m) } func (*Prefix) ProtoMessage() {} func (*Prefix) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{119} } func (m *Prefix) GetIpPrefix() string { if m != nil { return m.IpPrefix } return "" } func (m *Prefix) GetMaskLengthMin() uint32 { if m != nil { return m.MaskLengthMin } return 0 } func (m *Prefix) GetMaskLengthMax() uint32 { if m != nil { return m.MaskLengthMax } return 0 } type DefinedSet struct { Type DefinedType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.DefinedType" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` List []string `protobuf:"bytes,3,rep,name=list" json:"list,omitempty"` Prefixes []*Prefix `protobuf:"bytes,4,rep,name=prefixes" json:"prefixes,omitempty"` } func (m *DefinedSet) Reset() { *m = DefinedSet{} } func (m *DefinedSet) String() string { return proto.CompactTextString(m) } func (*DefinedSet) ProtoMessage() {} func (*DefinedSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{120} } func (m *DefinedSet) GetType() DefinedType { if m != nil { return m.Type } return DefinedType_PREFIX } func (m *DefinedSet) GetName() string { if m != nil { return m.Name } return "" } func (m *DefinedSet) GetList() []string { if m != nil { return m.List } return nil } func (m *DefinedSet) GetPrefixes() []*Prefix { if m != nil { return m.Prefixes } return nil } type MatchSet struct { Type MatchType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.MatchType" json:"type,omitempty"` Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"` } func (m *MatchSet) Reset() { *m = MatchSet{} } func (m *MatchSet) String() string { return proto.CompactTextString(m) } func (*MatchSet) ProtoMessage() {} func (*MatchSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{121} } func (m *MatchSet) GetType() MatchType { if m != nil { return m.Type } return MatchType_ANY } func (m *MatchSet) GetName() string { if m != nil { return m.Name } return "" } type AsPathLength struct { Type AsPathLengthType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.AsPathLengthType" json:"type,omitempty"` Length uint32 `protobuf:"varint,2,opt,name=length" json:"length,omitempty"` } func (m *AsPathLength) Reset() { *m = AsPathLength{} } func (m *AsPathLength) String() string { return proto.CompactTextString(m) } func (*AsPathLength) ProtoMessage() {} func (*AsPathLength) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{122} } func (m *AsPathLength) GetType() AsPathLengthType { if m != nil { return m.Type } return AsPathLengthType_EQ } func (m *AsPathLength) GetLength() uint32 { if m != nil { return m.Length } return 0 } type Conditions struct { PrefixSet *MatchSet `protobuf:"bytes,1,opt,name=prefix_set,json=prefixSet" json:"prefix_set,omitempty"` NeighborSet *MatchSet `protobuf:"bytes,2,opt,name=neighbor_set,json=neighborSet" json:"neighbor_set,omitempty"` AsPathLength *AsPathLength `protobuf:"bytes,3,opt,name=as_path_length,json=asPathLength" json:"as_path_length,omitempty"` AsPathSet *MatchSet `protobuf:"bytes,4,opt,name=as_path_set,json=asPathSet" json:"as_path_set,omitempty"` CommunitySet *MatchSet `protobuf:"bytes,5,opt,name=community_set,json=communitySet" json:"community_set,omitempty"` ExtCommunitySet *MatchSet `protobuf:"bytes,6,opt,name=ext_community_set,json=extCommunitySet" json:"ext_community_set,omitempty"` RpkiResult int32 `protobuf:"varint,7,opt,name=rpki_result,json=rpkiResult" json:"rpki_result,omitempty"` RouteType Conditions_RouteType `protobuf:"varint,8,opt,name=route_type,json=routeType,enum=gobgpapi.Conditions_RouteType" json:"route_type,omitempty"` LargeCommunitySet *MatchSet `protobuf:"bytes,9,opt,name=large_community_set,json=largeCommunitySet" json:"large_community_set,omitempty"` NextHopInList []string `protobuf:"bytes,10,rep,name=next_hop_in_list,json=nextHopInList" json:"next_hop_in_list,omitempty"` AfiSafiIn []*Family `protobuf:"bytes,11,rep,name=afi_safi_in,json=afiSafiIn" json:"afi_safi_in,omitempty"` } func (m *Conditions) Reset() { *m = Conditions{} } func (m *Conditions) String() string { return proto.CompactTextString(m) } func (*Conditions) ProtoMessage() {} func (*Conditions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{123} } func (m *Conditions) GetPrefixSet() *MatchSet { if m != nil { return m.PrefixSet } return nil } func (m *Conditions) GetNeighborSet() *MatchSet { if m != nil { return m.NeighborSet } return nil } func (m *Conditions) GetAsPathLength() *AsPathLength { if m != nil { return m.AsPathLength } return nil } func (m *Conditions) GetAsPathSet() *MatchSet { if m != nil { return m.AsPathSet } return nil } func (m *Conditions) GetCommunitySet() *MatchSet { if m != nil { return m.CommunitySet } return nil } func (m *Conditions) GetExtCommunitySet() *MatchSet { if m != nil { return m.ExtCommunitySet } return nil } func (m *Conditions) GetRpkiResult() int32 { if m != nil { return m.RpkiResult } return 0 } func (m *Conditions) GetRouteType() Conditions_RouteType { if m != nil { return m.RouteType } return Conditions_ROUTE_TYPE_NONE } func (m *Conditions) GetLargeCommunitySet() *MatchSet { if m != nil { return m.LargeCommunitySet } return nil } func (m *Conditions) GetNextHopInList() []string { if m != nil { return m.NextHopInList } return nil } func (m *Conditions) GetAfiSafiIn() []*Family { if m != nil { return m.AfiSafiIn } return nil } type CommunityAction struct { Type CommunityActionType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.CommunityActionType" json:"type,omitempty"` Communities []string `protobuf:"bytes,2,rep,name=communities" json:"communities,omitempty"` } func (m *CommunityAction) Reset() { *m = CommunityAction{} } func (m *CommunityAction) String() string { return proto.CompactTextString(m) } func (*CommunityAction) ProtoMessage() {} func (*CommunityAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{124} } func (m *CommunityAction) GetType() CommunityActionType { if m != nil { return m.Type } return CommunityActionType_COMMUNITY_ADD } func (m *CommunityAction) GetCommunities() []string { if m != nil { return m.Communities } return nil } type MedAction struct { Type MedActionType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.MedActionType" json:"type,omitempty"` Value int64 `protobuf:"varint,2,opt,name=value" json:"value,omitempty"` } func (m *MedAction) Reset() { *m = MedAction{} } func (m *MedAction) String() string { return proto.CompactTextString(m) } func (*MedAction) ProtoMessage() {} func (*MedAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{125} } func (m *MedAction) GetType() MedActionType { if m != nil { return m.Type } return MedActionType_MED_MOD } func (m *MedAction) GetValue() int64 { if m != nil { return m.Value } return 0 } type AsPrependAction struct { Asn uint32 `protobuf:"varint,1,opt,name=asn" json:"asn,omitempty"` Repeat uint32 `protobuf:"varint,2,opt,name=repeat" json:"repeat,omitempty"` UseLeftMost bool `protobuf:"varint,3,opt,name=use_left_most,json=useLeftMost" json:"use_left_most,omitempty"` } func (m *AsPrependAction) Reset() { *m = AsPrependAction{} } func (m *AsPrependAction) String() string { return proto.CompactTextString(m) } func (*AsPrependAction) ProtoMessage() {} func (*AsPrependAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{126} } func (m *AsPrependAction) GetAsn() uint32 { if m != nil { return m.Asn } return 0 } func (m *AsPrependAction) GetRepeat() uint32 { if m != nil { return m.Repeat } return 0 } func (m *AsPrependAction) GetUseLeftMost() bool { if m != nil { return m.UseLeftMost } return false } type NexthopAction struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Self bool `protobuf:"varint,2,opt,name=self" json:"self,omitempty"` } func (m *NexthopAction) Reset() { *m = NexthopAction{} } func (m *NexthopAction) String() string { return proto.CompactTextString(m) } func (*NexthopAction) ProtoMessage() {} func (*NexthopAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{127} } func (m *NexthopAction) GetAddress() string { if m != nil { return m.Address } return "" } func (m *NexthopAction) GetSelf() bool { if m != nil { return m.Self } return false } type LocalPrefAction struct { Value uint32 `protobuf:"varint,1,opt,name=value" json:"value,omitempty"` } func (m *LocalPrefAction) Reset() { *m = LocalPrefAction{} } func (m *LocalPrefAction) String() string { return proto.CompactTextString(m) } func (*LocalPrefAction) ProtoMessage() {} func (*LocalPrefAction) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{128} } func (m *LocalPrefAction) GetValue() uint32 { if m != nil { return m.Value } return 0 } type Actions struct { RouteAction RouteAction `protobuf:"varint,1,opt,name=route_action,json=routeAction,enum=gobgpapi.RouteAction" json:"route_action,omitempty"` Community *CommunityAction `protobuf:"bytes,2,opt,name=community" json:"community,omitempty"` Med *MedAction `protobuf:"bytes,3,opt,name=med" json:"med,omitempty"` AsPrepend *AsPrependAction `protobuf:"bytes,4,opt,name=as_prepend,json=asPrepend" json:"as_prepend,omitempty"` ExtCommunity *CommunityAction `protobuf:"bytes,5,opt,name=ext_community,json=extCommunity" json:"ext_community,omitempty"` Nexthop *NexthopAction `protobuf:"bytes,6,opt,name=nexthop" json:"nexthop,omitempty"` LocalPref *LocalPrefAction `protobuf:"bytes,7,opt,name=local_pref,json=localPref" json:"local_pref,omitempty"` LargeCommunity *CommunityAction `protobuf:"bytes,8,opt,name=large_community,json=largeCommunity" json:"large_community,omitempty"` } func (m *Actions) Reset() { *m = Actions{} } func (m *Actions) String() string { return proto.CompactTextString(m) } func (*Actions) ProtoMessage() {} func (*Actions) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{129} } func (m *Actions) GetRouteAction() RouteAction { if m != nil { return m.RouteAction } return RouteAction_NONE } func (m *Actions) GetCommunity() *CommunityAction { if m != nil { return m.Community } return nil } func (m *Actions) GetMed() *MedAction { if m != nil { return m.Med } return nil } func (m *Actions) GetAsPrepend() *AsPrependAction { if m != nil { return m.AsPrepend } return nil } func (m *Actions) GetExtCommunity() *CommunityAction { if m != nil { return m.ExtCommunity } return nil } func (m *Actions) GetNexthop() *NexthopAction { if m != nil { return m.Nexthop } return nil } func (m *Actions) GetLocalPref() *LocalPrefAction { if m != nil { return m.LocalPref } return nil } func (m *Actions) GetLargeCommunity() *CommunityAction { if m != nil { return m.LargeCommunity } return nil } type Statement struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Conditions *Conditions `protobuf:"bytes,2,opt,name=conditions" json:"conditions,omitempty"` Actions *Actions `protobuf:"bytes,3,opt,name=actions" json:"actions,omitempty"` } func (m *Statement) Reset() { *m = Statement{} } func (m *Statement) String() string { return proto.CompactTextString(m) } func (*Statement) ProtoMessage() {} func (*Statement) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{130} } func (m *Statement) GetName() string { if m != nil { return m.Name } return "" } func (m *Statement) GetConditions() *Conditions { if m != nil { return m.Conditions } return nil } func (m *Statement) GetActions() *Actions { if m != nil { return m.Actions } return nil } type Policy struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Statements []*Statement `protobuf:"bytes,2,rep,name=statements" json:"statements,omitempty"` } func (m *Policy) Reset() { *m = Policy{} } func (m *Policy) String() string { return proto.CompactTextString(m) } func (*Policy) ProtoMessage() {} func (*Policy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{131} } func (m *Policy) GetName() string { if m != nil { return m.Name } return "" } func (m *Policy) GetStatements() []*Statement { if m != nil { return m.Statements } return nil } type PolicyAssignment struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Direction PolicyDirection `protobuf:"varint,2,opt,name=direction,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"` Policies []*Policy `protobuf:"bytes,4,rep,name=policies" json:"policies,omitempty"` DefaultAction RouteAction `protobuf:"varint,5,opt,name=default_action,json=defaultAction,enum=gobgpapi.RouteAction" json:"default_action,omitempty"` } func (m *PolicyAssignment) Reset() { *m = PolicyAssignment{} } func (m *PolicyAssignment) String() string { return proto.CompactTextString(m) } func (*PolicyAssignment) ProtoMessage() {} func (*PolicyAssignment) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{132} } func (m *PolicyAssignment) GetName() string { if m != nil { return m.Name } return "" } func (m *PolicyAssignment) GetDirection() PolicyDirection { if m != nil { return m.Direction } return PolicyDirection_UNKNOWN } func (m *PolicyAssignment) GetPolicies() []*Policy { if m != nil { return m.Policies } return nil } func (m *PolicyAssignment) GetDefaultAction() RouteAction { if m != nil { return m.DefaultAction } return RouteAction_NONE } type RoutingPolicy struct { DefinedSets []*DefinedSet `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets" json:"defined_sets,omitempty"` Policies []*Policy `protobuf:"bytes,2,rep,name=policies" json:"policies,omitempty"` } func (m *RoutingPolicy) Reset() { *m = RoutingPolicy{} } func (m *RoutingPolicy) String() string { return proto.CompactTextString(m) } func (*RoutingPolicy) ProtoMessage() {} func (*RoutingPolicy) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{133} } func (m *RoutingPolicy) GetDefinedSets() []*DefinedSet { if m != nil { return m.DefinedSets } return nil } func (m *RoutingPolicy) GetPolicies() []*Policy { if m != nil { return m.Policies } return nil } type Roa struct { As uint32 `protobuf:"varint,1,opt,name=as" json:"as,omitempty"` Prefixlen uint32 `protobuf:"varint,2,opt,name=prefixlen" json:"prefixlen,omitempty"` Maxlen uint32 `protobuf:"varint,3,opt,name=maxlen" json:"maxlen,omitempty"` Prefix string `protobuf:"bytes,4,opt,name=prefix" json:"prefix,omitempty"` Conf *RPKIConf `protobuf:"bytes,5,opt,name=conf" json:"conf,omitempty"` } func (m *Roa) Reset() { *m = Roa{} } func (m *Roa) String() string { return proto.CompactTextString(m) } func (*Roa) ProtoMessage() {} func (*Roa) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{134} } func (m *Roa) GetAs() uint32 { if m != nil { return m.As } return 0 } func (m *Roa) GetPrefixlen() uint32 { if m != nil { return m.Prefixlen } return 0 } func (m *Roa) GetMaxlen() uint32 { if m != nil { return m.Maxlen } return 0 } func (m *Roa) GetPrefix() string { if m != nil { return m.Prefix } return "" } func (m *Roa) GetConf() *RPKIConf { if m != nil { return m.Conf } return nil } type Vrf struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // Route Distinguisher must be one of // RouteDistinguisherTwoOctetAS, // RouteDistinguisherIPAddressAS, // or RouteDistinguisherFourOctetAS. Rd *google_protobuf.Any `protobuf:"bytes,2,opt,name=rd" json:"rd,omitempty"` // List of the Import Route Targets. Each must be one of // TwoOctetAsSpecificExtended, // IPv4AddressSpecificExtended, // or FourOctetAsSpecificExtended. ImportRt []*google_protobuf.Any `protobuf:"bytes,3,rep,name=import_rt,json=importRt" json:"import_rt,omitempty"` // List of the Export Route Targets. Each must be one of // TwoOctetAsSpecificExtended, // IPv4AddressSpecificExtended, // or FourOctetAsSpecificExtended. ExportRt []*google_protobuf.Any `protobuf:"bytes,4,rep,name=export_rt,json=exportRt" json:"export_rt,omitempty"` Id uint32 `protobuf:"varint,5,opt,name=id" json:"id,omitempty"` } func (m *Vrf) Reset() { *m = Vrf{} } func (m *Vrf) String() string { return proto.CompactTextString(m) } func (*Vrf) ProtoMessage() {} func (*Vrf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{135} } func (m *Vrf) GetName() string { if m != nil { return m.Name } return "" } func (m *Vrf) GetRd() *google_protobuf.Any { if m != nil { return m.Rd } return nil } func (m *Vrf) GetImportRt() []*google_protobuf.Any { if m != nil { return m.ImportRt } return nil } func (m *Vrf) GetExportRt() []*google_protobuf.Any { if m != nil { return m.ExportRt } return nil } func (m *Vrf) GetId() uint32 { if m != nil { return m.Id } return 0 } type DefaultRouteDistance struct { ExternalRouteDistance uint32 `protobuf:"varint,1,opt,name=external_route_distance,json=externalRouteDistance" json:"external_route_distance,omitempty"` InternalRouteDistance uint32 `protobuf:"varint,2,opt,name=internal_route_distance,json=internalRouteDistance" json:"internal_route_distance,omitempty"` } func (m *DefaultRouteDistance) Reset() { *m = DefaultRouteDistance{} } func (m *DefaultRouteDistance) String() string { return proto.CompactTextString(m) } func (*DefaultRouteDistance) ProtoMessage() {} func (*DefaultRouteDistance) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{136} } func (m *DefaultRouteDistance) GetExternalRouteDistance() uint32 { if m != nil { return m.ExternalRouteDistance } return 0 } func (m *DefaultRouteDistance) GetInternalRouteDistance() uint32 { if m != nil { return m.InternalRouteDistance } return 0 } type Global struct { As uint32 `protobuf:"varint,1,opt,name=as" json:"as,omitempty"` RouterId string `protobuf:"bytes,2,opt,name=router_id,json=routerId" json:"router_id,omitempty"` ListenPort int32 `protobuf:"varint,3,opt,name=listen_port,json=listenPort" json:"listen_port,omitempty"` ListenAddresses []string `protobuf:"bytes,4,rep,name=listen_addresses,json=listenAddresses" json:"listen_addresses,omitempty"` Families []uint32 `protobuf:"varint,5,rep,packed,name=families" json:"families,omitempty"` UseMultiplePaths bool `protobuf:"varint,6,opt,name=use_multiple_paths,json=useMultiplePaths" json:"use_multiple_paths,omitempty"` RouteSelectionOptions *RouteSelectionOptionsConfig `protobuf:"bytes,7,opt,name=route_selection_options,json=routeSelectionOptions" json:"route_selection_options,omitempty"` DefaultRouteDistance *DefaultRouteDistance `protobuf:"bytes,8,opt,name=default_route_distance,json=defaultRouteDistance" json:"default_route_distance,omitempty"` Confederation *Confederation `protobuf:"bytes,9,opt,name=confederation" json:"confederation,omitempty"` GracefulRestart *GracefulRestart `protobuf:"bytes,10,opt,name=graceful_restart,json=gracefulRestart" json:"graceful_restart,omitempty"` ApplyPolicy *ApplyPolicy `protobuf:"bytes,11,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"` } func (m *Global) Reset() { *m = Global{} } func (m *Global) String() string { return proto.CompactTextString(m) } func (*Global) ProtoMessage() {} func (*Global) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{137} } func (m *Global) GetAs() uint32 { if m != nil { return m.As } return 0 } func (m *Global) GetRouterId() string { if m != nil { return m.RouterId } return "" } func (m *Global) GetListenPort() int32 { if m != nil { return m.ListenPort } return 0 } func (m *Global) GetListenAddresses() []string { if m != nil { return m.ListenAddresses } return nil } func (m *Global) GetFamilies() []uint32 { if m != nil { return m.Families } return nil } func (m *Global) GetUseMultiplePaths() bool { if m != nil { return m.UseMultiplePaths } return false } func (m *Global) GetRouteSelectionOptions() *RouteSelectionOptionsConfig { if m != nil { return m.RouteSelectionOptions } return nil } func (m *Global) GetDefaultRouteDistance() *DefaultRouteDistance { if m != nil { return m.DefaultRouteDistance } return nil } func (m *Global) GetConfederation() *Confederation { if m != nil { return m.Confederation } return nil } func (m *Global) GetGracefulRestart() *GracefulRestart { if m != nil { return m.GracefulRestart } return nil } func (m *Global) GetApplyPolicy() *ApplyPolicy { if m != nil { return m.ApplyPolicy } return nil } type Confederation struct { Enabled bool `protobuf:"varint,1,opt,name=enabled" json:"enabled,omitempty"` Identifier uint32 `protobuf:"varint,2,opt,name=identifier" json:"identifier,omitempty"` MemberAsList []uint32 `protobuf:"varint,3,rep,packed,name=member_as_list,json=memberAsList" json:"member_as_list,omitempty"` } func (m *Confederation) Reset() { *m = Confederation{} } func (m *Confederation) String() string { return proto.CompactTextString(m) } func (*Confederation) ProtoMessage() {} func (*Confederation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{138} } func (m *Confederation) GetEnabled() bool { if m != nil { return m.Enabled } return false } func (m *Confederation) GetIdentifier() uint32 { if m != nil { return m.Identifier } return 0 } func (m *Confederation) GetMemberAsList() []uint32 { if m != nil { return m.MemberAsList } return nil } type RPKIConf struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` RemotePort uint32 `protobuf:"varint,2,opt,name=remote_port,json=remotePort" json:"remote_port,omitempty"` } func (m *RPKIConf) Reset() { *m = RPKIConf{} } func (m *RPKIConf) String() string { return proto.CompactTextString(m) } func (*RPKIConf) ProtoMessage() {} func (*RPKIConf) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{139} } func (m *RPKIConf) GetAddress() string { if m != nil { return m.Address } return "" } func (m *RPKIConf) GetRemotePort() uint32 { if m != nil { return m.RemotePort } return 0 } type RPKIState struct { Uptime int64 `protobuf:"varint,1,opt,name=uptime" json:"uptime,omitempty"` Downtime int64 `protobuf:"varint,2,opt,name=downtime" json:"downtime,omitempty"` Up bool `protobuf:"varint,3,opt,name=up" json:"up,omitempty"` RecordIpv4 uint32 `protobuf:"varint,4,opt,name=record_ipv4,json=recordIpv4" json:"record_ipv4,omitempty"` RecordIpv6 uint32 `protobuf:"varint,5,opt,name=record_ipv6,json=recordIpv6" json:"record_ipv6,omitempty"` PrefixIpv4 uint32 `protobuf:"varint,6,opt,name=prefix_ipv4,json=prefixIpv4" json:"prefix_ipv4,omitempty"` PrefixIpv6 uint32 `protobuf:"varint,7,opt,name=prefix_ipv6,json=prefixIpv6" json:"prefix_ipv6,omitempty"` Serial uint32 `protobuf:"varint,8,opt,name=serial" json:"serial,omitempty"` ReceivedIpv4 int64 `protobuf:"varint,9,opt,name=received_ipv4,json=receivedIpv4" json:"received_ipv4,omitempty"` ReceivedIpv6 int64 `protobuf:"varint,10,opt,name=received_ipv6,json=receivedIpv6" json:"received_ipv6,omitempty"` SerialNotify int64 `protobuf:"varint,11,opt,name=serial_notify,json=serialNotify" json:"serial_notify,omitempty"` CacheReset int64 `protobuf:"varint,12,opt,name=cache_reset,json=cacheReset" json:"cache_reset,omitempty"` CacheResponse int64 `protobuf:"varint,13,opt,name=cache_response,json=cacheResponse" json:"cache_response,omitempty"` EndOfData int64 `protobuf:"varint,14,opt,name=end_of_data,json=endOfData" json:"end_of_data,omitempty"` Error int64 `protobuf:"varint,15,opt,name=error" json:"error,omitempty"` SerialQuery int64 `protobuf:"varint,16,opt,name=serial_query,json=serialQuery" json:"serial_query,omitempty"` ResetQuery int64 `protobuf:"varint,17,opt,name=reset_query,json=resetQuery" json:"reset_query,omitempty"` } func (m *RPKIState) Reset() { *m = RPKIState{} } func (m *RPKIState) String() string { return proto.CompactTextString(m) } func (*RPKIState) ProtoMessage() {} func (*RPKIState) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{140} } func (m *RPKIState) GetUptime() int64 { if m != nil { return m.Uptime } return 0 } func (m *RPKIState) GetDowntime() int64 { if m != nil { return m.Downtime } return 0 } func (m *RPKIState) GetUp() bool { if m != nil { return m.Up } return false } func (m *RPKIState) GetRecordIpv4() uint32 { if m != nil { return m.RecordIpv4 } return 0 } func (m *RPKIState) GetRecordIpv6() uint32 { if m != nil { return m.RecordIpv6 } return 0 } func (m *RPKIState) GetPrefixIpv4() uint32 { if m != nil { return m.PrefixIpv4 } return 0 } func (m *RPKIState) GetPrefixIpv6() uint32 { if m != nil { return m.PrefixIpv6 } return 0 } func (m *RPKIState) GetSerial() uint32 { if m != nil { return m.Serial } return 0 } func (m *RPKIState) GetReceivedIpv4() int64 { if m != nil { return m.ReceivedIpv4 } return 0 } func (m *RPKIState) GetReceivedIpv6() int64 { if m != nil { return m.ReceivedIpv6 } return 0 } func (m *RPKIState) GetSerialNotify() int64 { if m != nil { return m.SerialNotify } return 0 } func (m *RPKIState) GetCacheReset() int64 { if m != nil { return m.CacheReset } return 0 } func (m *RPKIState) GetCacheResponse() int64 { if m != nil { return m.CacheResponse } return 0 } func (m *RPKIState) GetEndOfData() int64 { if m != nil { return m.EndOfData } return 0 } func (m *RPKIState) GetError() int64 { if m != nil { return m.Error } return 0 } func (m *RPKIState) GetSerialQuery() int64 { if m != nil { return m.SerialQuery } return 0 } func (m *RPKIState) GetResetQuery() int64 { if m != nil { return m.ResetQuery } return 0 } type Rpki struct { Conf *RPKIConf `protobuf:"bytes,1,opt,name=conf" json:"conf,omitempty"` State *RPKIState `protobuf:"bytes,2,opt,name=state" json:"state,omitempty"` } func (m *Rpki) Reset() { *m = Rpki{} } func (m *Rpki) String() string { return proto.CompactTextString(m) } func (*Rpki) ProtoMessage() {} func (*Rpki) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{141} } func (m *Rpki) GetConf() *RPKIConf { if m != nil { return m.Conf } return nil } func (m *Rpki) GetState() *RPKIState { if m != nil { return m.State } return nil } func init() { proto.RegisterType((*StartBgpRequest)(nil), "gobgpapi.StartBgpRequest") proto.RegisterType((*StopBgpRequest)(nil), "gobgpapi.StopBgpRequest") proto.RegisterType((*GetBgpRequest)(nil), "gobgpapi.GetBgpRequest") proto.RegisterType((*GetBgpResponse)(nil), "gobgpapi.GetBgpResponse") proto.RegisterType((*AddPeerRequest)(nil), "gobgpapi.AddPeerRequest") proto.RegisterType((*DeletePeerRequest)(nil), "gobgpapi.DeletePeerRequest") proto.RegisterType((*ListPeerRequest)(nil), "gobgpapi.ListPeerRequest") proto.RegisterType((*ListPeerResponse)(nil), "gobgpapi.ListPeerResponse") proto.RegisterType((*UpdatePeerRequest)(nil), "gobgpapi.UpdatePeerRequest") proto.RegisterType((*UpdatePeerResponse)(nil), "gobgpapi.UpdatePeerResponse") proto.RegisterType((*ResetPeerRequest)(nil), "gobgpapi.ResetPeerRequest") proto.RegisterType((*ShutdownPeerRequest)(nil), "gobgpapi.ShutdownPeerRequest") proto.RegisterType((*EnablePeerRequest)(nil), "gobgpapi.EnablePeerRequest") proto.RegisterType((*DisablePeerRequest)(nil), "gobgpapi.DisablePeerRequest") proto.RegisterType((*MonitorPeerRequest)(nil), "gobgpapi.MonitorPeerRequest") proto.RegisterType((*MonitorPeerResponse)(nil), "gobgpapi.MonitorPeerResponse") proto.RegisterType((*AddPeerGroupRequest)(nil), "gobgpapi.AddPeerGroupRequest") proto.RegisterType((*DeletePeerGroupRequest)(nil), "gobgpapi.DeletePeerGroupRequest") proto.RegisterType((*UpdatePeerGroupRequest)(nil), "gobgpapi.UpdatePeerGroupRequest") proto.RegisterType((*UpdatePeerGroupResponse)(nil), "gobgpapi.UpdatePeerGroupResponse") proto.RegisterType((*AddDynamicNeighborRequest)(nil), "gobgpapi.AddDynamicNeighborRequest") proto.RegisterType((*AddPathRequest)(nil), "gobgpapi.AddPathRequest") proto.RegisterType((*AddPathResponse)(nil), "gobgpapi.AddPathResponse") proto.RegisterType((*DeletePathRequest)(nil), "gobgpapi.DeletePathRequest") proto.RegisterType((*ListPathRequest)(nil), "gobgpapi.ListPathRequest") proto.RegisterType((*ListPathResponse)(nil), "gobgpapi.ListPathResponse") proto.RegisterType((*AddPathStreamRequest)(nil), "gobgpapi.AddPathStreamRequest") proto.RegisterType((*GetTableRequest)(nil), "gobgpapi.GetTableRequest") proto.RegisterType((*GetTableResponse)(nil), "gobgpapi.GetTableResponse") proto.RegisterType((*MonitorTableRequest)(nil), "gobgpapi.MonitorTableRequest") proto.RegisterType((*MonitorTableResponse)(nil), "gobgpapi.MonitorTableResponse") proto.RegisterType((*AddVrfRequest)(nil), "gobgpapi.AddVrfRequest") proto.RegisterType((*DeleteVrfRequest)(nil), "gobgpapi.DeleteVrfRequest") proto.RegisterType((*ListVrfRequest)(nil), "gobgpapi.ListVrfRequest") proto.RegisterType((*ListVrfResponse)(nil), "gobgpapi.ListVrfResponse") proto.RegisterType((*AddPolicyRequest)(nil), "gobgpapi.AddPolicyRequest") proto.RegisterType((*DeletePolicyRequest)(nil), "gobgpapi.DeletePolicyRequest") proto.RegisterType((*ListPolicyRequest)(nil), "gobgpapi.ListPolicyRequest") proto.RegisterType((*ListPolicyResponse)(nil), "gobgpapi.ListPolicyResponse") proto.RegisterType((*SetPoliciesRequest)(nil), "gobgpapi.SetPoliciesRequest") proto.RegisterType((*AddDefinedSetRequest)(nil), "gobgpapi.AddDefinedSetRequest") proto.RegisterType((*DeleteDefinedSetRequest)(nil), "gobgpapi.DeleteDefinedSetRequest") proto.RegisterType((*ListDefinedSetRequest)(nil), "gobgpapi.ListDefinedSetRequest") proto.RegisterType((*ListDefinedSetResponse)(nil), "gobgpapi.ListDefinedSetResponse") proto.RegisterType((*AddStatementRequest)(nil), "gobgpapi.AddStatementRequest") proto.RegisterType((*DeleteStatementRequest)(nil), "gobgpapi.DeleteStatementRequest") proto.RegisterType((*ListStatementRequest)(nil), "gobgpapi.ListStatementRequest") proto.RegisterType((*ListStatementResponse)(nil), "gobgpapi.ListStatementResponse") proto.RegisterType((*AddPolicyAssignmentRequest)(nil), "gobgpapi.AddPolicyAssignmentRequest") proto.RegisterType((*DeletePolicyAssignmentRequest)(nil), "gobgpapi.DeletePolicyAssignmentRequest") proto.RegisterType((*ListPolicyAssignmentRequest)(nil), "gobgpapi.ListPolicyAssignmentRequest") proto.RegisterType((*ListPolicyAssignmentResponse)(nil), "gobgpapi.ListPolicyAssignmentResponse") proto.RegisterType((*SetPolicyAssignmentRequest)(nil), "gobgpapi.SetPolicyAssignmentRequest") proto.RegisterType((*AddRpkiRequest)(nil), "gobgpapi.AddRpkiRequest") proto.RegisterType((*DeleteRpkiRequest)(nil), "gobgpapi.DeleteRpkiRequest") proto.RegisterType((*ListRpkiRequest)(nil), "gobgpapi.ListRpkiRequest") proto.RegisterType((*ListRpkiResponse)(nil), "gobgpapi.ListRpkiResponse") proto.RegisterType((*EnableRpkiRequest)(nil), "gobgpapi.EnableRpkiRequest") proto.RegisterType((*DisableRpkiRequest)(nil), "gobgpapi.DisableRpkiRequest") proto.RegisterType((*ResetRpkiRequest)(nil), "gobgpapi.ResetRpkiRequest") proto.RegisterType((*ListRpkiTableRequest)(nil), "gobgpapi.ListRpkiTableRequest") proto.RegisterType((*ListRpkiTableResponse)(nil), "gobgpapi.ListRpkiTableResponse") proto.RegisterType((*EnableZebraRequest)(nil), "gobgpapi.EnableZebraRequest") proto.RegisterType((*EnableMrtRequest)(nil), "gobgpapi.EnableMrtRequest") proto.RegisterType((*DisableMrtRequest)(nil), "gobgpapi.DisableMrtRequest") proto.RegisterType((*AddBmpRequest)(nil), "gobgpapi.AddBmpRequest") proto.RegisterType((*DeleteBmpRequest)(nil), "gobgpapi.DeleteBmpRequest") proto.RegisterType((*Family)(nil), "gobgpapi.Family") proto.RegisterType((*RPKIValidation)(nil), "gobgpapi.RPKIValidation") proto.RegisterType((*Path)(nil), "gobgpapi.Path") proto.RegisterType((*Destination)(nil), "gobgpapi.Destination") proto.RegisterType((*TableLookupPrefix)(nil), "gobgpapi.TableLookupPrefix") proto.RegisterType((*Peer)(nil), "gobgpapi.Peer") proto.RegisterType((*PeerGroup)(nil), "gobgpapi.PeerGroup") proto.RegisterType((*DynamicNeighbor)(nil), "gobgpapi.DynamicNeighbor") proto.RegisterType((*ApplyPolicy)(nil), "gobgpapi.ApplyPolicy") proto.RegisterType((*PrefixLimit)(nil), "gobgpapi.PrefixLimit") proto.RegisterType((*PeerConf)(nil), "gobgpapi.PeerConf") proto.RegisterType((*PeerGroupConf)(nil), "gobgpapi.PeerGroupConf") proto.RegisterType((*PeerGroupState)(nil), "gobgpapi.PeerGroupState") proto.RegisterType((*EbgpMultihop)(nil), "gobgpapi.EbgpMultihop") proto.RegisterType((*RouteReflector)(nil), "gobgpapi.RouteReflector") proto.RegisterType((*PeerState)(nil), "gobgpapi.PeerState") proto.RegisterType((*Messages)(nil), "gobgpapi.Messages") proto.RegisterType((*Message)(nil), "gobgpapi.Message") proto.RegisterType((*Queues)(nil), "gobgpapi.Queues") proto.RegisterType((*Timers)(nil), "gobgpapi.Timers") proto.RegisterType((*TimersConfig)(nil), "gobgpapi.TimersConfig") proto.RegisterType((*TimersState)(nil), "gobgpapi.TimersState") proto.RegisterType((*Transport)(nil), "gobgpapi.Transport") proto.RegisterType((*RouteServer)(nil), "gobgpapi.RouteServer") proto.RegisterType((*GracefulRestart)(nil), "gobgpapi.GracefulRestart") proto.RegisterType((*MpGracefulRestartConfig)(nil), "gobgpapi.MpGracefulRestartConfig") proto.RegisterType((*MpGracefulRestartState)(nil), "gobgpapi.MpGracefulRestartState") proto.RegisterType((*MpGracefulRestart)(nil), "gobgpapi.MpGracefulRestart") proto.RegisterType((*AfiSafiConfig)(nil), "gobgpapi.AfiSafiConfig") proto.RegisterType((*AfiSafiState)(nil), "gobgpapi.AfiSafiState") proto.RegisterType((*RouteSelectionOptionsConfig)(nil), "gobgpapi.RouteSelectionOptionsConfig") proto.RegisterType((*RouteSelectionOptionsState)(nil), "gobgpapi.RouteSelectionOptionsState") proto.RegisterType((*RouteSelectionOptions)(nil), "gobgpapi.RouteSelectionOptions") proto.RegisterType((*UseMultiplePathsConfig)(nil), "gobgpapi.UseMultiplePathsConfig") proto.RegisterType((*UseMultiplePathsState)(nil), "gobgpapi.UseMultiplePathsState") proto.RegisterType((*EbgpConfig)(nil), "gobgpapi.EbgpConfig") proto.RegisterType((*EbgpState)(nil), "gobgpapi.EbgpState") proto.RegisterType((*Ebgp)(nil), "gobgpapi.Ebgp") proto.RegisterType((*IbgpConfig)(nil), "gobgpapi.IbgpConfig") proto.RegisterType((*IbgpState)(nil), "gobgpapi.IbgpState") proto.RegisterType((*Ibgp)(nil), "gobgpapi.Ibgp") proto.RegisterType((*UseMultiplePaths)(nil), "gobgpapi.UseMultiplePaths") proto.RegisterType((*RouteTargetMembershipConfig)(nil), "gobgpapi.RouteTargetMembershipConfig") proto.RegisterType((*RouteTargetMembershipState)(nil), "gobgpapi.RouteTargetMembershipState") proto.RegisterType((*RouteTargetMembership)(nil), "gobgpapi.RouteTargetMembership") proto.RegisterType((*LongLivedGracefulRestartConfig)(nil), "gobgpapi.LongLivedGracefulRestartConfig") proto.RegisterType((*LongLivedGracefulRestartState)(nil), "gobgpapi.LongLivedGracefulRestartState") proto.RegisterType((*LongLivedGracefulRestart)(nil), "gobgpapi.LongLivedGracefulRestart") proto.RegisterType((*AfiSafi)(nil), "gobgpapi.AfiSafi") proto.RegisterType((*AddPathsConfig)(nil), "gobgpapi.AddPathsConfig") proto.RegisterType((*AddPathsState)(nil), "gobgpapi.AddPathsState") proto.RegisterType((*AddPaths)(nil), "gobgpapi.AddPaths") proto.RegisterType((*Prefix)(nil), "gobgpapi.Prefix") proto.RegisterType((*DefinedSet)(nil), "gobgpapi.DefinedSet") proto.RegisterType((*MatchSet)(nil), "gobgpapi.MatchSet") proto.RegisterType((*AsPathLength)(nil), "gobgpapi.AsPathLength") proto.RegisterType((*Conditions)(nil), "gobgpapi.Conditions") proto.RegisterType((*CommunityAction)(nil), "gobgpapi.CommunityAction") proto.RegisterType((*MedAction)(nil), "gobgpapi.MedAction") proto.RegisterType((*AsPrependAction)(nil), "gobgpapi.AsPrependAction") proto.RegisterType((*NexthopAction)(nil), "gobgpapi.NexthopAction") proto.RegisterType((*LocalPrefAction)(nil), "gobgpapi.LocalPrefAction") proto.RegisterType((*Actions)(nil), "gobgpapi.Actions") proto.RegisterType((*Statement)(nil), "gobgpapi.Statement") proto.RegisterType((*Policy)(nil), "gobgpapi.Policy") proto.RegisterType((*PolicyAssignment)(nil), "gobgpapi.PolicyAssignment") proto.RegisterType((*RoutingPolicy)(nil), "gobgpapi.RoutingPolicy") proto.RegisterType((*Roa)(nil), "gobgpapi.Roa") proto.RegisterType((*Vrf)(nil), "gobgpapi.Vrf") proto.RegisterType((*DefaultRouteDistance)(nil), "gobgpapi.DefaultRouteDistance") proto.RegisterType((*Global)(nil), "gobgpapi.Global") proto.RegisterType((*Confederation)(nil), "gobgpapi.Confederation") proto.RegisterType((*RPKIConf)(nil), "gobgpapi.RPKIConf") proto.RegisterType((*RPKIState)(nil), "gobgpapi.RPKIState") proto.RegisterType((*Rpki)(nil), "gobgpapi.Rpki") proto.RegisterEnum("gobgpapi.Resource", Resource_name, Resource_value) proto.RegisterEnum("gobgpapi.TableLookupOption", TableLookupOption_name, TableLookupOption_value) proto.RegisterEnum("gobgpapi.DefinedType", DefinedType_name, DefinedType_value) proto.RegisterEnum("gobgpapi.MatchType", MatchType_name, MatchType_value) proto.RegisterEnum("gobgpapi.AsPathLengthType", AsPathLengthType_name, AsPathLengthType_value) proto.RegisterEnum("gobgpapi.RouteAction", RouteAction_name, RouteAction_value) proto.RegisterEnum("gobgpapi.CommunityActionType", CommunityActionType_name, CommunityActionType_value) proto.RegisterEnum("gobgpapi.MedActionType", MedActionType_name, MedActionType_value) proto.RegisterEnum("gobgpapi.PolicyDirection", PolicyDirection_name, PolicyDirection_value) proto.RegisterEnum("gobgpapi.ResetPeerRequest_SoftResetDirection", ResetPeerRequest_SoftResetDirection_name, ResetPeerRequest_SoftResetDirection_value) proto.RegisterEnum("gobgpapi.AddBmpRequest_MonitoringPolicy", AddBmpRequest_MonitoringPolicy_name, AddBmpRequest_MonitoringPolicy_value) proto.RegisterEnum("gobgpapi.Family_Afi", Family_Afi_name, Family_Afi_value) proto.RegisterEnum("gobgpapi.Family_Safi", Family_Safi_name, Family_Safi_value) proto.RegisterEnum("gobgpapi.RPKIValidation_State", RPKIValidation_State_name, RPKIValidation_State_value) proto.RegisterEnum("gobgpapi.RPKIValidation_Reason", RPKIValidation_Reason_name, RPKIValidation_Reason_value) proto.RegisterEnum("gobgpapi.PeerConf_RemovePrivateAs", PeerConf_RemovePrivateAs_name, PeerConf_RemovePrivateAs_value) proto.RegisterEnum("gobgpapi.PeerGroupConf_RemovePrivateAs", PeerGroupConf_RemovePrivateAs_name, PeerGroupConf_RemovePrivateAs_value) proto.RegisterEnum("gobgpapi.PeerGroupState_RemovePrivateAs", PeerGroupState_RemovePrivateAs_name, PeerGroupState_RemovePrivateAs_value) proto.RegisterEnum("gobgpapi.PeerState_SessionState", PeerState_SessionState_name, PeerState_SessionState_value) proto.RegisterEnum("gobgpapi.PeerState_AdminState", PeerState_AdminState_name, PeerState_AdminState_value) proto.RegisterEnum("gobgpapi.Conditions_RouteType", Conditions_RouteType_name, Conditions_RouteType_value) } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context var _ grpc.ClientConn // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. const _ = grpc.SupportPackageIsVersion4 // Client API for GobgpApi service type GobgpApiClient interface { StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error) AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error) UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error) ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error) AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error) AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error) DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error) AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error) GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error) MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error) SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error) SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) } type gobgpApiClient struct { cc *grpc.ClientConn } func NewGobgpApiClient(cc *grpc.ClientConn) GobgpApiClient { return &gobgpApiClient{cc} } func (c *gobgpApiClient) StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StartBgp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StopBgp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error) { out := new(GetBgpResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetBgp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[0], c.cc, "/gobgpapi.GobgpApi/ListPeer", opts...) if err != nil { return nil, err } x := &gobgpApiListPeerClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListPeerClient interface { Recv() (*ListPeerResponse, error) grpc.ClientStream } type gobgpApiListPeerClient struct { grpc.ClientStream } func (x *gobgpApiListPeerClient) Recv() (*ListPeerResponse, error) { m := new(ListPeerResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error) { out := new(UpdatePeerResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetPeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ShutdownPeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnablePeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisablePeer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[1], c.cc, "/gobgpapi.GobgpApi/MonitorPeer", opts...) if err != nil { return nil, err } x := &gobgpApiMonitorPeerClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_MonitorPeerClient interface { Recv() (*MonitorPeerResponse, error) grpc.ClientStream } type gobgpApiMonitorPeerClient struct { grpc.ClientStream } func (x *gobgpApiMonitorPeerClient) Recv() (*MonitorPeerResponse, error) { m := new(MonitorPeerResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeerGroup", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeerGroup", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error) { out := new(UpdatePeerGroupResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeerGroup", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDynamicNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error) { out := new(AddPathResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPath", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePath", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[2], c.cc, "/gobgpapi.GobgpApi/ListPath", opts...) if err != nil { return nil, err } x := &gobgpApiListPathClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListPathClient interface { Recv() (*ListPathResponse, error) grpc.ClientStream } type gobgpApiListPathClient struct { grpc.ClientStream } func (x *gobgpApiListPathClient) Recv() (*ListPathResponse, error) { m := new(ListPathResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[3], c.cc, "/gobgpapi.GobgpApi/AddPathStream", opts...) if err != nil { return nil, err } x := &gobgpApiAddPathStreamClient{stream} return x, nil } type GobgpApi_AddPathStreamClient interface { Send(*AddPathStreamRequest) error CloseAndRecv() (*google_protobuf1.Empty, error) grpc.ClientStream } type gobgpApiAddPathStreamClient struct { grpc.ClientStream } func (x *gobgpApiAddPathStreamClient) Send(m *AddPathStreamRequest) error { return x.ClientStream.SendMsg(m) } func (x *gobgpApiAddPathStreamClient) CloseAndRecv() (*google_protobuf1.Empty, error) { if err := x.ClientStream.CloseSend(); err != nil { return nil, err } m := new(google_protobuf1.Empty) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error) { out := new(GetTableResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetTable", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[4], c.cc, "/gobgpapi.GobgpApi/MonitorTable", opts...) if err != nil { return nil, err } x := &gobgpApiMonitorTableClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_MonitorTableClient interface { Recv() (*MonitorTableResponse, error) grpc.ClientStream } type gobgpApiMonitorTableClient struct { grpc.ClientStream } func (x *gobgpApiMonitorTableClient) Recv() (*MonitorTableResponse, error) { m := new(MonitorTableResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddVrf", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteVrf", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[5], c.cc, "/gobgpapi.GobgpApi/ListVrf", opts...) if err != nil { return nil, err } x := &gobgpApiListVrfClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListVrfClient interface { Recv() (*ListVrfResponse, error) grpc.ClientStream } type gobgpApiListVrfClient struct { grpc.ClientStream } func (x *gobgpApiListVrfClient) Recv() (*ListVrfResponse, error) { m := new(ListVrfResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicy", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicy", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[6], c.cc, "/gobgpapi.GobgpApi/ListPolicy", opts...) if err != nil { return nil, err } x := &gobgpApiListPolicyClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListPolicyClient interface { Recv() (*ListPolicyResponse, error) grpc.ClientStream } type gobgpApiListPolicyClient struct { grpc.ClientStream } func (x *gobgpApiListPolicyClient) Recv() (*ListPolicyResponse, error) { m := new(ListPolicyResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicies", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDefinedSet", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteDefinedSet", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[7], c.cc, "/gobgpapi.GobgpApi/ListDefinedSet", opts...) if err != nil { return nil, err } x := &gobgpApiListDefinedSetClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListDefinedSetClient interface { Recv() (*ListDefinedSetResponse, error) grpc.ClientStream } type gobgpApiListDefinedSetClient struct { grpc.ClientStream } func (x *gobgpApiListDefinedSetClient) Recv() (*ListDefinedSetResponse, error) { m := new(ListDefinedSetResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddStatement", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteStatement", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[8], c.cc, "/gobgpapi.GobgpApi/ListStatement", opts...) if err != nil { return nil, err } x := &gobgpApiListStatementClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListStatementClient interface { Recv() (*ListStatementResponse, error) grpc.ClientStream } type gobgpApiListStatementClient struct { grpc.ClientStream } func (x *gobgpApiListStatementClient) Recv() (*ListStatementResponse, error) { m := new(ListStatementResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[9], c.cc, "/gobgpapi.GobgpApi/ListPolicyAssignment", opts...) if err != nil { return nil, err } x := &gobgpApiListPolicyAssignmentClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListPolicyAssignmentClient interface { Recv() (*ListPolicyAssignmentResponse, error) grpc.ClientStream } type gobgpApiListPolicyAssignmentClient struct { grpc.ClientStream } func (x *gobgpApiListPolicyAssignmentClient) Recv() (*ListPolicyAssignmentResponse, error) { m := new(ListPolicyAssignmentResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[10], c.cc, "/gobgpapi.GobgpApi/ListRpki", opts...) if err != nil { return nil, err } x := &gobgpApiListRpkiClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListRpkiClient interface { Recv() (*ListRpkiResponse, error) grpc.ClientStream } type gobgpApiListRpkiClient struct { grpc.ClientStream } func (x *gobgpApiListRpkiClient) Recv() (*ListRpkiResponse, error) { m := new(ListRpkiResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[11], c.cc, "/gobgpapi.GobgpApi/ListRpkiTable", opts...) if err != nil { return nil, err } x := &gobgpApiListRpkiTableClient{stream} if err := x.ClientStream.SendMsg(in); err != nil { return nil, err } if err := x.ClientStream.CloseSend(); err != nil { return nil, err } return x, nil } type GobgpApi_ListRpkiTableClient interface { Recv() (*ListRpkiTableResponse, error) grpc.ClientStream } type gobgpApiListRpkiTableClient struct { grpc.ClientStream } func (x *gobgpApiListRpkiTableClient) Recv() (*ListRpkiTableResponse, error) { m := new(ListRpkiTableResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableZebra", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableMrt", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableMrt", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddBmp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { out := new(google_protobuf1.Empty) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteBmp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } // Server API for GobgpApi service type GobgpApiServer interface { StartBgp(context.Context, *StartBgpRequest) (*google_protobuf1.Empty, error) StopBgp(context.Context, *StopBgpRequest) (*google_protobuf1.Empty, error) GetBgp(context.Context, *GetBgpRequest) (*GetBgpResponse, error) AddPeer(context.Context, *AddPeerRequest) (*google_protobuf1.Empty, error) DeletePeer(context.Context, *DeletePeerRequest) (*google_protobuf1.Empty, error) ListPeer(*ListPeerRequest, GobgpApi_ListPeerServer) error UpdatePeer(context.Context, *UpdatePeerRequest) (*UpdatePeerResponse, error) ResetPeer(context.Context, *ResetPeerRequest) (*google_protobuf1.Empty, error) ShutdownPeer(context.Context, *ShutdownPeerRequest) (*google_protobuf1.Empty, error) EnablePeer(context.Context, *EnablePeerRequest) (*google_protobuf1.Empty, error) DisablePeer(context.Context, *DisablePeerRequest) (*google_protobuf1.Empty, error) MonitorPeer(*MonitorPeerRequest, GobgpApi_MonitorPeerServer) error AddPeerGroup(context.Context, *AddPeerGroupRequest) (*google_protobuf1.Empty, error) DeletePeerGroup(context.Context, *DeletePeerGroupRequest) (*google_protobuf1.Empty, error) UpdatePeerGroup(context.Context, *UpdatePeerGroupRequest) (*UpdatePeerGroupResponse, error) AddDynamicNeighbor(context.Context, *AddDynamicNeighborRequest) (*google_protobuf1.Empty, error) AddPath(context.Context, *AddPathRequest) (*AddPathResponse, error) DeletePath(context.Context, *DeletePathRequest) (*google_protobuf1.Empty, error) ListPath(*ListPathRequest, GobgpApi_ListPathServer) error AddPathStream(GobgpApi_AddPathStreamServer) error GetTable(context.Context, *GetTableRequest) (*GetTableResponse, error) MonitorTable(*MonitorTableRequest, GobgpApi_MonitorTableServer) error AddVrf(context.Context, *AddVrfRequest) (*google_protobuf1.Empty, error) DeleteVrf(context.Context, *DeleteVrfRequest) (*google_protobuf1.Empty, error) ListVrf(*ListVrfRequest, GobgpApi_ListVrfServer) error AddPolicy(context.Context, *AddPolicyRequest) (*google_protobuf1.Empty, error) DeletePolicy(context.Context, *DeletePolicyRequest) (*google_protobuf1.Empty, error) ListPolicy(*ListPolicyRequest, GobgpApi_ListPolicyServer) error SetPolicies(context.Context, *SetPoliciesRequest) (*google_protobuf1.Empty, error) AddDefinedSet(context.Context, *AddDefinedSetRequest) (*google_protobuf1.Empty, error) DeleteDefinedSet(context.Context, *DeleteDefinedSetRequest) (*google_protobuf1.Empty, error) ListDefinedSet(*ListDefinedSetRequest, GobgpApi_ListDefinedSetServer) error AddStatement(context.Context, *AddStatementRequest) (*google_protobuf1.Empty, error) DeleteStatement(context.Context, *DeleteStatementRequest) (*google_protobuf1.Empty, error) ListStatement(*ListStatementRequest, GobgpApi_ListStatementServer) error AddPolicyAssignment(context.Context, *AddPolicyAssignmentRequest) (*google_protobuf1.Empty, error) DeletePolicyAssignment(context.Context, *DeletePolicyAssignmentRequest) (*google_protobuf1.Empty, error) ListPolicyAssignment(*ListPolicyAssignmentRequest, GobgpApi_ListPolicyAssignmentServer) error SetPolicyAssignment(context.Context, *SetPolicyAssignmentRequest) (*google_protobuf1.Empty, error) AddRpki(context.Context, *AddRpkiRequest) (*google_protobuf1.Empty, error) DeleteRpki(context.Context, *DeleteRpkiRequest) (*google_protobuf1.Empty, error) ListRpki(*ListRpkiRequest, GobgpApi_ListRpkiServer) error EnableRpki(context.Context, *EnableRpkiRequest) (*google_protobuf1.Empty, error) DisableRpki(context.Context, *DisableRpkiRequest) (*google_protobuf1.Empty, error) ResetRpki(context.Context, *ResetRpkiRequest) (*google_protobuf1.Empty, error) ListRpkiTable(*ListRpkiTableRequest, GobgpApi_ListRpkiTableServer) error EnableZebra(context.Context, *EnableZebraRequest) (*google_protobuf1.Empty, error) EnableMrt(context.Context, *EnableMrtRequest) (*google_protobuf1.Empty, error) DisableMrt(context.Context, *DisableMrtRequest) (*google_protobuf1.Empty, error) AddBmp(context.Context, *AddBmpRequest) (*google_protobuf1.Empty, error) DeleteBmp(context.Context, *DeleteBmpRequest) (*google_protobuf1.Empty, error) } func RegisterGobgpApiServer(s *grpc.Server, srv GobgpApiServer) { s.RegisterService(&_GobgpApi_serviceDesc, srv) } func _GobgpApi_StartBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(StartBgpRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).StartBgp(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/StartBgp", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).StartBgp(ctx, req.(*StartBgpRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_StopBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(StopBgpRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).StopBgp(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/StopBgp", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).StopBgp(ctx, req.(*StopBgpRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetBgpRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetBgp(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetBgp", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetBgp(ctx, req.(*GetBgpRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddPeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddPeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddPeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddPeer(ctx, req.(*AddPeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeletePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeletePeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeletePeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeletePeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeletePeer(ctx, req.(*DeletePeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListPeer_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListPeerRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListPeer(m, &gobgpApiListPeerServer{stream}) } type GobgpApi_ListPeerServer interface { Send(*ListPeerResponse) error grpc.ServerStream } type gobgpApiListPeerServer struct { grpc.ServerStream } func (x *gobgpApiListPeerServer) Send(m *ListPeerResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_UpdatePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(UpdatePeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).UpdatePeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/UpdatePeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).UpdatePeer(ctx, req.(*UpdatePeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ResetPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ResetPeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ResetPeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ResetPeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ResetPeer(ctx, req.(*ResetPeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ShutdownPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ShutdownPeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ShutdownPeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ShutdownPeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ShutdownPeer(ctx, req.(*ShutdownPeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_EnablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(EnablePeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).EnablePeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/EnablePeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).EnablePeer(ctx, req.(*EnablePeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DisablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DisablePeerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DisablePeer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DisablePeer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DisablePeer(ctx, req.(*DisablePeerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_MonitorPeer_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(MonitorPeerRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).MonitorPeer(m, &gobgpApiMonitorPeerServer{stream}) } type GobgpApi_MonitorPeerServer interface { Send(*MonitorPeerResponse) error grpc.ServerStream } type gobgpApiMonitorPeerServer struct { grpc.ServerStream } func (x *gobgpApiMonitorPeerServer) Send(m *MonitorPeerResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddPeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddPeerGroupRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddPeerGroup(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddPeerGroup", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddPeerGroup(ctx, req.(*AddPeerGroupRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeletePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeletePeerGroupRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeletePeerGroup(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeletePeerGroup", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeletePeerGroup(ctx, req.(*DeletePeerGroupRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_UpdatePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(UpdatePeerGroupRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).UpdatePeerGroup(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/UpdatePeerGroup", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).UpdatePeerGroup(ctx, req.(*UpdatePeerGroupRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddDynamicNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddDynamicNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddDynamicNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, req.(*AddDynamicNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddPath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddPathRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddPath(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddPath", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddPath(ctx, req.(*AddPathRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeletePath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeletePathRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeletePath(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeletePath", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeletePath(ctx, req.(*DeletePathRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListPath_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListPathRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListPath(m, &gobgpApiListPathServer{stream}) } type GobgpApi_ListPathServer interface { Send(*ListPathResponse) error grpc.ServerStream } type gobgpApiListPathServer struct { grpc.ServerStream } func (x *gobgpApiListPathServer) Send(m *ListPathResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddPathStream_Handler(srv interface{}, stream grpc.ServerStream) error { return srv.(GobgpApiServer).AddPathStream(&gobgpApiAddPathStreamServer{stream}) } type GobgpApi_AddPathStreamServer interface { SendAndClose(*google_protobuf1.Empty) error Recv() (*AddPathStreamRequest, error) grpc.ServerStream } type gobgpApiAddPathStreamServer struct { grpc.ServerStream } func (x *gobgpApiAddPathStreamServer) SendAndClose(m *google_protobuf1.Empty) error { return x.ServerStream.SendMsg(m) } func (x *gobgpApiAddPathStreamServer) Recv() (*AddPathStreamRequest, error) { m := new(AddPathStreamRequest) if err := x.ServerStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func _GobgpApi_GetTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetTableRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetTable(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetTable", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetTable(ctx, req.(*GetTableRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_MonitorTable_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(MonitorTableRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).MonitorTable(m, &gobgpApiMonitorTableServer{stream}) } type GobgpApi_MonitorTableServer interface { Send(*MonitorTableResponse) error grpc.ServerStream } type gobgpApiMonitorTableServer struct { grpc.ServerStream } func (x *gobgpApiMonitorTableServer) Send(m *MonitorTableResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddVrfRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddVrf(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddVrf", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddVrf(ctx, req.(*AddVrfRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteVrfRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteVrf(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteVrf", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteVrf(ctx, req.(*DeleteVrfRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListVrf_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListVrfRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListVrf(m, &gobgpApiListVrfServer{stream}) } type GobgpApi_ListVrfServer interface { Send(*ListVrfResponse) error grpc.ServerStream } type gobgpApiListVrfServer struct { grpc.ServerStream } func (x *gobgpApiListVrfServer) Send(m *ListVrfResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddPolicyRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddPolicy(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddPolicy", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddPolicy(ctx, req.(*AddPolicyRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeletePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeletePolicyRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeletePolicy(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeletePolicy", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeletePolicy(ctx, req.(*DeletePolicyRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListPolicy_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListPolicyRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListPolicy(m, &gobgpApiListPolicyServer{stream}) } type GobgpApi_ListPolicyServer interface { Send(*ListPolicyResponse) error grpc.ServerStream } type gobgpApiListPolicyServer struct { grpc.ServerStream } func (x *gobgpApiListPolicyServer) Send(m *ListPolicyResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_SetPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(SetPoliciesRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).SetPolicies(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/SetPolicies", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).SetPolicies(ctx, req.(*SetPoliciesRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddDefinedSetRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddDefinedSet(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddDefinedSet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddDefinedSet(ctx, req.(*AddDefinedSetRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteDefinedSetRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteDefinedSet(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteDefinedSet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteDefinedSet(ctx, req.(*DeleteDefinedSetRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListDefinedSet_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListDefinedSetRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListDefinedSet(m, &gobgpApiListDefinedSetServer{stream}) } type GobgpApi_ListDefinedSetServer interface { Send(*ListDefinedSetResponse) error grpc.ServerStream } type gobgpApiListDefinedSetServer struct { grpc.ServerStream } func (x *gobgpApiListDefinedSetServer) Send(m *ListDefinedSetResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddStatementRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddStatement(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddStatement", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddStatement(ctx, req.(*AddStatementRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteStatementRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteStatement(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteStatement", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteStatement(ctx, req.(*DeleteStatementRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListStatement_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListStatementRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListStatement(m, &gobgpApiListStatementServer{stream}) } type GobgpApi_ListStatementServer interface { Send(*ListStatementResponse) error grpc.ServerStream } type gobgpApiListStatementServer struct { grpc.ServerStream } func (x *gobgpApiListStatementServer) Send(m *ListStatementResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_AddPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddPolicyAssignmentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddPolicyAssignment(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddPolicyAssignment", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddPolicyAssignment(ctx, req.(*AddPolicyAssignmentRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeletePolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeletePolicyAssignmentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeletePolicyAssignment", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, req.(*DeletePolicyAssignmentRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListPolicyAssignment_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListPolicyAssignmentRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListPolicyAssignment(m, &gobgpApiListPolicyAssignmentServer{stream}) } type GobgpApi_ListPolicyAssignmentServer interface { Send(*ListPolicyAssignmentResponse) error grpc.ServerStream } type gobgpApiListPolicyAssignmentServer struct { grpc.ServerStream } func (x *gobgpApiListPolicyAssignmentServer) Send(m *ListPolicyAssignmentResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_SetPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(SetPolicyAssignmentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).SetPolicyAssignment(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/SetPolicyAssignment", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).SetPolicyAssignment(ctx, req.(*SetPolicyAssignmentRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddRpki(ctx, req.(*AddRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteRpki(ctx, req.(*DeleteRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListRpki_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListRpkiRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListRpki(m, &gobgpApiListRpkiServer{stream}) } type GobgpApi_ListRpkiServer interface { Send(*ListRpkiResponse) error grpc.ServerStream } type gobgpApiListRpkiServer struct { grpc.ServerStream } func (x *gobgpApiListRpkiServer) Send(m *ListRpkiResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_EnableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(EnableRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).EnableRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/EnableRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).EnableRpki(ctx, req.(*EnableRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DisableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DisableRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DisableRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DisableRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DisableRpki(ctx, req.(*DisableRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ResetRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ResetRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ResetRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ResetRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ResetRpki(ctx, req.(*ResetRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ListRpkiTable_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(ListRpkiTableRequest) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).ListRpkiTable(m, &gobgpApiListRpkiTableServer{stream}) } type GobgpApi_ListRpkiTableServer interface { Send(*ListRpkiTableResponse) error grpc.ServerStream } type gobgpApiListRpkiTableServer struct { grpc.ServerStream } func (x *gobgpApiListRpkiTableServer) Send(m *ListRpkiTableResponse) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_EnableZebra_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(EnableZebraRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).EnableZebra(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/EnableZebra", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).EnableZebra(ctx, req.(*EnableZebraRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_EnableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(EnableMrtRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).EnableMrt(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/EnableMrt", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).EnableMrt(ctx, req.(*EnableMrtRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DisableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DisableMrtRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DisableMrt(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DisableMrt", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DisableMrt(ctx, req.(*DisableMrtRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddBmpRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddBmp(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddBmp", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddBmp(ctx, req.(*AddBmpRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteBmpRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteBmp(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteBmp", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteBmp(ctx, req.(*DeleteBmpRequest)) } return interceptor(ctx, in, info, handler) } var _GobgpApi_serviceDesc = grpc.ServiceDesc{ ServiceName: "gobgpapi.GobgpApi", HandlerType: (*GobgpApiServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "StartBgp", Handler: _GobgpApi_StartBgp_Handler, }, { MethodName: "StopBgp", Handler: _GobgpApi_StopBgp_Handler, }, { MethodName: "GetBgp", Handler: _GobgpApi_GetBgp_Handler, }, { MethodName: "AddPeer", Handler: _GobgpApi_AddPeer_Handler, }, { MethodName: "DeletePeer", Handler: _GobgpApi_DeletePeer_Handler, }, { MethodName: "UpdatePeer", Handler: _GobgpApi_UpdatePeer_Handler, }, { MethodName: "ResetPeer", Handler: _GobgpApi_ResetPeer_Handler, }, { MethodName: "ShutdownPeer", Handler: _GobgpApi_ShutdownPeer_Handler, }, { MethodName: "EnablePeer", Handler: _GobgpApi_EnablePeer_Handler, }, { MethodName: "DisablePeer", Handler: _GobgpApi_DisablePeer_Handler, }, { MethodName: "AddPeerGroup", Handler: _GobgpApi_AddPeerGroup_Handler, }, { MethodName: "DeletePeerGroup", Handler: _GobgpApi_DeletePeerGroup_Handler, }, { MethodName: "UpdatePeerGroup", Handler: _GobgpApi_UpdatePeerGroup_Handler, }, { MethodName: "AddDynamicNeighbor", Handler: _GobgpApi_AddDynamicNeighbor_Handler, }, { MethodName: "AddPath", Handler: _GobgpApi_AddPath_Handler, }, { MethodName: "DeletePath", Handler: _GobgpApi_DeletePath_Handler, }, { MethodName: "GetTable", Handler: _GobgpApi_GetTable_Handler, }, { MethodName: "AddVrf", Handler: _GobgpApi_AddVrf_Handler, }, { MethodName: "DeleteVrf", Handler: _GobgpApi_DeleteVrf_Handler, }, { MethodName: "AddPolicy", Handler: _GobgpApi_AddPolicy_Handler, }, { MethodName: "DeletePolicy", Handler: _GobgpApi_DeletePolicy_Handler, }, { MethodName: "SetPolicies", Handler: _GobgpApi_SetPolicies_Handler, }, { MethodName: "AddDefinedSet", Handler: _GobgpApi_AddDefinedSet_Handler, }, { MethodName: "DeleteDefinedSet", Handler: _GobgpApi_DeleteDefinedSet_Handler, }, { MethodName: "AddStatement", Handler: _GobgpApi_AddStatement_Handler, }, { MethodName: "DeleteStatement", Handler: _GobgpApi_DeleteStatement_Handler, }, { MethodName: "AddPolicyAssignment", Handler: _GobgpApi_AddPolicyAssignment_Handler, }, { MethodName: "DeletePolicyAssignment", Handler: _GobgpApi_DeletePolicyAssignment_Handler, }, { MethodName: "SetPolicyAssignment", Handler: _GobgpApi_SetPolicyAssignment_Handler, }, { MethodName: "AddRpki", Handler: _GobgpApi_AddRpki_Handler, }, { MethodName: "DeleteRpki", Handler: _GobgpApi_DeleteRpki_Handler, }, { MethodName: "EnableRpki", Handler: _GobgpApi_EnableRpki_Handler, }, { MethodName: "DisableRpki", Handler: _GobgpApi_DisableRpki_Handler, }, { MethodName: "ResetRpki", Handler: _GobgpApi_ResetRpki_Handler, }, { MethodName: "EnableZebra", Handler: _GobgpApi_EnableZebra_Handler, }, { MethodName: "EnableMrt", Handler: _GobgpApi_EnableMrt_Handler, }, { MethodName: "DisableMrt", Handler: _GobgpApi_DisableMrt_Handler, }, { MethodName: "AddBmp", Handler: _GobgpApi_AddBmp_Handler, }, { MethodName: "DeleteBmp", Handler: _GobgpApi_DeleteBmp_Handler, }, }, Streams: []grpc.StreamDesc{ { StreamName: "ListPeer", Handler: _GobgpApi_ListPeer_Handler, ServerStreams: true, }, { StreamName: "MonitorPeer", Handler: _GobgpApi_MonitorPeer_Handler, ServerStreams: true, }, { StreamName: "ListPath", Handler: _GobgpApi_ListPath_Handler, ServerStreams: true, }, { StreamName: "AddPathStream", Handler: _GobgpApi_AddPathStream_Handler, ClientStreams: true, }, { StreamName: "MonitorTable", Handler: _GobgpApi_MonitorTable_Handler, ServerStreams: true, }, { StreamName: "ListVrf", Handler: _GobgpApi_ListVrf_Handler, ServerStreams: true, }, { StreamName: "ListPolicy", Handler: _GobgpApi_ListPolicy_Handler, ServerStreams: true, }, { StreamName: "ListDefinedSet", Handler: _GobgpApi_ListDefinedSet_Handler, ServerStreams: true, }, { StreamName: "ListStatement", Handler: _GobgpApi_ListStatement_Handler, ServerStreams: true, }, { StreamName: "ListPolicyAssignment", Handler: _GobgpApi_ListPolicyAssignment_Handler, ServerStreams: true, }, { StreamName: "ListRpki", Handler: _GobgpApi_ListRpki_Handler, ServerStreams: true, }, { StreamName: "ListRpkiTable", Handler: _GobgpApi_ListRpkiTable_Handler, ServerStreams: true, }, }, Metadata: "gobgp.proto", } func init() { proto.RegisterFile("gobgp.proto", fileDescriptor0) } var fileDescriptor0 = []byte{ // 7658 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7c, 0x4d, 0x6f, 0x1b, 0x49, 0x96, 0xa0, 0xf9, 0x21, 0x8a, 0x7c, 0x24, 0xc5, 0x54, 0x48, 0x96, 0x64, 0xb9, 0xfc, 0x51, 0xd9, 0x55, 0xb6, 0x4b, 0x55, 0x96, 0x3f, 0xaa, 0xca, 0xae, 0xb6, 0xdb, 0x55, 0x45, 0x4b, 0xb4, 0xcc, 0x32, 0x45, 0xb2, 0x92, 0x94, 0xcb, 0xd5, 0xd8, 0x42, 0x76, 0x8a, 0x19, 0xa4, 0x72, 0x8b, 0xcc, 0xcc, 0xca, 0x4c, 0xca, 0x12, 0xf6, 0xd2, 0xdb, 0xbd, 0xdb, 0x97, 0x45, 0x03, 0x8b, 0xdd, 0xdb, 0xee, 0xde, 0x16, 0xd8, 0x43, 0x63, 0x0f, 0x7b, 0xd8, 0x5d, 0x60, 0x81, 0x05, 0x66, 0x0e, 0x33, 0x98, 0xc6, 0x34, 0x30, 0xc0, 0x9c, 0x06, 0x98, 0x43, 0x9f, 0xe6, 0x0f, 0xcc, 0x65, 0x30, 0xc7, 0x41, 0x7c, 0x64, 0x66, 0xe4, 0x07, 0x25, 0xd9, 0xe5, 0xe9, 0x9e, 0x06, 0xfa, 0x44, 0xc6, 0x7b, 0x2f, 0x5e, 0x7c, 0xbd, 0x78, 0xef, 0x45, 0xc4, 0xcb, 0x07, 0xe5, 0x91, 0xb5, 0x3f, 0xb2, 0x37, 0x6d, 0xc7, 0xf2, 0x2c, 0x54, 0xa4, 0x05, 0xcd, 0x36, 0xd6, 0x2f, 0x8c, 0x2c, 0x6b, 0x34, 0xc6, 0xb7, 0x28, 0x7c, 0x7f, 0x3a, 0xbc, 0xa5, 0x99, 0xc7, 0x8c, 0x68, 0xfd, 0x62, 0x1c, 0x85, 0x27, 0xb6, 0xc7, 0x91, 0xf2, 0x43, 0xa8, 0xf5, 0x3c, 0xcd, 0xf1, 0x1e, 0x8f, 0x6c, 0x05, 0x7f, 0x37, 0xc5, 0xae, 0x87, 0x6e, 0x40, 0x61, 0x34, 0xb6, 0xf6, 0xb5, 0xf1, 0x5a, 0xe6, 0x6a, 0xe6, 0x46, 0xf9, 0xae, 0xb4, 0xe9, 0xb7, 0xb2, 0xb9, 0x43, 0xe1, 0x0a, 0xc7, 0xcb, 0x12, 0x2c, 0xf4, 0x3c, 0xcb, 0x0e, 0xeb, 0xca, 0x35, 0xa8, 0xee, 0x60, 0x81, 0x99, 0xfc, 0x00, 0x16, 0x7c, 0x80, 0x6b, 0x5b, 0xa6, 0x8b, 0x5f, 0x81, 0xfd, 0x47, 0xb0, 0x50, 0xd7, 0xf5, 0x2e, 0xc6, 0x8e, 0xdf, 0x35, 0x19, 0xf2, 0x36, 0xc6, 0x0e, 0xaf, 0xb9, 0x10, 0xd6, 0xa4, 0x44, 0x14, 0x27, 0x3f, 0x83, 0xc5, 0x6d, 0x3c, 0xc6, 0x1e, 0x16, 0x2b, 0xae, 0xc1, 0xbc, 0xa6, 0xeb, 0x0e, 0x76, 0x5d, 0x5a, 0xb7, 0xa4, 0xf8, 0x45, 0xf4, 0x16, 0x94, 0x0c, 0xd3, 0xc3, 0xce, 0x50, 0x1b, 0xe0, 0xb5, 0x2c, 0xc5, 0x85, 0x00, 0xf9, 0x2b, 0xa8, 0xb5, 0x0c, 0xd7, 0x3b, 0x1b, 0xab, 0x0d, 0x90, 0xb0, 0xa9, 0xed, 0x8f, 0x71, 0x5d, 0x3f, 0xc4, 0x8e, 0x67, 0xb8, 0x58, 0xa7, 0x1c, 0x8b, 0x4a, 0x02, 0x2e, 0xdf, 0x03, 0x29, 0x64, 0xcc, 0x67, 0xe6, 0x2c, 0xa3, 0xfb, 0x09, 0x2c, 0xee, 0xd9, 0xba, 0x16, 0x1d, 0xdd, 0x19, 0x2a, 0xa2, 0xeb, 0x20, 0xe9, 0x96, 0xea, 0x5a, 0x43, 0x4f, 0x75, 0xb0, 0x8b, 0x3d, 0xd5, 0x30, 0x79, 0xe7, 0xaa, 0xba, 0xd5, 0xb3, 0x86, 0x9e, 0x42, 0xa0, 0x4d, 0x53, 0xde, 0x02, 0x24, 0xb6, 0xc0, 0xfb, 0x76, 0x13, 0x96, 0x4c, 0x8c, 0x75, 0x37, 0xc6, 0x21, 0xc3, 0x86, 0x47, 0x51, 0x22, 0x93, 0xbf, 0xcb, 0x80, 0x44, 0xff, 0x9f, 0x6d, 0xe6, 0xde, 0x81, 0xea, 0xc0, 0x9a, 0x4c, 0xa6, 0xa6, 0x31, 0xd0, 0x3c, 0xc3, 0x32, 0xf9, 0x42, 0x44, 0x81, 0x08, 0x41, 0x9e, 0xb4, 0xbe, 0x96, 0xa3, 0x8d, 0xd2, 0xff, 0xe8, 0x19, 0x94, 0x74, 0xc3, 0xc1, 0x03, 0x5a, 0x2b, 0x7f, 0x35, 0x73, 0x63, 0xe1, 0xee, 0xcd, 0x70, 0xfc, 0xf1, 0x2e, 0x6c, 0x06, 0x7d, 0xdc, 0xf6, 0x2b, 0x29, 0x61, 0x7d, 0xf9, 0x16, 0xa0, 0x24, 0x01, 0x2a, 0x40, 0xb6, 0xd9, 0x96, 0xce, 0xa1, 0x79, 0xc8, 0x75, 0xf6, 0xfa, 0x52, 0x06, 0x15, 0x21, 0xff, 0xb8, 0xd3, 0x7f, 0x2a, 0x65, 0xe5, 0x3d, 0x58, 0xea, 0x1d, 0x4c, 0x3d, 0xdd, 0x7a, 0x69, 0xbe, 0xc1, 0x81, 0xca, 0x37, 0x61, 0xb1, 0x41, 0x05, 0xe6, 0x4c, 0x4c, 0xe5, 0x3e, 0xa0, 0x6d, 0xc3, 0x3d, 0x33, 0xfd, 0x19, 0x3b, 0xf1, 0x14, 0xd0, 0xae, 0x65, 0x1a, 0x9e, 0xe5, 0x9c, 0x8d, 0xeb, 0x1a, 0xcc, 0x0f, 0xa6, 0x8e, 0x83, 0x4d, 0x8f, 0xcb, 0x95, 0x5f, 0x94, 0x7f, 0x08, 0x4b, 0x11, 0x4e, 0xaf, 0x20, 0xee, 0x4d, 0x58, 0xe2, 0x2a, 0x60, 0xc7, 0xb1, 0xa6, 0x81, 0x8a, 0xba, 0x0b, 0x40, 0xd0, 0xea, 0x88, 0x00, 0x39, 0x83, 0xa5, 0x28, 0x03, 0x46, 0x5f, 0xb2, 0xfd, 0xbf, 0xf2, 0x07, 0xb0, 0x12, 0xea, 0x85, 0x08, 0x37, 0x04, 0x79, 0x53, 0x9b, 0x60, 0x3e, 0x20, 0xfa, 0x5f, 0x9e, 0xc2, 0x4a, 0xb8, 0x0b, 0xbe, 0x6f, 0xdb, 0x67, 0xdf, 0x7c, 0x4f, 0x61, 0x35, 0xd1, 0xec, 0xeb, 0xed, 0x40, 0x0d, 0x2e, 0xd4, 0x75, 0x7d, 0xfb, 0xd8, 0xd4, 0x26, 0xc6, 0xa0, 0x8d, 0x8d, 0xd1, 0xc1, 0xbe, 0x15, 0xac, 0xe2, 0x36, 0x48, 0x3a, 0xc3, 0xa8, 0x26, 0x47, 0xf1, 0x91, 0x5c, 0x08, 0x47, 0x12, 0xaf, 0x5b, 0xd3, 0xa3, 0x00, 0xf9, 0xdf, 0x30, 0xfd, 0xac, 0x79, 0x07, 0x3e, 0xdf, 0x4d, 0x28, 0x3a, 0xd8, 0xb5, 0xa6, 0xce, 0x80, 0xcd, 0xe6, 0xc2, 0x5d, 0x14, 0xd9, 0x8c, 0x14, 0xa3, 0x04, 0x34, 0xe8, 0x3c, 0x14, 0x0e, 0x9d, 0xa1, 0x6a, 0xe8, 0x5c, 0x04, 0xe7, 0x0e, 0x9d, 0x61, 0x53, 0xa7, 0x92, 0xa1, 0x79, 0x07, 0x74, 0xa3, 0x47, 0x25, 0x83, 0xb4, 0x45, 0x71, 0xf2, 0xbb, 0x50, 0x0b, 0x1a, 0xe7, 0x33, 0x84, 0x20, 0x3f, 0x9d, 0x1a, 0x3a, 0x6d, 0xb9, 0xa2, 0xd0, 0xff, 0xf2, 0xff, 0xcf, 0x04, 0xe6, 0xe0, 0xcd, 0xf7, 0xf3, 0x06, 0x14, 0x86, 0xda, 0xc4, 0x18, 0x1f, 0xf3, 0x9e, 0x0a, 0xa6, 0xec, 0x09, 0x85, 0x2b, 0x1c, 0x1f, 0x8c, 0x28, 0x3f, 0x7b, 0x44, 0x41, 0xf7, 0xe7, 0x84, 0xee, 0xff, 0xaf, 0x0c, 0x37, 0x40, 0x42, 0xe7, 0xaf, 0x41, 0xde, 0x3b, 0xb6, 0x4f, 0xea, 0x38, 0xc5, 0x07, 0x62, 0x9d, 0x0d, 0xc5, 0xfa, 0x15, 0x7a, 0x7c, 0x1f, 0x8a, 0xb6, 0x83, 0x87, 0xc6, 0x11, 0x76, 0xd7, 0xf2, 0x57, 0x73, 0x37, 0xca, 0x77, 0x2f, 0x86, 0xb4, 0x7d, 0xa2, 0x6c, 0x5a, 0x96, 0xf5, 0xed, 0xd4, 0xee, 0x52, 0x22, 0x25, 0x20, 0x96, 0x9f, 0x71, 0xcb, 0x26, 0xae, 0xcc, 0x7d, 0x28, 0xeb, 0xd8, 0xf5, 0x0c, 0x93, 0xe9, 0x1b, 0x26, 0x6a, 0xe7, 0x05, 0x51, 0x0b, 0x91, 0x8a, 0x48, 0x29, 0xff, 0x3c, 0x03, 0xcb, 0x7c, 0x99, 0x7b, 0x9e, 0x83, 0xb5, 0xc9, 0x1b, 0x5e, 0xc1, 0x77, 0x60, 0x8e, 0xcc, 0xbd, 0xbb, 0x96, 0xa3, 0x43, 0x8c, 0x2f, 0x0c, 0x43, 0xca, 0x2f, 0xa1, 0xb6, 0x83, 0x3d, 0x3a, 0xe8, 0x57, 0x5d, 0x84, 0x70, 0xc2, 0xb3, 0xa7, 0x4c, 0xb8, 0xbf, 0x5c, 0x39, 0x41, 0x0b, 0x1d, 0x83, 0x14, 0x36, 0xcc, 0xe7, 0xf2, 0x3a, 0xd4, 0xcc, 0xe9, 0x44, 0x8d, 0xcf, 0x67, 0x5e, 0x59, 0x30, 0xa7, 0x13, 0x61, 0x22, 0xd1, 0x05, 0x28, 0x12, 0x42, 0x2a, 0x77, 0x59, 0x4a, 0x31, 0x6f, 0x4e, 0x27, 0x64, 0x5c, 0xe8, 0x6d, 0xa8, 0x10, 0x94, 0x36, 0x18, 0x60, 0xdb, 0xc3, 0x3a, 0x6d, 0x33, 0xaf, 0x94, 0xcd, 0xe9, 0xa4, 0xce, 0x41, 0xf2, 0xff, 0xcd, 0x04, 0x5a, 0xfb, 0xb5, 0x06, 0xfe, 0xfd, 0xa4, 0x4f, 0x30, 0x26, 0xf9, 0x88, 0x31, 0x41, 0x57, 0xa0, 0x6c, 0x5b, 0xae, 0xa7, 0xda, 0xd6, 0xd8, 0x18, 0x1c, 0xd3, 0xcd, 0x52, 0x54, 0x80, 0x80, 0xba, 0x14, 0x22, 0x3f, 0x80, 0xe5, 0x68, 0xbf, 0x05, 0x73, 0x43, 0xa6, 0x22, 0x73, 0x82, 0x52, 0xb9, 0x0d, 0xd5, 0xba, 0xae, 0x3f, 0x77, 0x86, 0xfe, 0x68, 0xaf, 0x40, 0xee, 0xd0, 0x19, 0xf2, 0x3a, 0xd5, 0xb0, 0x0e, 0x21, 0x21, 0x18, 0xf9, 0x1a, 0x48, 0x4c, 0xbd, 0x08, 0x95, 0xd2, 0xec, 0xc9, 0x3b, 0xb0, 0x40, 0x76, 0xc5, 0x29, 0x54, 0x77, 0xd9, 0x6e, 0xa7, 0x54, 0xbc, 0xdb, 0xa7, 0xf6, 0xe0, 0x08, 0x24, 0xb2, 0x43, 0xe8, 0xe0, 0x05, 0x17, 0x9e, 0xcf, 0x4f, 0xc2, 0xc7, 0xe6, 0x84, 0x1c, 0x8f, 0x1e, 0xc0, 0x05, 0x07, 0x0f, 0xb1, 0xa3, 0xe2, 0x23, 0x83, 0x88, 0xce, 0x48, 0x75, 0x3d, 0xcd, 0xc3, 0x13, 0x6c, 0x7a, 0x2e, 0x37, 0x51, 0xab, 0x94, 0xa0, 0xc1, 0xf1, 0xbd, 0x00, 0x2d, 0xff, 0x2c, 0x03, 0x4b, 0x5c, 0xb7, 0xbe, 0x66, 0xeb, 0xb7, 0x60, 0xc9, 0x26, 0x96, 0xcc, 0x39, 0xc4, 0xc9, 0x76, 0x91, 0x8f, 0x0a, 0x9b, 0x44, 0x12, 0xe4, 0xb4, 0xf1, 0x98, 0x7b, 0x80, 0xe4, 0xaf, 0x7c, 0x1d, 0x16, 0xa9, 0xba, 0x89, 0xf4, 0x20, 0x6d, 0x6e, 0x3f, 0x05, 0x24, 0x12, 0x86, 0xa7, 0x91, 0xb3, 0xf5, 0x55, 0xfe, 0x7f, 0x19, 0x40, 0x3d, 0xcc, 0xea, 0x1b, 0xd8, 0xf5, 0x9b, 0xba, 0x0f, 0x15, 0x1d, 0x0f, 0x0d, 0x13, 0xeb, 0xaa, 0x8b, 0x3d, 0xe2, 0x15, 0x11, 0x45, 0xb2, 0x2c, 0xea, 0x36, 0x8a, 0xed, 0x61, 0x8f, 0xa8, 0x36, 0xff, 0xbf, 0x8b, 0x3e, 0x80, 0xa2, 0xcd, 0x79, 0xad, 0x65, 0x69, 0xa5, 0x64, 0xdb, 0x01, 0x05, 0xfa, 0x11, 0x94, 0x35, 0xd7, 0x35, 0x46, 0x26, 0x9b, 0x21, 0xa6, 0xae, 0xd6, 0xe3, 0x15, 0xea, 0x01, 0x89, 0x22, 0x92, 0xcb, 0xbb, 0x54, 0x8b, 0x0a, 0x3d, 0xe1, 0x9d, 0xff, 0x18, 0xca, 0x42, 0xe7, 0xf9, 0x14, 0xa4, 0xf7, 0x1d, 0xc2, 0xbe, 0xcb, 0xfb, 0xb0, 0xca, 0xd6, 0xfd, 0x4d, 0x71, 0xf4, 0xd7, 0x35, 0x1b, 0xae, 0xeb, 0x73, 0x38, 0x4f, 0x96, 0x2b, 0xd9, 0xc2, 0x7b, 0x11, 0x05, 0x74, 0x3e, 0xc1, 0xba, 0x7f, 0x6c, 0x9f, 0xa0, 0x83, 0xe4, 0x0e, 0xac, 0xc4, 0xf9, 0x72, 0x51, 0x78, 0xcd, 0xc9, 0x78, 0x4a, 0x5d, 0xd4, 0x40, 0x46, 0xfd, 0x6e, 0xde, 0x81, 0x52, 0x20, 0xd1, 0x49, 0x2f, 0x31, 0x24, 0x0f, 0xa9, 0xe4, 0x6f, 0x7c, 0x0f, 0xf5, 0x0d, 0x30, 0x4b, 0x99, 0xd1, 0x0d, 0x58, 0x26, 0x23, 0x4f, 0x30, 0x4f, 0xdb, 0x2c, 0x5f, 0xb0, 0xd9, 0x17, 0x68, 0xf9, 0x24, 0xbd, 0xc6, 0xb0, 0x5e, 0xc0, 0x7a, 0xa0, 0xa0, 0x04, 0x01, 0xe5, 0xad, 0x3f, 0x00, 0x08, 0x25, 0x95, 0x73, 0x3c, 0x49, 0xae, 0x05, 0x6a, 0x79, 0x02, 0x97, 0x44, 0xfd, 0xf3, 0x46, 0x99, 0xa7, 0x4c, 0xe0, 0xbf, 0x86, 0x8b, 0xa1, 0x06, 0x49, 0x36, 0x96, 0x32, 0x8f, 0xe8, 0xbe, 0x78, 0x3c, 0xcd, 0x52, 0x89, 0xbd, 0x10, 0x6f, 0x3f, 0xf5, 0x28, 0xfa, 0x63, 0x78, 0x2b, 0xbd, 0x2d, 0xbe, 0x0e, 0xdf, 0x67, 0xda, 0x5e, 0xc0, 0xba, 0xaf, 0xc8, 0xde, 0xf0, 0x82, 0xfc, 0x98, 0x9e, 0x08, 0x14, 0xfb, 0x5b, 0xe3, 0xf4, 0xf3, 0x22, 0x82, 0xbc, 0x6d, 0x39, 0xec, 0xb0, 0x58, 0x55, 0xe8, 0x7f, 0xb4, 0x0e, 0xc5, 0xb1, 0x31, 0xc4, 0x9e, 0xc1, 0xfd, 0xa0, 0x9c, 0x12, 0x94, 0xe5, 0xba, 0xef, 0xc8, 0xbf, 0x36, 0x7b, 0xf9, 0x21, 0x33, 0xaf, 0x22, 0x83, 0xd0, 0x25, 0xc9, 0x9c, 0xec, 0x92, 0xc8, 0x0f, 0x98, 0x5f, 0xcb, 0x2a, 0xf3, 0x55, 0xb8, 0x06, 0x05, 0x6a, 0xa1, 0x52, 0x0e, 0xb1, 0x94, 0x8e, 0x63, 0x49, 0xdf, 0xd9, 0x81, 0xfe, 0xf5, 0xfb, 0xfe, 0x38, 0x38, 0xe4, 0xbf, 0x3e, 0x8f, 0x3e, 0xbf, 0x94, 0x79, 0xfd, 0x05, 0x4a, 0xb9, 0x82, 0x91, 0x3f, 0x67, 0x7a, 0x85, 0x30, 0x8d, 0x78, 0x8a, 0x67, 0x9f, 0xda, 0x4f, 0x98, 0xb6, 0x11, 0x38, 0x84, 0xce, 0x8f, 0x63, 0x69, 0x49, 0xe7, 0x47, 0xb1, 0x34, 0x85, 0x60, 0xe4, 0xdf, 0x64, 0x00, 0xb1, 0x99, 0xfd, 0x31, 0xde, 0x77, 0x34, 0xbf, 0x69, 0x09, 0x72, 0x53, 0x67, 0xcc, 0x07, 0x44, 0xfe, 0x12, 0xb7, 0xd1, 0xb1, 0xa6, 0x1e, 0x56, 0x89, 0x61, 0x60, 0x06, 0xb7, 0xa4, 0x00, 0x05, 0x11, 0x83, 0x41, 0xaf, 0x2f, 0x0e, 0xb1, 0xe3, 0x92, 0x7d, 0x9a, 0xa3, 0x03, 0xf6, 0x8b, 0xe8, 0x23, 0x58, 0x31, 0xf1, 0x91, 0x77, 0x60, 0xd9, 0xaa, 0xe7, 0x18, 0xa3, 0x11, 0x71, 0x96, 0x68, 0x93, 0xdc, 0x35, 0x5d, 0xe6, 0xd8, 0x3e, 0x43, 0xb2, 0xee, 0xa0, 0xbb, 0x70, 0x3e, 0x5e, 0x4b, 0xc7, 0x63, 0x8d, 0x79, 0xac, 0x55, 0x65, 0x29, 0x5a, 0x69, 0x9b, 0xa0, 0xe4, 0x11, 0x48, 0xac, 0xf6, 0xae, 0x13, 0x6c, 0xc7, 0x8b, 0x50, 0xd2, 0xa7, 0x13, 0x5b, 0x0d, 0x6c, 0xde, 0x9c, 0x52, 0x24, 0x00, 0xd2, 0x6b, 0xb2, 0x5f, 0x86, 0xc6, 0x18, 0x0b, 0x46, 0x2e, 0x28, 0x13, 0x1c, 0xbd, 0xc7, 0x3c, 0xd4, 0xc6, 0xdc, 0xbf, 0x0f, 0xca, 0xf2, 0x12, 0x2c, 0x72, 0x61, 0x0a, 0x5b, 0x92, 0xff, 0x34, 0x43, 0xbd, 0xdf, 0xc7, 0x13, 0xfb, 0xf5, 0x64, 0xe3, 0x47, 0xdc, 0x30, 0xe7, 0xa8, 0x9a, 0xbb, 0x11, 0xae, 0x56, 0x84, 0xe9, 0x26, 0x77, 0xce, 0x0d, 0x73, 0xc4, 0x9d, 0x1c, 0x5a, 0x4b, 0xde, 0x02, 0x29, 0x8e, 0x41, 0xf3, 0x90, 0xeb, 0x2a, 0x0d, 0xe9, 0x1c, 0x2a, 0x42, 0xbe, 0xdb, 0xe9, 0x45, 0xee, 0xde, 0x50, 0x09, 0xe6, 0x5a, 0x9d, 0xad, 0x7a, 0x4b, 0xca, 0x11, 0xba, 0x7a, 0xab, 0x25, 0xe5, 0xe5, 0xcf, 0x7d, 0x6f, 0xfc, 0x75, 0x07, 0x21, 0xff, 0x6d, 0x0e, 0x0a, 0x4c, 0x3a, 0xd1, 0x35, 0xc8, 0x69, 0x43, 0x83, 0xfb, 0x19, 0xcb, 0x71, 0xe1, 0xdd, 0xac, 0x0f, 0x0d, 0x85, 0x10, 0x10, 0x87, 0xc4, 0x25, 0x84, 0xd9, 0xb8, 0x43, 0xc2, 0x09, 0x7b, 0xda, 0xd0, 0x50, 0x28, 0x89, 0xdc, 0x85, 0x5c, 0x7d, 0x68, 0xa0, 0x1a, 0x94, 0xeb, 0x4f, 0x9a, 0xea, 0x5e, 0xfb, 0x59, 0xbb, 0xf3, 0x55, 0x5b, 0x3a, 0x87, 0x00, 0x0a, 0x04, 0xd0, 0xec, 0x4a, 0x19, 0x54, 0x86, 0x79, 0xf6, 0xff, 0x9e, 0x94, 0x45, 0x55, 0x28, 0x91, 0x42, 0xeb, 0xee, 0xf3, 0x6e, 0x5b, 0xba, 0x80, 0x24, 0x00, 0x52, 0xec, 0x74, 0xeb, 0x5f, 0xee, 0x35, 0xa4, 0x5f, 0xfe, 0x34, 0x23, 0xff, 0x2a, 0x0b, 0x79, 0xd2, 0x00, 0x92, 0xa0, 0xd2, 0x8b, 0x32, 0x0d, 0x21, 0xcd, 0xad, 0x3a, 0x9d, 0x3c, 0x04, 0x0b, 0x14, 0xb2, 0xbb, 0xd7, 0xea, 0x33, 0x58, 0x16, 0x2d, 0x41, 0x8d, 0xc1, 0xba, 0xad, 0x9e, 0xda, 0xaa, 0x3f, 0x6e, 0xb4, 0xa4, 0x3c, 0x5a, 0x01, 0x44, 0x81, 0x8d, 0xf6, 0x56, 0xbd, 0xdb, 0xdb, 0x6b, 0xd5, 0xfb, 0xcd, 0x4e, 0x5b, 0x9a, 0x27, 0xdd, 0xa1, 0xf0, 0xe7, 0xdd, 0x56, 0x4f, 0xaa, 0x07, 0xc5, 0x06, 0xe9, 0xdd, 0x13, 0x84, 0xa0, 0x1a, 0xb2, 0x22, 0xa0, 0x9f, 0x66, 0xd0, 0x5b, 0xb0, 0x1a, 0x81, 0x09, 0x6d, 0xff, 0xdb, 0x0c, 0x92, 0xe1, 0x12, 0xc5, 0x2a, 0x9d, 0xbd, 0x7e, 0x43, 0xed, 0xd7, 0x95, 0x9d, 0x46, 0x5f, 0xdd, 0xea, 0xb4, 0x7b, 0x7d, 0xa5, 0xde, 0x6c, 0xf7, 0x7b, 0xd2, 0xbf, 0xcb, 0xa0, 0x8b, 0xb0, 0x42, 0x69, 0x9e, 0xb4, 0x3a, 0x5f, 0xa9, 0xbd, 0x6e, 0x63, 0x2b, 0x18, 0xd0, 0xbf, 0xcf, 0xa0, 0x55, 0xde, 0xd1, 0x10, 0x49, 0xda, 0xfd, 0x45, 0x06, 0x2d, 0xf1, 0xa1, 0x3e, 0x6b, 0x7c, 0xad, 0x3e, 0xaf, 0xb7, 0xf6, 0x1a, 0xd2, 0xdf, 0x67, 0xe4, 0xff, 0x9e, 0x83, 0x05, 0xa5, 0xfb, 0xac, 0xf9, 0x5c, 0x1b, 0x1b, 0x3a, 0x3b, 0x24, 0x7f, 0x04, 0x73, 0xd4, 0x53, 0xe1, 0xcb, 0x7c, 0x59, 0xd0, 0x31, 0x11, 0x42, 0xe6, 0xda, 0x28, 0x8c, 0x18, 0xdd, 0x87, 0x82, 0x83, 0x35, 0x37, 0xb0, 0xe9, 0x57, 0x66, 0x56, 0x53, 0x28, 0x99, 0xc2, 0xc9, 0xd1, 0x75, 0x98, 0x9f, 0x68, 0xde, 0xe0, 0x80, 0x9e, 0xb9, 0x73, 0x49, 0xa5, 0xe6, 0x63, 0xd1, 0x6d, 0xa8, 0x4c, 0x4d, 0x5e, 0x50, 0x35, 0xff, 0x0a, 0x26, 0x46, 0x5d, 0x0e, 0x48, 0xea, 0x2e, 0xfa, 0x04, 0xa4, 0xb0, 0xc6, 0x18, 0x9b, 0x23, 0xef, 0x60, 0x6d, 0x2e, 0xad, 0x56, 0x2d, 0x20, 0x6b, 0x51, 0x2a, 0xb9, 0x0b, 0x73, 0x74, 0x74, 0x68, 0x01, 0xa0, 0xd7, 0xaf, 0xf7, 0x1b, 0x6a, 0xbb, 0xd3, 0x26, 0xdb, 0x8e, 0xc8, 0x06, 0x2f, 0xf7, 0xd5, 0x27, 0x9d, 0xbd, 0xf6, 0xb6, 0x94, 0x21, 0xc2, 0xcb, 0x80, 0xcf, 0xeb, 0xad, 0xe6, 0xb6, 0x94, 0x45, 0x8b, 0x50, 0x65, 0x80, 0x66, 0x9b, 0x81, 0x72, 0xf2, 0x43, 0x28, 0xb0, 0x81, 0x13, 0x6a, 0xa5, 0x51, 0xef, 0x75, 0xfa, 0x3e, 0xcf, 0x2a, 0x94, 0x28, 0xa0, 0xad, 0xd6, 0x7b, 0x52, 0x86, 0x54, 0xe6, 0xc5, 0x56, 0xa3, 0xbd, 0x43, 0x2f, 0xd5, 0x7f, 0x3d, 0x07, 0xf9, 0x2e, 0xbf, 0x10, 0x33, 0xc7, 0x8e, 0xe1, 0xdf, 0xe7, 0x91, 0xff, 0x68, 0x05, 0x0a, 0xb6, 0xe6, 0x79, 0x0e, 0x53, 0xe1, 0x15, 0x85, 0x97, 0xa8, 0xb7, 0x36, 0xf2, 0x9d, 0x06, 0xf2, 0x97, 0xd4, 0xde, 0xc7, 0xae, 0x7f, 0x7f, 0x40, 0xff, 0x13, 0x2b, 0x60, 0xb8, 0xea, 0x4b, 0xc3, 0x3b, 0xd0, 0x1d, 0xed, 0xa5, 0x7f, 0x79, 0x60, 0xb8, 0x5f, 0x71, 0x08, 0x6a, 0xc0, 0xe2, 0x61, 0xb0, 0x78, 0xaa, 0x8e, 0x3d, 0xcd, 0x18, 0xaf, 0xcd, 0x53, 0xf3, 0xb3, 0x36, 0x6b, 0x8d, 0x15, 0x29, 0xac, 0xb2, 0x4d, 0x6b, 0xa0, 0xdb, 0xb0, 0x6c, 0x5a, 0xaa, 0x31, 0xb1, 0xc9, 0xe9, 0xcd, 0x0b, 0x1b, 0x2c, 0xb2, 0x83, 0xad, 0x69, 0x35, 0x39, 0x2a, 0x68, 0x38, 0x34, 0x96, 0xa5, 0x53, 0xae, 0x46, 0x2e, 0x01, 0xb0, 0x8b, 0x16, 0x55, 0x73, 0xcd, 0x35, 0xa0, 0xba, 0xab, 0xc4, 0x20, 0x75, 0xd7, 0x24, 0xf6, 0x82, 0xa3, 0x0d, 0x7d, 0xad, 0xcc, 0x6c, 0x02, 0x03, 0x34, 0x75, 0x6e, 0x2f, 0x3c, 0xec, 0x60, 0x7d, 0xad, 0x42, 0xfb, 0x12, 0x94, 0xd1, 0x32, 0xdd, 0x09, 0x63, 0xbc, 0x56, 0xa5, 0x08, 0x56, 0x40, 0x37, 0x40, 0x32, 0x5c, 0x75, 0xe8, 0x58, 0x13, 0x15, 0x1f, 0x79, 0xd8, 0x31, 0xb5, 0xf1, 0xda, 0x02, 0x25, 0x58, 0x30, 0xdc, 0x27, 0x8e, 0x35, 0x69, 0x70, 0x28, 0x99, 0x5b, 0xff, 0x2e, 0x59, 0x35, 0xec, 0xb5, 0x1a, 0x6d, 0x1a, 0x7c, 0x50, 0xd3, 0x0e, 0xee, 0x37, 0xa5, 0xf0, 0x7e, 0x13, 0x7d, 0x00, 0xc8, 0x70, 0x55, 0xdf, 0x50, 0x1a, 0x26, 0x9d, 0xc9, 0xb5, 0x45, 0x76, 0xa7, 0x6d, 0xb8, 0x6d, 0x86, 0x68, 0x32, 0x38, 0xba, 0x0c, 0x60, 0xe8, 0xd8, 0xf4, 0x8c, 0xa1, 0x81, 0x9d, 0x35, 0x44, 0x87, 0x2e, 0x40, 0xd0, 0x7b, 0x20, 0x8d, 0xad, 0x81, 0x36, 0x56, 0x05, 0xaa, 0x25, 0x4a, 0x55, 0xa3, 0xf0, 0x66, 0x48, 0x7a, 0x0b, 0x8a, 0x9a, 0x79, 0xac, 0x52, 0xf9, 0x5a, 0x0e, 0x4e, 0x7a, 0xd6, 0x68, 0x8c, 0x37, 0xfd, 0x77, 0xd2, 0xcd, 0xba, 0x79, 0xac, 0xcc, 0x6b, 0xe6, 0x71, 0x9b, 0x08, 0xde, 0x87, 0x00, 0xa4, 0x02, 0x17, 0xbe, 0xf3, 0xc1, 0x29, 0x3f, 0x59, 0xa5, 0xa4, 0x99, 0xc7, 0x5d, 0x4a, 0x26, 0x3f, 0x83, 0xb2, 0x78, 0x23, 0x47, 0x84, 0x97, 0x5e, 0x93, 0x72, 0x4b, 0xc4, 0x4b, 0xe1, 0x2d, 0x64, 0xf6, 0xa4, 0x5b, 0xc8, 0x09, 0x2c, 0x26, 0xee, 0x5d, 0x67, 0xb2, 0xfc, 0x1c, 0xaa, 0x63, 0x4a, 0xa7, 0x5a, 0xb6, 0x70, 0xf8, 0x48, 0xbf, 0xc3, 0xed, 0x50, 0x12, 0xa5, 0x32, 0x16, 0x4a, 0xf2, 0x5f, 0xe7, 0x21, 0xdf, 0xc5, 0xd8, 0x41, 0x9f, 0x40, 0x45, 0xb3, 0xed, 0xf1, 0xb1, 0x1a, 0xb9, 0x28, 0x11, 0xec, 0x5c, 0x9d, 0x60, 0xb9, 0x31, 0x2f, 0x6b, 0x61, 0x01, 0x5d, 0x83, 0xfc, 0xc0, 0x32, 0x87, 0xfc, 0xea, 0x13, 0x45, 0x1f, 0x49, 0xb6, 0x2c, 0x73, 0xa8, 0x50, 0x3c, 0x7a, 0x08, 0x55, 0xbc, 0x3f, 0xb2, 0xd5, 0xc9, 0x74, 0xec, 0x19, 0x07, 0x96, 0xcd, 0xaf, 0x07, 0x57, 0xc2, 0x0a, 0x8d, 0xfd, 0x91, 0xbd, 0xcb, 0xb1, 0x4a, 0x05, 0x0b, 0x25, 0x54, 0x87, 0x1a, 0xf3, 0xec, 0x1c, 0x3c, 0x1c, 0xe3, 0x81, 0x67, 0x39, 0xfc, 0x96, 0x5d, 0xdc, 0xb0, 0x84, 0x40, 0xf1, 0xf1, 0xca, 0x82, 0x13, 0x29, 0xa3, 0xf7, 0x7c, 0x23, 0x30, 0x97, 0xf6, 0x9a, 0x13, 0xd1, 0xfc, 0x37, 0xa0, 0x40, 0x4e, 0x23, 0x8e, 0xbb, 0x56, 0x88, 0xef, 0xd3, 0x3e, 0x85, 0x2b, 0x1c, 0x4f, 0x4e, 0xca, 0x9e, 0xa3, 0x99, 0x2e, 0x75, 0x31, 0xe6, 0xe3, 0x8c, 0xfb, 0x3e, 0x4a, 0x09, 0xa9, 0xc8, 0x4c, 0xb3, 0xa1, 0xf0, 0x43, 0x45, 0x31, 0x3e, 0xd3, 0x74, 0x1c, 0x3d, 0x8a, 0x54, 0x98, 0x3f, 0xcb, 0x0a, 0x68, 0x1b, 0xa4, 0x91, 0xa3, 0x0d, 0xf0, 0x70, 0x3a, 0x56, 0x1d, 0xec, 0x7a, 0x9a, 0xe3, 0x71, 0x45, 0x22, 0x1c, 0x37, 0x77, 0x38, 0x85, 0xc2, 0x08, 0x94, 0xda, 0x28, 0x0a, 0x40, 0x9b, 0x50, 0xd2, 0x86, 0x86, 0x4a, 0x5c, 0x15, 0x77, 0x0d, 0xa8, 0x2c, 0x2e, 0x0a, 0xcb, 0x3c, 0x34, 0xa8, 0x2b, 0x53, 0xd4, 0xd8, 0x1f, 0x17, 0xdd, 0x82, 0x92, 0xa6, 0xeb, 0x2a, 0x93, 0xdd, 0x72, 0x7c, 0x91, 0xf9, 0xbd, 0xbd, 0xab, 0x14, 0x35, 0xfe, 0x4f, 0xfe, 0x6d, 0x1e, 0x4a, 0xc1, 0xcb, 0xd6, 0xf7, 0x10, 0xac, 0xf7, 0x23, 0x82, 0xb5, 0x9a, 0xf2, 0xfa, 0xf6, 0x2f, 0x48, 0xba, 0x3e, 0x80, 0xbc, 0x61, 0x0e, 0x2d, 0x2e, 0x5c, 0x6b, 0x29, 0x9d, 0x65, 0x12, 0x46, 0xa9, 0xfe, 0x28, 0x60, 0xdf, 0x4b, 0xc0, 0x9e, 0x42, 0x2d, 0xf6, 0x6c, 0x39, 0x53, 0x43, 0x5e, 0x8a, 0xbc, 0xe3, 0xf2, 0xc8, 0x8f, 0xf0, 0xb9, 0xf8, 0xd7, 0x19, 0x28, 0x0b, 0xf2, 0x87, 0xee, 0x43, 0xc9, 0x30, 0xa3, 0x92, 0x7a, 0xd2, 0xad, 0x48, 0xd1, 0x30, 0x79, 0xc5, 0xcf, 0xa0, 0x8a, 0x8f, 0xc8, 0xec, 0xfb, 0x95, 0xb3, 0xa7, 0x56, 0xae, 0xb0, 0x0a, 0x21, 0x03, 0x63, 0x22, 0x32, 0xc8, 0x9d, 0xce, 0x80, 0x55, 0xe0, 0x2f, 0x22, 0xff, 0x31, 0x03, 0x65, 0x66, 0x2e, 0x5a, 0xc6, 0xc4, 0x78, 0x85, 0x83, 0x39, 0x7a, 0x1b, 0x2a, 0x13, 0xed, 0x48, 0x0d, 0x1e, 0x02, 0xd9, 0x49, 0xa9, 0x3c, 0xd1, 0x8e, 0xba, 0x1c, 0x44, 0x4e, 0xc7, 0x2e, 0x0f, 0x81, 0x50, 0xbd, 0x03, 0x07, 0xbb, 0x07, 0xd6, 0x58, 0x57, 0xed, 0x81, 0xc7, 0x8f, 0xd1, 0xcb, 0x3e, 0xb6, 0xef, 0x23, 0xbb, 0x03, 0x4f, 0xfe, 0x8b, 0x39, 0x28, 0xfa, 0x46, 0x00, 0xfd, 0x00, 0xaa, 0xda, 0xd4, 0x3b, 0x50, 0x6d, 0xcd, 0x75, 0x5f, 0x5a, 0x8e, 0xce, 0x17, 0xaa, 0x42, 0x80, 0x5d, 0x0e, 0x43, 0x57, 0xe9, 0x13, 0xe2, 0xc0, 0x31, 0x6c, 0x21, 0x64, 0x41, 0x04, 0xa1, 0x0b, 0x50, 0x64, 0xd6, 0x5f, 0x73, 0xfd, 0x23, 0x3c, 0x2d, 0xd7, 0x5d, 0xe2, 0x18, 0x04, 0xbe, 0x89, 0x7f, 0x18, 0xcc, 0x53, 0x0e, 0x35, 0x1f, 0x5e, 0xe7, 0x87, 0xc2, 0x55, 0x98, 0xa7, 0x62, 0xa1, 0xb9, 0xfc, 0xa4, 0x5e, 0x20, 0xc5, 0xba, 0x1b, 0x93, 0x97, 0x42, 0x4c, 0x5e, 0x88, 0xdf, 0x45, 0xd1, 0xf4, 0x08, 0x3c, 0x4f, 0x6b, 0x16, 0x09, 0x80, 0x9e, 0xd3, 0xdb, 0xb0, 0xe8, 0xe0, 0x89, 0x75, 0x88, 0x55, 0xdb, 0x31, 0x0e, 0x35, 0x8f, 0xf8, 0x6e, 0x74, 0xf3, 0x2d, 0xdc, 0x95, 0x93, 0x56, 0x71, 0x53, 0xa1, 0xb4, 0x5d, 0x46, 0x5a, 0x77, 0x95, 0x9a, 0x13, 0x05, 0x10, 0xb7, 0x89, 0xed, 0xe3, 0xe1, 0x58, 0xb3, 0x55, 0x5d, 0x9b, 0xd8, 0x86, 0x39, 0xa2, 0xfb, 0xb1, 0xa8, 0x48, 0x14, 0xf3, 0x64, 0xac, 0xd9, 0xdb, 0x0c, 0x8e, 0xde, 0x85, 0x05, 0x17, 0x9b, 0xba, 0xca, 0xe3, 0x3b, 0xbc, 0x63, 0xee, 0x35, 0x56, 0x09, 0x74, 0xcb, 0x07, 0x12, 0x0f, 0x87, 0xb4, 0xe3, 0x61, 0x75, 0xa0, 0xd9, 0x6b, 0xe5, 0x93, 0x3c, 0x1c, 0x46, 0xb7, 0xa5, 0xd9, 0x44, 0x09, 0xb1, 0x49, 0x27, 0x75, 0x2a, 0x27, 0xd4, 0x61, 0x6b, 0x43, 0xaa, 0x2c, 0x40, 0xd6, 0xd0, 0xa9, 0x97, 0x59, 0x52, 0xb2, 0x86, 0x8e, 0x6e, 0x02, 0x0a, 0x1d, 0xc7, 0x20, 0x14, 0x6b, 0x81, 0xe2, 0x17, 0x03, 0xff, 0xd1, 0x47, 0x10, 0x4f, 0xff, 0xd0, 0x19, 0x72, 0xff, 0x92, 0xfc, 0x45, 0x57, 0xa1, 0xa2, 0x8d, 0xc7, 0xd6, 0x4b, 0x95, 0xc8, 0xa0, 0xe6, 0x52, 0x07, 0xb3, 0xaa, 0x00, 0x85, 0x75, 0x5e, 0x9a, 0x75, 0x17, 0x5d, 0x83, 0x9a, 0x83, 0xed, 0xb1, 0x36, 0xc0, 0xaa, 0xbf, 0xb8, 0xcc, 0xc7, 0xac, 0x72, 0x70, 0x97, 0xae, 0xb1, 0x7c, 0x07, 0x6a, 0xb1, 0xb9, 0x47, 0x45, 0xc8, 0xf3, 0x93, 0x0b, 0xbf, 0x65, 0xa0, 0x27, 0x74, 0xa5, 0xd1, 0x6d, 0xd5, 0xb7, 0x1a, 0x52, 0x56, 0xfe, 0x9f, 0x39, 0xa8, 0x46, 0xac, 0xce, 0xef, 0x40, 0x9c, 0x05, 0x19, 0xcd, 0x47, 0x64, 0xf4, 0x1a, 0xd4, 0x42, 0x19, 0x55, 0xe9, 0xb5, 0xd0, 0x1c, 0x8b, 0xed, 0x09, 0x04, 0xb5, 0xad, 0x4d, 0x70, 0x54, 0x58, 0x0b, 0x31, 0x61, 0xed, 0xa5, 0x09, 0xeb, 0x3c, 0x15, 0xd6, 0xeb, 0x33, 0x2c, 0xed, 0xeb, 0x4a, 0x6c, 0xf1, 0xcc, 0x12, 0x5b, 0x4a, 0x91, 0xd8, 0xd7, 0x59, 0xae, 0x7f, 0xc8, 0xc1, 0x42, 0xd4, 0xee, 0xfe, 0xc1, 0xaf, 0x57, 0x7f, 0xf6, 0x7a, 0xdd, 0x98, 0xe5, 0x6c, 0xfc, 0x7e, 0x16, 0x8c, 0x9c, 0x11, 0x3d, 0xcb, 0xd3, 0xc6, 0xdc, 0xa2, 0x33, 0x35, 0x04, 0x14, 0x44, 0xed, 0x37, 0xe1, 0xc3, 0x09, 0x7c, 0x93, 0x53, 0x66, 0x7c, 0x18, 0x8d, 0x1f, 0x63, 0xf2, 0x1a, 0x0b, 0xff, 0x0c, 0x2a, 0xa2, 0x9b, 0x87, 0xd6, 0x60, 0x9e, 0xdd, 0xe2, 0xea, 0x3c, 0x84, 0xca, 0x2f, 0x52, 0xa3, 0xc7, 0xa9, 0x54, 0xcf, 0x1b, 0x07, 0x46, 0x8f, 0xc3, 0xfa, 0xde, 0x58, 0xfe, 0x79, 0x06, 0x16, 0xa2, 0x5e, 0x1f, 0xb1, 0x83, 0x31, 0x47, 0x51, 0x1d, 0x8c, 0x0d, 0xff, 0x09, 0xa5, 0xa8, 0x2c, 0x47, 0xbd, 0xc2, 0x2d, 0x8a, 0x43, 0x0f, 0x61, 0x3d, 0x59, 0x6b, 0xea, 0x7a, 0xd8, 0x09, 0x43, 0x55, 0x56, 0xe3, 0x35, 0x29, 0xbe, 0xa9, 0xcb, 0xff, 0x63, 0x9e, 0x79, 0xd3, 0xbf, 0x2b, 0x31, 0xde, 0x84, 0xe2, 0x04, 0xbb, 0xae, 0x36, 0xc2, 0x2e, 0x77, 0x82, 0x05, 0x67, 0x6c, 0x97, 0x63, 0x94, 0x80, 0x26, 0xd5, 0xea, 0xce, 0x9d, 0x6a, 0x75, 0x0b, 0x27, 0x58, 0xdd, 0xf9, 0x13, 0xad, 0x6e, 0x31, 0xb6, 0x31, 0x6e, 0x40, 0xe1, 0xbb, 0x29, 0x9e, 0x62, 0x37, 0x79, 0xa7, 0xf2, 0x25, 0x85, 0x2b, 0x1c, 0x8f, 0x36, 0xd2, 0xb6, 0x10, 0x93, 0xce, 0x33, 0x6e, 0x8c, 0xf2, 0x99, 0x37, 0x46, 0x25, 0x6d, 0x63, 0x34, 0xa0, 0xea, 0x62, 0xd7, 0x35, 0x2c, 0x93, 0xc5, 0x41, 0x50, 0xf3, 0xb8, 0x70, 0xf7, 0x6a, 0xca, 0x49, 0x74, 0xb3, 0xc7, 0x08, 0xd9, 0xa1, 0xa1, 0xe2, 0x0a, 0x25, 0xf4, 0x31, 0xac, 0xb8, 0x53, 0x9b, 0xb8, 0x7e, 0x58, 0x27, 0x16, 0x59, 0xdb, 0x37, 0xc6, 0x86, 0x67, 0x60, 0x77, 0x6d, 0x81, 0x3e, 0x78, 0x9c, 0x0f, 0xb0, 0x5b, 0x02, 0x12, 0x7d, 0x06, 0x65, 0x4d, 0x9f, 0x18, 0x7e, 0xdb, 0xb5, 0xf8, 0x55, 0x68, 0xd8, 0x76, 0x9d, 0x90, 0xb1, 0x96, 0x41, 0x0b, 0xfe, 0xa3, 0x75, 0x28, 0x3a, 0x78, 0x80, 0x8d, 0x43, 0xac, 0x73, 0xeb, 0x1b, 0x94, 0x09, 0x2e, 0x88, 0x33, 0x5a, 0x64, 0x38, 0xbf, 0x8c, 0x2e, 0x03, 0x68, 0x61, 0xac, 0x34, 0xbf, 0xd0, 0x09, 0x21, 0x68, 0x09, 0xe6, 0xac, 0xa9, 0xa7, 0x7e, 0xc7, 0x6f, 0x71, 0xf2, 0xd6, 0xd4, 0xfb, 0x12, 0x2d, 0xc3, 0xdc, 0x70, 0x6c, 0xd9, 0x2e, 0xbd, 0xb7, 0xa9, 0x2a, 0xac, 0x20, 0x9b, 0x50, 0x11, 0x27, 0x86, 0x6c, 0xfe, 0xf0, 0x2a, 0xbc, 0x08, 0xf9, 0xe6, 0x76, 0xab, 0xc1, 0x74, 0xc2, 0x56, 0xa7, 0xdd, 0x6e, 0x6c, 0xf5, 0xa5, 0x2c, 0xbd, 0x76, 0xdf, 0xea, 0x37, 0x9f, 0x37, 0xa4, 0x1c, 0xaa, 0x40, 0xb1, 0xd3, 0x6d, 0xb4, 0x7b, 0x8d, 0x76, 0x5f, 0xca, 0xa3, 0x1a, 0x94, 0x49, 0x69, 0xab, 0xd3, 0x7e, 0xd2, 0x54, 0x76, 0xa5, 0x39, 0x02, 0x68, 0xf4, 0xfa, 0xf5, 0xc7, 0xad, 0x66, 0xef, 0x69, 0x63, 0x5b, 0x2a, 0xc8, 0x1b, 0x00, 0xe1, 0x64, 0xa0, 0x02, 0x64, 0xf7, 0xba, 0xac, 0xa1, 0x6d, 0xd2, 0x64, 0x86, 0xf0, 0xee, 0x3e, 0x79, 0xa1, 0x92, 0x76, 0xe4, 0x9f, 0x40, 0xd1, 0xdf, 0x1e, 0xe8, 0xa6, 0x30, 0x55, 0xcc, 0xfd, 0x5e, 0x4c, 0x6c, 0x22, 0x61, 0xf6, 0xde, 0x85, 0xbc, 0xeb, 0x87, 0xd4, 0xa6, 0x92, 0x52, 0xb4, 0xfc, 0xe7, 0x19, 0x98, 0xe7, 0x10, 0x24, 0x43, 0xc5, 0xb4, 0x3c, 0x63, 0xe8, 0x47, 0xf7, 0xb2, 0xe8, 0xb0, 0x08, 0x8c, 0x1c, 0x8a, 0xa6, 0x34, 0xce, 0x94, 0x47, 0x86, 0xf1, 0x12, 0x42, 0x90, 0xb7, 0x6c, 0x6c, 0xf2, 0x07, 0x23, 0xfa, 0x1f, 0xbd, 0x05, 0xa5, 0x6f, 0x31, 0xb6, 0xb5, 0xb1, 0x71, 0xc8, 0x9e, 0xbc, 0xf2, 0x4a, 0x08, 0x20, 0x7a, 0xd4, 0xc1, 0x43, 0xe2, 0xda, 0xd3, 0xbd, 0x9d, 0x57, 0xfc, 0x22, 0xa9, 0xa7, 0x1b, 0xee, 0x40, 0x73, 0x74, 0xac, 0xd3, 0x5d, 0x9d, 0x57, 0x42, 0x00, 0x59, 0x45, 0xaa, 0xd3, 0xe9, 0x9e, 0xce, 0x2b, 0xac, 0x20, 0xdf, 0x83, 0x02, 0xdb, 0x9a, 0x04, 0x6f, 0x98, 0xf6, 0x94, 0xa9, 0xcf, 0xaa, 0xc2, 0x0a, 0xa4, 0xdf, 0xd6, 0xd4, 0x23, 0x60, 0xa6, 0x95, 0x79, 0x49, 0xc6, 0x50, 0x60, 0xa7, 0x63, 0xb4, 0x09, 0x05, 0x72, 0xea, 0x37, 0x46, 0x7c, 0x76, 0x57, 0xe2, 0xe7, 0xe7, 0x2d, 0x8a, 0x55, 0x38, 0x15, 0x7a, 0xdf, 0xbf, 0xfb, 0xc9, 0xc6, 0xcf, 0xc2, 0x8c, 0x5c, 0xbc, 0xfd, 0x21, 0xd3, 0x5c, 0x11, 0xb9, 0x10, 0xa5, 0x3b, 0xb0, 0x4c, 0x13, 0x0f, 0x3c, 0xd5, 0xc1, 0x9e, 0x73, 0xec, 0x4f, 0x36, 0x07, 0x2a, 0x04, 0x46, 0x94, 0x14, 0x3d, 0x14, 0xd1, 0x67, 0x6d, 0x36, 0xdf, 0x45, 0x02, 0x20, 0x9c, 0x88, 0xf7, 0x1b, 0x4c, 0xa6, 0x1a, 0x7b, 0xb0, 0x5b, 0x0c, 0x30, 0x4d, 0x8e, 0x40, 0xdb, 0x70, 0x79, 0x62, 0x98, 0xc6, 0x64, 0x3a, 0x51, 0x83, 0x7d, 0x42, 0x8e, 0x7c, 0x61, 0x55, 0xb6, 0x42, 0x6f, 0x71, 0xaa, 0xba, 0x48, 0xe4, 0x73, 0x91, 0x7f, 0x95, 0x85, 0xb2, 0x30, 0xbc, 0x3f, 0xd0, 0x61, 0xd0, 0x6b, 0x76, 0x3c, 0xb2, 0x3c, 0x43, 0x23, 0xfa, 0x2e, 0xec, 0x1c, 0x13, 0x44, 0x14, 0xe2, 0x9e, 0xfa, 0xdd, 0xa4, 0x72, 0x4f, 0x69, 0x0a, 0xbe, 0xdc, 0x93, 0x12, 0x51, 0x52, 0xe4, 0x8c, 0x4a, 0x31, 0x4c, 0x20, 0x83, 0xb2, 0xfc, 0x8f, 0x19, 0x28, 0x05, 0xb7, 0x29, 0x64, 0xaa, 0xb8, 0x7d, 0x8c, 0x3c, 0x2a, 0x56, 0x98, 0x91, 0xe4, 0xe6, 0xec, 0x12, 0x00, 0x23, 0x12, 0xde, 0x17, 0xd9, 0x39, 0xa9, 0xcb, 0x79, 0x4c, 0xbc, 0xa9, 0x4a, 0x36, 0x83, 0x75, 0x88, 0x9d, 0x63, 0xfe, 0x9c, 0x5e, 0x99, 0x78, 0xd3, 0x6d, 0x1f, 0x46, 0xdc, 0x10, 0x62, 0xca, 0xc9, 0x7c, 0x4e, 0x2c, 0xdd, 0x7f, 0x6c, 0x2e, 0x73, 0xd8, 0xae, 0xa5, 0x63, 0x62, 0x5c, 0xf8, 0x89, 0x2d, 0x6a, 0x5e, 0xab, 0x0c, 0xea, 0xf7, 0xe6, 0x0a, 0x94, 0x39, 0x19, 0xed, 0x0e, 0x33, 0xb0, 0xfc, 0xac, 0x47, 0xfb, 0xb3, 0x0a, 0xf3, 0xde, 0xc0, 0x56, 0x27, 0xae, 0xcb, 0x4f, 0xae, 0x05, 0x6f, 0x60, 0xef, 0xba, 0xae, 0xfc, 0x08, 0xca, 0xc2, 0x8d, 0x10, 0xda, 0x84, 0x25, 0xf1, 0xfa, 0x28, 0xea, 0xe0, 0x2c, 0x0a, 0xd7, 0x45, 0xcc, 0xbb, 0x91, 0xff, 0x77, 0x0e, 0x6a, 0xb1, 0x3b, 0xa1, 0x93, 0xfd, 0x2e, 0x7e, 0xb3, 0x14, 0x8a, 0x58, 0x55, 0x29, 0x73, 0x18, 0x5d, 0xbe, 0x2b, 0x50, 0x3e, 0xc0, 0x63, 0x1b, 0x3b, 0xaa, 0x65, 0x8e, 0xfd, 0x69, 0x03, 0x06, 0xea, 0x98, 0xe3, 0x63, 0x32, 0xb3, 0x3a, 0x1e, 0x62, 0xc7, 0xd1, 0xc6, 0x8c, 0x09, 0xf3, 0xb7, 0x2b, 0x3e, 0x90, 0x72, 0xb9, 0x03, 0xcb, 0xa2, 0x32, 0x54, 0xfd, 0xfe, 0xb0, 0xe7, 0xa0, 0x25, 0x11, 0xd7, 0xe0, 0x7d, 0x7b, 0x1f, 0x16, 0xc7, 0x96, 0x39, 0x22, 0x32, 0xac, 0x07, 0xf4, 0x05, 0x66, 0xf3, 0x03, 0x84, 0x4f, 0xbc, 0x01, 0x8b, 0xf4, 0xf1, 0x44, 0xa5, 0x33, 0xe2, 0xaa, 0x81, 0x54, 0x55, 0x95, 0x1a, 0x45, 0xd0, 0x39, 0x75, 0x69, 0x5f, 0x36, 0x60, 0x91, 0x3a, 0x30, 0x91, 0x91, 0x33, 0x47, 0x86, 0x1e, 0x0d, 0x14, 0x61, 0xf4, 0xd7, 0xf9, 0x69, 0x81, 0xd3, 0x86, 0x47, 0xfe, 0x05, 0x81, 0x92, 0x38, 0x1d, 0xc1, 0x3b, 0x88, 0x40, 0x09, 0x94, 0x92, 0xbd, 0x83, 0x08, 0xa4, 0x08, 0xf2, 0x54, 0xba, 0xd8, 0x4b, 0x11, 0xfd, 0x2f, 0x7f, 0x08, 0xab, 0xbb, 0x76, 0x6c, 0xdd, 0xb8, 0xbe, 0x9b, 0xb9, 0x7a, 0xf2, 0x9f, 0x65, 0x60, 0x25, 0x51, 0x8b, 0x69, 0x97, 0xd9, 0x4b, 0x2e, 0xfa, 0x0d, 0x2c, 0xd0, 0x2a, 0xb4, 0x7c, 0x51, 0xdf, 0x80, 0x2f, 0xb5, 0xe0, 0x1b, 0xdc, 0x84, 0x25, 0xe2, 0x58, 0x59, 0x43, 0xd5, 0x31, 0xf6, 0xd5, 0x80, 0x4d, 0xde, 0xff, 0xe0, 0x4a, 0xef, 0x0c, 0x15, 0x63, 0x5f, 0x09, 0x0d, 0x69, 0x4d, 0x20, 0xa7, 0x36, 0x95, 0xad, 0x77, 0xc5, 0x27, 0xed, 0x11, 0x91, 0xfd, 0x45, 0x06, 0x16, 0x13, 0xc3, 0x40, 0x3f, 0x8c, 0x19, 0x95, 0xb7, 0x05, 0x3b, 0x9c, 0x3e, 0x53, 0x81, 0x7d, 0xb9, 0x17, 0xb5, 0x2f, 0x57, 0x4f, 0xa8, 0x19, 0x31, 0x35, 0x3d, 0xa8, 0xf2, 0xfb, 0x50, 0x3e, 0xf5, 0x67, 0xbf, 0xb5, 0x13, 0xe6, 0x3b, 0x1b, 0x5d, 0xa4, 0xff, 0x92, 0x81, 0x0a, 0xe7, 0xda, 0xf3, 0x9f, 0x33, 0xbe, 0x2f, 0xd3, 0xf8, 0xa1, 0x2e, 0x77, 0x86, 0x43, 0x5d, 0x3e, 0xed, 0x50, 0xf7, 0x9f, 0x73, 0x70, 0x91, 0x6b, 0x9b, 0x31, 0x8b, 0x82, 0x63, 0x2f, 0x51, 0xbe, 0xad, 0xfd, 0x00, 0x90, 0x36, 0x7e, 0xa9, 0x1d, 0xbb, 0xc4, 0x99, 0xb6, 0x35, 0x07, 0xab, 0x93, 0x40, 0xa2, 0x24, 0x86, 0xd9, 0x62, 0x88, 0x5d, 0xac, 0xa3, 0x3b, 0x70, 0xde, 0x18, 0x99, 0x96, 0x43, 0x5c, 0x79, 0xda, 0x33, 0xff, 0x4d, 0x9c, 0x07, 0x17, 0x33, 0x64, 0xdd, 0x25, 0x5d, 0x64, 0xef, 0xe0, 0xe4, 0x30, 0xe6, 0xbf, 0x71, 0x06, 0x4d, 0xd0, 0x2d, 0x4c, 0x0f, 0x63, 0x4c, 0x02, 0x57, 0x7d, 0x0a, 0xde, 0x14, 0xed, 0xb0, 0xd3, 0xd4, 0xd1, 0x03, 0xb8, 0x10, 0x08, 0xa7, 0x6a, 0x98, 0xda, 0xc0, 0x23, 0x9a, 0x9b, 0x69, 0x00, 0x2e, 0x94, 0xab, 0x01, 0x41, 0x93, 0xe3, 0x99, 0x22, 0x20, 0x33, 0xc8, 0x26, 0x53, 0xd5, 0x8c, 0x91, 0xed, 0x3f, 0x4b, 0xf3, 0x6f, 0x06, 0x8d, 0x91, 0x8d, 0x1e, 0xc0, 0x3a, 0x1f, 0x8c, 0x89, 0x8f, 0x3c, 0x95, 0xbe, 0x95, 0x8e, 0x6c, 0x75, 0x82, 0x3d, 0xc7, 0x18, 0x70, 0x3d, 0xb4, 0xc2, 0x28, 0xda, 0xf8, 0xc8, 0x7b, 0x6a, 0xd9, 0xcd, 0x91, 0xbd, 0x4b, 0xb1, 0xe8, 0x11, 0x5c, 0xd4, 0x59, 0xac, 0x8f, 0xba, 0x8f, 0x5d, 0x8f, 0xcd, 0x85, 0xeb, 0x4f, 0x31, 0xd5, 0x4b, 0x45, 0x65, 0x8d, 0x93, 0x3c, 0xc6, 0xec, 0xcb, 0x8d, 0x60, 0x09, 0xe4, 0xff, 0x94, 0x83, 0xf5, 0xd4, 0x55, 0x61, 0x02, 0xf4, 0xc7, 0x45, 0xf9, 0xbd, 0x2c, 0x4a, 0x06, 0xce, 0xa7, 0x2e, 0x0a, 0x7a, 0x14, 0xd3, 0x54, 0xef, 0x26, 0xde, 0x76, 0xd2, 0xf6, 0x56, 0xa0, 0xad, 0x1e, 0x44, 0xb5, 0xd5, 0x3b, 0xa7, 0xd4, 0x8e, 0x68, 0xac, 0xbb, 0xb0, 0xb2, 0xe7, 0x62, 0x7a, 0xc1, 0x62, 0x8f, 0xe9, 0xe7, 0x56, 0xee, 0xa9, 0x56, 0xe3, 0x0e, 0x9c, 0x8f, 0xd7, 0x39, 0xc5, 0x66, 0xc8, 0xdf, 0x00, 0x34, 0xf6, 0x47, 0x36, 0x67, 0xbd, 0x01, 0x8b, 0xec, 0xee, 0x77, 0xc2, 0x79, 0x90, 0x93, 0x3b, 0xab, 0x51, 0xa3, 0x08, 0x9f, 0x77, 0xdd, 0xa5, 0x6e, 0x97, 0x76, 0x44, 0x9d, 0x4e, 0xff, 0xb9, 0x9d, 0x3a, 0x07, 0x1c, 0xc8, 0x5e, 0x90, 0xfe, 0x15, 0x94, 0x08, 0x7b, 0xd6, 0x8b, 0x37, 0xce, 0x5d, 0x85, 0x3c, 0xe1, 0x8e, 0x3e, 0x88, 0x2d, 0xd3, 0x72, 0xf4, 0x31, 0x32, 0xb6, 0x2a, 0xef, 0x45, 0x57, 0x65, 0x29, 0x4a, 0x1c, 0x59, 0x84, 0x3b, 0x00, 0xcd, 0x70, 0x76, 0x12, 0x7d, 0xca, 0xa4, 0xf4, 0xe9, 0x36, 0x94, 0x9a, 0xc1, 0x88, 0xcf, 0x54, 0x43, 0x85, 0x7c, 0xf3, 0x94, 0x51, 0x34, 0x5f, 0x65, 0x14, 0xcd, 0xf8, 0x28, 0x7e, 0x93, 0x01, 0x29, 0x2e, 0x17, 0xe8, 0x93, 0x58, 0x6b, 0x82, 0x29, 0x4d, 0x97, 0xbb, 0xa0, 0xe5, 0x8f, 0xa3, 0x2d, 0x5f, 0x99, 0x5d, 0x31, 0xf2, 0xd6, 0x2f, 0x43, 0x1e, 0xef, 0x8f, 0xec, 0xe4, 0x67, 0x88, 0x64, 0xd6, 0x15, 0x8a, 0x23, 0x34, 0x06, 0xa1, 0x49, 0x7c, 0xd8, 0xd7, 0xa4, 0x34, 0x04, 0x27, 0x3f, 0xe6, 0x76, 0xad, 0xaf, 0x39, 0x23, 0xec, 0xed, 0xe2, 0xc9, 0x3e, 0x76, 0xdc, 0x03, 0x43, 0x58, 0xa4, 0xa8, 0xcf, 0x9a, 0x49, 0xfa, 0xac, 0x72, 0x9d, 0x6b, 0xe1, 0x38, 0x8f, 0x60, 0xd5, 0x4e, 0x67, 0x11, 0x28, 0x8d, 0x38, 0x8f, 0x53, 0x95, 0x46, 0x7a, 0xc7, 0xcf, 0xaa, 0x34, 0x52, 0xbb, 0xec, 0xaf, 0xf4, 0x37, 0x70, 0xb9, 0x65, 0x99, 0xa3, 0x16, 0xf1, 0xd1, 0x5e, 0xd1, 0xe5, 0x3c, 0xc3, 0x81, 0x41, 0xfe, 0x6d, 0x06, 0x2e, 0xcd, 0xe2, 0xff, 0xcf, 0xe9, 0x9c, 0xa6, 0xba, 0xf5, 0xf9, 0x74, 0xb7, 0xfe, 0x21, 0xac, 0x27, 0x68, 0x1d, 0x15, 0x1f, 0xd9, 0x86, 0x13, 0x1c, 0x4a, 0x56, 0x63, 0x95, 0x9c, 0x06, 0x43, 0xcb, 0xff, 0x35, 0x03, 0x6b, 0xb3, 0x06, 0x88, 0x3e, 0x8f, 0xad, 0xab, 0xf0, 0x1c, 0x70, 0xf2, 0xa4, 0x07, 0x4b, 0xfb, 0x28, 0xba, 0xb4, 0xd7, 0x4f, 0x67, 0x10, 0x59, 0xdd, 0x5f, 0xce, 0xc1, 0x3c, 0xf7, 0x37, 0xd1, 0x33, 0x58, 0x9a, 0xd8, 0x6a, 0x22, 0x88, 0x80, 0xf5, 0xec, 0xe2, 0x09, 0x6e, 0xb1, 0xb2, 0x38, 0x49, 0x38, 0xe4, 0xb7, 0x82, 0x91, 0x25, 0x42, 0x40, 0x22, 0x5e, 0x73, 0x30, 0x90, 0x78, 0xac, 0x49, 0xee, 0xcc, 0xb1, 0x26, 0x5f, 0xc1, 0xaa, 0x7f, 0xe8, 0xe5, 0xc6, 0x8f, 0x87, 0x54, 0xf9, 0x97, 0xe0, 0x57, 0x4e, 0x31, 0x92, 0xca, 0x79, 0x27, 0xd5, 0x54, 0x3f, 0x05, 0x34, 0x75, 0x71, 0x68, 0x5a, 0x98, 0xbe, 0x9d, 0x8b, 0x3f, 0xee, 0xc7, 0x55, 0x94, 0x22, 0x4d, 0xe3, 0x9a, 0xf1, 0x01, 0x54, 0x99, 0x6b, 0xad, 0x8e, 0x8d, 0x89, 0xe1, 0xf9, 0xa1, 0x23, 0xc2, 0xe8, 0x84, 0xe7, 0x7f, 0xa5, 0x62, 0x87, 0x05, 0x37, 0x1c, 0x9e, 0x47, 0xb7, 0xa9, 0x3a, 0x09, 0xf6, 0x29, 0x8f, 0x29, 0xb9, 0x72, 0xca, 0x76, 0xe6, 0xc3, 0x4b, 0x28, 0x15, 0x0d, 0x2e, 0x92, 0x93, 0xb1, 0xca, 0xce, 0xcc, 0x89, 0x75, 0x67, 0xa1, 0x27, 0xf2, 0xe9, 0x02, 0xa5, 0xac, 0x8d, 0x67, 0xc9, 0x77, 0x24, 0x3c, 0xa4, 0x74, 0x86, 0xf0, 0x90, 0x46, 0xf0, 0xc5, 0xba, 0xe0, 0x9a, 0xf0, 0x4d, 0xed, 0x6f, 0x7f, 0x5e, 0x44, 0x17, 0xa0, 0x48, 0x6f, 0xee, 0x27, 0xda, 0x11, 0xd7, 0x2c, 0xf3, 0xa4, 0xbc, 0xab, 0x1d, 0xc9, 0xdb, 0x34, 0x50, 0x3e, 0xea, 0xad, 0xbc, 0x3a, 0x97, 0x6f, 0xa1, 0xe8, 0x73, 0x41, 0xb7, 0x63, 0x3b, 0x75, 0x2d, 0x39, 0x8c, 0x98, 0x40, 0xdf, 0x8c, 0xee, 0xcc, 0xd5, 0x64, 0x85, 0xc8, 0x4e, 0x9c, 0x42, 0x81, 0x47, 0x0c, 0x5e, 0x84, 0x92, 0x61, 0xab, 0x91, 0x90, 0x98, 0xa2, 0xe1, 0x87, 0x13, 0x5e, 0x83, 0xda, 0x44, 0x73, 0xbf, 0xe5, 0x6e, 0xb9, 0x3a, 0xe1, 0x79, 0x0a, 0xaa, 0x4a, 0x95, 0x80, 0x99, 0x4b, 0xbe, 0x6b, 0x98, 0x09, 0x3a, 0xed, 0x88, 0x9f, 0xfb, 0x44, 0x3a, 0xed, 0x48, 0xfe, 0x65, 0x06, 0x20, 0xfc, 0x6e, 0xee, 0x7b, 0x7e, 0xbb, 0x47, 0x60, 0x63, 0xc3, 0xf5, 0x68, 0xe8, 0x74, 0x49, 0xa1, 0xff, 0xe9, 0x67, 0x94, 0xd1, 0xef, 0xd4, 0xa5, 0xb8, 0xd8, 0x0b, 0x1f, 0xa7, 0xef, 0x40, 0x71, 0x57, 0xf3, 0x06, 0x07, 0xa4, 0x33, 0xd7, 0x23, 0x9d, 0x11, 0xdc, 0x11, 0x4a, 0x71, 0xca, 0x67, 0x84, 0xcf, 0xa1, 0x12, 0x39, 0xa6, 0x6c, 0x46, 0x98, 0x09, 0xdb, 0x57, 0xa4, 0x12, 0x78, 0xae, 0x40, 0x41, 0x38, 0xfa, 0x54, 0x15, 0x5e, 0x92, 0xff, 0x72, 0x0e, 0x60, 0xcb, 0x32, 0x75, 0x83, 0xe9, 0x88, 0x3b, 0x00, 0x7c, 0x67, 0x87, 0x9f, 0x24, 0xa2, 0x58, 0x4f, 0x7b, 0xd8, 0x53, 0x4a, 0x8c, 0x8a, 0x0c, 0xeb, 0x63, 0xa8, 0x04, 0xaf, 0x6e, 0xa4, 0x52, 0x76, 0x66, 0xa5, 0x20, 0x5e, 0x97, 0x54, 0xfb, 0x11, 0x2c, 0xc4, 0xce, 0x64, 0x89, 0x30, 0x39, 0x71, 0x28, 0x4a, 0x45, 0x13, 0x87, 0x7f, 0x17, 0xca, 0x7e, 0x6d, 0xd2, 0x66, 0x7e, 0x76, 0x47, 0x59, 0x35, 0xd2, 0xe2, 0xfd, 0x20, 0x0d, 0x89, 0x77, 0x4c, 0x6b, 0xcd, 0xcd, 0xac, 0x55, 0x09, 0x08, 0x49, 0xc5, 0x4f, 0x61, 0x91, 0x1c, 0xb8, 0xa2, 0x95, 0x0b, 0x33, 0x2b, 0xd7, 0xf0, 0x91, 0xb7, 0x25, 0xd6, 0xbf, 0x02, 0x65, 0xc7, 0xfe, 0xd6, 0x20, 0xaa, 0x68, 0x3a, 0x66, 0xa1, 0x73, 0x73, 0x0a, 0x38, 0xec, 0xc3, 0xae, 0xe9, 0xd8, 0x43, 0x8f, 0x00, 0xc2, 0x8f, 0x85, 0x78, 0x9c, 0x8e, 0xf0, 0x1c, 0x16, 0xae, 0x0f, 0xd7, 0x88, 0x64, 0x59, 0x4b, 0xc1, 0xb7, 0x44, 0xe8, 0x31, 0x2c, 0x8d, 0x89, 0x36, 0x8c, 0xf5, 0xb0, 0x34, 0xb3, 0x87, 0x8b, 0x94, 0x3c, 0xd2, 0xc7, 0xeb, 0x20, 0x85, 0xa7, 0x4a, 0x53, 0xa5, 0x62, 0x0f, 0x54, 0xec, 0xab, 0x26, 0x3f, 0x4c, 0x9a, 0x2d, 0x22, 0xff, 0xb7, 0xa1, 0xec, 0x87, 0xd4, 0xa9, 0x86, 0xc9, 0xc3, 0x76, 0x92, 0xd7, 0x38, 0x25, 0x1e, 0x53, 0xd7, 0x34, 0xe5, 0x03, 0x28, 0x05, 0xdd, 0x46, 0x4b, 0x50, 0xe3, 0x1f, 0x5f, 0x7c, 0xdd, 0x0d, 0xe2, 0xfe, 0x57, 0x61, 0x49, 0x00, 0x36, 0xdb, 0xfd, 0x86, 0xd2, 0xae, 0xb7, 0xa4, 0x4c, 0x0c, 0xd1, 0x78, 0xc1, 0x11, 0x59, 0xb4, 0x0c, 0x92, 0x80, 0xe0, 0xdf, 0xe5, 0xc8, 0x43, 0xa8, 0x05, 0x83, 0xaa, 0xb3, 0x64, 0x3a, 0x77, 0x22, 0xfb, 0xe4, 0x92, 0x38, 0xa9, 0x11, 0x42, 0x61, 0xab, 0x5c, 0x85, 0xb2, 0x3f, 0x91, 0x46, 0xf0, 0xe9, 0x96, 0x08, 0x92, 0xdb, 0x50, 0xda, 0xc5, 0x3a, 0x6f, 0xe1, 0xfd, 0x48, 0x0b, 0xab, 0xe2, 0x8b, 0x99, 0x9e, 0xe0, 0xbd, 0x0c, 0x73, 0x87, 0xda, 0x78, 0xca, 0xf6, 0x76, 0x4e, 0x61, 0x05, 0x59, 0x85, 0x5a, 0xdd, 0xed, 0x3a, 0xd8, 0xc6, 0xa6, 0xcf, 0x55, 0x82, 0x9c, 0xe6, 0x9a, 0xdc, 0xaf, 0x26, 0x7f, 0xc9, 0x0e, 0x26, 0x14, 0x5a, 0xf0, 0x14, 0xc5, 0x4a, 0x48, 0x86, 0x2a, 0x31, 0xeb, 0x63, 0x3c, 0xf4, 0xd4, 0x89, 0xe5, 0xfa, 0xdf, 0xca, 0x95, 0xa7, 0x2e, 0x6e, 0xe1, 0xa1, 0xb7, 0x6b, 0xb9, 0x9e, 0xfc, 0x08, 0xaa, 0x3c, 0xb4, 0x9d, 0xb3, 0x3f, 0xf1, 0x23, 0x25, 0x17, 0x8f, 0x87, 0xdc, 0x03, 0xa5, 0xff, 0xe5, 0xeb, 0x50, 0x6b, 0xd1, 0xc7, 0x04, 0x07, 0x0f, 0x39, 0x83, 0x60, 0x20, 0xfc, 0xb9, 0x8c, 0x0d, 0xe4, 0xaf, 0x72, 0x30, 0xcf, 0x08, 0xdc, 0x30, 0xf6, 0x53, 0x1b, 0x04, 0xcf, 0x82, 0x0b, 0x89, 0xd8, 0x4f, 0x46, 0xcd, 0x63, 0x3f, 0x39, 0xef, 0xfb, 0x50, 0x0a, 0x9f, 0xaf, 0xb3, 0xf1, 0xa0, 0xcf, 0xd8, 0xc2, 0x29, 0x21, 0x2d, 0x7a, 0x17, 0x72, 0x13, 0xee, 0x1e, 0x47, 0xce, 0x7b, 0xc1, 0x4a, 0x28, 0x04, 0x8f, 0x3e, 0x01, 0x20, 0xca, 0x83, 0xcd, 0x37, 0xd7, 0x1d, 0x17, 0x22, 0x6a, 0x47, 0x5c, 0x0a, 0xaa, 0x42, 0x18, 0x00, 0x7d, 0x0a, 0xd5, 0x88, 0x26, 0xe0, 0x2a, 0xe4, 0x84, 0xde, 0x55, 0x44, 0x65, 0x80, 0xee, 0xc0, 0x3c, 0xff, 0xf6, 0x80, 0xeb, 0x0f, 0x41, 0x5c, 0x22, 0x0b, 0xa4, 0xf8, 0x74, 0xa4, 0xb3, 0xfc, 0x69, 0xc7, 0xc1, 0x43, 0xee, 0x22, 0x5d, 0x10, 0xbd, 0x98, 0xc8, 0xba, 0xf8, 0xaf, 0x3e, 0x0e, 0x1e, 0xa2, 0xc7, 0x50, 0x8b, 0xa9, 0x05, 0xee, 0x04, 0x9d, 0xd0, 0xdd, 0x85, 0xa8, 0x66, 0x90, 0x7f, 0x96, 0x81, 0x52, 0xf0, 0x91, 0x75, 0xea, 0x17, 0xc7, 0x1f, 0x01, 0x0c, 0x02, 0xfd, 0xc4, 0x57, 0x6b, 0x39, 0x4d, 0x77, 0x29, 0x02, 0x1d, 0x7a, 0x1f, 0xe6, 0x99, 0x58, 0xb8, 0x7c, 0xb5, 0xc4, 0xb0, 0x5c, 0x86, 0x50, 0x7c, 0x0a, 0xf9, 0x4b, 0x28, 0x70, 0xdf, 0x38, 0xad, 0x03, 0x1f, 0x02, 0x44, 0x52, 0x39, 0xe4, 0x66, 0x7d, 0x22, 0x2e, 0x90, 0xd1, 0x03, 0x7f, 0x3c, 0x8a, 0xf5, 0x8d, 0x7e, 0x50, 0x1d, 0x49, 0xb7, 0x90, 0x3f, 0x43, 0xba, 0x85, 0x05, 0x1d, 0x0f, 0xb5, 0xe9, 0xd8, 0xf3, 0xb7, 0xcb, 0xdc, 0x49, 0xdb, 0xa5, 0xca, 0x89, 0x59, 0x51, 0x3e, 0x84, 0x2a, 0xc1, 0x86, 0x1f, 0x32, 0xfe, 0x6e, 0x92, 0x44, 0xc8, 0xff, 0x21, 0x03, 0x39, 0xc5, 0xd2, 0xd0, 0x02, 0x64, 0x35, 0xff, 0xe6, 0x26, 0xab, 0xd1, 0x1c, 0x77, 0xcc, 0x3f, 0x18, 0x63, 0xdf, 0x9f, 0x0b, 0x01, 0x44, 0x91, 0x4d, 0x34, 0x8a, 0x62, 0x2e, 0x1c, 0x2f, 0x09, 0x81, 0xd3, 0xf9, 0x48, 0xe0, 0xb4, 0xff, 0x55, 0x47, 0xc2, 0x5c, 0x2b, 0xdd, 0x67, 0xcd, 0x30, 0xee, 0x5e, 0xfe, 0x3f, 0x19, 0xc8, 0x3d, 0x77, 0x86, 0xa9, 0xcb, 0xf8, 0x0e, 0x64, 0x1d, 0x5d, 0x90, 0xce, 0x64, 0xbc, 0x68, 0xd6, 0xd1, 0xd1, 0x1d, 0x28, 0xf1, 0xc8, 0x67, 0xc7, 0xe3, 0xdf, 0xcb, 0xcd, 0x08, 0x2e, 0x65, 0x64, 0x0a, 0xcd, 0x94, 0xc0, 0xa3, 0xad, 0x1d, 0x8f, 0xaf, 0xf3, 0x8c, 0x2a, 0x8c, 0x4c, 0xf1, 0x78, 0x3c, 0x2a, 0x0b, 0xf6, 0xcd, 0x1a, 0xba, 0xfc, 0x8b, 0x0c, 0x2c, 0x6f, 0xb3, 0xf5, 0xa4, 0x6b, 0xbc, 0x6d, 0xb8, 0x9e, 0x66, 0x0e, 0x30, 0xba, 0x07, 0xc1, 0x45, 0x33, 0xbb, 0x43, 0x56, 0x75, 0x8e, 0xe2, 0x73, 0x7d, 0xde, 0x47, 0x27, 0xea, 0xd1, 0x67, 0xed, 0x94, 0x7a, 0x6c, 0x31, 0xce, 0xfb, 0xe8, 0x48, 0x3d, 0xf9, 0x4f, 0xf2, 0x50, 0x60, 0x29, 0x11, 0x13, 0x2b, 0x7a, 0x11, 0x4a, 0xe1, 0x25, 0x38, 0xff, 0xf2, 0xd7, 0xf1, 0x6f, 0xbd, 0xaf, 0x40, 0x99, 0xf8, 0x0b, 0xd8, 0x64, 0xef, 0xbd, 0x39, 0xe6, 0xdf, 0x30, 0x10, 0x7d, 0xef, 0x7d, 0x0f, 0x24, 0x4e, 0xc0, 0xad, 0x0c, 0xdf, 0x13, 0x25, 0xa5, 0xc6, 0xe0, 0x75, 0x1f, 0x4c, 0xbf, 0x18, 0x23, 0x1e, 0x04, 0x11, 0xc0, 0xb9, 0xab, 0xb9, 0x1b, 0x55, 0x25, 0x28, 0xa3, 0x0f, 0x52, 0x0f, 0xb0, 0xfc, 0x55, 0x34, 0x71, 0x48, 0xfd, 0x66, 0xf6, 0x39, 0x7a, 0xfe, 0x55, 0xae, 0xaa, 0x67, 0x9c, 0xa6, 0xfb, 0xb0, 0xe2, 0xef, 0xd8, 0xd8, 0x1c, 0x33, 0x25, 0x7b, 0x39, 0xb2, 0xd9, 0x12, 0x8b, 0xab, 0x2c, 0xeb, 0x69, 0x4b, 0xfe, 0x88, 0x06, 0x46, 0x0c, 0xb1, 0x8e, 0x1d, 0x16, 0x4c, 0x53, 0x8a, 0x9b, 0x89, 0x2d, 0x11, 0xad, 0x44, 0xa9, 0x53, 0xbf, 0x9a, 0x80, 0x57, 0xfe, 0x6a, 0x22, 0x7e, 0x77, 0x51, 0x3e, 0xeb, 0xdd, 0x85, 0x6c, 0x41, 0x35, 0xd2, 0xbf, 0x13, 0x6e, 0xbb, 0xa2, 0xdf, 0xd6, 0x65, 0x13, 0xdf, 0xd6, 0xbd, 0x03, 0x0b, 0xec, 0x6a, 0x40, 0xd5, 0x5c, 0x35, 0x38, 0x85, 0x55, 0x95, 0x0a, 0x83, 0xd6, 0x5d, 0xe2, 0x8d, 0xca, 0x0d, 0x28, 0xfa, 0x5a, 0xe0, 0x04, 0x9f, 0x26, 0x16, 0x90, 0x90, 0x8d, 0x07, 0x24, 0xc8, 0xff, 0x2d, 0x0f, 0x25, 0xc2, 0x87, 0x9d, 0xae, 0xc3, 0xa0, 0x8d, 0x0c, 0xf5, 0xd2, 0xd2, 0x82, 0x36, 0x98, 0xff, 0x16, 0x94, 0xc9, 0x86, 0x99, 0xda, 0xdc, 0xf5, 0xca, 0x4e, 0x6d, 0xd6, 0xe4, 0xc0, 0x72, 0x74, 0xd5, 0xb0, 0x0f, 0x3f, 0xe2, 0x57, 0x71, 0xc0, 0x40, 0x4d, 0xfb, 0xf0, 0xa3, 0x28, 0xc1, 0x3d, 0xae, 0x0e, 0x42, 0x82, 0x7b, 0x34, 0xf1, 0x14, 0x3b, 0x8a, 0x51, 0x0e, 0x3c, 0x8a, 0x82, 0x81, 0x7c, 0x0e, 0x21, 0xc1, 0x3d, 0xfe, 0xe0, 0x1f, 0x12, 0xdc, 0x23, 0xe3, 0x70, 0xb1, 0x63, 0x68, 0x63, 0xfe, 0xc0, 0xcf, 0x4b, 0xe8, 0x07, 0x50, 0xf5, 0x2f, 0x16, 0x19, 0xef, 0x12, 0x1d, 0x4c, 0xc5, 0x07, 0x52, 0xee, 0x31, 0xa2, 0x7b, 0x54, 0x8e, 0xa2, 0x44, 0xf7, 0x08, 0x11, 0xe3, 0xa9, 0xd2, 0x20, 0x06, 0x26, 0x2a, 0x39, 0xa5, 0xc2, 0x80, 0x6d, 0x0a, 0x23, 0xfd, 0x1c, 0x68, 0x83, 0x03, 0xcc, 0x72, 0x08, 0xd2, 0x78, 0xc4, 0x9c, 0x02, 0x14, 0x44, 0xb3, 0x43, 0xa0, 0x77, 0x61, 0x21, 0x20, 0xa0, 0x79, 0x18, 0x68, 0x34, 0x62, 0x4e, 0xa9, 0xfa, 0x34, 0x2c, 0x39, 0xc3, 0x65, 0x28, 0xf3, 0x17, 0x75, 0x5d, 0xf3, 0x34, 0x1a, 0xb0, 0x9f, 0x53, 0x4a, 0xf4, 0x35, 0x7d, 0x5b, 0xf3, 0x34, 0xe2, 0x92, 0x62, 0xc7, 0xb1, 0x1c, 0x1a, 0x4f, 0x98, 0x53, 0x58, 0x01, 0xbd, 0x0d, 0xbc, 0x37, 0xea, 0x77, 0x53, 0xec, 0x1c, 0xd3, 0x70, 0xc1, 0x9c, 0x52, 0x66, 0xb0, 0x2f, 0x09, 0x88, 0x2d, 0x85, 0x8b, 0x3d, 0x4e, 0xb1, 0xc8, 0x3a, 0x48, 0x41, 0x94, 0x40, 0xfe, 0x1a, 0xf2, 0x8a, 0xfd, 0xad, 0x11, 0x58, 0xa2, 0xcc, 0xc9, 0x96, 0xe8, 0x84, 0x97, 0x87, 0x40, 0xc8, 0xf8, 0x3d, 0xc9, 0xc6, 0x16, 0x14, 0xfd, 0x44, 0x66, 0x08, 0xa0, 0xb0, 0xd3, 0xea, 0x3c, 0xae, 0xb7, 0xa4, 0x73, 0x61, 0xb6, 0x01, 0x1a, 0xd9, 0x57, 0xdf, 0xfe, 0x42, 0x6d, 0xb6, 0xa5, 0x2c, 0xfd, 0x58, 0x7f, 0xfb, 0x0b, 0xb5, 0xb3, 0xd7, 0x67, 0x69, 0x08, 0x9e, 0x2b, 0x4f, 0xa4, 0xfc, 0x46, 0x2b, 0xf2, 0xa5, 0x26, 0xd3, 0x50, 0x48, 0x82, 0x4a, 0xab, 0xd3, 0x79, 0xb6, 0xd7, 0x55, 0x1b, 0x2f, 0xea, 0x5b, 0x7d, 0xe9, 0x1c, 0x5a, 0x84, 0x2a, 0x87, 0xb4, 0x3a, 0xed, 0x9d, 0x86, 0xc2, 0xbe, 0xd0, 0xe7, 0xa0, 0xde, 0xd3, 0x8e, 0xd2, 0x6f, 0x28, 0x52, 0x76, 0xe3, 0x67, 0x19, 0x28, 0x0b, 0xf7, 0x23, 0x34, 0xb2, 0x50, 0x69, 0x3c, 0x69, 0xbe, 0x90, 0xce, 0xa1, 0x0a, 0x14, 0xdb, 0x8d, 0xe6, 0xce, 0xd3, 0xc7, 0x1d, 0x52, 0x7b, 0x1e, 0x72, 0xfd, 0xfa, 0x0e, 0xef, 0x56, 0x4f, 0xed, 0xd6, 0xfb, 0x4f, 0xa5, 0x1c, 0xaa, 0x42, 0x69, 0xab, 0xb3, 0xbb, 0xbb, 0xd7, 0x6e, 0xf6, 0xbf, 0x96, 0xf2, 0xa4, 0xd5, 0xc6, 0x8b, 0xbe, 0x1a, 0x82, 0xe6, 0xc8, 0x21, 0xb0, 0x55, 0x57, 0x76, 0x1a, 0x02, 0xb0, 0xc0, 0x58, 0xbf, 0xe8, 0xab, 0x4f, 0x3b, 0x5d, 0x69, 0x7e, 0xe3, 0x3d, 0x28, 0x05, 0xd7, 0x22, 0x34, 0xc2, 0xba, 0xfd, 0xb5, 0x18, 0x6a, 0x0d, 0x50, 0x68, 0xb6, 0x9f, 0x37, 0x94, 0xbe, 0x94, 0xdd, 0xd8, 0x00, 0x29, 0x7e, 0xe9, 0x81, 0x0a, 0x90, 0x6d, 0x7c, 0x29, 0x9d, 0x23, 0xbf, 0x3b, 0x0d, 0x29, 0x43, 0x7e, 0x5b, 0x0d, 0x29, 0xbb, 0x71, 0x8b, 0x07, 0x18, 0xf1, 0x93, 0x46, 0x18, 0xc4, 0x4d, 0x43, 0x33, 0xb7, 0x1a, 0xdd, 0x3e, 0x63, 0xae, 0x34, 0xbe, 0xa0, 0x21, 0x9b, 0x1b, 0x7b, 0xb0, 0x94, 0x72, 0x52, 0x24, 0x83, 0x0a, 0xfa, 0xae, 0xd6, 0xb7, 0xb7, 0xa5, 0x73, 0xe4, 0x48, 0x1a, 0x82, 0x94, 0xc6, 0x6e, 0xe7, 0x39, 0x69, 0xf8, 0x3c, 0x2c, 0x8a, 0x50, 0x1e, 0x1d, 0xbe, 0x71, 0x13, 0xaa, 0x91, 0xe3, 0x21, 0x99, 0xc1, 0xdd, 0xc6, 0xb6, 0xba, 0xdb, 0x21, 0xac, 0x6a, 0x50, 0x26, 0x05, 0x9f, 0x3c, 0xb3, 0x71, 0x0f, 0x6a, 0x31, 0x57, 0x33, 0x1a, 0x6f, 0x4a, 0xa6, 0x63, 0xb7, 0xdb, 0x51, 0x78, 0xef, 0x1b, 0x2f, 0xe8, 0xff, 0xec, 0xdd, 0xbf, 0x79, 0x0b, 0x8a, 0x3b, 0x44, 0xf6, 0xea, 0xb6, 0x81, 0x1e, 0x41, 0xd1, 0x4f, 0xbd, 0x8c, 0x2e, 0x44, 0x1c, 0x64, 0x31, 0x1d, 0xf3, 0xfa, 0x4a, 0xc2, 0x7d, 0x69, 0x4c, 0x6c, 0xef, 0x18, 0x3d, 0x84, 0x79, 0x9e, 0x7c, 0x19, 0xad, 0x89, 0xb5, 0xc5, 0x7c, 0xcc, 0x27, 0x54, 0x2e, 0xb0, 0xb4, 0xcc, 0x48, 0x30, 0x65, 0x91, 0xcc, 0xcd, 0xeb, 0x6b, 0x49, 0x04, 0xdf, 0xf8, 0x0f, 0x61, 0x9e, 0x27, 0x65, 0x45, 0xb1, 0x7b, 0xca, 0x30, 0x51, 0xec, 0xcc, 0x96, 0xeb, 0x00, 0x61, 0x1a, 0x56, 0x74, 0x51, 0xb4, 0xca, 0xb1, 0xa4, 0xcd, 0x33, 0x59, 0x6c, 0x41, 0xd1, 0xcf, 0x9d, 0x2c, 0x4e, 0x5c, 0x2c, 0x51, 0xf3, 0xfa, 0x7a, 0x1a, 0x8a, 0x0d, 0xe1, 0x76, 0x06, 0xed, 0x00, 0x84, 0x99, 0x56, 0xc5, 0x7e, 0x24, 0xd2, 0x2b, 0xaf, 0xbf, 0x95, 0x8e, 0xe4, 0xb3, 0xf1, 0x19, 0x94, 0x82, 0x34, 0xc3, 0x68, 0x7d, 0x76, 0xee, 0xe1, 0x99, 0xc3, 0x69, 0x40, 0x45, 0x4c, 0x22, 0x8c, 0x84, 0x4b, 0x91, 0x94, 0xe4, 0xc2, 0x27, 0x4d, 0x6c, 0x98, 0x34, 0x58, 0x1c, 0x50, 0x22, 0x95, 0xf0, 0x09, 0x13, 0x5b, 0x16, 0x12, 0x09, 0x23, 0x61, 0xdc, 0xc9, 0xfc, 0xc2, 0x33, 0x99, 0xb4, 0xa0, 0x2c, 0x64, 0xfb, 0x15, 0x99, 0x24, 0xd3, 0x09, 0xaf, 0x5f, 0x9a, 0x81, 0x0d, 0x96, 0xa9, 0x01, 0x15, 0x31, 0x01, 0xb0, 0x38, 0x39, 0x29, 0x89, 0x81, 0x67, 0x76, 0xea, 0x19, 0xd4, 0x62, 0xc9, 0x7f, 0xd1, 0xd5, 0x34, 0xd1, 0x3b, 0x13, 0xb3, 0xe7, 0x50, 0x8b, 0x25, 0xe9, 0x15, 0x99, 0xa5, 0xa7, 0x0d, 0x5e, 0x7f, 0xfb, 0x04, 0x0a, 0x2e, 0x49, 0x5f, 0x02, 0x4a, 0xa6, 0xec, 0x45, 0x3f, 0x88, 0x8c, 0x38, 0x3d, 0xa1, 0xef, 0xcc, 0xae, 0x7e, 0xca, 0xb6, 0xaa, 0xe6, 0x1d, 0xa0, 0xe4, 0x93, 0x82, 0x5f, 0xf9, 0x42, 0x0a, 0x86, 0x77, 0x29, 0xdc, 0xad, 0x84, 0x45, 0x72, 0xb7, 0x0a, 0x5c, 0x4e, 0xdb, 0xad, 0x84, 0x41, 0x7c, 0xb7, 0x0a, 0xd5, 0xd7, 0xd3, 0x50, 0x81, 0x18, 0x34, 0x83, 0x17, 0x17, 0x96, 0x06, 0x16, 0x5d, 0x4e, 0xf4, 0x39, 0x92, 0x1f, 0x76, 0x56, 0x6f, 0x6e, 0x64, 0x50, 0x1d, 0x8a, 0x7e, 0x4e, 0x55, 0xb1, 0x3f, 0xb1, 0x04, 0xaf, 0x62, 0x7f, 0x12, 0x29, 0x58, 0x3b, 0x50, 0x11, 0x53, 0x8c, 0xa2, 0xa4, 0x14, 0x47, 0x58, 0x5d, 0x9e, 0x85, 0x0e, 0x86, 0xf7, 0x43, 0x28, 0xb0, 0xbc, 0xa3, 0x28, 0xfa, 0x8e, 0x13, 0xa6, 0x0b, 0x9d, 0x39, 0xbd, 0x9f, 0x41, 0x29, 0x48, 0x40, 0x2a, 0xaa, 0x9f, 0x78, 0x56, 0xd2, 0x99, 0x0c, 0x3e, 0x87, 0x79, 0x9e, 0x73, 0x54, 0x14, 0x91, 0x68, 0xb2, 0xd2, 0xf5, 0x0b, 0x29, 0x98, 0xa0, 0xf7, 0x9f, 0x41, 0x29, 0x48, 0xf0, 0x27, 0x76, 0x21, 0x9e, 0x96, 0xf4, 0x24, 0x0d, 0x28, 0xe6, 0xf1, 0x13, 0xe7, 0x33, 0x25, 0xbf, 0xe8, 0x4c, 0x36, 0x4d, 0x80, 0x30, 0x67, 0x9e, 0x28, 0xac, 0x89, 0x04, 0xa1, 0xa2, 0x4a, 0x4f, 0x26, 0x05, 0xbd, 0x9d, 0x21, 0x9a, 0x50, 0xc8, 0xf5, 0x29, 0x2a, 0xb1, 0x64, 0x0a, 0xd0, 0x99, 0xfd, 0xd9, 0xa1, 0x42, 0x2b, 0x3c, 0x7f, 0x45, 0x85, 0x36, 0x91, 0xda, 0x72, 0x26, 0xa3, 0x5d, 0x3f, 0xad, 0x95, 0xc0, 0xeb, 0xed, 0xf8, 0x1c, 0x9d, 0x9d, 0xdd, 0x1e, 0xcb, 0x45, 0x2b, 0x30, 0xbb, 0x12, 0x9d, 0x8e, 0x24, 0xab, 0xab, 0xb3, 0x09, 0x62, 0xaa, 0x3a, 0xbc, 0x9d, 0x8c, 0xaa, 0xea, 0x78, 0xda, 0xc9, 0xd3, 0x55, 0x75, 0xc8, 0x29, 0xa1, 0xaa, 0xcf, 0xcc, 0x4c, 0x81, 0x6a, 0x24, 0x8f, 0xa5, 0xb8, 0x04, 0x69, 0xc9, 0x30, 0xd7, 0xaf, 0xcc, 0xc4, 0x07, 0xe3, 0xec, 0xb1, 0x9c, 0xf4, 0xf1, 0xdb, 0xca, 0x77, 0x52, 0x04, 0x3f, 0x91, 0x5d, 0x71, 0x66, 0x47, 0xbf, 0x0e, 0xb2, 0xd3, 0xc7, 0xf9, 0x5e, 0x4f, 0xdf, 0x0c, 0x67, 0x67, 0x3d, 0x62, 0xf9, 0xf9, 0x12, 0x8c, 0xdf, 0x4d, 0xdb, 0x03, 0x49, 0xb6, 0xd7, 0x4e, 0x23, 0x13, 0x27, 0x26, 0x25, 0xaf, 0xa4, 0x38, 0x31, 0xb3, 0xd3, 0x4e, 0x9e, 0xe4, 0xe6, 0xf2, 0x94, 0x92, 0x31, 0x0b, 0x26, 0x24, 0x31, 0x3c, 0xdd, 0xd9, 0xa4, 0xf5, 0x13, 0xe6, 0xeb, 0x2c, 0x2c, 0xb8, 0xf9, 0xa2, 0x0c, 0x62, 0x5a, 0x50, 0xac, 0xbe, 0x9e, 0x86, 0x0a, 0x66, 0x26, 0xf0, 0xcd, 0xe2, 0xfd, 0x48, 0x64, 0x85, 0x3c, 0x83, 0x6f, 0x46, 0x79, 0x24, 0x7d, 0xb3, 0xb3, 0x30, 0xf1, 0x7d, 0x55, 0xca, 0x22, 0xee, 0xab, 0x9e, 0x85, 0x01, 0xdf, 0x4f, 0x41, 0xa6, 0xc6, 0xf8, 0x7e, 0x8a, 0x27, 0x81, 0x8c, 0xef, 0xa7, 0x44, 0x8a, 0x47, 0xa6, 0x6b, 0x85, 0x14, 0x8e, 0xe2, 0xc8, 0x92, 0x99, 0x1d, 0x4f, 0x1a, 0x59, 0x90, 0x3a, 0x51, 0x1c, 0x59, 0x3c, 0x9f, 0xe2, 0x89, 0xa2, 0x12, 0xa4, 0x44, 0x8c, 0x88, 0x4a, 0x3c, 0x51, 0xe2, 0x4c, 0x16, 0xcc, 0x8a, 0x3f, 0x9e, 0xd8, 0x31, 0x2b, 0x1e, 0x26, 0x23, 0x3c, 0xdd, 0x8a, 0x93, 0xda, 0x09, 0x2b, 0x7e, 0x3a, 0x83, 0xfd, 0x02, 0x2d, 0x7f, 0xf8, 0x4f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xaf, 0x20, 0xcd, 0xe8, 0x1f, 0x68, 0x00, 0x00, }