// 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 It has these top-level messages: GetNeighborRequest GetNeighborResponse Arguments AddPathRequest AddPathResponse DeletePathRequest DeletePathResponse AddNeighborRequest AddNeighborResponse DeleteNeighborRequest DeleteNeighborResponse ResetNeighborRequest ResetNeighborResponse SoftResetNeighborRequest SoftResetNeighborResponse ShutdownNeighborRequest ShutdownNeighborResponse EnableNeighborRequest EnableNeighborResponse DisableNeighborRequest DisableNeighborResponse EnableMrtRequest EnableMrtResponse DisableMrtRequest DisableMrtResponse InjectMrtRequest InjectMrtResponse AddBmpRequest AddBmpResponse DeleteBmpRequest DeleteBmpResponse RPKIConf RPKIState Rpki GetRpkiRequest GetRpkiResponse AddRpkiRequest AddRpkiResponse DeleteRpkiRequest DeleteRpkiResponse EnableRpkiRequest EnableRpkiResponse DisableRpkiRequest DisableRpkiResponse ResetRpkiRequest ResetRpkiResponse SoftResetRpkiRequest SoftResetRpkiResponse EnableZebraRequest EnableZebraResponse GetVrfRequest GetVrfResponse AddVrfRequest AddVrfResponse DeleteVrfRequest DeleteVrfResponse GetDefinedSetRequest GetDefinedSetResponse AddDefinedSetRequest AddDefinedSetResponse DeleteDefinedSetRequest DeleteDefinedSetResponse ReplaceDefinedSetRequest ReplaceDefinedSetResponse GetStatementRequest GetStatementResponse AddStatementRequest AddStatementResponse DeleteStatementRequest DeleteStatementResponse ReplaceStatementRequest ReplaceStatementResponse GetPolicyRequest GetPolicyResponse AddPolicyRequest AddPolicyResponse DeletePolicyRequest DeletePolicyResponse ReplacePolicyRequest ReplacePolicyResponse GetPolicyAssignmentRequest GetPolicyAssignmentResponse AddPolicyAssignmentRequest AddPolicyAssignmentResponse DeletePolicyAssignmentRequest DeletePolicyAssignmentResponse ReplacePolicyAssignmentRequest ReplacePolicyAssignmentResponse GetServerRequest GetServerResponse StartServerRequest StartServerResponse StopServerRequest StopServerResponse Path Destination Table GetRibRequest GetRibResponse ValidateRibRequest ValidateRibResponse Peer ApplyPolicy PrefixLimit PeerConf EbgpMultihop RouteReflector PeerState Messages Message Queues Timers TimersConfig TimersState Transport RouteServer Prefix DefinedSet MatchSet AsPathLength Conditions CommunityAction MedAction AsPrependAction NexthopAction LocalPrefAction Actions Statement Policy PolicyAssignment Roa GetRoaRequest GetRoaResponse Vrf Global */ package gobgpapi import proto "github.com/golang/protobuf/proto" import fmt "fmt" import math "math" 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} } 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 ) var DefinedType_name = map[int32]string{ 0: "PREFIX", 1: "NEIGHBOR", 2: "TAG", 3: "AS_PATH", 4: "COMMUNITY", 5: "EXT_COMMUNITY", } var DefinedType_value = map[string]int32{ "PREFIX": 0, "NEIGHBOR": 1, "TAG": 2, "AS_PATH": 3, "COMMUNITY": 4, "EXT_COMMUNITY": 5, } func (x DefinedType) String() string { return proto.EnumName(DefinedType_name, int32(x)) } func (DefinedType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } 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{2} } 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{3} } 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{4} } 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{5} } 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{6} } type PolicyType int32 const ( PolicyType_IN PolicyType = 0 PolicyType_IMPORT PolicyType = 1 PolicyType_EXPORT PolicyType = 2 ) var PolicyType_name = map[int32]string{ 0: "IN", 1: "IMPORT", 2: "EXPORT", } var PolicyType_value = map[string]int32{ "IN": 0, "IMPORT": 1, "EXPORT": 2, } func (x PolicyType) String() string { return proto.EnumName(PolicyType_name, int32(x)) } func (PolicyType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } type SoftResetNeighborRequest_SoftResetDirection int32 const ( SoftResetNeighborRequest_IN SoftResetNeighborRequest_SoftResetDirection = 0 SoftResetNeighborRequest_OUT SoftResetNeighborRequest_SoftResetDirection = 1 SoftResetNeighborRequest_BOTH SoftResetNeighborRequest_SoftResetDirection = 2 ) var SoftResetNeighborRequest_SoftResetDirection_name = map[int32]string{ 0: "IN", 1: "OUT", 2: "BOTH", } var SoftResetNeighborRequest_SoftResetDirection_value = map[string]int32{ "IN": 0, "OUT": 1, "BOTH": 2, } func (x SoftResetNeighborRequest_SoftResetDirection) String() string { return proto.EnumName(SoftResetNeighborRequest_SoftResetDirection_name, int32(x)) } func (SoftResetNeighborRequest_SoftResetDirection) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{13, 0} } type AddBmpRequest_MonitoringPolicy int32 const ( AddBmpRequest_PRE AddBmpRequest_MonitoringPolicy = 0 AddBmpRequest_POST AddBmpRequest_MonitoringPolicy = 1 AddBmpRequest_BOTH AddBmpRequest_MonitoringPolicy = 2 ) var AddBmpRequest_MonitoringPolicy_name = map[int32]string{ 0: "PRE", 1: "POST", 2: "BOTH", } var AddBmpRequest_MonitoringPolicy_value = map[string]int32{ "PRE": 0, "POST": 1, "BOTH": 2, } func (x AddBmpRequest_MonitoringPolicy) String() string { return proto.EnumName(AddBmpRequest_MonitoringPolicy_name, int32(x)) } func (AddBmpRequest_MonitoringPolicy) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{27, 0} } 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{120, 0} } type GetNeighborRequest struct { } func (m *GetNeighborRequest) Reset() { *m = GetNeighborRequest{} } func (m *GetNeighborRequest) String() string { return proto.CompactTextString(m) } func (*GetNeighborRequest) ProtoMessage() {} func (*GetNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } type GetNeighborResponse struct { Peers []*Peer `protobuf:"bytes,1,rep,name=peers" json:"peers,omitempty"` } func (m *GetNeighborResponse) Reset() { *m = GetNeighborResponse{} } func (m *GetNeighborResponse) String() string { return proto.CompactTextString(m) } func (*GetNeighborResponse) ProtoMessage() {} func (*GetNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } func (m *GetNeighborResponse) GetPeers() []*Peer { if m != nil { return m.Peers } return nil } type Arguments struct { Resource Resource `protobuf:"varint,1,opt,name=resource,enum=gobgpapi.Resource" json:"resource,omitempty"` Family uint32 `protobuf:"varint,2,opt,name=family" json:"family,omitempty"` Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` } func (m *Arguments) Reset() { *m = Arguments{} } func (m *Arguments) String() string { return proto.CompactTextString(m) } func (*Arguments) ProtoMessage() {} func (*Arguments) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } 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{3} } 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{4} } 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 uint32 `protobuf:"varint,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{5} } func (m *DeletePathRequest) GetPath() *Path { if m != nil { return m.Path } return nil } type DeletePathResponse struct { } func (m *DeletePathResponse) Reset() { *m = DeletePathResponse{} } func (m *DeletePathResponse) String() string { return proto.CompactTextString(m) } func (*DeletePathResponse) ProtoMessage() {} func (*DeletePathResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } type AddNeighborRequest struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` } func (m *AddNeighborRequest) Reset() { *m = AddNeighborRequest{} } func (m *AddNeighborRequest) String() string { return proto.CompactTextString(m) } func (*AddNeighborRequest) ProtoMessage() {} func (*AddNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } func (m *AddNeighborRequest) GetPeer() *Peer { if m != nil { return m.Peer } return nil } type AddNeighborResponse struct { } func (m *AddNeighborResponse) Reset() { *m = AddNeighborResponse{} } func (m *AddNeighborResponse) String() string { return proto.CompactTextString(m) } func (*AddNeighborResponse) ProtoMessage() {} func (*AddNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } type DeleteNeighborRequest struct { Peer *Peer `protobuf:"bytes,1,opt,name=peer" json:"peer,omitempty"` } func (m *DeleteNeighborRequest) Reset() { *m = DeleteNeighborRequest{} } func (m *DeleteNeighborRequest) String() string { return proto.CompactTextString(m) } func (*DeleteNeighborRequest) ProtoMessage() {} func (*DeleteNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } func (m *DeleteNeighborRequest) GetPeer() *Peer { if m != nil { return m.Peer } return nil } type DeleteNeighborResponse struct { } func (m *DeleteNeighborResponse) Reset() { *m = DeleteNeighborResponse{} } func (m *DeleteNeighborResponse) String() string { return proto.CompactTextString(m) } func (*DeleteNeighborResponse) ProtoMessage() {} func (*DeleteNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } type ResetNeighborRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *ResetNeighborRequest) Reset() { *m = ResetNeighborRequest{} } func (m *ResetNeighborRequest) String() string { return proto.CompactTextString(m) } func (*ResetNeighborRequest) ProtoMessage() {} func (*ResetNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} } type ResetNeighborResponse struct { } func (m *ResetNeighborResponse) Reset() { *m = ResetNeighborResponse{} } func (m *ResetNeighborResponse) String() string { return proto.CompactTextString(m) } func (*ResetNeighborResponse) ProtoMessage() {} func (*ResetNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} } type SoftResetNeighborRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` Direction SoftResetNeighborRequest_SoftResetDirection `protobuf:"varint,2,opt,name=direction,enum=gobgpapi.SoftResetNeighborRequest_SoftResetDirection" json:"direction,omitempty"` } func (m *SoftResetNeighborRequest) Reset() { *m = SoftResetNeighborRequest{} } func (m *SoftResetNeighborRequest) String() string { return proto.CompactTextString(m) } func (*SoftResetNeighborRequest) ProtoMessage() {} func (*SoftResetNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} } type SoftResetNeighborResponse struct { } func (m *SoftResetNeighborResponse) Reset() { *m = SoftResetNeighborResponse{} } func (m *SoftResetNeighborResponse) String() string { return proto.CompactTextString(m) } func (*SoftResetNeighborResponse) ProtoMessage() {} func (*SoftResetNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} } type ShutdownNeighborRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *ShutdownNeighborRequest) Reset() { *m = ShutdownNeighborRequest{} } func (m *ShutdownNeighborRequest) String() string { return proto.CompactTextString(m) } func (*ShutdownNeighborRequest) ProtoMessage() {} func (*ShutdownNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} } type ShutdownNeighborResponse struct { } func (m *ShutdownNeighborResponse) Reset() { *m = ShutdownNeighborResponse{} } func (m *ShutdownNeighborResponse) String() string { return proto.CompactTextString(m) } func (*ShutdownNeighborResponse) ProtoMessage() {} func (*ShutdownNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} } type EnableNeighborRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *EnableNeighborRequest) Reset() { *m = EnableNeighborRequest{} } func (m *EnableNeighborRequest) String() string { return proto.CompactTextString(m) } func (*EnableNeighborRequest) ProtoMessage() {} func (*EnableNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} } type EnableNeighborResponse struct { } func (m *EnableNeighborResponse) Reset() { *m = EnableNeighborResponse{} } func (m *EnableNeighborResponse) String() string { return proto.CompactTextString(m) } func (*EnableNeighborResponse) ProtoMessage() {} func (*EnableNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} } type DisableNeighborRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *DisableNeighborRequest) Reset() { *m = DisableNeighborRequest{} } func (m *DisableNeighborRequest) String() string { return proto.CompactTextString(m) } func (*DisableNeighborRequest) ProtoMessage() {} func (*DisableNeighborRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{19} } type DisableNeighborResponse struct { } func (m *DisableNeighborResponse) Reset() { *m = DisableNeighborResponse{} } func (m *DisableNeighborResponse) String() string { return proto.CompactTextString(m) } func (*DisableNeighborResponse) ProtoMessage() {} func (*DisableNeighborResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{20} } 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"` Interval uint64 `protobuf:"varint,3,opt,name=interval" json:"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{21} } type EnableMrtResponse struct { } func (m *EnableMrtResponse) Reset() { *m = EnableMrtResponse{} } func (m *EnableMrtResponse) String() string { return proto.CompactTextString(m) } func (*EnableMrtResponse) ProtoMessage() {} func (*EnableMrtResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{22} } 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{23} } type DisableMrtResponse struct { } func (m *DisableMrtResponse) Reset() { *m = DisableMrtResponse{} } func (m *DisableMrtResponse) String() string { return proto.CompactTextString(m) } func (*DisableMrtResponse) ProtoMessage() {} func (*DisableMrtResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{24} } type InjectMrtRequest 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 *InjectMrtRequest) Reset() { *m = InjectMrtRequest{} } func (m *InjectMrtRequest) String() string { return proto.CompactTextString(m) } func (*InjectMrtRequest) ProtoMessage() {} func (*InjectMrtRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{25} } func (m *InjectMrtRequest) GetPaths() []*Path { if m != nil { return m.Paths } return nil } type InjectMrtResponse struct { } func (m *InjectMrtResponse) Reset() { *m = InjectMrtResponse{} } func (m *InjectMrtResponse) String() string { return proto.CompactTextString(m) } func (*InjectMrtResponse) ProtoMessage() {} func (*InjectMrtResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{26} } 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"` } 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{27} } type AddBmpResponse struct { } func (m *AddBmpResponse) Reset() { *m = AddBmpResponse{} } func (m *AddBmpResponse) String() string { return proto.CompactTextString(m) } func (*AddBmpResponse) ProtoMessage() {} func (*AddBmpResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{28} } 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{29} } type DeleteBmpResponse struct { } func (m *DeleteBmpResponse) Reset() { *m = DeleteBmpResponse{} } func (m *DeleteBmpResponse) String() string { return proto.CompactTextString(m) } func (*DeleteBmpResponse) ProtoMessage() {} func (*DeleteBmpResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{30} } type RPKIConf struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` RemotePort string `protobuf:"bytes,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{31} } 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{32} } 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{33} } 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 } type GetRpkiRequest struct { Family uint32 `protobuf:"varint,1,opt,name=family" json:"family,omitempty"` } func (m *GetRpkiRequest) Reset() { *m = GetRpkiRequest{} } func (m *GetRpkiRequest) String() string { return proto.CompactTextString(m) } func (*GetRpkiRequest) ProtoMessage() {} func (*GetRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{34} } type GetRpkiResponse struct { Servers []*Rpki `protobuf:"bytes,1,rep,name=servers" json:"servers,omitempty"` } func (m *GetRpkiResponse) Reset() { *m = GetRpkiResponse{} } func (m *GetRpkiResponse) String() string { return proto.CompactTextString(m) } func (*GetRpkiResponse) ProtoMessage() {} func (*GetRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{35} } func (m *GetRpkiResponse) GetServers() []*Rpki { if m != nil { return m.Servers } 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{36} } type AddRpkiResponse struct { } func (m *AddRpkiResponse) Reset() { *m = AddRpkiResponse{} } func (m *AddRpkiResponse) String() string { return proto.CompactTextString(m) } func (*AddRpkiResponse) ProtoMessage() {} func (*AddRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{37} } 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{38} } type DeleteRpkiResponse struct { } func (m *DeleteRpkiResponse) Reset() { *m = DeleteRpkiResponse{} } func (m *DeleteRpkiResponse) String() string { return proto.CompactTextString(m) } func (*DeleteRpkiResponse) ProtoMessage() {} func (*DeleteRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{39} } type EnableRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,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{40} } type EnableRpkiResponse struct { } func (m *EnableRpkiResponse) Reset() { *m = EnableRpkiResponse{} } func (m *EnableRpkiResponse) String() string { return proto.CompactTextString(m) } func (*EnableRpkiResponse) ProtoMessage() {} func (*EnableRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{41} } type DisableRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,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{42} } type DisableRpkiResponse struct { } func (m *DisableRpkiResponse) Reset() { *m = DisableRpkiResponse{} } func (m *DisableRpkiResponse) String() string { return proto.CompactTextString(m) } func (*DisableRpkiResponse) ProtoMessage() {} func (*DisableRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{43} } type ResetRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,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{44} } type ResetRpkiResponse struct { } func (m *ResetRpkiResponse) Reset() { *m = ResetRpkiResponse{} } func (m *ResetRpkiResponse) String() string { return proto.CompactTextString(m) } func (*ResetRpkiResponse) ProtoMessage() {} func (*ResetRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{45} } type SoftResetRpkiRequest struct { Address string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"` } func (m *SoftResetRpkiRequest) Reset() { *m = SoftResetRpkiRequest{} } func (m *SoftResetRpkiRequest) String() string { return proto.CompactTextString(m) } func (*SoftResetRpkiRequest) ProtoMessage() {} func (*SoftResetRpkiRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{46} } type SoftResetRpkiResponse struct { } func (m *SoftResetRpkiResponse) Reset() { *m = SoftResetRpkiResponse{} } func (m *SoftResetRpkiResponse) String() string { return proto.CompactTextString(m) } func (*SoftResetRpkiResponse) ProtoMessage() {} func (*SoftResetRpkiResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{47} } 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"` } 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{48} } type EnableZebraResponse struct { } func (m *EnableZebraResponse) Reset() { *m = EnableZebraResponse{} } func (m *EnableZebraResponse) String() string { return proto.CompactTextString(m) } func (*EnableZebraResponse) ProtoMessage() {} func (*EnableZebraResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{49} } type GetVrfRequest struct { } func (m *GetVrfRequest) Reset() { *m = GetVrfRequest{} } func (m *GetVrfRequest) String() string { return proto.CompactTextString(m) } func (*GetVrfRequest) ProtoMessage() {} func (*GetVrfRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{50} } type GetVrfResponse struct { Vrfs []*Vrf `protobuf:"bytes,1,rep,name=vrfs" json:"vrfs,omitempty"` } func (m *GetVrfResponse) Reset() { *m = GetVrfResponse{} } func (m *GetVrfResponse) String() string { return proto.CompactTextString(m) } func (*GetVrfResponse) ProtoMessage() {} func (*GetVrfResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{51} } func (m *GetVrfResponse) GetVrfs() []*Vrf { if m != nil { return m.Vrfs } 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{52} } func (m *AddVrfRequest) GetVrf() *Vrf { if m != nil { return m.Vrf } return nil } type AddVrfResponse struct { } func (m *AddVrfResponse) Reset() { *m = AddVrfResponse{} } func (m *AddVrfResponse) String() string { return proto.CompactTextString(m) } func (*AddVrfResponse) ProtoMessage() {} func (*AddVrfResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{53} } type DeleteVrfRequest struct { Vrf *Vrf `protobuf:"bytes,1,opt,name=vrf" json:"vrf,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{54} } func (m *DeleteVrfRequest) GetVrf() *Vrf { if m != nil { return m.Vrf } return nil } type DeleteVrfResponse struct { } func (m *DeleteVrfResponse) Reset() { *m = DeleteVrfResponse{} } func (m *DeleteVrfResponse) String() string { return proto.CompactTextString(m) } func (*DeleteVrfResponse) ProtoMessage() {} func (*DeleteVrfResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{55} } type GetDefinedSetRequest struct { Type DefinedType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.DefinedType" json:"type,omitempty"` } func (m *GetDefinedSetRequest) Reset() { *m = GetDefinedSetRequest{} } func (m *GetDefinedSetRequest) String() string { return proto.CompactTextString(m) } func (*GetDefinedSetRequest) ProtoMessage() {} func (*GetDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{56} } type GetDefinedSetResponse struct { Sets []*DefinedSet `protobuf:"bytes,1,rep,name=sets" json:"sets,omitempty"` } func (m *GetDefinedSetResponse) Reset() { *m = GetDefinedSetResponse{} } func (m *GetDefinedSetResponse) String() string { return proto.CompactTextString(m) } func (*GetDefinedSetResponse) ProtoMessage() {} func (*GetDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{57} } func (m *GetDefinedSetResponse) GetSets() []*DefinedSet { if m != nil { return m.Sets } return nil } type AddDefinedSetRequest struct { Set *DefinedSet `protobuf:"bytes,1,opt,name=set" json:"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{58} } func (m *AddDefinedSetRequest) GetSet() *DefinedSet { if m != nil { return m.Set } return nil } type AddDefinedSetResponse struct { } func (m *AddDefinedSetResponse) Reset() { *m = AddDefinedSetResponse{} } func (m *AddDefinedSetResponse) String() string { return proto.CompactTextString(m) } func (*AddDefinedSetResponse) ProtoMessage() {} func (*AddDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{59} } type DeleteDefinedSetRequest struct { Set *DefinedSet `protobuf:"bytes,1,opt,name=set" json:"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{60} } func (m *DeleteDefinedSetRequest) GetSet() *DefinedSet { if m != nil { return m.Set } return nil } type DeleteDefinedSetResponse struct { } func (m *DeleteDefinedSetResponse) Reset() { *m = DeleteDefinedSetResponse{} } func (m *DeleteDefinedSetResponse) String() string { return proto.CompactTextString(m) } func (*DeleteDefinedSetResponse) ProtoMessage() {} func (*DeleteDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{61} } type ReplaceDefinedSetRequest struct { Set *DefinedSet `protobuf:"bytes,1,opt,name=set" json:"set,omitempty"` } func (m *ReplaceDefinedSetRequest) Reset() { *m = ReplaceDefinedSetRequest{} } func (m *ReplaceDefinedSetRequest) String() string { return proto.CompactTextString(m) } func (*ReplaceDefinedSetRequest) ProtoMessage() {} func (*ReplaceDefinedSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{62} } func (m *ReplaceDefinedSetRequest) GetSet() *DefinedSet { if m != nil { return m.Set } return nil } type ReplaceDefinedSetResponse struct { } func (m *ReplaceDefinedSetResponse) Reset() { *m = ReplaceDefinedSetResponse{} } func (m *ReplaceDefinedSetResponse) String() string { return proto.CompactTextString(m) } func (*ReplaceDefinedSetResponse) ProtoMessage() {} func (*ReplaceDefinedSetResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{63} } type GetStatementRequest struct { } func (m *GetStatementRequest) Reset() { *m = GetStatementRequest{} } func (m *GetStatementRequest) String() string { return proto.CompactTextString(m) } func (*GetStatementRequest) ProtoMessage() {} func (*GetStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{64} } type GetStatementResponse struct { Statements []*Statement `protobuf:"bytes,1,rep,name=statements" json:"statements,omitempty"` } func (m *GetStatementResponse) Reset() { *m = GetStatementResponse{} } func (m *GetStatementResponse) String() string { return proto.CompactTextString(m) } func (*GetStatementResponse) ProtoMessage() {} func (*GetStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{65} } func (m *GetStatementResponse) GetStatements() []*Statement { if m != nil { return m.Statements } 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{66} } func (m *AddStatementRequest) GetStatement() *Statement { if m != nil { return m.Statement } return nil } type AddStatementResponse struct { } func (m *AddStatementResponse) Reset() { *m = AddStatementResponse{} } func (m *AddStatementResponse) String() string { return proto.CompactTextString(m) } func (*AddStatementResponse) ProtoMessage() {} func (*AddStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{67} } 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{68} } func (m *DeleteStatementRequest) GetStatement() *Statement { if m != nil { return m.Statement } return nil } type DeleteStatementResponse struct { } func (m *DeleteStatementResponse) Reset() { *m = DeleteStatementResponse{} } func (m *DeleteStatementResponse) String() string { return proto.CompactTextString(m) } func (*DeleteStatementResponse) ProtoMessage() {} func (*DeleteStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{69} } type ReplaceStatementRequest struct { Statement *Statement `protobuf:"bytes,1,opt,name=statement" json:"statement,omitempty"` } func (m *ReplaceStatementRequest) Reset() { *m = ReplaceStatementRequest{} } func (m *ReplaceStatementRequest) String() string { return proto.CompactTextString(m) } func (*ReplaceStatementRequest) ProtoMessage() {} func (*ReplaceStatementRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{70} } func (m *ReplaceStatementRequest) GetStatement() *Statement { if m != nil { return m.Statement } return nil } type ReplaceStatementResponse struct { } func (m *ReplaceStatementResponse) Reset() { *m = ReplaceStatementResponse{} } func (m *ReplaceStatementResponse) String() string { return proto.CompactTextString(m) } func (*ReplaceStatementResponse) ProtoMessage() {} func (*ReplaceStatementResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{71} } type GetPolicyRequest struct { } func (m *GetPolicyRequest) Reset() { *m = GetPolicyRequest{} } func (m *GetPolicyRequest) String() string { return proto.CompactTextString(m) } func (*GetPolicyRequest) ProtoMessage() {} func (*GetPolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{72} } type GetPolicyResponse struct { Policies []*Policy `protobuf:"bytes,1,rep,name=policies" json:"policies,omitempty"` } func (m *GetPolicyResponse) Reset() { *m = GetPolicyResponse{} } func (m *GetPolicyResponse) String() string { return proto.CompactTextString(m) } func (*GetPolicyResponse) ProtoMessage() {} func (*GetPolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{73} } func (m *GetPolicyResponse) GetPolicies() []*Policy { if m != nil { return m.Policies } 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{74} } func (m *AddPolicyRequest) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } type AddPolicyResponse struct { } func (m *AddPolicyResponse) Reset() { *m = AddPolicyResponse{} } func (m *AddPolicyResponse) String() string { return proto.CompactTextString(m) } func (*AddPolicyResponse) ProtoMessage() {} func (*AddPolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{75} } 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{76} } func (m *DeletePolicyRequest) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } type DeletePolicyResponse struct { } func (m *DeletePolicyResponse) Reset() { *m = DeletePolicyResponse{} } func (m *DeletePolicyResponse) String() string { return proto.CompactTextString(m) } func (*DeletePolicyResponse) ProtoMessage() {} func (*DeletePolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{77} } type ReplacePolicyRequest 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"` // 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,3,opt,name=preserve_statements,json=preserveStatements" json:"preserve_statements,omitempty"` } func (m *ReplacePolicyRequest) Reset() { *m = ReplacePolicyRequest{} } func (m *ReplacePolicyRequest) String() string { return proto.CompactTextString(m) } func (*ReplacePolicyRequest) ProtoMessage() {} func (*ReplacePolicyRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{78} } func (m *ReplacePolicyRequest) GetPolicy() *Policy { if m != nil { return m.Policy } return nil } type ReplacePolicyResponse struct { } func (m *ReplacePolicyResponse) Reset() { *m = ReplacePolicyResponse{} } func (m *ReplacePolicyResponse) String() string { return proto.CompactTextString(m) } func (*ReplacePolicyResponse) ProtoMessage() {} func (*ReplacePolicyResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{79} } type GetPolicyAssignmentRequest struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *GetPolicyAssignmentRequest) Reset() { *m = GetPolicyAssignmentRequest{} } func (m *GetPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*GetPolicyAssignmentRequest) ProtoMessage() {} func (*GetPolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{80} } func (m *GetPolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type GetPolicyAssignmentResponse struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *GetPolicyAssignmentResponse) Reset() { *m = GetPolicyAssignmentResponse{} } func (m *GetPolicyAssignmentResponse) String() string { return proto.CompactTextString(m) } func (*GetPolicyAssignmentResponse) ProtoMessage() {} func (*GetPolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{81} } func (m *GetPolicyAssignmentResponse) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } 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{82} } func (m *AddPolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type AddPolicyAssignmentResponse struct { } func (m *AddPolicyAssignmentResponse) Reset() { *m = AddPolicyAssignmentResponse{} } func (m *AddPolicyAssignmentResponse) String() string { return proto.CompactTextString(m) } func (*AddPolicyAssignmentResponse) ProtoMessage() {} func (*AddPolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{83} } 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{84} } func (m *DeletePolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type DeletePolicyAssignmentResponse struct { } func (m *DeletePolicyAssignmentResponse) Reset() { *m = DeletePolicyAssignmentResponse{} } func (m *DeletePolicyAssignmentResponse) String() string { return proto.CompactTextString(m) } func (*DeletePolicyAssignmentResponse) ProtoMessage() {} func (*DeletePolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{85} } type ReplacePolicyAssignmentRequest struct { Assignment *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment" json:"assignment,omitempty"` } func (m *ReplacePolicyAssignmentRequest) Reset() { *m = ReplacePolicyAssignmentRequest{} } func (m *ReplacePolicyAssignmentRequest) String() string { return proto.CompactTextString(m) } func (*ReplacePolicyAssignmentRequest) ProtoMessage() {} func (*ReplacePolicyAssignmentRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{86} } func (m *ReplacePolicyAssignmentRequest) GetAssignment() *PolicyAssignment { if m != nil { return m.Assignment } return nil } type ReplacePolicyAssignmentResponse struct { } func (m *ReplacePolicyAssignmentResponse) Reset() { *m = ReplacePolicyAssignmentResponse{} } func (m *ReplacePolicyAssignmentResponse) String() string { return proto.CompactTextString(m) } func (*ReplacePolicyAssignmentResponse) ProtoMessage() {} func (*ReplacePolicyAssignmentResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{87} } type GetServerRequest struct { } func (m *GetServerRequest) Reset() { *m = GetServerRequest{} } func (m *GetServerRequest) String() string { return proto.CompactTextString(m) } func (*GetServerRequest) ProtoMessage() {} func (*GetServerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{88} } type GetServerResponse struct { Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"` } func (m *GetServerResponse) Reset() { *m = GetServerResponse{} } func (m *GetServerResponse) String() string { return proto.CompactTextString(m) } func (*GetServerResponse) ProtoMessage() {} func (*GetServerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{89} } func (m *GetServerResponse) GetGlobal() *Global { if m != nil { return m.Global } return nil } type StartServerRequest struct { Global *Global `protobuf:"bytes,1,opt,name=global" json:"global,omitempty"` } func (m *StartServerRequest) Reset() { *m = StartServerRequest{} } func (m *StartServerRequest) String() string { return proto.CompactTextString(m) } func (*StartServerRequest) ProtoMessage() {} func (*StartServerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{90} } func (m *StartServerRequest) GetGlobal() *Global { if m != nil { return m.Global } return nil } type StartServerResponse struct { } func (m *StartServerResponse) Reset() { *m = StartServerResponse{} } func (m *StartServerResponse) String() string { return proto.CompactTextString(m) } func (*StartServerResponse) ProtoMessage() {} func (*StartServerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{91} } type StopServerRequest struct { } func (m *StopServerRequest) Reset() { *m = StopServerRequest{} } func (m *StopServerRequest) String() string { return proto.CompactTextString(m) } func (*StopServerRequest) ProtoMessage() {} func (*StopServerRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{92} } type StopServerResponse struct { } func (m *StopServerResponse) Reset() { *m = StopServerResponse{} } func (m *StopServerResponse) String() string { return proto.CompactTextString(m) } func (*StopServerResponse) ProtoMessage() {} func (*StopServerResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{93} } 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"` Validation int32 `protobuf:"varint,6,opt,name=validation" json:"validation,omitempty"` NoImplicitWithdraw bool `protobuf:"varint,7,opt,name=no_implicit_withdraw,json=noImplicitWithdraw" json:"no_implicit_withdraw,omitempty"` Family uint32 `protobuf:"varint,8,opt,name=family" json:"family,omitempty"` SourceAsn uint32 `protobuf:"varint,9,opt,name=source_asn,json=sourceAsn" json:"source_asn,omitempty"` SourceId string `protobuf:"bytes,10,opt,name=source_id,json=sourceId" json:"source_id,omitempty"` Filtered bool `protobuf:"varint,11,opt,name=filtered" json:"filtered,omitempty"` Stale bool `protobuf:"varint,12,opt,name=stale" json:"stale,omitempty"` IsFromExternal bool `protobuf:"varint,13,opt,name=is_from_external,json=isFromExternal" json:"is_from_external,omitempty"` NeighborIp string `protobuf:"bytes,14,opt,name=neighbor_ip,json=neighborIp" json:"neighbor_ip,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{94} } 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"` LongerPrefixes bool `protobuf:"varint,3,opt,name=longer_prefixes,json=longerPrefixes" json:"longer_prefixes,omitempty"` ShorterPrefixes bool `protobuf:"varint,4,opt,name=shorter_prefixes,json=shorterPrefixes" json:"shorter_prefixes,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{95} } func (m *Destination) GetPaths() []*Path { if m != nil { return m.Paths } return nil } type Table 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 uint32 `protobuf:"varint,3,opt,name=family" json:"family,omitempty"` Destinations []*Destination `protobuf:"bytes,4,rep,name=destinations" json:"destinations,omitempty"` PostPolicy bool `protobuf:"varint,5,opt,name=post_policy,json=postPolicy" json:"post_policy,omitempty"` } func (m *Table) Reset() { *m = Table{} } func (m *Table) String() string { return proto.CompactTextString(m) } func (*Table) ProtoMessage() {} func (*Table) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{96} } func (m *Table) GetDestinations() []*Destination { if m != nil { return m.Destinations } return nil } type GetRibRequest struct { Table *Table `protobuf:"bytes,1,opt,name=table" json:"table,omitempty"` } func (m *GetRibRequest) Reset() { *m = GetRibRequest{} } func (m *GetRibRequest) String() string { return proto.CompactTextString(m) } func (*GetRibRequest) ProtoMessage() {} func (*GetRibRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{97} } func (m *GetRibRequest) GetTable() *Table { if m != nil { return m.Table } return nil } type GetRibResponse struct { Table *Table `protobuf:"bytes,1,opt,name=table" json:"table,omitempty"` } func (m *GetRibResponse) Reset() { *m = GetRibResponse{} } func (m *GetRibResponse) String() string { return proto.CompactTextString(m) } func (*GetRibResponse) ProtoMessage() {} func (*GetRibResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{98} } func (m *GetRibResponse) GetTable() *Table { if m != nil { return m.Table } return nil } type ValidateRibRequest struct { Type Resource `protobuf:"varint,1,opt,name=type,enum=gobgpapi.Resource" json:"type,omitempty"` Family uint32 `protobuf:"varint,2,opt,name=family" json:"family,omitempty"` Prefix string `protobuf:"bytes,3,opt,name=prefix" json:"prefix,omitempty"` } func (m *ValidateRibRequest) Reset() { *m = ValidateRibRequest{} } func (m *ValidateRibRequest) String() string { return proto.CompactTextString(m) } func (*ValidateRibRequest) ProtoMessage() {} func (*ValidateRibRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{99} } type ValidateRibResponse struct { } func (m *ValidateRibResponse) Reset() { *m = ValidateRibResponse{} } func (m *ValidateRibResponse) String() string { return proto.CompactTextString(m) } func (*ValidateRibResponse) ProtoMessage() {} func (*ValidateRibResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{100} } type Peer struct { Families []uint32 `protobuf:"varint,1,rep,name=families" json:"families,omitempty"` ApplyPolicy *ApplyPolicy `protobuf:"bytes,2,opt,name=apply_policy,json=applyPolicy" json:"apply_policy,omitempty"` Conf *PeerConf `protobuf:"bytes,3,opt,name=conf" json:"conf,omitempty"` EbgpMultihop *EbgpMultihop `protobuf:"bytes,4,opt,name=ebgp_multihop,json=ebgpMultihop" json:"ebgp_multihop,omitempty"` RouteReflector *RouteReflector `protobuf:"bytes,5,opt,name=route_reflector,json=routeReflector" json:"route_reflector,omitempty"` Info *PeerState `protobuf:"bytes,6,opt,name=info" json:"info,omitempty"` Timers *Timers `protobuf:"bytes,7,opt,name=timers" json:"timers,omitempty"` Transport *Transport `protobuf:"bytes,8,opt,name=transport" json:"transport,omitempty"` RouteServer *RouteServer `protobuf:"bytes,9,opt,name=route_server,json=routeServer" json:"route_server,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{101} } 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) GetInfo() *PeerState { if m != nil { return m.Info } 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 } 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{102} } 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 uint32 `protobuf:"varint,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{103} } 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 uint32 `protobuf:"varint,8,opt,name=remove_private_as,json=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"` RemoteCap [][]byte `protobuf:"bytes,11,rep,name=remote_cap,json=remoteCap,proto3" json:"remote_cap,omitempty"` LocalCap [][]byte `protobuf:"bytes,12,rep,name=local_cap,json=localCap,proto3" json:"local_cap,omitempty"` Id string `protobuf:"bytes,13,opt,name=id" json:"id,omitempty"` PrefixLimits []*PrefixLimit `protobuf:"bytes,14,rep,name=prefix_limits,json=prefixLimits" json:"prefix_limits,omitempty"` LocalAddress string `protobuf:"bytes,15,opt,name=local_address,json=localAddress" json:"local_address,omitempty"` NeighborInterface string `protobuf:"bytes,16,opt,name=neighbor_interface,json=neighborInterface" json:"neighbor_interface,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{104} } func (m *PeerConf) GetPrefixLimits() []*PrefixLimit { if m != nil { return m.PrefixLimits } return nil } 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{105} } 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{106} } 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 uint32 `protobuf:"varint,13,opt,name=session_state,json=sessionState" json:"session_state,omitempty"` SupportedCapabilities []string `protobuf:"bytes,14,rep,name=supported_capabilities,json=supportedCapabilities" json:"supported_capabilities,omitempty"` BgpState string `protobuf:"bytes,15,opt,name=bgp_state,json=bgpState" json:"bgp_state,omitempty"` AdminState string `protobuf:"bytes,16,opt,name=admin_state,json=adminState" json:"admin_state,omitempty"` Received uint32 `protobuf:"varint,17,opt,name=received" json:"received,omitempty"` Accepted uint32 `protobuf:"varint,18,opt,name=accepted" json:"accepted,omitempty"` Advertised uint32 `protobuf:"varint,19,opt,name=advertised" json:"advertised,omitempty"` OutQ uint32 `protobuf:"varint,20,opt,name=out_q,json=outQ" json:"out_q,omitempty"` Flops uint32 `protobuf:"varint,21,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{107} } func (m *PeerState) GetMessages() *Messages { if m != nil { return m.Messages } return nil } func (m *PeerState) GetQueues() *Queues { if m != nil { return m.Queues } return nil } 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{108} } 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" json:"NOTIFICATION,omitempty"` UPDATE uint64 `protobuf:"varint,2,opt,name=UPDATE,json=uPDATE" json:"UPDATE,omitempty"` OPEN uint64 `protobuf:"varint,3,opt,name=OPEN,json=oPEN" json:"OPEN,omitempty"` KEEPALIVE uint64 `protobuf:"varint,4,opt,name=KEEPALIVE,json=kEEPALIVE" json:"KEEPALIVE,omitempty"` REFRESH uint64 `protobuf:"varint,5,opt,name=REFRESH,json=rEFRESH" json:"REFRESH,omitempty"` DISCARDED uint64 `protobuf:"varint,6,opt,name=DISCARDED,json=dISCARDED" json:"DISCARDED,omitempty"` TOTAL uint64 `protobuf:"varint,7,opt,name=TOTAL,json=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{109} } 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{110} } 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{111} } 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{112} } 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{113} } 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{114} } 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{115} } 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{116} } 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{117} } 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{118} } 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{119} } 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"` } 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{120} } 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 } 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{121} } 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{122} } 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{123} } 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{124} } 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{125} } 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"` } 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{126} } 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 } 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{127} } 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{128} } func (m *Policy) GetStatements() []*Statement { if m != nil { return m.Statements } return nil } type PolicyAssignment struct { Type PolicyType `protobuf:"varint,1,opt,name=type,enum=gobgpapi.PolicyType" json:"type,omitempty"` Resource Resource `protobuf:"varint,2,opt,name=resource,enum=gobgpapi.Resource" json:"resource,omitempty"` Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` Policies []*Policy `protobuf:"bytes,4,rep,name=policies" json:"policies,omitempty"` Default RouteAction `protobuf:"varint,5,opt,name=default,enum=gobgpapi.RouteAction" json:"default,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{129} } func (m *PolicyAssignment) 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{130} } func (m *Roa) GetConf() *RPKIConf { if m != nil { return m.Conf } return nil } type GetRoaRequest struct { Family uint32 `protobuf:"varint,1,opt,name=family" json:"family,omitempty"` } func (m *GetRoaRequest) Reset() { *m = GetRoaRequest{} } func (m *GetRoaRequest) String() string { return proto.CompactTextString(m) } func (*GetRoaRequest) ProtoMessage() {} func (*GetRoaRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{131} } type GetRoaResponse struct { Roas []*Roa `protobuf:"bytes,1,rep,name=roas" json:"roas,omitempty"` } func (m *GetRoaResponse) Reset() { *m = GetRoaResponse{} } func (m *GetRoaResponse) String() string { return proto.CompactTextString(m) } func (*GetRoaResponse) ProtoMessage() {} func (*GetRoaResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{132} } func (m *GetRoaResponse) GetRoas() []*Roa { if m != nil { return m.Roas } return nil } type Vrf struct { Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` Rd []byte `protobuf:"bytes,2,opt,name=rd,proto3" json:"rd,omitempty"` ImportRt [][]byte `protobuf:"bytes,3,rep,name=import_rt,json=importRt,proto3" json:"import_rt,omitempty"` ExportRt [][]byte `protobuf:"bytes,4,rep,name=export_rt,json=exportRt,proto3" 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{133} } 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,name=families" json:"families,omitempty"` MplsLabelMin uint32 `protobuf:"varint,6,opt,name=mpls_label_min,json=mplsLabelMin" json:"mpls_label_min,omitempty"` MplsLabelMax uint32 `protobuf:"varint,7,opt,name=mpls_label_max,json=mplsLabelMax" json:"mpls_label_max,omitempty"` UseMultiplePaths bool `protobuf:"varint,8,opt,name=use_multiple_paths,json=useMultiplePaths" json:"use_multiple_paths,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{134} } func init() { proto.RegisterType((*GetNeighborRequest)(nil), "gobgpapi.GetNeighborRequest") proto.RegisterType((*GetNeighborResponse)(nil), "gobgpapi.GetNeighborResponse") proto.RegisterType((*Arguments)(nil), "gobgpapi.Arguments") proto.RegisterType((*AddPathRequest)(nil), "gobgpapi.AddPathRequest") proto.RegisterType((*AddPathResponse)(nil), "gobgpapi.AddPathResponse") proto.RegisterType((*DeletePathRequest)(nil), "gobgpapi.DeletePathRequest") proto.RegisterType((*DeletePathResponse)(nil), "gobgpapi.DeletePathResponse") proto.RegisterType((*AddNeighborRequest)(nil), "gobgpapi.AddNeighborRequest") proto.RegisterType((*AddNeighborResponse)(nil), "gobgpapi.AddNeighborResponse") proto.RegisterType((*DeleteNeighborRequest)(nil), "gobgpapi.DeleteNeighborRequest") proto.RegisterType((*DeleteNeighborResponse)(nil), "gobgpapi.DeleteNeighborResponse") proto.RegisterType((*ResetNeighborRequest)(nil), "gobgpapi.ResetNeighborRequest") proto.RegisterType((*ResetNeighborResponse)(nil), "gobgpapi.ResetNeighborResponse") proto.RegisterType((*SoftResetNeighborRequest)(nil), "gobgpapi.SoftResetNeighborRequest") proto.RegisterType((*SoftResetNeighborResponse)(nil), "gobgpapi.SoftResetNeighborResponse") proto.RegisterType((*ShutdownNeighborRequest)(nil), "gobgpapi.ShutdownNeighborRequest") proto.RegisterType((*ShutdownNeighborResponse)(nil), "gobgpapi.ShutdownNeighborResponse") proto.RegisterType((*EnableNeighborRequest)(nil), "gobgpapi.EnableNeighborRequest") proto.RegisterType((*EnableNeighborResponse)(nil), "gobgpapi.EnableNeighborResponse") proto.RegisterType((*DisableNeighborRequest)(nil), "gobgpapi.DisableNeighborRequest") proto.RegisterType((*DisableNeighborResponse)(nil), "gobgpapi.DisableNeighborResponse") proto.RegisterType((*EnableMrtRequest)(nil), "gobgpapi.EnableMrtRequest") proto.RegisterType((*EnableMrtResponse)(nil), "gobgpapi.EnableMrtResponse") proto.RegisterType((*DisableMrtRequest)(nil), "gobgpapi.DisableMrtRequest") proto.RegisterType((*DisableMrtResponse)(nil), "gobgpapi.DisableMrtResponse") proto.RegisterType((*InjectMrtRequest)(nil), "gobgpapi.InjectMrtRequest") proto.RegisterType((*InjectMrtResponse)(nil), "gobgpapi.InjectMrtResponse") proto.RegisterType((*AddBmpRequest)(nil), "gobgpapi.AddBmpRequest") proto.RegisterType((*AddBmpResponse)(nil), "gobgpapi.AddBmpResponse") proto.RegisterType((*DeleteBmpRequest)(nil), "gobgpapi.DeleteBmpRequest") proto.RegisterType((*DeleteBmpResponse)(nil), "gobgpapi.DeleteBmpResponse") proto.RegisterType((*RPKIConf)(nil), "gobgpapi.RPKIConf") proto.RegisterType((*RPKIState)(nil), "gobgpapi.RPKIState") proto.RegisterType((*Rpki)(nil), "gobgpapi.Rpki") proto.RegisterType((*GetRpkiRequest)(nil), "gobgpapi.GetRpkiRequest") proto.RegisterType((*GetRpkiResponse)(nil), "gobgpapi.GetRpkiResponse") proto.RegisterType((*AddRpkiRequest)(nil), "gobgpapi.AddRpkiRequest") proto.RegisterType((*AddRpkiResponse)(nil), "gobgpapi.AddRpkiResponse") proto.RegisterType((*DeleteRpkiRequest)(nil), "gobgpapi.DeleteRpkiRequest") proto.RegisterType((*DeleteRpkiResponse)(nil), "gobgpapi.DeleteRpkiResponse") proto.RegisterType((*EnableRpkiRequest)(nil), "gobgpapi.EnableRpkiRequest") proto.RegisterType((*EnableRpkiResponse)(nil), "gobgpapi.EnableRpkiResponse") proto.RegisterType((*DisableRpkiRequest)(nil), "gobgpapi.DisableRpkiRequest") proto.RegisterType((*DisableRpkiResponse)(nil), "gobgpapi.DisableRpkiResponse") proto.RegisterType((*ResetRpkiRequest)(nil), "gobgpapi.ResetRpkiRequest") proto.RegisterType((*ResetRpkiResponse)(nil), "gobgpapi.ResetRpkiResponse") proto.RegisterType((*SoftResetRpkiRequest)(nil), "gobgpapi.SoftResetRpkiRequest") proto.RegisterType((*SoftResetRpkiResponse)(nil), "gobgpapi.SoftResetRpkiResponse") proto.RegisterType((*EnableZebraRequest)(nil), "gobgpapi.EnableZebraRequest") proto.RegisterType((*EnableZebraResponse)(nil), "gobgpapi.EnableZebraResponse") proto.RegisterType((*GetVrfRequest)(nil), "gobgpapi.GetVrfRequest") proto.RegisterType((*GetVrfResponse)(nil), "gobgpapi.GetVrfResponse") proto.RegisterType((*AddVrfRequest)(nil), "gobgpapi.AddVrfRequest") proto.RegisterType((*AddVrfResponse)(nil), "gobgpapi.AddVrfResponse") proto.RegisterType((*DeleteVrfRequest)(nil), "gobgpapi.DeleteVrfRequest") proto.RegisterType((*DeleteVrfResponse)(nil), "gobgpapi.DeleteVrfResponse") proto.RegisterType((*GetDefinedSetRequest)(nil), "gobgpapi.GetDefinedSetRequest") proto.RegisterType((*GetDefinedSetResponse)(nil), "gobgpapi.GetDefinedSetResponse") proto.RegisterType((*AddDefinedSetRequest)(nil), "gobgpapi.AddDefinedSetRequest") proto.RegisterType((*AddDefinedSetResponse)(nil), "gobgpapi.AddDefinedSetResponse") proto.RegisterType((*DeleteDefinedSetRequest)(nil), "gobgpapi.DeleteDefinedSetRequest") proto.RegisterType((*DeleteDefinedSetResponse)(nil), "gobgpapi.DeleteDefinedSetResponse") proto.RegisterType((*ReplaceDefinedSetRequest)(nil), "gobgpapi.ReplaceDefinedSetRequest") proto.RegisterType((*ReplaceDefinedSetResponse)(nil), "gobgpapi.ReplaceDefinedSetResponse") proto.RegisterType((*GetStatementRequest)(nil), "gobgpapi.GetStatementRequest") proto.RegisterType((*GetStatementResponse)(nil), "gobgpapi.GetStatementResponse") proto.RegisterType((*AddStatementRequest)(nil), "gobgpapi.AddStatementRequest") proto.RegisterType((*AddStatementResponse)(nil), "gobgpapi.AddStatementResponse") proto.RegisterType((*DeleteStatementRequest)(nil), "gobgpapi.DeleteStatementRequest") proto.RegisterType((*DeleteStatementResponse)(nil), "gobgpapi.DeleteStatementResponse") proto.RegisterType((*ReplaceStatementRequest)(nil), "gobgpapi.ReplaceStatementRequest") proto.RegisterType((*ReplaceStatementResponse)(nil), "gobgpapi.ReplaceStatementResponse") proto.RegisterType((*GetPolicyRequest)(nil), "gobgpapi.GetPolicyRequest") proto.RegisterType((*GetPolicyResponse)(nil), "gobgpapi.GetPolicyResponse") proto.RegisterType((*AddPolicyRequest)(nil), "gobgpapi.AddPolicyRequest") proto.RegisterType((*AddPolicyResponse)(nil), "gobgpapi.AddPolicyResponse") proto.RegisterType((*DeletePolicyRequest)(nil), "gobgpapi.DeletePolicyRequest") proto.RegisterType((*DeletePolicyResponse)(nil), "gobgpapi.DeletePolicyResponse") proto.RegisterType((*ReplacePolicyRequest)(nil), "gobgpapi.ReplacePolicyRequest") proto.RegisterType((*ReplacePolicyResponse)(nil), "gobgpapi.ReplacePolicyResponse") proto.RegisterType((*GetPolicyAssignmentRequest)(nil), "gobgpapi.GetPolicyAssignmentRequest") proto.RegisterType((*GetPolicyAssignmentResponse)(nil), "gobgpapi.GetPolicyAssignmentResponse") proto.RegisterType((*AddPolicyAssignmentRequest)(nil), "gobgpapi.AddPolicyAssignmentRequest") proto.RegisterType((*AddPolicyAssignmentResponse)(nil), "gobgpapi.AddPolicyAssignmentResponse") proto.RegisterType((*DeletePolicyAssignmentRequest)(nil), "gobgpapi.DeletePolicyAssignmentRequest") proto.RegisterType((*DeletePolicyAssignmentResponse)(nil), "gobgpapi.DeletePolicyAssignmentResponse") proto.RegisterType((*ReplacePolicyAssignmentRequest)(nil), "gobgpapi.ReplacePolicyAssignmentRequest") proto.RegisterType((*ReplacePolicyAssignmentResponse)(nil), "gobgpapi.ReplacePolicyAssignmentResponse") proto.RegisterType((*GetServerRequest)(nil), "gobgpapi.GetServerRequest") proto.RegisterType((*GetServerResponse)(nil), "gobgpapi.GetServerResponse") proto.RegisterType((*StartServerRequest)(nil), "gobgpapi.StartServerRequest") proto.RegisterType((*StartServerResponse)(nil), "gobgpapi.StartServerResponse") proto.RegisterType((*StopServerRequest)(nil), "gobgpapi.StopServerRequest") proto.RegisterType((*StopServerResponse)(nil), "gobgpapi.StopServerResponse") proto.RegisterType((*Path)(nil), "gobgpapi.Path") proto.RegisterType((*Destination)(nil), "gobgpapi.Destination") proto.RegisterType((*Table)(nil), "gobgpapi.Table") proto.RegisterType((*GetRibRequest)(nil), "gobgpapi.GetRibRequest") proto.RegisterType((*GetRibResponse)(nil), "gobgpapi.GetRibResponse") proto.RegisterType((*ValidateRibRequest)(nil), "gobgpapi.ValidateRibRequest") proto.RegisterType((*ValidateRibResponse)(nil), "gobgpapi.ValidateRibResponse") proto.RegisterType((*Peer)(nil), "gobgpapi.Peer") proto.RegisterType((*ApplyPolicy)(nil), "gobgpapi.ApplyPolicy") proto.RegisterType((*PrefixLimit)(nil), "gobgpapi.PrefixLimit") proto.RegisterType((*PeerConf)(nil), "gobgpapi.PeerConf") 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((*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((*Roa)(nil), "gobgpapi.Roa") proto.RegisterType((*GetRoaRequest)(nil), "gobgpapi.GetRoaRequest") proto.RegisterType((*GetRoaResponse)(nil), "gobgpapi.GetRoaResponse") proto.RegisterType((*Vrf)(nil), "gobgpapi.Vrf") proto.RegisterType((*Global)(nil), "gobgpapi.Global") proto.RegisterEnum("gobgpapi.Resource", Resource_name, Resource_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.PolicyType", PolicyType_name, PolicyType_value) proto.RegisterEnum("gobgpapi.SoftResetNeighborRequest_SoftResetDirection", SoftResetNeighborRequest_SoftResetDirection_name, SoftResetNeighborRequest_SoftResetDirection_value) proto.RegisterEnum("gobgpapi.AddBmpRequest_MonitoringPolicy", AddBmpRequest_MonitoringPolicy_name, AddBmpRequest_MonitoringPolicy_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.SupportPackageIsVersion3 // Client API for GobgpApi service type GobgpApiClient interface { StartServer(ctx context.Context, in *StartServerRequest, opts ...grpc.CallOption) (*StartServerResponse, error) StopServer(ctx context.Context, in *StopServerRequest, opts ...grpc.CallOption) (*StopServerResponse, error) GetServer(ctx context.Context, in *GetServerRequest, opts ...grpc.CallOption) (*GetServerResponse, error) AddNeighbor(ctx context.Context, in *AddNeighborRequest, opts ...grpc.CallOption) (*AddNeighborResponse, error) DeleteNeighbor(ctx context.Context, in *DeleteNeighborRequest, opts ...grpc.CallOption) (*DeleteNeighborResponse, error) GetNeighbor(ctx context.Context, in *GetNeighborRequest, opts ...grpc.CallOption) (*GetNeighborResponse, error) ResetNeighbor(ctx context.Context, in *ResetNeighborRequest, opts ...grpc.CallOption) (*ResetNeighborResponse, error) SoftResetNeighbor(ctx context.Context, in *SoftResetNeighborRequest, opts ...grpc.CallOption) (*SoftResetNeighborResponse, error) ShutdownNeighbor(ctx context.Context, in *ShutdownNeighborRequest, opts ...grpc.CallOption) (*ShutdownNeighborResponse, error) EnableNeighbor(ctx context.Context, in *EnableNeighborRequest, opts ...grpc.CallOption) (*EnableNeighborResponse, error) DisableNeighbor(ctx context.Context, in *DisableNeighborRequest, opts ...grpc.CallOption) (*DisableNeighborResponse, error) GetRib(ctx context.Context, in *GetRibRequest, opts ...grpc.CallOption) (*GetRibResponse, error) ValidateRib(ctx context.Context, in *ValidateRibRequest, opts ...grpc.CallOption) (*ValidateRibResponse, error) AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error) DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*DeletePathResponse, error) MonitorRib(ctx context.Context, in *Table, opts ...grpc.CallOption) (GobgpApi_MonitorRibClient, error) MonitorPeerState(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (GobgpApi_MonitorPeerStateClient, error) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*EnableMrtResponse, error) DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*DisableMrtResponse, error) InjectMrt(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_InjectMrtClient, error) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*AddBmpResponse, error) DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*DeleteBmpResponse, error) GetRpki(ctx context.Context, in *GetRpkiRequest, opts ...grpc.CallOption) (*GetRpkiResponse, error) AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*AddRpkiResponse, error) DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*DeleteRpkiResponse, error) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*EnableRpkiResponse, error) DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*DisableRpkiResponse, error) ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*ResetRpkiResponse, error) SoftResetRpki(ctx context.Context, in *SoftResetRpkiRequest, opts ...grpc.CallOption) (*SoftResetRpkiResponse, error) GetRoa(ctx context.Context, in *GetRoaRequest, opts ...grpc.CallOption) (*GetRoaResponse, error) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*EnableZebraResponse, error) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*AddVrfResponse, error) DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*DeleteVrfResponse, error) GetVrf(ctx context.Context, in *GetVrfRequest, opts ...grpc.CallOption) (*GetVrfResponse, error) GetDefinedSet(ctx context.Context, in *GetDefinedSetRequest, opts ...grpc.CallOption) (*GetDefinedSetResponse, error) AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*AddDefinedSetResponse, error) DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*DeleteDefinedSetResponse, error) ReplaceDefinedSet(ctx context.Context, in *ReplaceDefinedSetRequest, opts ...grpc.CallOption) (*ReplaceDefinedSetResponse, error) GetStatement(ctx context.Context, in *GetStatementRequest, opts ...grpc.CallOption) (*GetStatementResponse, error) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*AddStatementResponse, error) DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*DeleteStatementResponse, error) ReplaceStatement(ctx context.Context, in *ReplaceStatementRequest, opts ...grpc.CallOption) (*ReplaceStatementResponse, error) GetPolicy(ctx context.Context, in *GetPolicyRequest, opts ...grpc.CallOption) (*GetPolicyResponse, error) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*AddPolicyResponse, error) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*DeletePolicyResponse, error) ReplacePolicy(ctx context.Context, in *ReplacePolicyRequest, opts ...grpc.CallOption) (*ReplacePolicyResponse, error) GetPolicyAssignment(ctx context.Context, in *GetPolicyAssignmentRequest, opts ...grpc.CallOption) (*GetPolicyAssignmentResponse, error) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*AddPolicyAssignmentResponse, error) DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*DeletePolicyAssignmentResponse, error) ReplacePolicyAssignment(ctx context.Context, in *ReplacePolicyAssignmentRequest, opts ...grpc.CallOption) (*ReplacePolicyAssignmentResponse, error) } type gobgpApiClient struct { cc *grpc.ClientConn } func NewGobgpApiClient(cc *grpc.ClientConn) GobgpApiClient { return &gobgpApiClient{cc} } func (c *gobgpApiClient) StartServer(ctx context.Context, in *StartServerRequest, opts ...grpc.CallOption) (*StartServerResponse, error) { out := new(StartServerResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StartServer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) StopServer(ctx context.Context, in *StopServerRequest, opts ...grpc.CallOption) (*StopServerResponse, error) { out := new(StopServerResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/StopServer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetServer(ctx context.Context, in *GetServerRequest, opts ...grpc.CallOption) (*GetServerResponse, error) { out := new(GetServerResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetServer", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddNeighbor(ctx context.Context, in *AddNeighborRequest, opts ...grpc.CallOption) (*AddNeighborResponse, error) { out := new(AddNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/AddNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DeleteNeighbor(ctx context.Context, in *DeleteNeighborRequest, opts ...grpc.CallOption) (*DeleteNeighborResponse, error) { out := new(DeleteNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetNeighbor(ctx context.Context, in *GetNeighborRequest, opts ...grpc.CallOption) (*GetNeighborResponse, error) { out := new(GetNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ResetNeighbor(ctx context.Context, in *ResetNeighborRequest, opts ...grpc.CallOption) (*ResetNeighborResponse, error) { out := new(ResetNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) SoftResetNeighbor(ctx context.Context, in *SoftResetNeighborRequest, opts ...grpc.CallOption) (*SoftResetNeighborResponse, error) { out := new(SoftResetNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SoftResetNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ShutdownNeighbor(ctx context.Context, in *ShutdownNeighborRequest, opts ...grpc.CallOption) (*ShutdownNeighborResponse, error) { out := new(ShutdownNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ShutdownNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) EnableNeighbor(ctx context.Context, in *EnableNeighborRequest, opts ...grpc.CallOption) (*EnableNeighborResponse, error) { out := new(EnableNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) DisableNeighbor(ctx context.Context, in *DisableNeighborRequest, opts ...grpc.CallOption) (*DisableNeighborResponse, error) { out := new(DisableNeighborResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableNeighbor", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetRib(ctx context.Context, in *GetRibRequest, opts ...grpc.CallOption) (*GetRibResponse, error) { out := new(GetRibResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetRib", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ValidateRib(ctx context.Context, in *ValidateRibRequest, opts ...grpc.CallOption) (*ValidateRibResponse, error) { out := new(ValidateRibResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ValidateRib", 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) (*DeletePathResponse, error) { out := new(DeletePathResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePath", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) MonitorRib(ctx context.Context, in *Table, opts ...grpc.CallOption) (GobgpApi_MonitorRibClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[0], c.cc, "/gobgpapi.GobgpApi/MonitorRib", opts...) if err != nil { return nil, err } x := &gobgpApiMonitorRibClient{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_MonitorRibClient interface { Recv() (*Destination, error) grpc.ClientStream } type gobgpApiMonitorRibClient struct { grpc.ClientStream } func (x *gobgpApiMonitorRibClient) Recv() (*Destination, error) { m := new(Destination) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) MonitorPeerState(ctx context.Context, in *Arguments, opts ...grpc.CallOption) (GobgpApi_MonitorPeerStateClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[1], c.cc, "/gobgpapi.GobgpApi/MonitorPeerState", opts...) if err != nil { return nil, err } x := &gobgpApiMonitorPeerStateClient{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_MonitorPeerStateClient interface { Recv() (*Peer, error) grpc.ClientStream } type gobgpApiMonitorPeerStateClient struct { grpc.ClientStream } func (x *gobgpApiMonitorPeerStateClient) Recv() (*Peer, error) { m := new(Peer) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*EnableMrtResponse, error) { out := new(EnableMrtResponse) 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) (*DisableMrtResponse, error) { out := new(DisableMrtResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableMrt", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) InjectMrt(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_InjectMrtClient, error) { stream, err := grpc.NewClientStream(ctx, &_GobgpApi_serviceDesc.Streams[2], c.cc, "/gobgpapi.GobgpApi/InjectMrt", opts...) if err != nil { return nil, err } x := &gobgpApiInjectMrtClient{stream} return x, nil } type GobgpApi_InjectMrtClient interface { Send(*InjectMrtRequest) error CloseAndRecv() (*InjectMrtResponse, error) grpc.ClientStream } type gobgpApiInjectMrtClient struct { grpc.ClientStream } func (x *gobgpApiInjectMrtClient) Send(m *InjectMrtRequest) error { return x.ClientStream.SendMsg(m) } func (x *gobgpApiInjectMrtClient) CloseAndRecv() (*InjectMrtResponse, error) { if err := x.ClientStream.CloseSend(); err != nil { return nil, err } m := new(InjectMrtResponse) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } func (c *gobgpApiClient) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*AddBmpResponse, error) { out := new(AddBmpResponse) 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) (*DeleteBmpResponse, error) { out := new(DeleteBmpResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteBmp", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetRpki(ctx context.Context, in *GetRpkiRequest, opts ...grpc.CallOption) (*GetRpkiResponse, error) { out := new(GetRpkiResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetRpki", 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) (*AddRpkiResponse, error) { out := new(AddRpkiResponse) 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) (*DeleteRpkiResponse, error) { out := new(DeleteRpkiResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*EnableRpkiResponse, error) { out := new(EnableRpkiResponse) 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) (*DisableRpkiResponse, error) { out := new(DisableRpkiResponse) 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) (*ResetRpkiResponse, error) { out := new(ResetRpkiResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) SoftResetRpki(ctx context.Context, in *SoftResetRpkiRequest, opts ...grpc.CallOption) (*SoftResetRpkiResponse, error) { out := new(SoftResetRpkiResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/SoftResetRpki", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetRoa(ctx context.Context, in *GetRoaRequest, opts ...grpc.CallOption) (*GetRoaResponse, error) { out := new(GetRoaResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetRoa", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*EnableZebraResponse, error) { out := new(EnableZebraResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableZebra", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*AddVrfResponse, error) { out := new(AddVrfResponse) 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) (*DeleteVrfResponse, error) { out := new(DeleteVrfResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteVrf", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetVrf(ctx context.Context, in *GetVrfRequest, opts ...grpc.CallOption) (*GetVrfResponse, error) { out := new(GetVrfResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetVrf", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetDefinedSet(ctx context.Context, in *GetDefinedSetRequest, opts ...grpc.CallOption) (*GetDefinedSetResponse, error) { out := new(GetDefinedSetResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetDefinedSet", 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) (*AddDefinedSetResponse, error) { out := new(AddDefinedSetResponse) 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) (*DeleteDefinedSetResponse, error) { out := new(DeleteDefinedSetResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteDefinedSet", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ReplaceDefinedSet(ctx context.Context, in *ReplaceDefinedSetRequest, opts ...grpc.CallOption) (*ReplaceDefinedSetResponse, error) { out := new(ReplaceDefinedSetResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ReplaceDefinedSet", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetStatement(ctx context.Context, in *GetStatementRequest, opts ...grpc.CallOption) (*GetStatementResponse, error) { out := new(GetStatementResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetStatement", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*AddStatementResponse, error) { out := new(AddStatementResponse) 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) (*DeleteStatementResponse, error) { out := new(DeleteStatementResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteStatement", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ReplaceStatement(ctx context.Context, in *ReplaceStatementRequest, opts ...grpc.CallOption) (*ReplaceStatementResponse, error) { out := new(ReplaceStatementResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ReplaceStatement", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetPolicy(ctx context.Context, in *GetPolicyRequest, opts ...grpc.CallOption) (*GetPolicyResponse, error) { out := new(GetPolicyResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetPolicy", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*AddPolicyResponse, error) { out := new(AddPolicyResponse) 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) (*DeletePolicyResponse, error) { out := new(DeletePolicyResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicy", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ReplacePolicy(ctx context.Context, in *ReplacePolicyRequest, opts ...grpc.CallOption) (*ReplacePolicyResponse, error) { out := new(ReplacePolicyResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ReplacePolicy", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) GetPolicyAssignment(ctx context.Context, in *GetPolicyAssignmentRequest, opts ...grpc.CallOption) (*GetPolicyAssignmentResponse, error) { out := new(GetPolicyAssignmentResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/GetPolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*AddPolicyAssignmentResponse, error) { out := new(AddPolicyAssignmentResponse) 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) (*DeletePolicyAssignmentResponse, error) { out := new(DeletePolicyAssignmentResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } func (c *gobgpApiClient) ReplacePolicyAssignment(ctx context.Context, in *ReplacePolicyAssignmentRequest, opts ...grpc.CallOption) (*ReplacePolicyAssignmentResponse, error) { out := new(ReplacePolicyAssignmentResponse) err := grpc.Invoke(ctx, "/gobgpapi.GobgpApi/ReplacePolicyAssignment", in, out, c.cc, opts...) if err != nil { return nil, err } return out, nil } // Server API for GobgpApi service type GobgpApiServer interface { StartServer(context.Context, *StartServerRequest) (*StartServerResponse, error) StopServer(context.Context, *StopServerRequest) (*StopServerResponse, error) GetServer(context.Context, *GetServerRequest) (*GetServerResponse, error) AddNeighbor(context.Context, *AddNeighborRequest) (*AddNeighborResponse, error) DeleteNeighbor(context.Context, *DeleteNeighborRequest) (*DeleteNeighborResponse, error) GetNeighbor(context.Context, *GetNeighborRequest) (*GetNeighborResponse, error) ResetNeighbor(context.Context, *ResetNeighborRequest) (*ResetNeighborResponse, error) SoftResetNeighbor(context.Context, *SoftResetNeighborRequest) (*SoftResetNeighborResponse, error) ShutdownNeighbor(context.Context, *ShutdownNeighborRequest) (*ShutdownNeighborResponse, error) EnableNeighbor(context.Context, *EnableNeighborRequest) (*EnableNeighborResponse, error) DisableNeighbor(context.Context, *DisableNeighborRequest) (*DisableNeighborResponse, error) GetRib(context.Context, *GetRibRequest) (*GetRibResponse, error) ValidateRib(context.Context, *ValidateRibRequest) (*ValidateRibResponse, error) AddPath(context.Context, *AddPathRequest) (*AddPathResponse, error) DeletePath(context.Context, *DeletePathRequest) (*DeletePathResponse, error) MonitorRib(*Table, GobgpApi_MonitorRibServer) error MonitorPeerState(*Arguments, GobgpApi_MonitorPeerStateServer) error EnableMrt(context.Context, *EnableMrtRequest) (*EnableMrtResponse, error) DisableMrt(context.Context, *DisableMrtRequest) (*DisableMrtResponse, error) InjectMrt(GobgpApi_InjectMrtServer) error AddBmp(context.Context, *AddBmpRequest) (*AddBmpResponse, error) DeleteBmp(context.Context, *DeleteBmpRequest) (*DeleteBmpResponse, error) GetRpki(context.Context, *GetRpkiRequest) (*GetRpkiResponse, error) AddRpki(context.Context, *AddRpkiRequest) (*AddRpkiResponse, error) DeleteRpki(context.Context, *DeleteRpkiRequest) (*DeleteRpkiResponse, error) EnableRpki(context.Context, *EnableRpkiRequest) (*EnableRpkiResponse, error) DisableRpki(context.Context, *DisableRpkiRequest) (*DisableRpkiResponse, error) ResetRpki(context.Context, *ResetRpkiRequest) (*ResetRpkiResponse, error) SoftResetRpki(context.Context, *SoftResetRpkiRequest) (*SoftResetRpkiResponse, error) GetRoa(context.Context, *GetRoaRequest) (*GetRoaResponse, error) EnableZebra(context.Context, *EnableZebraRequest) (*EnableZebraResponse, error) AddVrf(context.Context, *AddVrfRequest) (*AddVrfResponse, error) DeleteVrf(context.Context, *DeleteVrfRequest) (*DeleteVrfResponse, error) GetVrf(context.Context, *GetVrfRequest) (*GetVrfResponse, error) GetDefinedSet(context.Context, *GetDefinedSetRequest) (*GetDefinedSetResponse, error) AddDefinedSet(context.Context, *AddDefinedSetRequest) (*AddDefinedSetResponse, error) DeleteDefinedSet(context.Context, *DeleteDefinedSetRequest) (*DeleteDefinedSetResponse, error) ReplaceDefinedSet(context.Context, *ReplaceDefinedSetRequest) (*ReplaceDefinedSetResponse, error) GetStatement(context.Context, *GetStatementRequest) (*GetStatementResponse, error) AddStatement(context.Context, *AddStatementRequest) (*AddStatementResponse, error) DeleteStatement(context.Context, *DeleteStatementRequest) (*DeleteStatementResponse, error) ReplaceStatement(context.Context, *ReplaceStatementRequest) (*ReplaceStatementResponse, error) GetPolicy(context.Context, *GetPolicyRequest) (*GetPolicyResponse, error) AddPolicy(context.Context, *AddPolicyRequest) (*AddPolicyResponse, error) DeletePolicy(context.Context, *DeletePolicyRequest) (*DeletePolicyResponse, error) ReplacePolicy(context.Context, *ReplacePolicyRequest) (*ReplacePolicyResponse, error) GetPolicyAssignment(context.Context, *GetPolicyAssignmentRequest) (*GetPolicyAssignmentResponse, error) AddPolicyAssignment(context.Context, *AddPolicyAssignmentRequest) (*AddPolicyAssignmentResponse, error) DeletePolicyAssignment(context.Context, *DeletePolicyAssignmentRequest) (*DeletePolicyAssignmentResponse, error) ReplacePolicyAssignment(context.Context, *ReplacePolicyAssignmentRequest) (*ReplacePolicyAssignmentResponse, error) } func RegisterGobgpApiServer(s *grpc.Server, srv GobgpApiServer) { s.RegisterService(&_GobgpApi_serviceDesc, srv) } func _GobgpApi_StartServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(StartServerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).StartServer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/StartServer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).StartServer(ctx, req.(*StartServerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_StopServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(StopServerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).StopServer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/StopServer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).StopServer(ctx, req.(*StopServerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetServerRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetServer(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetServer", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetServer(ctx, req.(*GetServerRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_AddNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(AddNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).AddNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/AddNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).AddNeighbor(ctx, req.(*AddNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DeleteNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DeleteNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DeleteNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DeleteNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DeleteNeighbor(ctx, req.(*DeleteNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetNeighbor(ctx, req.(*GetNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ResetNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ResetNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ResetNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ResetNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ResetNeighbor(ctx, req.(*ResetNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_SoftResetNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(SoftResetNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).SoftResetNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/SoftResetNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).SoftResetNeighbor(ctx, req.(*SoftResetNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ShutdownNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ShutdownNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ShutdownNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ShutdownNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ShutdownNeighbor(ctx, req.(*ShutdownNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_EnableNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(EnableNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).EnableNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/EnableNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).EnableNeighbor(ctx, req.(*EnableNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_DisableNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(DisableNeighborRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).DisableNeighbor(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/DisableNeighbor", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).DisableNeighbor(ctx, req.(*DisableNeighborRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetRib_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetRibRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetRib(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetRib", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetRib(ctx, req.(*GetRibRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_ValidateRib_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ValidateRibRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ValidateRib(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ValidateRib", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ValidateRib(ctx, req.(*ValidateRibRequest)) } 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_MonitorRib_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(Table) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).MonitorRib(m, &gobgpApiMonitorRibServer{stream}) } type GobgpApi_MonitorRibServer interface { Send(*Destination) error grpc.ServerStream } type gobgpApiMonitorRibServer struct { grpc.ServerStream } func (x *gobgpApiMonitorRibServer) Send(m *Destination) error { return x.ServerStream.SendMsg(m) } func _GobgpApi_MonitorPeerState_Handler(srv interface{}, stream grpc.ServerStream) error { m := new(Arguments) if err := stream.RecvMsg(m); err != nil { return err } return srv.(GobgpApiServer).MonitorPeerState(m, &gobgpApiMonitorPeerStateServer{stream}) } type GobgpApi_MonitorPeerStateServer interface { Send(*Peer) error grpc.ServerStream } type gobgpApiMonitorPeerStateServer struct { grpc.ServerStream } func (x *gobgpApiMonitorPeerStateServer) Send(m *Peer) error { return x.ServerStream.SendMsg(m) } 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_InjectMrt_Handler(srv interface{}, stream grpc.ServerStream) error { return srv.(GobgpApiServer).InjectMrt(&gobgpApiInjectMrtServer{stream}) } type GobgpApi_InjectMrtServer interface { SendAndClose(*InjectMrtResponse) error Recv() (*InjectMrtRequest, error) grpc.ServerStream } type gobgpApiInjectMrtServer struct { grpc.ServerStream } func (x *gobgpApiInjectMrtServer) SendAndClose(m *InjectMrtResponse) error { return x.ServerStream.SendMsg(m) } func (x *gobgpApiInjectMrtServer) Recv() (*InjectMrtRequest, error) { m := new(InjectMrtRequest) if err := x.ServerStream.RecvMsg(m); err != nil { return nil, err } return m, nil } 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) } func _GobgpApi_GetRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetRpki(ctx, req.(*GetRpkiRequest)) } 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_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_SoftResetRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(SoftResetRpkiRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).SoftResetRpki(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/SoftResetRpki", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).SoftResetRpki(ctx, req.(*SoftResetRpkiRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetRoa_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetRoaRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetRoa(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetRoa", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetRoa(ctx, req.(*GetRoaRequest)) } return interceptor(ctx, in, info, handler) } 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_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_GetVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetVrfRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetVrf(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetVrf", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetVrf(ctx, req.(*GetVrfRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetDefinedSetRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetDefinedSet(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetDefinedSet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetDefinedSet(ctx, req.(*GetDefinedSetRequest)) } 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_ReplaceDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ReplaceDefinedSetRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ReplaceDefinedSet(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ReplaceDefinedSet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ReplaceDefinedSet(ctx, req.(*ReplaceDefinedSetRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetStatementRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetStatement(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetStatement", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetStatement(ctx, req.(*GetStatementRequest)) } return interceptor(ctx, in, info, handler) } 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_ReplaceStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ReplaceStatementRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ReplaceStatement(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ReplaceStatement", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ReplaceStatement(ctx, req.(*ReplaceStatementRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetPolicyRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetPolicy(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetPolicy", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetPolicy(ctx, req.(*GetPolicyRequest)) } return interceptor(ctx, in, info, handler) } 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_ReplacePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ReplacePolicyRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ReplacePolicy(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ReplacePolicy", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ReplacePolicy(ctx, req.(*ReplacePolicyRequest)) } return interceptor(ctx, in, info, handler) } func _GobgpApi_GetPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetPolicyAssignmentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).GetPolicyAssignment(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/GetPolicyAssignment", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).GetPolicyAssignment(ctx, req.(*GetPolicyAssignmentRequest)) } return interceptor(ctx, in, info, handler) } 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_ReplacePolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(ReplacePolicyAssignmentRequest) if err := dec(in); err != nil { return nil, err } if interceptor == nil { return srv.(GobgpApiServer).ReplacePolicyAssignment(ctx, in) } info := &grpc.UnaryServerInfo{ Server: srv, FullMethod: "/gobgpapi.GobgpApi/ReplacePolicyAssignment", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { return srv.(GobgpApiServer).ReplacePolicyAssignment(ctx, req.(*ReplacePolicyAssignmentRequest)) } return interceptor(ctx, in, info, handler) } var _GobgpApi_serviceDesc = grpc.ServiceDesc{ ServiceName: "gobgpapi.GobgpApi", HandlerType: (*GobgpApiServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "StartServer", Handler: _GobgpApi_StartServer_Handler, }, { MethodName: "StopServer", Handler: _GobgpApi_StopServer_Handler, }, { MethodName: "GetServer", Handler: _GobgpApi_GetServer_Handler, }, { MethodName: "AddNeighbor", Handler: _GobgpApi_AddNeighbor_Handler, }, { MethodName: "DeleteNeighbor", Handler: _GobgpApi_DeleteNeighbor_Handler, }, { MethodName: "GetNeighbor", Handler: _GobgpApi_GetNeighbor_Handler, }, { MethodName: "ResetNeighbor", Handler: _GobgpApi_ResetNeighbor_Handler, }, { MethodName: "SoftResetNeighbor", Handler: _GobgpApi_SoftResetNeighbor_Handler, }, { MethodName: "ShutdownNeighbor", Handler: _GobgpApi_ShutdownNeighbor_Handler, }, { MethodName: "EnableNeighbor", Handler: _GobgpApi_EnableNeighbor_Handler, }, { MethodName: "DisableNeighbor", Handler: _GobgpApi_DisableNeighbor_Handler, }, { MethodName: "GetRib", Handler: _GobgpApi_GetRib_Handler, }, { MethodName: "ValidateRib", Handler: _GobgpApi_ValidateRib_Handler, }, { MethodName: "AddPath", Handler: _GobgpApi_AddPath_Handler, }, { MethodName: "DeletePath", Handler: _GobgpApi_DeletePath_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, }, { MethodName: "GetRpki", Handler: _GobgpApi_GetRpki_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: "SoftResetRpki", Handler: _GobgpApi_SoftResetRpki_Handler, }, { MethodName: "GetRoa", Handler: _GobgpApi_GetRoa_Handler, }, { MethodName: "EnableZebra", Handler: _GobgpApi_EnableZebra_Handler, }, { MethodName: "AddVrf", Handler: _GobgpApi_AddVrf_Handler, }, { MethodName: "DeleteVrf", Handler: _GobgpApi_DeleteVrf_Handler, }, { MethodName: "GetVrf", Handler: _GobgpApi_GetVrf_Handler, }, { MethodName: "GetDefinedSet", Handler: _GobgpApi_GetDefinedSet_Handler, }, { MethodName: "AddDefinedSet", Handler: _GobgpApi_AddDefinedSet_Handler, }, { MethodName: "DeleteDefinedSet", Handler: _GobgpApi_DeleteDefinedSet_Handler, }, { MethodName: "ReplaceDefinedSet", Handler: _GobgpApi_ReplaceDefinedSet_Handler, }, { MethodName: "GetStatement", Handler: _GobgpApi_GetStatement_Handler, }, { MethodName: "AddStatement", Handler: _GobgpApi_AddStatement_Handler, }, { MethodName: "DeleteStatement", Handler: _GobgpApi_DeleteStatement_Handler, }, { MethodName: "ReplaceStatement", Handler: _GobgpApi_ReplaceStatement_Handler, }, { MethodName: "GetPolicy", Handler: _GobgpApi_GetPolicy_Handler, }, { MethodName: "AddPolicy", Handler: _GobgpApi_AddPolicy_Handler, }, { MethodName: "DeletePolicy", Handler: _GobgpApi_DeletePolicy_Handler, }, { MethodName: "ReplacePolicy", Handler: _GobgpApi_ReplacePolicy_Handler, }, { MethodName: "GetPolicyAssignment", Handler: _GobgpApi_GetPolicyAssignment_Handler, }, { MethodName: "AddPolicyAssignment", Handler: _GobgpApi_AddPolicyAssignment_Handler, }, { MethodName: "DeletePolicyAssignment", Handler: _GobgpApi_DeletePolicyAssignment_Handler, }, { MethodName: "ReplacePolicyAssignment", Handler: _GobgpApi_ReplacePolicyAssignment_Handler, }, }, Streams: []grpc.StreamDesc{ { StreamName: "MonitorRib", Handler: _GobgpApi_MonitorRib_Handler, ServerStreams: true, }, { StreamName: "MonitorPeerState", Handler: _GobgpApi_MonitorPeerState_Handler, ServerStreams: true, }, { StreamName: "InjectMrt", Handler: _GobgpApi_InjectMrt_Handler, ClientStreams: true, }, }, Metadata: fileDescriptor0, } func init() { proto.RegisterFile("gobgp.proto", fileDescriptor0) } var fileDescriptor0 = []byte{ // 5388 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x3c, 0x4d, 0x73, 0x1b, 0x57, 0x72, 0x04, 0x01, 0x92, 0x40, 0x03, 0x20, 0xc1, 0x11, 0x29, 0x41, 0x90, 0x25, 0x5b, 0xb3, 0xeb, 0xb5, 0xac, 0xb5, 0xe5, 0xb5, 0x6c, 0xcb, 0x9b, 0xf5, 0x7a, 0xb3, 0x30, 0x09, 0x49, 0x58, 0xf3, 0x03, 0x1e, 0x42, 0x8a, 0xbd, 0xf9, 0x98, 0x8c, 0x80, 0x01, 0x39, 0x31, 0x80, 0x99, 0x9d, 0x19, 0xc8, 0x52, 0xa5, 0x2a, 0xa9, 0x4a, 0x6e, 0xf9, 0x38, 0xe7, 0xb2, 0x55, 0xb9, 0x6f, 0x92, 0x73, 0xaa, 0x72, 0x4e, 0xaa, 0x92, 0x5f, 0x91, 0x53, 0xfe, 0x43, 0x8e, 0xe9, 0xee, 0xf7, 0x66, 0xe6, 0xcd, 0x07, 0x28, 0x4a, 0x51, 0x92, 0xca, 0x89, 0x78, 0xdd, 0xfd, 0xfa, 0x7d, 0xf5, 0xd7, 0xeb, 0x37, 0x4d, 0xa8, 0x9f, 0xba, 0x4f, 0x4e, 0xbd, 0x3b, 0x9e, 0xef, 0x86, 0xae, 0x56, 0xe5, 0x86, 0xe5, 0x39, 0xfa, 0x0e, 0x68, 0x0f, 0xec, 0xf0, 0xc8, 0x76, 0x4e, 0xcf, 0x9e, 0xb8, 0xbe, 0x61, 0xff, 0x6a, 0x61, 0x07, 0xa1, 0xfe, 0x19, 0x5c, 0x4a, 0x41, 0x03, 0xcf, 0x9d, 0x07, 0xb6, 0xf6, 0x7d, 0x58, 0xf3, 0x6c, 0xdb, 0x0f, 0xda, 0xa5, 0xb7, 0xca, 0xb7, 0xea, 0x77, 0x37, 0xef, 0x44, 0x6c, 0xee, 0x0c, 0x10, 0x6c, 0x08, 0xa4, 0x7e, 0x0a, 0xb5, 0xae, 0x7f, 0xba, 0x98, 0xd9, 0xf3, 0x30, 0xd0, 0xee, 0x40, 0xd5, 0xb7, 0x03, 0x77, 0xe1, 0x8f, 0x6c, 0xec, 0x55, 0xba, 0xb5, 0x79, 0x57, 0x4b, 0x7a, 0x19, 0x12, 0x63, 0xc4, 0x34, 0xda, 0x65, 0x58, 0x9f, 0x58, 0x33, 0x67, 0xfa, 0xbc, 0xbd, 0x8a, 0xd4, 0x4d, 0x43, 0xb6, 0x34, 0x0d, 0x2a, 0x73, 0x6b, 0x66, 0xb7, 0xcb, 0x08, 0xad, 0x19, 0xfc, 0x5b, 0xff, 0x63, 0xd8, 0xec, 0x8e, 0xc7, 0x03, 0x2b, 0x3c, 0x93, 0xf3, 0x7e, 0xe9, 0xd1, 0x76, 0x61, 0xfd, 0xa9, 0x3f, 0x31, 0x9d, 0x31, 0x8f, 0x56, 0x33, 0xd6, 0xb0, 0xd5, 0x1f, 0x6b, 0x3a, 0x54, 0x3c, 0xe4, 0xca, 0x83, 0xa5, 0x97, 0x49, 0x63, 0x31, 0x4e, 0x7f, 0x1b, 0xb6, 0xe2, 0xc1, 0xe5, 0xf6, 0xe0, 0x1c, 0x17, 0x0b, 0xe4, 0x45, 0x23, 0x37, 0x0c, 0xfe, 0xad, 0xff, 0xa6, 0x04, 0xdb, 0xfb, 0xf6, 0xd4, 0x0e, 0xed, 0xff, 0x81, 0x79, 0x26, 0x9b, 0x55, 0x4e, 0x6d, 0x56, 0x34, 0xff, 0xca, 0xf2, 0xf9, 0xc7, 0x93, 0x5d, 0x53, 0x26, 0x8b, 0xc2, 0xa0, 0xce, 0x55, 0x2c, 0x4b, 0xff, 0x31, 0x68, 0xb8, 0xd2, 0x8c, 0x88, 0xf0, 0x18, 0x78, 0xdc, 0x3c, 0xfd, 0xbc, 0x28, 0x30, 0x4e, 0xdf, 0x85, 0x4b, 0xa9, 0x9e, 0x92, 0xe1, 0x67, 0xb0, 0x2b, 0x86, 0x79, 0x15, 0x9e, 0x6d, 0xb8, 0x9c, 0xed, 0x2c, 0xd9, 0xfe, 0x08, 0x76, 0xf0, 0x77, 0x4e, 0x98, 0xb5, 0x36, 0x6c, 0x58, 0xe3, 0x31, 0xee, 0x65, 0xc0, 0x8c, 0x6b, 0x46, 0xd4, 0xd4, 0xaf, 0xc0, 0x6e, 0xa6, 0x87, 0x64, 0xf5, 0x4f, 0x25, 0x68, 0x9f, 0xb8, 0x93, 0xf0, 0xe5, 0xf8, 0x69, 0x27, 0x50, 0x1b, 0x3b, 0xbe, 0x3d, 0x0a, 0x1d, 0x77, 0xce, 0x27, 0xb5, 0x79, 0xf7, 0x93, 0x64, 0x11, 0xcb, 0x18, 0x26, 0x88, 0xfd, 0xa8, 0xb3, 0x91, 0xf0, 0xd1, 0x3f, 0x00, 0x2d, 0x4f, 0xa0, 0xad, 0xc3, 0x6a, 0xff, 0xa8, 0xb5, 0xa2, 0x6d, 0x40, 0xf9, 0xf8, 0xd1, 0xb0, 0x55, 0xd2, 0xaa, 0x50, 0xf9, 0xe2, 0x78, 0xf8, 0xb0, 0xb5, 0xaa, 0x5f, 0x83, 0xab, 0x05, 0x43, 0xc9, 0x95, 0x7d, 0x04, 0x57, 0x4e, 0xce, 0x16, 0xe1, 0xd8, 0xfd, 0x6e, 0x7e, 0xf1, 0x7d, 0xea, 0xe0, 0x6e, 0xe4, 0x3a, 0x49, 0x86, 0x1f, 0xc2, 0x6e, 0x6f, 0x6e, 0x3d, 0x99, 0xda, 0x17, 0x67, 0x87, 0x47, 0x98, 0xed, 0x22, 0x99, 0xdd, 0xc5, 0xc3, 0x75, 0x82, 0x97, 0xe3, 0x76, 0x15, 0xae, 0xe4, 0xfa, 0x48, 0x76, 0xa7, 0xd0, 0x12, 0x03, 0x1d, 0xfa, 0x61, 0xc4, 0xe8, 0x1a, 0x9e, 0xd1, 0x62, 0xe6, 0x99, 0xe1, 0x73, 0x4f, 0xe8, 0xde, 0x9a, 0x51, 0x25, 0xc0, 0x10, 0xdb, 0x5a, 0x07, 0xaa, 0x13, 0x67, 0x6a, 0xb3, 0xa5, 0x11, 0x9a, 0x16, 0xb7, 0x09, 0xe7, 0xcc, 0x43, 0xdb, 0x7f, 0x6a, 0x4d, 0x59, 0xdd, 0x2a, 0x46, 0xdc, 0xd6, 0x2f, 0xc1, 0xb6, 0x32, 0x90, 0x1c, 0x1d, 0x81, 0x72, 0x62, 0xc9, 0xf0, 0xac, 0x62, 0x0a, 0x50, 0x92, 0xfe, 0x29, 0xb4, 0xfa, 0xf3, 0x3f, 0xc2, 0xa3, 0x55, 0x26, 0xfa, 0x9a, 0x6c, 0x04, 0xd9, 0x6c, 0xd4, 0xe6, 0x00, 0xe7, 0x5c, 0x2e, 0x30, 0x06, 0x02, 0x49, 0x73, 0x55, 0x26, 0x20, 0x67, 0xf5, 0xf7, 0x25, 0x68, 0xa2, 0xfe, 0x7e, 0x31, 0xf3, 0x5e, 0x2c, 0xfa, 0x68, 0x4e, 0x3c, 0xd7, 0x0f, 0xa5, 0xd5, 0xe6, 0xdf, 0xda, 0x4f, 0xa1, 0xc2, 0xbb, 0x5c, 0xe6, 0xd9, 0xdf, 0x4a, 0x46, 0x4e, 0x31, 0xbd, 0x73, 0xe8, 0xce, 0x9d, 0xd0, 0xf5, 0x9d, 0xf9, 0xe9, 0xc0, 0x9d, 0x3a, 0xa3, 0xe7, 0x06, 0xf7, 0x42, 0xb9, 0x6f, 0x65, 0x31, 0x24, 0xed, 0x03, 0xa3, 0x87, 0x62, 0x8f, 0xd2, 0x3e, 0x38, 0x3e, 0x49, 0xcb, 0x7d, 0x8b, 0xdd, 0x01, 0x33, 0x96, 0x0b, 0xf8, 0x39, 0xb4, 0x84, 0xad, 0x78, 0xd5, 0x25, 0xf0, 0x19, 0x26, 0x1c, 0x24, 0xdb, 0x1e, 0x54, 0x8d, 0xc1, 0x97, 0xfd, 0x3d, 0x77, 0x3e, 0x39, 0x87, 0xdd, 0x9b, 0x50, 0xf7, 0xed, 0x99, 0x1b, 0xda, 0x66, 0xcc, 0xb5, 0x66, 0x80, 0x00, 0x0d, 0x88, 0xf7, 0xaf, 0x2b, 0x50, 0x23, 0x3e, 0x27, 0xa1, 0x15, 0xb2, 0xe3, 0x5b, 0x78, 0xa1, 0x33, 0x13, 0x87, 0x5d, 0x36, 0x64, 0x8b, 0xc4, 0x8e, 0xf4, 0x8e, 0x31, 0xab, 0x8c, 0x89, 0xdb, 0xda, 0x26, 0xac, 0x2e, 0x3c, 0xde, 0xde, 0xaa, 0x81, 0xbf, 0xc4, 0x90, 0x23, 0xd7, 0x1f, 0x9b, 0x8e, 0xf7, 0xf4, 0x63, 0x36, 0xff, 0x4d, 0x1a, 0x92, 0x40, 0x7d, 0x84, 0xa4, 0x09, 0xee, 0xb1, 0xed, 0x57, 0x09, 0xee, 0x11, 0x81, 0xe7, 0xdb, 0x13, 0xe7, 0x99, 0xe0, 0xb0, 0x2e, 0x08, 0x04, 0x28, 0xe2, 0x90, 0x10, 0xdc, 0x6b, 0x6f, 0x64, 0x08, 0xee, 0xd1, 0x3a, 0x02, 0xdb, 0x77, 0x50, 0x49, 0xaa, 0xc2, 0x27, 0x89, 0x96, 0xf6, 0x3d, 0x68, 0xe2, 0x38, 0xb6, 0xf3, 0xd4, 0x96, 0xb3, 0xab, 0xf1, 0x62, 0x1a, 0x11, 0x90, 0xb9, 0x67, 0x88, 0xee, 0xb5, 0x21, 0x47, 0x74, 0x8f, 0x88, 0x04, 0x4f, 0x73, 0xee, 0x86, 0xce, 0xe4, 0x79, 0xbb, 0x2e, 0x88, 0x04, 0xf0, 0x88, 0x61, 0x34, 0xcf, 0x91, 0x35, 0x3a, 0xb3, 0x4d, 0x9f, 0xcc, 0x60, 0xbb, 0xc1, 0x24, 0xc0, 0x20, 0x36, 0x8c, 0xda, 0xdb, 0xb0, 0x19, 0x13, 0xf0, 0xb1, 0xb6, 0x9b, 0x4c, 0xd3, 0x8c, 0x68, 0x84, 0x4f, 0xbf, 0x01, 0x75, 0x7b, 0x3e, 0x36, 0xdd, 0x89, 0x39, 0xb6, 0x42, 0xab, 0xbd, 0xc9, 0x34, 0x35, 0x04, 0x1d, 0x4f, 0xf6, 0x11, 0xa0, 0xed, 0xc0, 0x9a, 0xed, 0xfb, 0xae, 0xdf, 0xde, 0x62, 0x8c, 0x68, 0x68, 0x37, 0x41, 0xce, 0xc6, 0x44, 0xa1, 0xf3, 0x9f, 0xb7, 0x5b, 0x8c, 0xac, 0x0b, 0xd8, 0x57, 0x04, 0x12, 0x47, 0x81, 0x13, 0x91, 0x14, 0xdb, 0x62, 0x82, 0x0c, 0x62, 0x02, 0xfd, 0x1b, 0xa8, 0x18, 0xde, 0xb7, 0x8e, 0xf6, 0x03, 0xa8, 0x8c, 0x50, 0xd2, 0xa4, 0x53, 0x54, 0x6d, 0x80, 0x94, 0x41, 0x83, 0xf1, 0xda, 0xbb, 0xb0, 0x16, 0x90, 0x24, 0xb1, 0x94, 0xd4, 0xef, 0x5e, 0x4a, 0x13, 0xb2, 0x90, 0x19, 0x82, 0x42, 0xbf, 0x05, 0x9b, 0x18, 0xde, 0x11, 0xf7, 0x48, 0x2b, 0x92, 0x48, 0xa2, 0xa4, 0x46, 0x12, 0xe8, 0xaa, 0xb7, 0x62, 0x4a, 0xb9, 0x23, 0xb7, 0x60, 0x03, 0xd7, 0xf1, 0xb4, 0x30, 0x0c, 0x64, 0xc2, 0x08, 0xad, 0xff, 0x92, 0x15, 0x52, 0x1d, 0xe6, 0xe5, 0xec, 0x07, 0x8a, 0xfe, 0xd4, 0x99, 0xd8, 0x2c, 0xfa, 0x65, 0x21, 0xfa, 0x51, 0x5b, 0xdf, 0xe6, 0xf0, 0x4b, 0x9d, 0x98, 0xde, 0x8d, 0x74, 0xf5, 0x95, 0x47, 0x4c, 0x02, 0xa0, 0x14, 0xe3, 0xf7, 0x23, 0xeb, 0x7e, 0x21, 0xc6, 0xc4, 0x44, 0x25, 0x97, 0x4c, 0xee, 0xc4, 0x86, 0xff, 0x62, 0x5c, 0x30, 0x76, 0x4a, 0xd1, 0x4b, 0x36, 0xef, 0x41, 0x8b, 0xe5, 0xf7, 0x62, 0x4c, 0xd0, 0x7c, 0x29, 0xd4, 0x49, 0x9c, 0x14, 0xc7, 0x07, 0x17, 0x63, 0x83, 0x71, 0x52, 0xa6, 0x87, 0x64, 0x65, 0x45, 0x4b, 0xfd, 0xa5, 0xfd, 0xc4, 0xb7, 0x22, 0x46, 0x2d, 0x28, 0x2f, 0xfc, 0xa9, 0x64, 0x42, 0x3f, 0x59, 0xd8, 0xdd, 0x05, 0x9a, 0x42, 0xb2, 0xec, 0x01, 0x6e, 0x79, 0x99, 0x6d, 0x21, 0x81, 0xc8, 0xef, 0x06, 0x34, 0x36, 0x89, 0x0c, 0xc5, 0x4d, 0x22, 0x94, 0x8d, 0x9a, 0xb4, 0x0f, 0xa9, 0x21, 0xe4, 0xc8, 0x5b, 0xd0, 0x44, 0xc1, 0x7c, 0xec, 0x4f, 0x22, 0xc7, 0xfa, 0x11, 0xcb, 0x34, 0x03, 0xa4, 0xa0, 0xde, 0x84, 0x0a, 0xba, 0xc0, 0x48, 0x4a, 0x9b, 0x89, 0x94, 0x12, 0x11, 0xa3, 0x70, 0x2b, 0xc8, 0xc1, 0x25, 0x5c, 0x70, 0xa2, 0x65, 0x44, 0x48, 0x5d, 0xcb, 0x74, 0x21, 0x8c, 0x74, 0x32, 0xca, 0x30, 0x38, 0xb0, 0x74, 0x32, 0x2f, 0xc3, 0x26, 0xf6, 0x2b, 0x2a, 0xa7, 0x2e, 0xec, 0xe0, 0x12, 0xf6, 0xd1, 0x94, 0xce, 0xed, 0xf1, 0x89, 0x1d, 0x47, 0x02, 0xef, 0x4a, 0x3f, 0x2a, 0xa2, 0x80, 0xdd, 0x84, 0x9d, 0x24, 0xa5, 0x2d, 0x94, 0x4e, 0xb3, 0x0b, 0xbb, 0x19, 0x16, 0xb1, 0xd6, 0x56, 0xf0, 0xf0, 0xa2, 0xcd, 0xd8, 0xc9, 0xf1, 0x20, 0x5a, 0xa6, 0xd0, 0x7f, 0x06, 0x3b, 0xb8, 0xc2, 0xfc, 0x2c, 0x7e, 0x00, 0x65, 0xb2, 0xa4, 0x62, 0x4d, 0xc5, 0x0c, 0x88, 0x80, 0x84, 0x25, 0xd3, 0x5f, 0x2e, 0xef, 0x04, 0x03, 0x35, 0x5e, 0xf3, 0x2b, 0xf3, 0x26, 0xc9, 0xb2, 0xa6, 0x53, 0x56, 0xd9, 0xaa, 0x41, 0x3f, 0x29, 0x34, 0xcd, 0x33, 0x95, 0x03, 0x7e, 0x01, 0x6d, 0xc3, 0xf6, 0xa6, 0xd6, 0xe8, 0xd5, 0x47, 0xa4, 0x60, 0xba, 0x80, 0x87, 0x1c, 0x60, 0x97, 0xaf, 0xc9, 0x6c, 0x5a, 0xe9, 0xb6, 0x1b, 0x89, 0xe2, 0x97, 0x7c, 0x8e, 0x0a, 0x58, 0x9e, 0xc1, 0x47, 0x00, 0x41, 0x04, 0x8c, 0x4e, 0x42, 0x31, 0xd3, 0x49, 0x07, 0x85, 0x4c, 0x7f, 0xc8, 0x77, 0xa8, 0xec, 0x18, 0xda, 0x87, 0x50, 0x8b, 0x89, 0xe4, 0x2a, 0x0a, 0x59, 0x25, 0x54, 0xfa, 0x65, 0x3e, 0xd8, 0xdc, 0xb4, 0xf4, 0xdf, 0x8f, 0x6e, 0x54, 0xaf, 0x61, 0x90, 0x82, 0x13, 0xba, 0x1a, 0x1d, 0x7b, 0x7e, 0xe4, 0x03, 0xb8, 0x22, 0x37, 0xf7, 0x75, 0xac, 0xaf, 0x13, 0x1f, 0x77, 0x7e, 0x24, 0x0d, 0x5a, 0x78, 0x24, 0x32, 0xbe, 0x94, 0xc7, 0x84, 0xfe, 0x42, 0x81, 0xc9, 0x33, 0x7a, 0x0f, 0xaa, 0x1e, 0x41, 0x1c, 0x3b, 0x3a, 0xa1, 0x96, 0x12, 0x31, 0x0b, 0xda, 0x98, 0x42, 0x7f, 0x06, 0x2d, 0x4a, 0x02, 0xa8, 0x6c, 0x51, 0xd3, 0xd6, 0x19, 0xff, 0x5c, 0x4e, 0x3b, 0xdf, 0x5f, 0xe2, 0xb5, 0x9f, 0xc0, 0x55, 0x8c, 0x9b, 0x6c, 0xdf, 0xb4, 0x9f, 0x39, 0x41, 0x88, 0x51, 0xae, 0xa9, 0x88, 0x87, 0xd8, 0xc1, 0x2b, 0x4c, 0xd0, 0x93, 0xf8, 0x93, 0x44, 0x2c, 0xd0, 0x80, 0x28, 0x23, 0xcb, 0x55, 0xfe, 0x59, 0x09, 0x9d, 0x86, 0xb8, 0xc0, 0xbf, 0xe2, 0x94, 0x3e, 0x80, 0x4b, 0x1e, 0xc5, 0x20, 0xe8, 0xc0, 0xf3, 0x93, 0xd1, 0x22, 0x54, 0x32, 0x8f, 0xe8, 0xbc, 0xcb, 0xc9, 0x79, 0xa3, 0x98, 0xa5, 0xe7, 0x20, 0x27, 0xf7, 0x0f, 0x25, 0xba, 0x9f, 0xf3, 0xf9, 0xfc, 0x1f, 0x6c, 0xd8, 0xb2, 0x95, 0x95, 0x97, 0xad, 0x4c, 0x24, 0x07, 0x52, 0xd3, 0x95, 0x0b, 0xf9, 0x1a, 0x3a, 0xb1, 0xdc, 0x74, 0x83, 0xc0, 0x39, 0x9d, 0xab, 0x82, 0xfb, 0x13, 0x00, 0x2b, 0x06, 0xca, 0x15, 0x75, 0xb2, 0x2b, 0x52, 0xba, 0x29, 0xd4, 0x18, 0xf2, 0x5d, 0x2b, 0xe4, 0x2c, 0x65, 0xf3, 0xbf, 0xc3, 0x1a, 0x27, 0x1d, 0xcb, 0xcb, 0xeb, 0x9d, 0xf4, 0x75, 0xb8, 0x56, 0xc8, 0x59, 0xee, 0xd6, 0x0c, 0xae, 0xab, 0xe2, 0xf0, 0x5a, 0xc7, 0x2e, 0xb0, 0x36, 0x6f, 0xc1, 0x8d, 0x65, 0xc3, 0xc9, 0x09, 0xfd, 0x1e, 0xdc, 0x48, 0x9d, 0xeb, 0xeb, 0xdd, 0x8d, 0x9b, 0xf0, 0xe6, 0x52, 0xee, 0x29, 0x5b, 0x74, 0xc2, 0x41, 0x72, 0x64, 0x8b, 0x3e, 0x67, 0x5b, 0x14, 0xc1, 0x62, 0x9f, 0xbd, 0x7e, 0x3a, 0x75, 0x9f, 0x58, 0xd3, 0xbc, 0x62, 0x3c, 0x60, 0xb8, 0x21, 0xf1, 0xe8, 0xb3, 0x35, 0x94, 0x5c, 0x3f, 0xcd, 0xf4, 0x25, 0xfa, 0xa3, 0x23, 0x4b, 0xf5, 0x4f, 0x32, 0x18, 0x27, 0xa1, 0xeb, 0xa5, 0xa7, 0xba, 0x43, 0x63, 0x25, 0x40, 0x49, 0xfa, 0xeb, 0x32, 0xde, 0xc8, 0x65, 0x5e, 0x71, 0x3e, 0xf5, 0x9d, 0x28, 0x09, 0x4a, 0xbf, 0xe9, 0x76, 0xe1, 0x59, 0x61, 0xe8, 0x8b, 0xc8, 0xaf, 0x61, 0xc8, 0x16, 0x1f, 0xdf, 0x69, 0x14, 0xdb, 0xd3, 0x4f, 0xea, 0xfd, 0x04, 0x07, 0xe1, 0xab, 0x6b, 0xd5, 0xe0, 0xdf, 0x14, 0x3c, 0x3a, 0x81, 0xf9, 0x9d, 0x13, 0x9e, 0x8d, 0x7d, 0xeb, 0x3b, 0xbe, 0xb4, 0x56, 0x0d, 0x70, 0x82, 0xdf, 0x91, 0x10, 0xbc, 0xa3, 0xc1, 0x53, 0x6b, 0xea, 0xe0, 0x05, 0x8d, 0xe2, 0xc7, 0x75, 0xce, 0xe9, 0x28, 0x10, 0x0d, 0x03, 0xde, 0xb9, 0x6b, 0x3a, 0x33, 0x8f, 0xac, 0x76, 0x98, 0x70, 0xda, 0x10, 0xba, 0x3f, 0x77, 0xfb, 0x12, 0x15, 0x73, 0x4c, 0xae, 0x43, 0xd5, 0x54, 0x62, 0xf5, 0x3a, 0x7a, 0x70, 0xce, 0xb6, 0x98, 0x56, 0x30, 0xe7, 0x1b, 0x6c, 0x13, 0x3d, 0x10, 0x43, 0xba, 0xc1, 0x9c, 0x72, 0x4b, 0x12, 0xed, 0x8c, 0xf9, 0xea, 0x5a, 0x33, 0xaa, 0x02, 0xd0, 0x1f, 0xcb, 0xdc, 0x52, 0x68, 0xfb, 0xf6, 0x98, 0x6f, 0xac, 0x55, 0x23, 0x6e, 0xd3, 0x2d, 0x12, 0x6d, 0xd2, 0xd4, 0xe6, 0x7b, 0x6a, 0xd5, 0x10, 0x0d, 0x3c, 0xbf, 0x16, 0x2e, 0x7c, 0xe2, 0xbb, 0x33, 0x34, 0x78, 0x48, 0x38, 0xc7, 0x93, 0x6c, 0x32, 0xc1, 0xa6, 0x13, 0xdc, 0x47, 0x70, 0x4f, 0x42, 0x69, 0x8b, 0xe6, 0x32, 0xf9, 0x85, 0xf7, 0x66, 0xbe, 0xa5, 0x62, 0x7c, 0x1d, 0x81, 0xfa, 0x9e, 0xfe, 0xb7, 0x25, 0xa8, 0xef, 0xdb, 0x64, 0x13, 0xc5, 0x96, 0xd0, 0x89, 0xf0, 0x9d, 0x5d, 0x46, 0xe9, 0xb2, 0x95, 0x64, 0x8b, 0x56, 0xcf, 0xc9, 0x16, 0x69, 0xef, 0xc0, 0xd6, 0xd4, 0x9d, 0x9f, 0xa2, 0x21, 0x16, 0xdd, 0xec, 0xc8, 0x8e, 0x6e, 0x0a, 0xf0, 0x40, 0x42, 0x31, 0x72, 0x6d, 0x05, 0x67, 0x78, 0xb1, 0x52, 0x29, 0xc5, 0xd1, 0x6e, 0x49, 0x78, 0x44, 0xaa, 0xff, 0x63, 0x09, 0xd6, 0x86, 0x14, 0xe7, 0xd3, 0x85, 0x57, 0x09, 0x77, 0x8b, 0x92, 0x5e, 0x8c, 0x8f, 0x9f, 0x04, 0x56, 0x93, 0x27, 0x81, 0xa5, 0x19, 0xf1, 0xdf, 0x82, 0xc6, 0x38, 0x59, 0x3e, 0x4d, 0x82, 0x96, 0x97, 0x0a, 0xa5, 0x63, 0xac, 0x91, 0x22, 0xe5, 0x8c, 0x87, 0x1b, 0x84, 0xa6, 0xf4, 0x51, 0x52, 0xfc, 0x08, 0x24, 0x34, 0x5c, 0xbf, 0xc7, 0x57, 0x11, 0xc3, 0x79, 0x12, 0xe9, 0xdd, 0xdb, 0xb0, 0x16, 0xd2, 0x4a, 0xa4, 0xda, 0x6d, 0x25, 0xa3, 0xf0, 0x02, 0x0d, 0x81, 0xd5, 0x3f, 0x15, 0xb7, 0x70, 0xea, 0x27, 0x15, 0xfe, 0x82, 0x1d, 0xa7, 0xa0, 0x3d, 0x16, 0xd2, 0x6d, 0x2b, 0xa3, 0x5e, 0x74, 0xdb, 0x96, 0xbd, 0xb0, 0x24, 0x22, 0x51, 0x56, 0x45, 0x82, 0x6c, 0x43, 0x6a, 0x34, 0xa9, 0xf0, 0xff, 0x4c, 0x0a, 0x6f, 0xdb, 0x3e, 0xcb, 0x35, 0x71, 0x88, 0x22, 0xa6, 0xa6, 0x11, 0xb7, 0xb5, 0x1f, 0x43, 0xc3, 0xf2, 0xbc, 0xe9, 0xf3, 0x68, 0xf3, 0x44, 0x6a, 0x42, 0xd9, 0xf6, 0x2e, 0x61, 0xa5, 0x7f, 0xad, 0x5b, 0x49, 0x23, 0xce, 0x7a, 0x94, 0xb3, 0x59, 0x0f, 0x1a, 0x53, 0xc9, 0x7a, 0x7c, 0x06, 0x4d, 0x1b, 0x31, 0xe6, 0x6c, 0x31, 0x0d, 0x9d, 0x33, 0xd7, 0x93, 0x6f, 0x1e, 0x97, 0x93, 0x0e, 0x3d, 0xfc, 0x7b, 0x28, 0xb1, 0x46, 0xc3, 0x56, 0x5a, 0x5a, 0x17, 0xb6, 0xc4, 0xb5, 0x14, 0x57, 0x3a, 0xb5, 0x47, 0xa1, 0xeb, 0xf3, 0xf1, 0xd6, 0xef, 0xb6, 0x95, 0xdd, 0x23, 0x02, 0x23, 0xc2, 0x1b, 0x9b, 0x7e, 0xaa, 0x8d, 0xaa, 0x50, 0x71, 0xe6, 0x13, 0x97, 0xad, 0x4e, 0x2a, 0x44, 0xa5, 0x79, 0x8a, 0xa4, 0x0b, 0x13, 0x90, 0x31, 0xa6, 0xc4, 0x05, 0xda, 0xc0, 0x8d, 0xac, 0x31, 0x1e, 0x32, 0xdc, 0x90, 0x78, 0x0a, 0x7d, 0x43, 0xdf, 0x9a, 0x07, 0x9c, 0x9d, 0xa8, 0x66, 0xf9, 0x0e, 0x23, 0x94, 0x91, 0x50, 0xd1, 0x3e, 0x8b, 0x85, 0x88, 0xd4, 0x0b, 0x5b, 0xa6, 0xd4, 0x3e, 0xf3, 0x2a, 0xa4, 0xc9, 0x16, 0x57, 0x71, 0xd1, 0xd0, 0xff, 0x15, 0x0d, 0x83, 0x72, 0x08, 0xda, 0xa7, 0x50, 0x73, 0xe6, 0x66, 0x2a, 0x1e, 0x3b, 0xcf, 0xf5, 0x55, 0x9d, 0xb9, 0xec, 0xf8, 0xdb, 0x78, 0x10, 0xcf, 0x68, 0x32, 0xe9, 0xb3, 0x3e, 0xaf, 0x73, 0x43, 0x74, 0x48, 0x18, 0xa0, 0x89, 0x56, 0x18, 0x94, 0x5f, 0xcc, 0x40, 0x74, 0x90, 0x7a, 0xf8, 0x27, 0x50, 0x17, 0xd6, 0xe4, 0xc0, 0x99, 0x39, 0x4b, 0x53, 0x5a, 0x94, 0x9b, 0x9b, 0x59, 0xcf, 0x12, 0x7b, 0x24, 0xb4, 0xa0, 0x8e, 0xb0, 0xd8, 0x6c, 0x7d, 0x0c, 0x97, 0x03, 0xf9, 0xde, 0x61, 0x86, 0x67, 0x18, 0x1a, 0x9e, 0xb9, 0xd3, 0xb1, 0xe9, 0x8d, 0x42, 0x69, 0x55, 0x76, 0x22, 0xec, 0x30, 0x42, 0x0e, 0x46, 0xa1, 0xfe, 0x6f, 0x15, 0xa8, 0x46, 0xd2, 0x49, 0x49, 0x4a, 0x6b, 0x11, 0x9e, 0x99, 0x1e, 0xc6, 0x06, 0xdf, 0xb9, 0xfe, 0x58, 0xda, 0xd9, 0x06, 0x01, 0x07, 0x12, 0xa6, 0xbd, 0x05, 0x75, 0x34, 0x35, 0x23, 0xdf, 0xf1, 0xe2, 0x17, 0xa3, 0x9a, 0xa1, 0x82, 0xb4, 0xab, 0x50, 0x9d, 0xba, 0x23, 0x6b, 0x8a, 0xfe, 0x26, 0x4a, 0x8c, 0x70, 0xbb, 0xcb, 0xb6, 0x35, 0xb6, 0xf9, 0x51, 0xde, 0xa6, 0xc2, 0x1c, 0xb6, 0x22, 0x78, 0x57, 0xa6, 0xba, 0xae, 0xc0, 0x06, 0xbd, 0x9d, 0x11, 0x13, 0x91, 0xf2, 0x5d, 0xa7, 0x26, 0xf2, 0x40, 0x7f, 0xc6, 0x88, 0x53, 0x14, 0x09, 0x8f, 0x65, 0xb8, 0x66, 0xd4, 0x08, 0xf2, 0x80, 0x00, 0xe4, 0xcf, 0x18, 0xcd, 0x76, 0x45, 0xa4, 0x7a, 0xab, 0x04, 0xe0, 0xb7, 0x92, 0xdb, 0xb0, 0x4d, 0xc9, 0x6c, 0x0c, 0xa7, 0x3d, 0xdf, 0x79, 0x8a, 0x82, 0x4e, 0xec, 0x85, 0xbb, 0xdc, 0x12, 0x88, 0x81, 0x80, 0xe3, 0x38, 0xef, 0x81, 0x26, 0xe4, 0x73, 0x32, 0xb5, 0x3c, 0x73, 0x6c, 0xcd, 0x3c, 0x0c, 0xce, 0x59, 0x4a, 0xab, 0x46, 0x8b, 0x31, 0xf7, 0x11, 0xb1, 0x2f, 0xe0, 0x94, 0x9a, 0x0d, 0x28, 0xe9, 0x3a, 0x72, 0x67, 0xb3, 0xc5, 0xdc, 0x09, 0x9f, 0xb3, 0x2f, 0x6d, 0x1a, 0x4d, 0x82, 0xee, 0x45, 0x40, 0x9a, 0xbc, 0x4c, 0xb0, 0x8f, 0x2c, 0x0f, 0x5d, 0x2a, 0x45, 0x16, 0x35, 0x01, 0xd9, 0xb3, 0x78, 0xf2, 0x62, 0xeb, 0x08, 0xdb, 0x60, 0xac, 0xd8, 0x4b, 0x42, 0x6e, 0xc2, 0x2a, 0xba, 0xe8, 0x26, 0x2f, 0x18, 0x7f, 0x61, 0xc8, 0xd7, 0x94, 0x69, 0xed, 0x29, 0x09, 0x4f, 0x80, 0x2e, 0x34, 0xe3, 0x20, 0x14, 0xd1, 0x32, 0x1a, 0x5e, 0xd2, 0x08, 0xe8, 0xa8, 0xe5, 0x19, 0xc9, 0x53, 0xd8, 0x12, 0x47, 0x2d, 0x0e, 0x4a, 0x1e, 0xc1, 0xfb, 0xa0, 0x25, 0x1e, 0x9a, 0x9e, 0x8d, 0x26, 0x18, 0x22, 0x72, 0x5e, 0xb8, 0x66, 0x6c, 0xc7, 0x8e, 0x3a, 0x42, 0xe8, 0x5f, 0x42, 0x43, 0xb5, 0x5b, 0x94, 0x1f, 0xb3, 0x39, 0x0b, 0x26, 0x04, 0xa9, 0x6a, 0x44, 0x4d, 0x16, 0x67, 0x49, 0x65, 0x86, 0xe1, 0x34, 0x16, 0x67, 0x09, 0x1b, 0x86, 0x53, 0xfd, 0xcf, 0x4b, 0xb0, 0x99, 0x36, 0x63, 0x24, 0xe1, 0x19, 0xcb, 0x67, 0x8e, 0xd0, 0x62, 0xcb, 0x70, 0xb7, 0x6a, 0xec, 0xa4, 0xcd, 0xdc, 0x1e, 0xe3, 0xd0, 0xd8, 0x76, 0xf2, 0xbd, 0x16, 0x01, 0xb9, 0xf7, 0xf8, 0xd9, 0xe9, 0x4a, 0xb6, 0x27, 0xe3, 0xfb, 0x63, 0xfd, 0x3f, 0xd6, 0xa0, 0x16, 0x1b, 0xc5, 0xff, 0x05, 0xfd, 0xb8, 0x03, 0xd5, 0x19, 0xee, 0x3c, 0x46, 0x95, 0x81, 0x74, 0x0a, 0x8a, 0x17, 0x39, 0x94, 0x18, 0x23, 0xa6, 0x29, 0xd4, 0xa7, 0xb5, 0x17, 0xea, 0xd3, 0xfa, 0x39, 0xfa, 0xb4, 0x71, 0xae, 0x3e, 0x55, 0x33, 0xfa, 0x84, 0x0e, 0x02, 0x1d, 0x39, 0xba, 0x72, 0x69, 0xbd, 0x15, 0x07, 0xf1, 0x15, 0xc3, 0x0d, 0x89, 0x2f, 0xd6, 0x3c, 0x78, 0x19, 0xcd, 0xab, 0x5f, 0x58, 0xf3, 0x1a, 0x45, 0x9a, 0xc7, 0x2f, 0x30, 0x01, 0xa5, 0x67, 0xc5, 0x55, 0x9a, 0x15, 0xa9, 0x49, 0x2f, 0x30, 0x0c, 0x14, 0x27, 0xfc, 0x09, 0x1a, 0xd1, 0x85, 0x47, 0xf6, 0xd9, 0x1e, 0x93, 0x0e, 0x5a, 0x4f, 0x30, 0x26, 0x08, 0x29, 0x4a, 0xd8, 0xe4, 0xf4, 0xef, 0x6e, 0x8c, 0xdd, 0x53, 0x90, 0xb4, 0x47, 0xe4, 0xcf, 0x05, 0x5f, 0xa1, 0x49, 0x55, 0x04, 0x08, 0x9e, 0x18, 0x8b, 0x59, 0xe3, 0x99, 0x13, 0x0d, 0x2b, 0xd4, 0x07, 0x18, 0x24, 0x08, 0x3a, 0xf4, 0x68, 0x2a, 0xde, 0x8a, 0xf8, 0x49, 0xa5, 0x69, 0xc4, 0x6d, 0xc2, 0x59, 0xa3, 0x91, 0xed, 0xe1, 0x88, 0x6d, 0x4d, 0xe0, 0xa2, 0x36, 0x5d, 0x21, 0xac, 0x31, 0xfa, 0xc3, 0xd0, 0x09, 0x10, 0x7b, 0x49, 0xbc, 0x6a, 0x25, 0x10, 0xed, 0x12, 0xac, 0xe1, 0x5e, 0x99, 0xbf, 0x6a, 0xef, 0x88, 0xd7, 0x02, 0x6c, 0x7c, 0x45, 0x51, 0xfb, 0x64, 0xea, 0x7a, 0x41, 0x7b, 0x97, 0x81, 0xa2, 0xa1, 0xff, 0x21, 0x54, 0x23, 0xe9, 0x42, 0xad, 0x4f, 0xa6, 0x23, 0x9c, 0xe9, 0x76, 0x4e, 0x06, 0x95, 0x19, 0xbe, 0x4d, 0x49, 0xda, 0x79, 0x28, 0x5d, 0x67, 0x01, 0x29, 0xa3, 0xf5, 0x7f, 0x29, 0xc1, 0x86, 0x84, 0x68, 0x3a, 0x34, 0x8e, 0x8e, 0x87, 0xfd, 0xfb, 0xfd, 0xbd, 0xee, 0xb0, 0x7f, 0x7c, 0xc4, 0xa3, 0x54, 0x8c, 0xc6, 0x5c, 0x81, 0x91, 0x27, 0x7c, 0x34, 0xd8, 0xef, 0x0e, 0x7b, 0xcc, 0xb8, 0x62, 0xac, 0x2f, 0xb8, 0x45, 0x01, 0xf4, 0xf1, 0xa0, 0x77, 0x24, 0x5f, 0xb3, 0x2b, 0x2e, 0xfe, 0xd6, 0xde, 0x80, 0xda, 0x97, 0xbd, 0xde, 0xa0, 0x7b, 0xd0, 0x7f, 0xdc, 0x63, 0xb5, 0xa9, 0x18, 0xb5, 0x6f, 0x23, 0x00, 0x99, 0x21, 0xa3, 0x77, 0xdf, 0xe8, 0x9d, 0x3c, 0x64, 0xd5, 0xa8, 0x18, 0x1b, 0xbe, 0x68, 0x52, 0xbf, 0xfd, 0xfe, 0xc9, 0x5e, 0xd7, 0xd8, 0xef, 0xed, 0xb3, 0x52, 0x60, 0xbf, 0x71, 0x04, 0xa0, 0x9d, 0x1a, 0x1e, 0x0f, 0xbb, 0x07, 0xac, 0x12, 0x15, 0x8c, 0x63, 0xa9, 0x81, 0x81, 0xf3, 0xba, 0x90, 0x6c, 0xc2, 0x3b, 0x73, 0x6f, 0x11, 0x4a, 0x57, 0x2d, 0x1a, 0x34, 0x6f, 0xdc, 0x67, 0x02, 0xcb, 0x48, 0x55, 0xb4, 0x74, 0x1b, 0xd6, 0x45, 0xc8, 0x84, 0x3a, 0xbe, 0x4e, 0x51, 0xa0, 0x73, 0x2a, 0x77, 0xf7, 0x72, 0x36, 0xa8, 0xda, 0x63, 0xac, 0x21, 0xa9, 0xb4, 0x1f, 0xa6, 0xdf, 0xc8, 0x76, 0xb3, 0xe4, 0xa9, 0x57, 0x32, 0xdc, 0xe6, 0x86, 0xca, 0x85, 0xc4, 0x1e, 0xf9, 0xcc, 0xd1, 0xae, 0xa1, 0x01, 0x0c, 0xfd, 0xe7, 0xd1, 0x66, 0x4b, 0xa0, 0x41, 0x30, 0x92, 0x5f, 0x8e, 0x16, 0xe2, 0x07, 0xdb, 0x8a, 0x51, 0x25, 0x00, 0x71, 0x22, 0x2f, 0xf0, 0xad, 0x6d, 0x7b, 0x18, 0x4e, 0xa3, 0xf2, 0x66, 0xbe, 0x26, 0xd8, 0x8e, 0x31, 0x7d, 0x89, 0xd0, 0xf6, 0xe1, 0x06, 0x4a, 0xb6, 0x33, 0x5b, 0xcc, 0xcc, 0x58, 0x16, 0x29, 0xf0, 0x49, 0xba, 0x8a, 0x13, 0x7a, 0x43, 0x52, 0x75, 0x55, 0xa2, 0x88, 0x8b, 0xfe, 0x9b, 0x55, 0xa8, 0x2b, 0xcb, 0xfb, 0x7f, 0xba, 0x0c, 0xbe, 0xc5, 0xdb, 0xa7, 0x6e, 0xe8, 0x58, 0x64, 0x50, 0x92, 0xc9, 0x09, 0x41, 0xd4, 0x12, 0xdc, 0xc3, 0x68, 0x9a, 0xc9, 0x93, 0xfa, 0xba, 0x94, 0xfb, 0xfc, 0x93, 0xba, 0x10, 0xc8, 0xb8, 0xad, 0xff, 0x67, 0x09, 0x6a, 0x71, 0x88, 0x9d, 0x77, 0xed, 0xa5, 0x02, 0xd7, 0x8e, 0x46, 0x5f, 0x10, 0x29, 0xcf, 0x89, 0x22, 0xf4, 0x18, 0x48, 0x1e, 0xb3, 0x70, 0x61, 0x8e, 0x9d, 0x60, 0x84, 0x96, 0xd9, 0x7f, 0x2e, 0xaf, 0xca, 0x0d, 0x04, 0xee, 0x47, 0x30, 0xf2, 0xe2, 0xe4, 0x09, 0x69, 0x3f, 0x67, 0xee, 0xd8, 0x96, 0x97, 0xe4, 0xba, 0x84, 0x1d, 0x22, 0x88, 0x6c, 0xb3, 0x0c, 0x77, 0xd2, 0xde, 0xa9, 0x29, 0xa0, 0xdd, 0xe2, 0xcf, 0x0e, 0xd6, 0xa3, 0x27, 0xfe, 0xe8, 0xb3, 0x03, 0x72, 0x5e, 0xe1, 0x08, 0x2f, 0x4c, 0x41, 0x20, 0x43, 0xba, 0x75, 0x6c, 0x1e, 0x06, 0x81, 0xfe, 0x39, 0xd4, 0x95, 0x6b, 0x02, 0xea, 0xd6, 0x25, 0xf5, 0x4e, 0x91, 0x8e, 0x0f, 0xb6, 0x95, 0x3b, 0x84, 0x08, 0x0e, 0xf4, 0x05, 0xac, 0x8b, 0x18, 0x89, 0x64, 0xc7, 0xf1, 0xcc, 0x54, 0x7e, 0xa1, 0xea, 0x78, 0x12, 0xf9, 0x03, 0xd8, 0x9a, 0x59, 0xc1, 0xb7, 0xe6, 0xd4, 0x9e, 0x9f, 0xa2, 0xff, 0xc7, 0x23, 0x97, 0x5b, 0xd6, 0x24, 0xf0, 0x01, 0x43, 0x0f, 0x9d, 0x79, 0x8e, 0xce, 0x7a, 0x26, 0x1d, 0xbc, 0x4a, 0x67, 0x3d, 0xd3, 0xff, 0xba, 0x04, 0x90, 0x3c, 0xcd, 0xbc, 0xc4, 0x5b, 0x59, 0x61, 0xfe, 0x00, 0x61, 0x53, 0x27, 0x08, 0xf9, 0x63, 0x19, 0x84, 0xd1, 0x6f, 0x7e, 0x12, 0x48, 0x92, 0x17, 0xd9, 0x27, 0x01, 0xc6, 0x18, 0x31, 0x85, 0xfe, 0x00, 0xcd, 0xbf, 0x15, 0x8e, 0xce, 0x68, 0x32, 0xef, 0xa4, 0x26, 0xa3, 0x5c, 0xe2, 0x98, 0xe2, 0xfc, 0xa9, 0xe8, 0x8f, 0xa1, 0xd1, 0x0d, 0x28, 0xeb, 0x22, 0xd6, 0x8a, 0xe7, 0xa1, 0x32, 0x53, 0xae, 0x45, 0x2a, 0x95, 0xc2, 0x13, 0xa5, 0x5f, 0xec, 0x5d, 0x64, 0x3d, 0x45, 0x4b, 0xff, 0xbb, 0x0a, 0x00, 0x1a, 0xb4, 0xb1, 0x23, 0xd2, 0x1b, 0x1f, 0x82, 0xfc, 0x7a, 0xc3, 0x4c, 0xde, 0xc3, 0xb4, 0xcc, 0x4c, 0xe9, 0xcd, 0xab, 0x26, 0xa8, 0x68, 0x59, 0x9f, 0x40, 0x23, 0x8e, 0x94, 0xa8, 0xd3, 0xea, 0xd2, 0x4e, 0x71, 0x56, 0x8a, 0xba, 0xfd, 0x14, 0x36, 0xad, 0xc0, 0xa4, 0x0c, 0x92, 0x3c, 0x54, 0x79, 0xc3, 0xbb, 0x5c, 0xbc, 0x14, 0x8c, 0x05, 0xd5, 0xe5, 0xdf, 0x45, 0xd7, 0x2f, 0x7b, 0xd3, 0x98, 0x95, 0xe5, 0x13, 0x15, 0xdd, 0x68, 0xc4, 0x4f, 0xc9, 0xd2, 0xc9, 0xa0, 0x85, 0x7b, 0xad, 0x2d, 0xed, 0xd5, 0x88, 0x09, 0xa9, 0xe3, 0xcf, 0x60, 0xdb, 0x7e, 0x16, 0x9a, 0xe9, 0xce, 0xeb, 0x4b, 0x3b, 0x6f, 0x21, 0xf1, 0x9e, 0xda, 0x9f, 0x94, 0xd0, 0xfb, 0xd6, 0xa1, 0x6f, 0x4b, 0x30, 0x0e, 0x67, 0x3d, 0x5b, 0x43, 0x25, 0x14, 0x4f, 0xe7, 0x08, 0xd1, 0x3e, 0x07, 0x48, 0x1e, 0xc4, 0x39, 0x14, 0xdc, 0xbc, 0x7b, 0x23, 0xe1, 0x9c, 0x9c, 0x8f, 0xb8, 0xb9, 0xf3, 0xb1, 0xd6, 0xe2, 0xf7, 0x72, 0xfd, 0x0c, 0x6a, 0x31, 0x1c, 0x63, 0x93, 0x2d, 0xe3, 0xf8, 0xd1, 0xb0, 0x67, 0x0e, 0xbf, 0x19, 0xf4, 0xcc, 0xa3, 0xe3, 0x23, 0xfa, 0x40, 0xea, 0x0a, 0x5c, 0x52, 0x80, 0xfd, 0xa3, 0x61, 0xcf, 0x38, 0xea, 0x1e, 0xb4, 0x4a, 0x19, 0x44, 0xef, 0x6b, 0x89, 0x58, 0x45, 0x1f, 0xdc, 0x52, 0x10, 0x07, 0xc7, 0x7b, 0x08, 0x2d, 0xeb, 0x13, 0xd8, 0x8a, 0x57, 0xd6, 0x15, 0x9f, 0x1e, 0x7e, 0x98, 0x12, 0xc4, 0xeb, 0xea, 0xac, 0x53, 0x84, 0x8a, 0x2c, 0x62, 0x20, 0x1f, 0xed, 0xa5, 0x13, 0xbf, 0xff, 0xab, 0x20, 0xfd, 0x08, 0x6a, 0x87, 0xf6, 0x58, 0x8e, 0xf0, 0xc3, 0xd4, 0x08, 0x57, 0xd4, 0x38, 0x68, 0x9c, 0xe3, 0x8d, 0xb1, 0x03, 0xba, 0x87, 0x45, 0xf4, 0x75, 0x94, 0x68, 0xe8, 0x26, 0x6c, 0xa1, 0x30, 0xf9, 0xb6, 0x87, 0x81, 0xab, 0xe4, 0x4a, 0xd9, 0xe6, 0x60, 0x2e, 0x43, 0x0c, 0xfa, 0x49, 0x2a, 0x42, 0x14, 0x56, 0x1c, 0x60, 0x88, 0x16, 0x06, 0x55, 0xcd, 0x45, 0x60, 0xa3, 0x94, 0x4e, 0x42, 0x34, 0xc7, 0x41, 0x28, 0x4d, 0x76, 0x1d, 0x81, 0x07, 0x08, 0x3b, 0x74, 0x39, 0x63, 0xdf, 0x3c, 0xc2, 0x63, 0xc7, 0x2b, 0x96, 0x64, 0x7f, 0xee, 0x97, 0x26, 0x81, 0x3d, 0x9d, 0xc8, 0x67, 0x0a, 0xfe, 0xad, 0xbf, 0x03, 0x5b, 0x07, 0xec, 0x22, 0x50, 0xab, 0x24, 0x83, 0x78, 0x21, 0x32, 0x08, 0x12, 0x0b, 0xf9, 0x8b, 0x32, 0x6c, 0x08, 0x82, 0x20, 0x49, 0xf3, 0x58, 0xe2, 0x13, 0xd3, 0x9c, 0x91, 0x63, 0xa1, 0x10, 0xd4, 0x32, 0xcd, 0x23, 0x79, 0x7f, 0x0a, 0xb5, 0x24, 0xa6, 0x17, 0xfa, 0x7a, 0x75, 0xe9, 0xc1, 0x19, 0x09, 0x2d, 0x7a, 0x9d, 0xf2, 0x0c, 0x83, 0xd7, 0x72, 0x36, 0x0d, 0x15, 0x9f, 0x84, 0x41, 0x78, 0x9c, 0x19, 0x90, 0x76, 0x8a, 0xfd, 0x96, 0xca, 0x79, 0x35, 0xa5, 0xd7, 0xea, 0x51, 0xb0, 0x8e, 0x0a, 0x00, 0xaa, 0x5a, 0x33, 0xa5, 0x6a, 0x52, 0x47, 0xcf, 0x99, 0x5d, 0x43, 0xd5, 0x36, 0x94, 0xc6, 0x8d, 0xb9, 0x38, 0x07, 0xa9, 0xa0, 0x8a, 0xb8, 0xa4, 0x0e, 0xc8, 0x88, 0xe8, 0x68, 0xb2, 0xd2, 0x61, 0xe3, 0xe6, 0xcb, 0x74, 0x9c, 0x32, 0x5e, 0xe6, 0x5c, 0x22, 0x5f, 0x8e, 0x00, 0x7a, 0x60, 0xad, 0xc5, 0x4f, 0x84, 0xb1, 0xd5, 0x2e, 0x29, 0x0e, 0xe4, 0x63, 0x80, 0x51, 0xac, 0xbc, 0x72, 0xa7, 0x77, 0x8a, 0x14, 0xdb, 0x50, 0xe8, 0x50, 0xe0, 0x37, 0xc4, 0x91, 0x06, 0x72, 0xa7, 0x95, 0xd8, 0x5f, 0x1e, 0xbe, 0x11, 0x51, 0xe8, 0x5f, 0xa1, 0xa3, 0x15, 0x29, 0xb3, 0xa2, 0x09, 0xa4, 0x3f, 0x32, 0x58, 0xbd, 0xd8, 0x47, 0x06, 0xff, 0x5e, 0x82, 0x56, 0x36, 0xbb, 0x46, 0x9f, 0x8c, 0x28, 0x5a, 0xb8, 0x93, 0xcd, 0xc3, 0x29, 0x2a, 0xa8, 0x7e, 0xaa, 0xba, 0x7a, 0x81, 0x4f, 0x55, 0x0b, 0x3e, 0xe6, 0x4f, 0x3d, 0xbc, 0x57, 0x5e, 0xf4, 0xf0, 0xae, 0x7d, 0x00, 0x1b, 0x63, 0x7b, 0x62, 0x91, 0x71, 0x5d, 0x3b, 0x4f, 0x09, 0x22, 0x2a, 0xfd, 0x2f, 0x4b, 0x50, 0x36, 0x5c, 0x8b, 0x12, 0x3f, 0x56, 0x20, 0x35, 0x0c, 0x7f, 0xd1, 0xbd, 0x45, 0x38, 0x36, 0x74, 0x49, 0x51, 0xec, 0x16, 0x03, 0xc8, 0x40, 0x60, 0xe0, 0x41, 0x28, 0xf9, 0x9c, 0x20, 0x5a, 0x4a, 0xae, 0xbc, 0x92, 0x7a, 0x3e, 0x89, 0xb2, 0xd6, 0x6b, 0xe7, 0x7f, 0xab, 0x87, 0xda, 0xcf, 0x4f, 0x06, 0xae, 0xf5, 0xa2, 0xef, 0xef, 0xc4, 0x57, 0x4d, 0x4c, 0x98, 0x7c, 0xd5, 0xe4, 0xbb, 0x56, 0xc1, 0x57, 0x4d, 0x44, 0xc4, 0x28, 0x3d, 0x80, 0xf2, 0x63, 0x7f, 0x52, 0x28, 0x1d, 0xb8, 0x7c, 0x5f, 0x64, 0x6a, 0x1a, 0x06, 0xfe, 0xe2, 0x50, 0x4d, 0x24, 0x5d, 0x7d, 0x11, 0xf4, 0x34, 0x30, 0x54, 0x63, 0x80, 0xc1, 0x9f, 0x4a, 0xcb, 0x94, 0xae, 0x1f, 0xf2, 0x99, 0x20, 0x52, 0x00, 0x10, 0x29, 0x32, 0x68, 0x22, 0x9d, 0x88, 0xbf, 0xf4, 0xbf, 0x59, 0x85, 0x75, 0xf1, 0xaa, 0x98, 0xdb, 0x63, 0xe4, 0xc3, 0xb6, 0x48, 0xc9, 0x12, 0x55, 0x05, 0xa0, 0x3f, 0x26, 0x57, 0x49, 0x51, 0x96, 0x3d, 0x17, 0xf1, 0x6a, 0x59, 0xb8, 0x4a, 0x01, 0xe2, 0x78, 0xf5, 0x5d, 0x68, 0x49, 0x02, 0x69, 0x4f, 0xa5, 0x80, 0xd4, 0x8c, 0x2d, 0x01, 0xef, 0x46, 0xe0, 0xd4, 0x53, 0xc4, 0x5a, 0xe6, 0x29, 0xe2, 0xfb, 0xb0, 0x39, 0xf3, 0xa6, 0x81, 0x39, 0xb5, 0x9e, 0xd8, 0x53, 0x0e, 0x3b, 0x45, 0x68, 0xdc, 0x20, 0xe8, 0x01, 0x01, 0x29, 0xea, 0xcc, 0x50, 0x61, 0xd0, 0xb9, 0x91, 0xa5, 0xb2, 0x9e, 0x51, 0x52, 0x85, 0xfc, 0x03, 0xe7, 0xd8, 0xbc, 0xa9, 0x6d, 0x8a, 0x27, 0xb3, 0xaa, 0x48, 0xaa, 0x20, 0xe6, 0x50, 0x22, 0x28, 0x0e, 0x09, 0x6e, 0xef, 0x41, 0x35, 0xd2, 0x01, 0x0d, 0x70, 0x93, 0x0e, 0x8e, 0xbf, 0x40, 0xd7, 0xba, 0xa2, 0xd5, 0x60, 0x4d, 0x78, 0xd9, 0x12, 0x81, 0xbb, 0xfb, 0xbf, 0x40, 0x37, 0x8d, 0x7e, 0xb8, 0x8e, 0xf6, 0x1e, 0x7f, 0xd3, 0x57, 0xfd, 0x65, 0xfa, 0xe0, 0xf9, 0xb1, 0x71, 0xbf, 0x55, 0xb9, 0x6d, 0xd2, 0xfb, 0x5d, 0x1c, 0xc1, 0x52, 0x87, 0x01, 0xde, 0xc4, 0xfb, 0x5f, 0x23, 0x9f, 0x06, 0x54, 0x8f, 0x7a, 0xfd, 0x07, 0x0f, 0xbf, 0x38, 0x36, 0x90, 0x15, 0xf6, 0x18, 0x76, 0x1f, 0x48, 0x3e, 0x27, 0xe6, 0xa0, 0x3b, 0x7c, 0x88, 0x7c, 0x9a, 0x50, 0xdb, 0x3b, 0x3e, 0x3c, 0x7c, 0x74, 0xd4, 0x1f, 0x7e, 0xd3, 0xaa, 0x68, 0xdb, 0xd0, 0x44, 0xcf, 0x6f, 0x26, 0xa0, 0xb5, 0xdb, 0xef, 0xa2, 0x03, 0x8e, 0xa2, 0x52, 0x62, 0xd2, 0x3d, 0xfa, 0x46, 0x94, 0x17, 0x74, 0x0f, 0xe4, 0x0c, 0xfb, 0x47, 0x8f, 0x7b, 0xc6, 0xb0, 0xb5, 0x7a, 0xfb, 0x36, 0xb4, 0xb2, 0x31, 0x27, 0xd5, 0x23, 0xf4, 0xbe, 0xc2, 0x0e, 0xf8, 0xf7, 0x41, 0x0f, 0xe9, 0xf1, 0xef, 0x41, 0x0f, 0x69, 0x3f, 0x90, 0x97, 0x0a, 0xe9, 0x87, 0xaa, 0x50, 0x91, 0x01, 0x0a, 0x2d, 0x79, 0x6f, 0xaf, 0x37, 0x18, 0x0a, 0xe6, 0x46, 0xef, 0x17, 0xbd, 0x3d, 0x62, 0xfe, 0x08, 0x2e, 0x15, 0xc4, 0x11, 0x34, 0xe3, 0x78, 0xb6, 0x66, 0x77, 0x7f, 0x1f, 0x39, 0x60, 0xc0, 0x92, 0x80, 0x8c, 0xde, 0xe1, 0xf1, 0x63, 0x1a, 0x78, 0x17, 0xb6, 0x55, 0xe8, 0xe0, 0xa0, 0xbb, 0x47, 0xf3, 0x78, 0x1f, 0x9a, 0xa9, 0xe0, 0x81, 0xb6, 0xe7, 0xb0, 0xb7, 0x6f, 0x1e, 0x1e, 0x13, 0xab, 0x2d, 0xa8, 0x53, 0x23, 0x22, 0x2f, 0xdd, 0x7e, 0x0f, 0x20, 0xb1, 0x72, 0x71, 0xb1, 0x05, 0x6d, 0xc2, 0xe1, 0xe0, 0xd8, 0x90, 0x73, 0xee, 0x7d, 0xcd, 0xbf, 0x57, 0xef, 0xfe, 0xd5, 0x9b, 0x50, 0x7d, 0x40, 0x7a, 0xd8, 0xf5, 0x1c, 0xed, 0x00, 0xea, 0xca, 0x5b, 0xba, 0xf6, 0x46, 0xca, 0xf6, 0x66, 0x9e, 0xe8, 0x3b, 0xd7, 0x97, 0x60, 0xe5, 0x23, 0xdb, 0x8a, 0xd6, 0x07, 0x48, 0x5e, 0xdb, 0xb5, 0x6b, 0x2a, 0x79, 0xe6, 0x61, 0xbe, 0xf3, 0x46, 0x31, 0x32, 0x66, 0x75, 0x1f, 0x6a, 0xf1, 0x37, 0x06, 0x9a, 0x72, 0x7f, 0xc8, 0x7e, 0x8c, 0xd0, 0xb9, 0x56, 0x88, 0x8b, 0xf9, 0xe0, 0x02, 0x95, 0xaa, 0x1e, 0x75, 0x81, 0xf9, 0x32, 0x21, 0x75, 0x81, 0x45, 0xa5, 0x40, 0x2b, 0xda, 0x23, 0xd8, 0x4c, 0xd7, 0xf3, 0x68, 0x6f, 0xaa, 0x97, 0xb6, 0x82, 0x32, 0xa1, 0xce, 0x5b, 0xcb, 0x09, 0xd4, 0x49, 0x2a, 0x15, 0x6c, 0xea, 0x24, 0xf3, 0xe5, 0x6e, 0xea, 0x24, 0x0b, 0xca, 0xde, 0x90, 0x9b, 0x01, 0xcd, 0x54, 0x39, 0x8d, 0x76, 0x23, 0xe5, 0xdf, 0xf2, 0x1c, 0xdf, 0x5c, 0x8a, 0x8f, 0x79, 0xfe, 0x01, 0x6c, 0xe7, 0xca, 0x74, 0x34, 0xfd, 0xc5, 0xe5, 0x42, 0x9d, 0xef, 0x9d, 0x4b, 0x13, 0xf3, 0xff, 0x5d, 0x68, 0x65, 0x8b, 0x76, 0xb4, 0x9b, 0x4a, 0xd7, 0xe2, 0x2a, 0xa0, 0x8e, 0x7e, 0x1e, 0x89, 0x7a, 0x6a, 0xe9, 0x12, 0x1e, 0xf5, 0xd4, 0x0a, 0xeb, 0x81, 0xd4, 0x53, 0x5b, 0x52, 0xfd, 0xb3, 0xa2, 0x7d, 0x0d, 0x5b, 0x99, 0x5a, 0x1e, 0x4d, 0x3d, 0xec, 0xc2, 0xd2, 0xa0, 0xce, 0xcd, 0x73, 0x28, 0x62, 0xce, 0x9f, 0xa3, 0xe1, 0xe5, 0xc7, 0x76, 0xed, 0x4a, 0xea, 0xb0, 0x93, 0x07, 0xf4, 0x4e, 0x3b, 0x8f, 0x50, 0xc5, 0x49, 0x79, 0x04, 0x57, 0xc5, 0x29, 0xff, 0x12, 0xaf, 0x8a, 0x53, 0xd1, 0xcb, 0xf9, 0x8a, 0xf6, 0x73, 0x34, 0xcd, 0xa2, 0x76, 0x50, 0x6b, 0xa7, 0xf4, 0x43, 0xa9, 0x11, 0xec, 0x5c, 0x2d, 0xc0, 0xa8, 0x66, 0x21, 0xa9, 0xd4, 0x53, 0xcd, 0x42, 0xae, 0xd6, 0x50, 0x35, 0x0b, 0x05, 0xc5, 0x7d, 0x2b, 0x14, 0x0d, 0xcb, 0x3a, 0x1b, 0x5a, 0x59, 0xf6, 0x9b, 0x83, 0x4e, 0xf1, 0x37, 0x12, 0xfa, 0xca, 0x8f, 0x4a, 0xda, 0x67, 0x71, 0x85, 0x4e, 0xf2, 0xae, 0xa3, 0x84, 0x9a, 0x71, 0x11, 0x68, 0x27, 0x53, 0xc9, 0xc7, 0x9d, 0xd1, 0x1a, 0xc5, 0x25, 0x53, 0xaa, 0x35, 0xca, 0x16, 0x6c, 0xa9, 0xd6, 0x28, 0x5f, 0x63, 0x25, 0x76, 0x22, 0x2e, 0xa8, 0x4a, 0xed, 0x44, 0xb6, 0xf6, 0x2a, 0xb5, 0x13, 0xf9, 0x1a, 0xac, 0x15, 0xed, 0x21, 0xd4, 0xe2, 0x22, 0x28, 0x75, 0x4a, 0xd9, 0xd2, 0x2c, 0x75, 0x4a, 0xf9, 0xaa, 0xa9, 0x95, 0x5b, 0x25, 0x92, 0x36, 0x51, 0x8a, 0xa4, 0x4a, 0x5b, 0xaa, 0xea, 0xa9, 0xd3, 0xce, 0x23, 0x54, 0x4b, 0x1d, 0x57, 0x1d, 0xa9, 0x13, 0xc9, 0x16, 0x33, 0x75, 0xae, 0x15, 0xe2, 0x54, 0x39, 0x93, 0xd5, 0x1b, 0x5a, 0x46, 0xb8, 0x93, 0xcf, 0xfe, 0x55, 0x39, 0xcb, 0x94, 0x7a, 0xc4, 0x92, 0x9a, 0xe5, 0x90, 0xae, 0xea, 0xc8, 0x48, 0x6a, 0x86, 0x43, 0x2c, 0xa9, 0xcc, 0x24, 0x37, 0x61, 0x95, 0xcf, 0x1b, 0xc5, 0x48, 0x95, 0x55, 0x52, 0x58, 0xa1, 0xe5, 0xe4, 0x62, 0x09, 0xab, 0x82, 0x5a, 0x0c, 0xd6, 0x67, 0xa5, 0xba, 0x42, 0xcb, 0x4b, 0x86, 0xca, 0xec, 0xfa, 0x12, 0xac, 0x7a, 0x5e, 0x71, 0x6d, 0x84, 0x7a, 0x5e, 0xd9, 0x12, 0x0b, 0xf5, 0xbc, 0xf2, 0xc5, 0x14, 0xec, 0x66, 0x52, 0x75, 0x16, 0xaa, 0x9b, 0x29, 0x2a, 0xd9, 0x50, 0xdd, 0x4c, 0x71, 0x81, 0x46, 0x6c, 0xf8, 0xf0, 0xea, 0x93, 0x31, 0x7c, 0xf1, 0xe5, 0x23, 0x6b, 0xf8, 0x92, 0xcb, 0x86, 0xd8, 0x28, 0xa5, 0xfc, 0x42, 0xcb, 0xed, 0xab, 0x5a, 0xf8, 0xa1, 0x6e, 0x54, 0x51, 0xcd, 0xc6, 0x8a, 0xd4, 0x0b, 0xba, 0x9c, 0xa4, 0xf5, 0x22, 0x29, 0x9d, 0xc8, 0xe8, 0x85, 0x5a, 0x1e, 0xa1, 0xe8, 0x05, 0x71, 0xc8, 0xe9, 0x85, 0xc2, 0xe4, 0x5a, 0x21, 0x2e, 0xb3, 0x27, 0x99, 0x69, 0xa4, 0xca, 0x49, 0x32, 0x7b, 0x92, 0xee, 0x6e, 0xf0, 0xed, 0x4d, 0x49, 0x3a, 0xdf, 0x48, 0x11, 0xe7, 0x8a, 0x0d, 0xd4, 0x63, 0x2a, 0xac, 0xce, 0x10, 0x3c, 0x53, 0x55, 0x13, 0x2a, 0xcf, 0xa2, 0x72, 0x0c, 0x95, 0x67, 0x71, 0xb9, 0x05, 0x47, 0x00, 0xd9, 0xda, 0x08, 0x35, 0x02, 0x58, 0x52, 0x8c, 0xa1, 0x46, 0x00, 0x4b, 0x4b, 0x2b, 0x38, 0x7c, 0xc9, 0x15, 0x46, 0xa8, 0xe1, 0xcb, 0xb2, 0xca, 0x0b, 0x35, 0x7c, 0x59, 0x5e, 0x59, 0xb1, 0xa2, 0x1d, 0x43, 0x43, 0x2d, 0xa2, 0xd0, 0xd2, 0x31, 0x5a, 0xb6, 0x5e, 0xa0, 0x73, 0x63, 0x19, 0x5a, 0x65, 0xa8, 0x96, 0x3f, 0x68, 0xe9, 0xc8, 0xf4, 0x3c, 0x86, 0x85, 0x55, 0x13, 0x22, 0x58, 0x49, 0x17, 0x36, 0x68, 0xb9, 0xc8, 0x34, 0xc7, 0xf6, 0xe6, 0x39, 0x14, 0xea, 0xc1, 0x65, 0x2b, 0x19, 0xd4, 0x83, 0x5b, 0x52, 0x33, 0xd1, 0xd1, 0xcf, 0x23, 0xc9, 0x5c, 0x03, 0x64, 0x06, 0x29, 0x7d, 0x0d, 0x48, 0x7d, 0x97, 0x9f, 0xb9, 0x06, 0x64, 0x3e, 0x82, 0x67, 0x3e, 0xf1, 0x77, 0xdf, 0x2a, 0x9f, 0x6c, 0x41, 0x84, 0xca, 0x27, 0x5f, 0xb2, 0xc0, 0xe7, 0xa2, 0x7e, 0xb1, 0xad, 0x9e, 0x4b, 0x41, 0x2d, 0x83, 0x7a, 0x2e, 0x85, 0x65, 0x06, 0x32, 0x58, 0x57, 0x3e, 0xc1, 0x4e, 0x07, 0xeb, 0xf9, 0x02, 0x84, 0x74, 0xb0, 0x5e, 0xf4, 0xc5, 0xff, 0x8a, 0x36, 0xe6, 0x4a, 0x9f, 0x5c, 0x8a, 0xec, 0xfb, 0x05, 0x5b, 0x94, 0xfb, 0x9e, 0xbc, 0xf3, 0xf6, 0x0b, 0xa8, 0xd4, 0x51, 0x0a, 0x3e, 0xa5, 0x57, 0x47, 0x59, 0xfe, 0x0d, 0xbf, 0x3a, 0xca, 0x79, 0xdf, 0xe3, 0xaf, 0x68, 0xb3, 0xa8, 0xde, 0x27, 0x37, 0xd0, 0x3b, 0xc5, 0x7b, 0x9b, 0x1f, 0xeb, 0xd6, 0x8b, 0x09, 0xe3, 0xe1, 0xbc, 0xb8, 0xc8, 0x27, 0x9f, 0x61, 0x5c, 0xb2, 0xf1, 0xf9, 0x01, 0xdf, 0xbd, 0x00, 0x65, 0x34, 0xe2, 0x93, 0x75, 0xfe, 0x27, 0x27, 0x1f, 0xfd, 0x57, 0x00, 0x00, 0x00, 0xff, 0xff, 0x86, 0x70, 0x9b, 0x00, 0xf3, 0x44, 0x00, 0x00, }