// Code generated by protoc-gen-go. DO NOT EDIT.
// source: gobgp.proto

package gobgpapi

import (
	context "context"
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	any "github.com/golang/protobuf/ptypes/any"
	empty "github.com/golang/protobuf/ptypes/empty"
	timestamp "github.com/golang/protobuf/ptypes/timestamp"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	math "math"
)

// 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.ProtoPackageIsVersion3 // please upgrade the proto package

type TableType int32

const (
	TableType_GLOBAL  TableType = 0
	TableType_LOCAL   TableType = 1
	TableType_ADJ_IN  TableType = 2
	TableType_ADJ_OUT TableType = 3
	TableType_VRF     TableType = 4
)

var TableType_name = map[int32]string{
	0: "GLOBAL",
	1: "LOCAL",
	2: "ADJ_IN",
	3: "ADJ_OUT",
	4: "VRF",
}

var TableType_value = map[string]int32{
	"GLOBAL":  0,
	"LOCAL":   1,
	"ADJ_IN":  2,
	"ADJ_OUT": 3,
	"VRF":     4,
}

func (x TableType) String() string {
	return proto.EnumName(TableType_name, int32(x))
}

func (TableType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{0}
}

// API representation of table.LookupOption
type TableLookupOption int32

const (
	TableLookupOption_LOOKUP_EXACT   TableLookupOption = 0
	TableLookupOption_LOOKUP_LONGER  TableLookupOption = 1
	TableLookupOption_LOOKUP_SHORTER TableLookupOption = 2
)

var TableLookupOption_name = map[int32]string{
	0: "LOOKUP_EXACT",
	1: "LOOKUP_LONGER",
	2: "LOOKUP_SHORTER",
}

var TableLookupOption_value = map[string]int32{
	"LOOKUP_EXACT":   0,
	"LOOKUP_LONGER":  1,
	"LOOKUP_SHORTER": 2,
}

func (x TableLookupOption) String() string {
	return proto.EnumName(TableLookupOption_name, int32(x))
}

func (TableLookupOption) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{1}
}

type DefinedType int32

const (
	DefinedType_PREFIX          DefinedType = 0
	DefinedType_NEIGHBOR        DefinedType = 1
	DefinedType_TAG             DefinedType = 2
	DefinedType_AS_PATH         DefinedType = 3
	DefinedType_COMMUNITY       DefinedType = 4
	DefinedType_EXT_COMMUNITY   DefinedType = 5
	DefinedType_LARGE_COMMUNITY DefinedType = 6
	DefinedType_NEXT_HOP        DefinedType = 7
)

var DefinedType_name = map[int32]string{
	0: "PREFIX",
	1: "NEIGHBOR",
	2: "TAG",
	3: "AS_PATH",
	4: "COMMUNITY",
	5: "EXT_COMMUNITY",
	6: "LARGE_COMMUNITY",
	7: "NEXT_HOP",
}

var DefinedType_value = map[string]int32{
	"PREFIX":          0,
	"NEIGHBOR":        1,
	"TAG":             2,
	"AS_PATH":         3,
	"COMMUNITY":       4,
	"EXT_COMMUNITY":   5,
	"LARGE_COMMUNITY": 6,
	"NEXT_HOP":        7,
}

func (x DefinedType) String() string {
	return proto.EnumName(DefinedType_name, int32(x))
}

func (DefinedType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{2}
}

type MatchType int32

const (
	MatchType_ANY    MatchType = 0
	MatchType_ALL    MatchType = 1
	MatchType_INVERT MatchType = 2
)

var MatchType_name = map[int32]string{
	0: "ANY",
	1: "ALL",
	2: "INVERT",
}

var MatchType_value = map[string]int32{
	"ANY":    0,
	"ALL":    1,
	"INVERT": 2,
}

func (x MatchType) String() string {
	return proto.EnumName(MatchType_name, int32(x))
}

func (MatchType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{3}
}

type AsPathLengthType int32

const (
	AsPathLengthType_EQ AsPathLengthType = 0
	AsPathLengthType_GE AsPathLengthType = 1
	AsPathLengthType_LE AsPathLengthType = 2
)

var AsPathLengthType_name = map[int32]string{
	0: "EQ",
	1: "GE",
	2: "LE",
}

var AsPathLengthType_value = map[string]int32{
	"EQ": 0,
	"GE": 1,
	"LE": 2,
}

func (x AsPathLengthType) String() string {
	return proto.EnumName(AsPathLengthType_name, int32(x))
}

func (AsPathLengthType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{4}
}

type RouteAction int32

const (
	RouteAction_NONE   RouteAction = 0
	RouteAction_ACCEPT RouteAction = 1
	RouteAction_REJECT RouteAction = 2
)

var RouteAction_name = map[int32]string{
	0: "NONE",
	1: "ACCEPT",
	2: "REJECT",
}

var RouteAction_value = map[string]int32{
	"NONE":   0,
	"ACCEPT": 1,
	"REJECT": 2,
}

func (x RouteAction) String() string {
	return proto.EnumName(RouteAction_name, int32(x))
}

func (RouteAction) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{5}
}

type CommunityActionType int32

const (
	CommunityActionType_COMMUNITY_ADD     CommunityActionType = 0
	CommunityActionType_COMMUNITY_REMOVE  CommunityActionType = 1
	CommunityActionType_COMMUNITY_REPLACE CommunityActionType = 2
)

var CommunityActionType_name = map[int32]string{
	0: "COMMUNITY_ADD",
	1: "COMMUNITY_REMOVE",
	2: "COMMUNITY_REPLACE",
}

var CommunityActionType_value = map[string]int32{
	"COMMUNITY_ADD":     0,
	"COMMUNITY_REMOVE":  1,
	"COMMUNITY_REPLACE": 2,
}

func (x CommunityActionType) String() string {
	return proto.EnumName(CommunityActionType_name, int32(x))
}

func (CommunityActionType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{6}
}

type MedActionType int32

const (
	MedActionType_MED_MOD     MedActionType = 0
	MedActionType_MED_REPLACE MedActionType = 1
)

var MedActionType_name = map[int32]string{
	0: "MED_MOD",
	1: "MED_REPLACE",
}

var MedActionType_value = map[string]int32{
	"MED_MOD":     0,
	"MED_REPLACE": 1,
}

func (x MedActionType) String() string {
	return proto.EnumName(MedActionType_name, int32(x))
}

func (MedActionType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{7}
}

type PolicyDirection int32

const (
	PolicyDirection_UNKNOWN PolicyDirection = 0
	PolicyDirection_IMPORT  PolicyDirection = 1
	PolicyDirection_EXPORT  PolicyDirection = 2
)

var PolicyDirection_name = map[int32]string{
	0: "UNKNOWN",
	1: "IMPORT",
	2: "EXPORT",
}

var PolicyDirection_value = map[string]int32{
	"UNKNOWN": 0,
	"IMPORT":  1,
	"EXPORT":  2,
}

func (x PolicyDirection) String() string {
	return proto.EnumName(PolicyDirection_name, int32(x))
}

func (PolicyDirection) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{8}
}

type ResetPeerRequest_SoftResetDirection int32

const (
	ResetPeerRequest_IN   ResetPeerRequest_SoftResetDirection = 0
	ResetPeerRequest_OUT  ResetPeerRequest_SoftResetDirection = 1
	ResetPeerRequest_BOTH ResetPeerRequest_SoftResetDirection = 2
)

var ResetPeerRequest_SoftResetDirection_name = map[int32]string{
	0: "IN",
	1: "OUT",
	2: "BOTH",
}

var ResetPeerRequest_SoftResetDirection_value = map[string]int32{
	"IN":   0,
	"OUT":  1,
	"BOTH": 2,
}

func (x ResetPeerRequest_SoftResetDirection) String() string {
	return proto.EnumName(ResetPeerRequest_SoftResetDirection_name, int32(x))
}

func (ResetPeerRequest_SoftResetDirection) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{10, 0}
}

type ListPathRequest_SortType int32

const (
	ListPathRequest_NONE   ListPathRequest_SortType = 0
	ListPathRequest_PREFIX ListPathRequest_SortType = 1
)

var ListPathRequest_SortType_name = map[int32]string{
	0: "NONE",
	1: "PREFIX",
}

var ListPathRequest_SortType_value = map[string]int32{
	"NONE":   0,
	"PREFIX": 1,
}

func (x ListPathRequest_SortType) String() string {
	return proto.EnumName(ListPathRequest_SortType_name, int32(x))
}

func (ListPathRequest_SortType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{29, 0}
}

type AddBmpRequest_MonitoringPolicy int32

const (
	AddBmpRequest_PRE   AddBmpRequest_MonitoringPolicy = 0
	AddBmpRequest_POST  AddBmpRequest_MonitoringPolicy = 1
	AddBmpRequest_BOTH  AddBmpRequest_MonitoringPolicy = 2
	AddBmpRequest_LOCAL AddBmpRequest_MonitoringPolicy = 3
	AddBmpRequest_ALL   AddBmpRequest_MonitoringPolicy = 4
)

var AddBmpRequest_MonitoringPolicy_name = map[int32]string{
	0: "PRE",
	1: "POST",
	2: "BOTH",
	3: "LOCAL",
	4: "ALL",
}

var AddBmpRequest_MonitoringPolicy_value = map[string]int32{
	"PRE":   0,
	"POST":  1,
	"BOTH":  2,
	"LOCAL": 3,
	"ALL":   4,
}

func (x AddBmpRequest_MonitoringPolicy) String() string {
	return proto.EnumName(AddBmpRequest_MonitoringPolicy_name, int32(x))
}

func (AddBmpRequest_MonitoringPolicy) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{70, 0}
}

type Family_Afi int32

const (
	Family_AFI_UNKNOWN Family_Afi = 0
	Family_AFI_IP      Family_Afi = 1
	Family_AFI_IP6     Family_Afi = 2
	Family_AFI_L2VPN   Family_Afi = 25
	Family_AFI_LS      Family_Afi = 16388
	Family_AFI_OPAQUE  Family_Afi = 16397
)

var Family_Afi_name = map[int32]string{
	0:     "AFI_UNKNOWN",
	1:     "AFI_IP",
	2:     "AFI_IP6",
	25:    "AFI_L2VPN",
	16388: "AFI_LS",
	16397: "AFI_OPAQUE",
}

var Family_Afi_value = map[string]int32{
	"AFI_UNKNOWN": 0,
	"AFI_IP":      1,
	"AFI_IP6":     2,
	"AFI_L2VPN":   25,
	"AFI_LS":      16388,
	"AFI_OPAQUE":  16397,
}

func (x Family_Afi) String() string {
	return proto.EnumName(Family_Afi_name, int32(x))
}

func (Family_Afi) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{72, 0}
}

type Family_Safi int32

const (
	Family_SAFI_UNKNOWN                  Family_Safi = 0
	Family_SAFI_UNICAST                  Family_Safi = 1
	Family_SAFI_MULTICAST                Family_Safi = 2
	Family_SAFI_MPLS_LABEL               Family_Safi = 4
	Family_SAFI_ENCAPSULATION            Family_Safi = 7
	Family_SAFI_VPLS                     Family_Safi = 65
	Family_SAFI_EVPN                     Family_Safi = 70
	Family_SAFI_LS                       Family_Safi = 71
	Family_SAFI_SR_POLICY                Family_Safi = 73
	Family_SAFI_MPLS_VPN                 Family_Safi = 128
	Family_SAFI_MPLS_VPN_MULTICAST       Family_Safi = 129
	Family_SAFI_ROUTE_TARGET_CONSTRAINTS Family_Safi = 132
	Family_SAFI_FLOW_SPEC_UNICAST        Family_Safi = 133
	Family_SAFI_FLOW_SPEC_VPN            Family_Safi = 134
	Family_SAFI_KEY_VALUE                Family_Safi = 241
)

var Family_Safi_name = map[int32]string{
	0:   "SAFI_UNKNOWN",
	1:   "SAFI_UNICAST",
	2:   "SAFI_MULTICAST",
	4:   "SAFI_MPLS_LABEL",
	7:   "SAFI_ENCAPSULATION",
	65:  "SAFI_VPLS",
	70:  "SAFI_EVPN",
	71:  "SAFI_LS",
	73:  "SAFI_SR_POLICY",
	128: "SAFI_MPLS_VPN",
	129: "SAFI_MPLS_VPN_MULTICAST",
	132: "SAFI_ROUTE_TARGET_CONSTRAINTS",
	133: "SAFI_FLOW_SPEC_UNICAST",
	134: "SAFI_FLOW_SPEC_VPN",
	241: "SAFI_KEY_VALUE",
}

var Family_Safi_value = map[string]int32{
	"SAFI_UNKNOWN":                  0,
	"SAFI_UNICAST":                  1,
	"SAFI_MULTICAST":                2,
	"SAFI_MPLS_LABEL":               4,
	"SAFI_ENCAPSULATION":            7,
	"SAFI_VPLS":                     65,
	"SAFI_EVPN":                     70,
	"SAFI_LS":                       71,
	"SAFI_SR_POLICY":                73,
	"SAFI_MPLS_VPN":                 128,
	"SAFI_MPLS_VPN_MULTICAST":       129,
	"SAFI_ROUTE_TARGET_CONSTRAINTS": 132,
	"SAFI_FLOW_SPEC_UNICAST":        133,
	"SAFI_FLOW_SPEC_VPN":            134,
	"SAFI_KEY_VALUE":                241,
}

func (x Family_Safi) String() string {
	return proto.EnumName(Family_Safi_name, int32(x))
}

func (Family_Safi) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{72, 1}
}

type Validation_State int32

const (
	Validation_STATE_NONE      Validation_State = 0
	Validation_STATE_NOT_FOUND Validation_State = 1
	Validation_STATE_VALID     Validation_State = 2
	Validation_STATE_INVALID   Validation_State = 3
)

var Validation_State_name = map[int32]string{
	0: "STATE_NONE",
	1: "STATE_NOT_FOUND",
	2: "STATE_VALID",
	3: "STATE_INVALID",
}

var Validation_State_value = map[string]int32{
	"STATE_NONE":      0,
	"STATE_NOT_FOUND": 1,
	"STATE_VALID":     2,
	"STATE_INVALID":   3,
}

func (x Validation_State) String() string {
	return proto.EnumName(Validation_State_name, int32(x))
}

func (Validation_State) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{73, 0}
}

type Validation_Reason int32

const (
	Validation_REASOT_NONE   Validation_Reason = 0
	Validation_REASON_AS     Validation_Reason = 1
	Validation_REASON_LENGTH Validation_Reason = 2
)

var Validation_Reason_name = map[int32]string{
	0: "REASOT_NONE",
	1: "REASON_AS",
	2: "REASON_LENGTH",
}

var Validation_Reason_value = map[string]int32{
	"REASOT_NONE":   0,
	"REASON_AS":     1,
	"REASON_LENGTH": 2,
}

func (x Validation_Reason) String() string {
	return proto.EnumName(Validation_Reason_name, int32(x))
}

func (Validation_Reason) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{73, 1}
}

type PeerConf_RemovePrivateAs int32

const (
	PeerConf_NONE    PeerConf_RemovePrivateAs = 0
	PeerConf_ALL     PeerConf_RemovePrivateAs = 1
	PeerConf_REPLACE PeerConf_RemovePrivateAs = 2
)

var PeerConf_RemovePrivateAs_name = map[int32]string{
	0: "NONE",
	1: "ALL",
	2: "REPLACE",
}

var PeerConf_RemovePrivateAs_value = map[string]int32{
	"NONE":    0,
	"ALL":     1,
	"REPLACE": 2,
}

func (x PeerConf_RemovePrivateAs) String() string {
	return proto.EnumName(PeerConf_RemovePrivateAs_name, int32(x))
}

func (PeerConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{82, 0}
}

type PeerGroupConf_RemovePrivateAs int32

const (
	PeerGroupConf_NONE    PeerGroupConf_RemovePrivateAs = 0
	PeerGroupConf_ALL     PeerGroupConf_RemovePrivateAs = 1
	PeerGroupConf_REPLACE PeerGroupConf_RemovePrivateAs = 2
)

var PeerGroupConf_RemovePrivateAs_name = map[int32]string{
	0: "NONE",
	1: "ALL",
	2: "REPLACE",
}

var PeerGroupConf_RemovePrivateAs_value = map[string]int32{
	"NONE":    0,
	"ALL":     1,
	"REPLACE": 2,
}

func (x PeerGroupConf_RemovePrivateAs) String() string {
	return proto.EnumName(PeerGroupConf_RemovePrivateAs_name, int32(x))
}

func (PeerGroupConf_RemovePrivateAs) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{83, 0}
}

type PeerGroupState_RemovePrivateAs int32

const (
	PeerGroupState_NONE    PeerGroupState_RemovePrivateAs = 0
	PeerGroupState_ALL     PeerGroupState_RemovePrivateAs = 1
	PeerGroupState_REPLACE PeerGroupState_RemovePrivateAs = 2
)

var PeerGroupState_RemovePrivateAs_name = map[int32]string{
	0: "NONE",
	1: "ALL",
	2: "REPLACE",
}

var PeerGroupState_RemovePrivateAs_value = map[string]int32{
	"NONE":    0,
	"ALL":     1,
	"REPLACE": 2,
}

func (x PeerGroupState_RemovePrivateAs) String() string {
	return proto.EnumName(PeerGroupState_RemovePrivateAs_name, int32(x))
}

func (PeerGroupState_RemovePrivateAs) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{84, 0}
}

type PeerState_SessionState int32

const (
	PeerState_UNKNOWN     PeerState_SessionState = 0
	PeerState_IDLE        PeerState_SessionState = 1
	PeerState_CONNECT     PeerState_SessionState = 2
	PeerState_ACTIVE      PeerState_SessionState = 3
	PeerState_OPENSENT    PeerState_SessionState = 4
	PeerState_OPENCONFIRM PeerState_SessionState = 5
	PeerState_ESTABLISHED PeerState_SessionState = 6
)

var PeerState_SessionState_name = map[int32]string{
	0: "UNKNOWN",
	1: "IDLE",
	2: "CONNECT",
	3: "ACTIVE",
	4: "OPENSENT",
	5: "OPENCONFIRM",
	6: "ESTABLISHED",
}

var PeerState_SessionState_value = map[string]int32{
	"UNKNOWN":     0,
	"IDLE":        1,
	"CONNECT":     2,
	"ACTIVE":      3,
	"OPENSENT":    4,
	"OPENCONFIRM": 5,
	"ESTABLISHED": 6,
}

func (x PeerState_SessionState) String() string {
	return proto.EnumName(PeerState_SessionState_name, int32(x))
}

func (PeerState_SessionState) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{88, 0}
}

type PeerState_AdminState int32

const (
	PeerState_UP     PeerState_AdminState = 0
	PeerState_DOWN   PeerState_AdminState = 1
	PeerState_PFX_CT PeerState_AdminState = 2
)

var PeerState_AdminState_name = map[int32]string{
	0: "UP",
	1: "DOWN",
	2: "PFX_CT",
}

var PeerState_AdminState_value = map[string]int32{
	"UP":     0,
	"DOWN":   1,
	"PFX_CT": 2,
}

func (x PeerState_AdminState) String() string {
	return proto.EnumName(PeerState_AdminState_name, int32(x))
}

func (PeerState_AdminState) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{88, 1}
}

type Conditions_RouteType int32

const (
	Conditions_ROUTE_TYPE_NONE     Conditions_RouteType = 0
	Conditions_ROUTE_TYPE_INTERNAL Conditions_RouteType = 1
	Conditions_ROUTE_TYPE_EXTERNAL Conditions_RouteType = 2
	Conditions_ROUTE_TYPE_LOCAL    Conditions_RouteType = 3
)

var Conditions_RouteType_name = map[int32]string{
	0: "ROUTE_TYPE_NONE",
	1: "ROUTE_TYPE_INTERNAL",
	2: "ROUTE_TYPE_EXTERNAL",
	3: "ROUTE_TYPE_LOCAL",
}

var Conditions_RouteType_value = map[string]int32{
	"ROUTE_TYPE_NONE":     0,
	"ROUTE_TYPE_INTERNAL": 1,
	"ROUTE_TYPE_EXTERNAL": 2,
	"ROUTE_TYPE_LOCAL":    3,
}

func (x Conditions_RouteType) String() string {
	return proto.EnumName(Conditions_RouteType_name, int32(x))
}

func (Conditions_RouteType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{129, 0}
}

type SetLogLevelRequest_Level int32

const (
	SetLogLevelRequest_PANIC SetLogLevelRequest_Level = 0
	SetLogLevelRequest_FATAL SetLogLevelRequest_Level = 1
	SetLogLevelRequest_ERROR SetLogLevelRequest_Level = 2
	SetLogLevelRequest_WARN  SetLogLevelRequest_Level = 3
	SetLogLevelRequest_INFO  SetLogLevelRequest_Level = 4
	SetLogLevelRequest_DEBUG SetLogLevelRequest_Level = 5
	SetLogLevelRequest_TRACE SetLogLevelRequest_Level = 6
)

var SetLogLevelRequest_Level_name = map[int32]string{
	0: "PANIC",
	1: "FATAL",
	2: "ERROR",
	3: "WARN",
	4: "INFO",
	5: "DEBUG",
	6: "TRACE",
}

var SetLogLevelRequest_Level_value = map[string]int32{
	"PANIC": 0,
	"FATAL": 1,
	"ERROR": 2,
	"WARN":  3,
	"INFO":  4,
	"DEBUG": 5,
	"TRACE": 6,
}

func (x SetLogLevelRequest_Level) String() string {
	return proto.EnumName(SetLogLevelRequest_Level_name, int32(x))
}

func (SetLogLevelRequest_Level) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{148, 0}
}

type StartBgpRequest struct {
	Global               *Global  `protobuf:"bytes,1,opt,name=global,proto3" json:"global,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StartBgpRequest) Reset()         { *m = StartBgpRequest{} }
func (m *StartBgpRequest) String() string { return proto.CompactTextString(m) }
func (*StartBgpRequest) ProtoMessage()    {}
func (*StartBgpRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{0}
}

func (m *StartBgpRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StartBgpRequest.Unmarshal(m, b)
}
func (m *StartBgpRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StartBgpRequest.Marshal(b, m, deterministic)
}
func (m *StartBgpRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StartBgpRequest.Merge(m, src)
}
func (m *StartBgpRequest) XXX_Size() int {
	return xxx_messageInfo_StartBgpRequest.Size(m)
}
func (m *StartBgpRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StartBgpRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StartBgpRequest proto.InternalMessageInfo

func (m *StartBgpRequest) GetGlobal() *Global {
	if m != nil {
		return m.Global
	}
	return nil
}

type StopBgpRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StopBgpRequest) Reset()         { *m = StopBgpRequest{} }
func (m *StopBgpRequest) String() string { return proto.CompactTextString(m) }
func (*StopBgpRequest) ProtoMessage()    {}
func (*StopBgpRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{1}
}

func (m *StopBgpRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StopBgpRequest.Unmarshal(m, b)
}
func (m *StopBgpRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StopBgpRequest.Marshal(b, m, deterministic)
}
func (m *StopBgpRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StopBgpRequest.Merge(m, src)
}
func (m *StopBgpRequest) XXX_Size() int {
	return xxx_messageInfo_StopBgpRequest.Size(m)
}
func (m *StopBgpRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_StopBgpRequest.DiscardUnknown(m)
}

var xxx_messageInfo_StopBgpRequest proto.InternalMessageInfo

type GetBgpRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetBgpRequest) Reset()         { *m = GetBgpRequest{} }
func (m *GetBgpRequest) String() string { return proto.CompactTextString(m) }
func (*GetBgpRequest) ProtoMessage()    {}
func (*GetBgpRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{2}
}

func (m *GetBgpRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetBgpRequest.Unmarshal(m, b)
}
func (m *GetBgpRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetBgpRequest.Marshal(b, m, deterministic)
}
func (m *GetBgpRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetBgpRequest.Merge(m, src)
}
func (m *GetBgpRequest) XXX_Size() int {
	return xxx_messageInfo_GetBgpRequest.Size(m)
}
func (m *GetBgpRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetBgpRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetBgpRequest proto.InternalMessageInfo

type GetBgpResponse struct {
	Global               *Global  `protobuf:"bytes,1,opt,name=global,proto3" json:"global,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetBgpResponse) Reset()         { *m = GetBgpResponse{} }
func (m *GetBgpResponse) String() string { return proto.CompactTextString(m) }
func (*GetBgpResponse) ProtoMessage()    {}
func (*GetBgpResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{3}
}

func (m *GetBgpResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetBgpResponse.Unmarshal(m, b)
}
func (m *GetBgpResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetBgpResponse.Marshal(b, m, deterministic)
}
func (m *GetBgpResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetBgpResponse.Merge(m, src)
}
func (m *GetBgpResponse) XXX_Size() int {
	return xxx_messageInfo_GetBgpResponse.Size(m)
}
func (m *GetBgpResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetBgpResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetBgpResponse proto.InternalMessageInfo

func (m *GetBgpResponse) GetGlobal() *Global {
	if m != nil {
		return m.Global
	}
	return nil
}

type AddPeerRequest struct {
	Peer                 *Peer    `protobuf:"bytes,1,opt,name=peer,proto3" json:"peer,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddPeerRequest) Reset()         { *m = AddPeerRequest{} }
func (m *AddPeerRequest) String() string { return proto.CompactTextString(m) }
func (*AddPeerRequest) ProtoMessage()    {}
func (*AddPeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{4}
}

func (m *AddPeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPeerRequest.Unmarshal(m, b)
}
func (m *AddPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPeerRequest.Marshal(b, m, deterministic)
}
func (m *AddPeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPeerRequest.Merge(m, src)
}
func (m *AddPeerRequest) XXX_Size() int {
	return xxx_messageInfo_AddPeerRequest.Size(m)
}
func (m *AddPeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPeerRequest proto.InternalMessageInfo

func (m *AddPeerRequest) GetPeer() *Peer {
	if m != nil {
		return m.Peer
	}
	return nil
}

type DeletePeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Interface            string   `protobuf:"bytes,2,opt,name=interface,proto3" json:"interface,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeletePeerRequest) Reset()         { *m = DeletePeerRequest{} }
func (m *DeletePeerRequest) String() string { return proto.CompactTextString(m) }
func (*DeletePeerRequest) ProtoMessage()    {}
func (*DeletePeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{5}
}

func (m *DeletePeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeletePeerRequest.Unmarshal(m, b)
}
func (m *DeletePeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeletePeerRequest.Marshal(b, m, deterministic)
}
func (m *DeletePeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeletePeerRequest.Merge(m, src)
}
func (m *DeletePeerRequest) XXX_Size() int {
	return xxx_messageInfo_DeletePeerRequest.Size(m)
}
func (m *DeletePeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeletePeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeletePeerRequest proto.InternalMessageInfo

func (m *DeletePeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *DeletePeerRequest) GetInterface() string {
	if m != nil {
		return m.Interface
	}
	return ""
}

type ListPeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	EnableAdvertised     bool     `protobuf:"varint,2,opt,name=enableAdvertised,proto3" json:"enableAdvertised,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPeerRequest) Reset()         { *m = ListPeerRequest{} }
func (m *ListPeerRequest) String() string { return proto.CompactTextString(m) }
func (*ListPeerRequest) ProtoMessage()    {}
func (*ListPeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{6}
}

func (m *ListPeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPeerRequest.Unmarshal(m, b)
}
func (m *ListPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPeerRequest.Marshal(b, m, deterministic)
}
func (m *ListPeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPeerRequest.Merge(m, src)
}
func (m *ListPeerRequest) XXX_Size() int {
	return xxx_messageInfo_ListPeerRequest.Size(m)
}
func (m *ListPeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListPeerRequest proto.InternalMessageInfo

func (m *ListPeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *ListPeerRequest) GetEnableAdvertised() bool {
	if m != nil {
		return m.EnableAdvertised
	}
	return false
}

type ListPeerResponse struct {
	Peer                 *Peer    `protobuf:"bytes,1,opt,name=peer,proto3" json:"peer,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPeerResponse) Reset()         { *m = ListPeerResponse{} }
func (m *ListPeerResponse) String() string { return proto.CompactTextString(m) }
func (*ListPeerResponse) ProtoMessage()    {}
func (*ListPeerResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{7}
}

func (m *ListPeerResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPeerResponse.Unmarshal(m, b)
}
func (m *ListPeerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPeerResponse.Marshal(b, m, deterministic)
}
func (m *ListPeerResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPeerResponse.Merge(m, src)
}
func (m *ListPeerResponse) XXX_Size() int {
	return xxx_messageInfo_ListPeerResponse.Size(m)
}
func (m *ListPeerResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPeerResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListPeerResponse proto.InternalMessageInfo

func (m *ListPeerResponse) GetPeer() *Peer {
	if m != nil {
		return m.Peer
	}
	return nil
}

type UpdatePeerRequest struct {
	Peer *Peer `protobuf:"bytes,1,opt,name=peer,proto3" json:"peer,omitempty"`
	// Calls SoftResetIn after updating the peer configuration if needed.
	DoSoftResetIn        bool     `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn,proto3" json:"do_soft_reset_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdatePeerRequest) Reset()         { *m = UpdatePeerRequest{} }
func (m *UpdatePeerRequest) String() string { return proto.CompactTextString(m) }
func (*UpdatePeerRequest) ProtoMessage()    {}
func (*UpdatePeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{8}
}

func (m *UpdatePeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdatePeerRequest.Unmarshal(m, b)
}
func (m *UpdatePeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdatePeerRequest.Marshal(b, m, deterministic)
}
func (m *UpdatePeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdatePeerRequest.Merge(m, src)
}
func (m *UpdatePeerRequest) XXX_Size() int {
	return xxx_messageInfo_UpdatePeerRequest.Size(m)
}
func (m *UpdatePeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdatePeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UpdatePeerRequest proto.InternalMessageInfo

func (m *UpdatePeerRequest) GetPeer() *Peer {
	if m != nil {
		return m.Peer
	}
	return nil
}

func (m *UpdatePeerRequest) GetDoSoftResetIn() bool {
	if m != nil {
		return m.DoSoftResetIn
	}
	return false
}

type UpdatePeerResponse struct {
	// Indicates whether calling SoftResetIn is required due to this update. If
	// "true" is set, the client should call SoftResetIn manually. If
	// "do_soft_reset_in = true" is set in the request, always returned with
	// "false".
	NeedsSoftResetIn     bool     `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn,proto3" json:"needs_soft_reset_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdatePeerResponse) Reset()         { *m = UpdatePeerResponse{} }
func (m *UpdatePeerResponse) String() string { return proto.CompactTextString(m) }
func (*UpdatePeerResponse) ProtoMessage()    {}
func (*UpdatePeerResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{9}
}

func (m *UpdatePeerResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdatePeerResponse.Unmarshal(m, b)
}
func (m *UpdatePeerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdatePeerResponse.Marshal(b, m, deterministic)
}
func (m *UpdatePeerResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdatePeerResponse.Merge(m, src)
}
func (m *UpdatePeerResponse) XXX_Size() int {
	return xxx_messageInfo_UpdatePeerResponse.Size(m)
}
func (m *UpdatePeerResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdatePeerResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UpdatePeerResponse proto.InternalMessageInfo

func (m *UpdatePeerResponse) GetNeedsSoftResetIn() bool {
	if m != nil {
		return m.NeedsSoftResetIn
	}
	return false
}

type ResetPeerRequest struct {
	Address              string                              `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Communication        string                              `protobuf:"bytes,2,opt,name=communication,proto3" json:"communication,omitempty"`
	Soft                 bool                                `protobuf:"varint,3,opt,name=soft,proto3" json:"soft,omitempty"`
	Direction            ResetPeerRequest_SoftResetDirection `protobuf:"varint,4,opt,name=direction,proto3,enum=gobgpapi.ResetPeerRequest_SoftResetDirection" json:"direction,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                            `json:"-"`
	XXX_unrecognized     []byte                              `json:"-"`
	XXX_sizecache        int32                               `json:"-"`
}

func (m *ResetPeerRequest) Reset()         { *m = ResetPeerRequest{} }
func (m *ResetPeerRequest) String() string { return proto.CompactTextString(m) }
func (*ResetPeerRequest) ProtoMessage()    {}
func (*ResetPeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{10}
}

func (m *ResetPeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ResetPeerRequest.Unmarshal(m, b)
}
func (m *ResetPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ResetPeerRequest.Marshal(b, m, deterministic)
}
func (m *ResetPeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ResetPeerRequest.Merge(m, src)
}
func (m *ResetPeerRequest) XXX_Size() int {
	return xxx_messageInfo_ResetPeerRequest.Size(m)
}
func (m *ResetPeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ResetPeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ResetPeerRequest proto.InternalMessageInfo

func (m *ResetPeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *ResetPeerRequest) GetCommunication() string {
	if m != nil {
		return m.Communication
	}
	return ""
}

func (m *ResetPeerRequest) GetSoft() bool {
	if m != nil {
		return m.Soft
	}
	return false
}

func (m *ResetPeerRequest) GetDirection() ResetPeerRequest_SoftResetDirection {
	if m != nil {
		return m.Direction
	}
	return ResetPeerRequest_IN
}

type ShutdownPeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Communication        string   `protobuf:"bytes,2,opt,name=communication,proto3" json:"communication,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ShutdownPeerRequest) Reset()         { *m = ShutdownPeerRequest{} }
func (m *ShutdownPeerRequest) String() string { return proto.CompactTextString(m) }
func (*ShutdownPeerRequest) ProtoMessage()    {}
func (*ShutdownPeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{11}
}

func (m *ShutdownPeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ShutdownPeerRequest.Unmarshal(m, b)
}
func (m *ShutdownPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ShutdownPeerRequest.Marshal(b, m, deterministic)
}
func (m *ShutdownPeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ShutdownPeerRequest.Merge(m, src)
}
func (m *ShutdownPeerRequest) XXX_Size() int {
	return xxx_messageInfo_ShutdownPeerRequest.Size(m)
}
func (m *ShutdownPeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ShutdownPeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ShutdownPeerRequest proto.InternalMessageInfo

func (m *ShutdownPeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *ShutdownPeerRequest) GetCommunication() string {
	if m != nil {
		return m.Communication
	}
	return ""
}

type EnablePeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EnablePeerRequest) Reset()         { *m = EnablePeerRequest{} }
func (m *EnablePeerRequest) String() string { return proto.CompactTextString(m) }
func (*EnablePeerRequest) ProtoMessage()    {}
func (*EnablePeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{12}
}

func (m *EnablePeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EnablePeerRequest.Unmarshal(m, b)
}
func (m *EnablePeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EnablePeerRequest.Marshal(b, m, deterministic)
}
func (m *EnablePeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EnablePeerRequest.Merge(m, src)
}
func (m *EnablePeerRequest) XXX_Size() int {
	return xxx_messageInfo_EnablePeerRequest.Size(m)
}
func (m *EnablePeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_EnablePeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_EnablePeerRequest proto.InternalMessageInfo

func (m *EnablePeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

type DisablePeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Communication        string   `protobuf:"bytes,2,opt,name=communication,proto3" json:"communication,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DisablePeerRequest) Reset()         { *m = DisablePeerRequest{} }
func (m *DisablePeerRequest) String() string { return proto.CompactTextString(m) }
func (*DisablePeerRequest) ProtoMessage()    {}
func (*DisablePeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{13}
}

func (m *DisablePeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DisablePeerRequest.Unmarshal(m, b)
}
func (m *DisablePeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DisablePeerRequest.Marshal(b, m, deterministic)
}
func (m *DisablePeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DisablePeerRequest.Merge(m, src)
}
func (m *DisablePeerRequest) XXX_Size() int {
	return xxx_messageInfo_DisablePeerRequest.Size(m)
}
func (m *DisablePeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DisablePeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DisablePeerRequest proto.InternalMessageInfo

func (m *DisablePeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *DisablePeerRequest) GetCommunication() string {
	if m != nil {
		return m.Communication
	}
	return ""
}

type MonitorPeerRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Current              bool     `protobuf:"varint,2,opt,name=current,proto3" json:"current,omitempty"`
	InitialState         bool     `protobuf:"varint,3,opt,name=initial_state,json=initialState,proto3" json:"initial_state,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MonitorPeerRequest) Reset()         { *m = MonitorPeerRequest{} }
func (m *MonitorPeerRequest) String() string { return proto.CompactTextString(m) }
func (*MonitorPeerRequest) ProtoMessage()    {}
func (*MonitorPeerRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{14}
}

func (m *MonitorPeerRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MonitorPeerRequest.Unmarshal(m, b)
}
func (m *MonitorPeerRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MonitorPeerRequest.Marshal(b, m, deterministic)
}
func (m *MonitorPeerRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MonitorPeerRequest.Merge(m, src)
}
func (m *MonitorPeerRequest) XXX_Size() int {
	return xxx_messageInfo_MonitorPeerRequest.Size(m)
}
func (m *MonitorPeerRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_MonitorPeerRequest.DiscardUnknown(m)
}

var xxx_messageInfo_MonitorPeerRequest proto.InternalMessageInfo

func (m *MonitorPeerRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *MonitorPeerRequest) GetCurrent() bool {
	if m != nil {
		return m.Current
	}
	return false
}

func (m *MonitorPeerRequest) GetInitialState() bool {
	if m != nil {
		return m.InitialState
	}
	return false
}

type MonitorPeerResponse struct {
	Peer                 *Peer    `protobuf:"bytes,1,opt,name=peer,proto3" json:"peer,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MonitorPeerResponse) Reset()         { *m = MonitorPeerResponse{} }
func (m *MonitorPeerResponse) String() string { return proto.CompactTextString(m) }
func (*MonitorPeerResponse) ProtoMessage()    {}
func (*MonitorPeerResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{15}
}

func (m *MonitorPeerResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MonitorPeerResponse.Unmarshal(m, b)
}
func (m *MonitorPeerResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MonitorPeerResponse.Marshal(b, m, deterministic)
}
func (m *MonitorPeerResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MonitorPeerResponse.Merge(m, src)
}
func (m *MonitorPeerResponse) XXX_Size() int {
	return xxx_messageInfo_MonitorPeerResponse.Size(m)
}
func (m *MonitorPeerResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_MonitorPeerResponse.DiscardUnknown(m)
}

var xxx_messageInfo_MonitorPeerResponse proto.InternalMessageInfo

func (m *MonitorPeerResponse) GetPeer() *Peer {
	if m != nil {
		return m.Peer
	}
	return nil
}

type AddPeerGroupRequest struct {
	PeerGroup            *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *AddPeerGroupRequest) Reset()         { *m = AddPeerGroupRequest{} }
func (m *AddPeerGroupRequest) String() string { return proto.CompactTextString(m) }
func (*AddPeerGroupRequest) ProtoMessage()    {}
func (*AddPeerGroupRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{16}
}

func (m *AddPeerGroupRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPeerGroupRequest.Unmarshal(m, b)
}
func (m *AddPeerGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPeerGroupRequest.Marshal(b, m, deterministic)
}
func (m *AddPeerGroupRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPeerGroupRequest.Merge(m, src)
}
func (m *AddPeerGroupRequest) XXX_Size() int {
	return xxx_messageInfo_AddPeerGroupRequest.Size(m)
}
func (m *AddPeerGroupRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPeerGroupRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPeerGroupRequest proto.InternalMessageInfo

func (m *AddPeerGroupRequest) GetPeerGroup() *PeerGroup {
	if m != nil {
		return m.PeerGroup
	}
	return nil
}

type DeletePeerGroupRequest struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeletePeerGroupRequest) Reset()         { *m = DeletePeerGroupRequest{} }
func (m *DeletePeerGroupRequest) String() string { return proto.CompactTextString(m) }
func (*DeletePeerGroupRequest) ProtoMessage()    {}
func (*DeletePeerGroupRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{17}
}

func (m *DeletePeerGroupRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeletePeerGroupRequest.Unmarshal(m, b)
}
func (m *DeletePeerGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeletePeerGroupRequest.Marshal(b, m, deterministic)
}
func (m *DeletePeerGroupRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeletePeerGroupRequest.Merge(m, src)
}
func (m *DeletePeerGroupRequest) XXX_Size() int {
	return xxx_messageInfo_DeletePeerGroupRequest.Size(m)
}
func (m *DeletePeerGroupRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeletePeerGroupRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeletePeerGroupRequest proto.InternalMessageInfo

func (m *DeletePeerGroupRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type UpdatePeerGroupRequest struct {
	PeerGroup            *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	DoSoftResetIn        bool       `protobuf:"varint,2,opt,name=do_soft_reset_in,json=doSoftResetIn,proto3" json:"do_soft_reset_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *UpdatePeerGroupRequest) Reset()         { *m = UpdatePeerGroupRequest{} }
func (m *UpdatePeerGroupRequest) String() string { return proto.CompactTextString(m) }
func (*UpdatePeerGroupRequest) ProtoMessage()    {}
func (*UpdatePeerGroupRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{18}
}

func (m *UpdatePeerGroupRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdatePeerGroupRequest.Unmarshal(m, b)
}
func (m *UpdatePeerGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdatePeerGroupRequest.Marshal(b, m, deterministic)
}
func (m *UpdatePeerGroupRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdatePeerGroupRequest.Merge(m, src)
}
func (m *UpdatePeerGroupRequest) XXX_Size() int {
	return xxx_messageInfo_UpdatePeerGroupRequest.Size(m)
}
func (m *UpdatePeerGroupRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdatePeerGroupRequest.DiscardUnknown(m)
}

var xxx_messageInfo_UpdatePeerGroupRequest proto.InternalMessageInfo

func (m *UpdatePeerGroupRequest) GetPeerGroup() *PeerGroup {
	if m != nil {
		return m.PeerGroup
	}
	return nil
}

func (m *UpdatePeerGroupRequest) GetDoSoftResetIn() bool {
	if m != nil {
		return m.DoSoftResetIn
	}
	return false
}

type UpdatePeerGroupResponse struct {
	NeedsSoftResetIn     bool     `protobuf:"varint,1,opt,name=needs_soft_reset_in,json=needsSoftResetIn,proto3" json:"needs_soft_reset_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UpdatePeerGroupResponse) Reset()         { *m = UpdatePeerGroupResponse{} }
func (m *UpdatePeerGroupResponse) String() string { return proto.CompactTextString(m) }
func (*UpdatePeerGroupResponse) ProtoMessage()    {}
func (*UpdatePeerGroupResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{19}
}

func (m *UpdatePeerGroupResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UpdatePeerGroupResponse.Unmarshal(m, b)
}
func (m *UpdatePeerGroupResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UpdatePeerGroupResponse.Marshal(b, m, deterministic)
}
func (m *UpdatePeerGroupResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UpdatePeerGroupResponse.Merge(m, src)
}
func (m *UpdatePeerGroupResponse) XXX_Size() int {
	return xxx_messageInfo_UpdatePeerGroupResponse.Size(m)
}
func (m *UpdatePeerGroupResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_UpdatePeerGroupResponse.DiscardUnknown(m)
}

var xxx_messageInfo_UpdatePeerGroupResponse proto.InternalMessageInfo

func (m *UpdatePeerGroupResponse) GetNeedsSoftResetIn() bool {
	if m != nil {
		return m.NeedsSoftResetIn
	}
	return false
}

type ListPeerGroupRequest struct {
	PeerGroupName        string   `protobuf:"bytes,1,opt,name=peer_group_name,json=peerGroupName,proto3" json:"peer_group_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPeerGroupRequest) Reset()         { *m = ListPeerGroupRequest{} }
func (m *ListPeerGroupRequest) String() string { return proto.CompactTextString(m) }
func (*ListPeerGroupRequest) ProtoMessage()    {}
func (*ListPeerGroupRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{20}
}

func (m *ListPeerGroupRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPeerGroupRequest.Unmarshal(m, b)
}
func (m *ListPeerGroupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPeerGroupRequest.Marshal(b, m, deterministic)
}
func (m *ListPeerGroupRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPeerGroupRequest.Merge(m, src)
}
func (m *ListPeerGroupRequest) XXX_Size() int {
	return xxx_messageInfo_ListPeerGroupRequest.Size(m)
}
func (m *ListPeerGroupRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPeerGroupRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListPeerGroupRequest proto.InternalMessageInfo

func (m *ListPeerGroupRequest) GetPeerGroupName() string {
	if m != nil {
		return m.PeerGroupName
	}
	return ""
}

type ListPeerGroupResponse struct {
	PeerGroup            *PeerGroup `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *ListPeerGroupResponse) Reset()         { *m = ListPeerGroupResponse{} }
func (m *ListPeerGroupResponse) String() string { return proto.CompactTextString(m) }
func (*ListPeerGroupResponse) ProtoMessage()    {}
func (*ListPeerGroupResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{21}
}

func (m *ListPeerGroupResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPeerGroupResponse.Unmarshal(m, b)
}
func (m *ListPeerGroupResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPeerGroupResponse.Marshal(b, m, deterministic)
}
func (m *ListPeerGroupResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPeerGroupResponse.Merge(m, src)
}
func (m *ListPeerGroupResponse) XXX_Size() int {
	return xxx_messageInfo_ListPeerGroupResponse.Size(m)
}
func (m *ListPeerGroupResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPeerGroupResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListPeerGroupResponse proto.InternalMessageInfo

func (m *ListPeerGroupResponse) GetPeerGroup() *PeerGroup {
	if m != nil {
		return m.PeerGroup
	}
	return nil
}

type AddDynamicNeighborRequest struct {
	DynamicNeighbor      *DynamicNeighbor `protobuf:"bytes,1,opt,name=dynamic_neighbor,json=dynamicNeighbor,proto3" json:"dynamic_neighbor,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *AddDynamicNeighborRequest) Reset()         { *m = AddDynamicNeighborRequest{} }
func (m *AddDynamicNeighborRequest) String() string { return proto.CompactTextString(m) }
func (*AddDynamicNeighborRequest) ProtoMessage()    {}
func (*AddDynamicNeighborRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{22}
}

func (m *AddDynamicNeighborRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddDynamicNeighborRequest.Unmarshal(m, b)
}
func (m *AddDynamicNeighborRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddDynamicNeighborRequest.Marshal(b, m, deterministic)
}
func (m *AddDynamicNeighborRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddDynamicNeighborRequest.Merge(m, src)
}
func (m *AddDynamicNeighborRequest) XXX_Size() int {
	return xxx_messageInfo_AddDynamicNeighborRequest.Size(m)
}
func (m *AddDynamicNeighborRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddDynamicNeighborRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddDynamicNeighborRequest proto.InternalMessageInfo

func (m *AddDynamicNeighborRequest) GetDynamicNeighbor() *DynamicNeighbor {
	if m != nil {
		return m.DynamicNeighbor
	}
	return nil
}

type DeleteDynamicNeighborRequest struct {
	Prefix               string   `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	PeerGroup            string   `protobuf:"bytes,2,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteDynamicNeighborRequest) Reset()         { *m = DeleteDynamicNeighborRequest{} }
func (m *DeleteDynamicNeighborRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteDynamicNeighborRequest) ProtoMessage()    {}
func (*DeleteDynamicNeighborRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{23}
}

func (m *DeleteDynamicNeighborRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteDynamicNeighborRequest.Unmarshal(m, b)
}
func (m *DeleteDynamicNeighborRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteDynamicNeighborRequest.Marshal(b, m, deterministic)
}
func (m *DeleteDynamicNeighborRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteDynamicNeighborRequest.Merge(m, src)
}
func (m *DeleteDynamicNeighborRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteDynamicNeighborRequest.Size(m)
}
func (m *DeleteDynamicNeighborRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteDynamicNeighborRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteDynamicNeighborRequest proto.InternalMessageInfo

func (m *DeleteDynamicNeighborRequest) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *DeleteDynamicNeighborRequest) GetPeerGroup() string {
	if m != nil {
		return m.PeerGroup
	}
	return ""
}

type ListDynamicNeighborRequest struct {
	PeerGroup            string   `protobuf:"bytes,1,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListDynamicNeighborRequest) Reset()         { *m = ListDynamicNeighborRequest{} }
func (m *ListDynamicNeighborRequest) String() string { return proto.CompactTextString(m) }
func (*ListDynamicNeighborRequest) ProtoMessage()    {}
func (*ListDynamicNeighborRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{24}
}

func (m *ListDynamicNeighborRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListDynamicNeighborRequest.Unmarshal(m, b)
}
func (m *ListDynamicNeighborRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListDynamicNeighborRequest.Marshal(b, m, deterministic)
}
func (m *ListDynamicNeighborRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListDynamicNeighborRequest.Merge(m, src)
}
func (m *ListDynamicNeighborRequest) XXX_Size() int {
	return xxx_messageInfo_ListDynamicNeighborRequest.Size(m)
}
func (m *ListDynamicNeighborRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListDynamicNeighborRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListDynamicNeighborRequest proto.InternalMessageInfo

func (m *ListDynamicNeighborRequest) GetPeerGroup() string {
	if m != nil {
		return m.PeerGroup
	}
	return ""
}

type ListDynamicNeighborResponse struct {
	DynamicNeighbor      *DynamicNeighbor `protobuf:"bytes,1,opt,name=dynamic_neighbor,json=dynamicNeighbor,proto3" json:"dynamic_neighbor,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *ListDynamicNeighborResponse) Reset()         { *m = ListDynamicNeighborResponse{} }
func (m *ListDynamicNeighborResponse) String() string { return proto.CompactTextString(m) }
func (*ListDynamicNeighborResponse) ProtoMessage()    {}
func (*ListDynamicNeighborResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{25}
}

func (m *ListDynamicNeighborResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListDynamicNeighborResponse.Unmarshal(m, b)
}
func (m *ListDynamicNeighborResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListDynamicNeighborResponse.Marshal(b, m, deterministic)
}
func (m *ListDynamicNeighborResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListDynamicNeighborResponse.Merge(m, src)
}
func (m *ListDynamicNeighborResponse) XXX_Size() int {
	return xxx_messageInfo_ListDynamicNeighborResponse.Size(m)
}
func (m *ListDynamicNeighborResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListDynamicNeighborResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListDynamicNeighborResponse proto.InternalMessageInfo

func (m *ListDynamicNeighborResponse) GetDynamicNeighbor() *DynamicNeighbor {
	if m != nil {
		return m.DynamicNeighbor
	}
	return nil
}

type AddPathRequest struct {
	TableType            TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	VrfId                string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
	Path                 *Path     `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *AddPathRequest) Reset()         { *m = AddPathRequest{} }
func (m *AddPathRequest) String() string { return proto.CompactTextString(m) }
func (*AddPathRequest) ProtoMessage()    {}
func (*AddPathRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{26}
}

func (m *AddPathRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPathRequest.Unmarshal(m, b)
}
func (m *AddPathRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPathRequest.Marshal(b, m, deterministic)
}
func (m *AddPathRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPathRequest.Merge(m, src)
}
func (m *AddPathRequest) XXX_Size() int {
	return xxx_messageInfo_AddPathRequest.Size(m)
}
func (m *AddPathRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPathRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPathRequest proto.InternalMessageInfo

func (m *AddPathRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *AddPathRequest) GetVrfId() string {
	if m != nil {
		return m.VrfId
	}
	return ""
}

func (m *AddPathRequest) GetPath() *Path {
	if m != nil {
		return m.Path
	}
	return nil
}

type AddPathResponse struct {
	Uuid                 []byte   `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddPathResponse) Reset()         { *m = AddPathResponse{} }
func (m *AddPathResponse) String() string { return proto.CompactTextString(m) }
func (*AddPathResponse) ProtoMessage()    {}
func (*AddPathResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{27}
}

func (m *AddPathResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPathResponse.Unmarshal(m, b)
}
func (m *AddPathResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPathResponse.Marshal(b, m, deterministic)
}
func (m *AddPathResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPathResponse.Merge(m, src)
}
func (m *AddPathResponse) XXX_Size() int {
	return xxx_messageInfo_AddPathResponse.Size(m)
}
func (m *AddPathResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPathResponse.DiscardUnknown(m)
}

var xxx_messageInfo_AddPathResponse proto.InternalMessageInfo

func (m *AddPathResponse) GetUuid() []byte {
	if m != nil {
		return m.Uuid
	}
	return nil
}

type DeletePathRequest struct {
	TableType            TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	VrfId                string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
	Family               *Family   `protobuf:"bytes,3,opt,name=family,proto3" json:"family,omitempty"`
	Path                 *Path     `protobuf:"bytes,4,opt,name=path,proto3" json:"path,omitempty"`
	Uuid                 []byte    `protobuf:"bytes,5,opt,name=uuid,proto3" json:"uuid,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *DeletePathRequest) Reset()         { *m = DeletePathRequest{} }
func (m *DeletePathRequest) String() string { return proto.CompactTextString(m) }
func (*DeletePathRequest) ProtoMessage()    {}
func (*DeletePathRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{28}
}

func (m *DeletePathRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeletePathRequest.Unmarshal(m, b)
}
func (m *DeletePathRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeletePathRequest.Marshal(b, m, deterministic)
}
func (m *DeletePathRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeletePathRequest.Merge(m, src)
}
func (m *DeletePathRequest) XXX_Size() int {
	return xxx_messageInfo_DeletePathRequest.Size(m)
}
func (m *DeletePathRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeletePathRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeletePathRequest proto.InternalMessageInfo

func (m *DeletePathRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *DeletePathRequest) GetVrfId() string {
	if m != nil {
		return m.VrfId
	}
	return ""
}

func (m *DeletePathRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *DeletePathRequest) GetPath() *Path {
	if m != nil {
		return m.Path
	}
	return nil
}

func (m *DeletePathRequest) GetUuid() []byte {
	if m != nil {
		return m.Uuid
	}
	return nil
}

type ListPathRequest struct {
	TableType             TableType                `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	Name                  string                   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Family                *Family                  `protobuf:"bytes,3,opt,name=family,proto3" json:"family,omitempty"`
	Prefixes              []*TableLookupPrefix     `protobuf:"bytes,4,rep,name=prefixes,proto3" json:"prefixes,omitempty"`
	SortType              ListPathRequest_SortType `protobuf:"varint,5,opt,name=sort_type,json=sortType,proto3,enum=gobgpapi.ListPathRequest_SortType" json:"sort_type,omitempty"`
	EnableFiltered        bool                     `protobuf:"varint,6,opt,name=enable_filtered,json=enableFiltered,proto3" json:"enable_filtered,omitempty"`
	EnableNlriBinary      bool                     `protobuf:"varint,7,opt,name=enable_nlri_binary,json=enableNlriBinary,proto3" json:"enable_nlri_binary,omitempty"`
	EnableAttributeBinary bool                     `protobuf:"varint,8,opt,name=enable_attribute_binary,json=enableAttributeBinary,proto3" json:"enable_attribute_binary,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}                 `json:"-"`
	XXX_unrecognized      []byte                   `json:"-"`
	XXX_sizecache         int32                    `json:"-"`
}

func (m *ListPathRequest) Reset()         { *m = ListPathRequest{} }
func (m *ListPathRequest) String() string { return proto.CompactTextString(m) }
func (*ListPathRequest) ProtoMessage()    {}
func (*ListPathRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{29}
}

func (m *ListPathRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPathRequest.Unmarshal(m, b)
}
func (m *ListPathRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPathRequest.Marshal(b, m, deterministic)
}
func (m *ListPathRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPathRequest.Merge(m, src)
}
func (m *ListPathRequest) XXX_Size() int {
	return xxx_messageInfo_ListPathRequest.Size(m)
}
func (m *ListPathRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPathRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListPathRequest proto.InternalMessageInfo

func (m *ListPathRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *ListPathRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *ListPathRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *ListPathRequest) GetPrefixes() []*TableLookupPrefix {
	if m != nil {
		return m.Prefixes
	}
	return nil
}

func (m *ListPathRequest) GetSortType() ListPathRequest_SortType {
	if m != nil {
		return m.SortType
	}
	return ListPathRequest_NONE
}

func (m *ListPathRequest) GetEnableFiltered() bool {
	if m != nil {
		return m.EnableFiltered
	}
	return false
}

func (m *ListPathRequest) GetEnableNlriBinary() bool {
	if m != nil {
		return m.EnableNlriBinary
	}
	return false
}

func (m *ListPathRequest) GetEnableAttributeBinary() bool {
	if m != nil {
		return m.EnableAttributeBinary
	}
	return false
}

type ListPathResponse struct {
	Destination          *Destination `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *ListPathResponse) Reset()         { *m = ListPathResponse{} }
func (m *ListPathResponse) String() string { return proto.CompactTextString(m) }
func (*ListPathResponse) ProtoMessage()    {}
func (*ListPathResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{30}
}

func (m *ListPathResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPathResponse.Unmarshal(m, b)
}
func (m *ListPathResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPathResponse.Marshal(b, m, deterministic)
}
func (m *ListPathResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPathResponse.Merge(m, src)
}
func (m *ListPathResponse) XXX_Size() int {
	return xxx_messageInfo_ListPathResponse.Size(m)
}
func (m *ListPathResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPathResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListPathResponse proto.InternalMessageInfo

func (m *ListPathResponse) GetDestination() *Destination {
	if m != nil {
		return m.Destination
	}
	return nil
}

type AddPathStreamRequest struct {
	TableType            TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	VrfId                string    `protobuf:"bytes,2,opt,name=vrf_id,json=vrfId,proto3" json:"vrf_id,omitempty"`
	Paths                []*Path   `protobuf:"bytes,3,rep,name=paths,proto3" json:"paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *AddPathStreamRequest) Reset()         { *m = AddPathStreamRequest{} }
func (m *AddPathStreamRequest) String() string { return proto.CompactTextString(m) }
func (*AddPathStreamRequest) ProtoMessage()    {}
func (*AddPathStreamRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{31}
}

func (m *AddPathStreamRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPathStreamRequest.Unmarshal(m, b)
}
func (m *AddPathStreamRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPathStreamRequest.Marshal(b, m, deterministic)
}
func (m *AddPathStreamRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPathStreamRequest.Merge(m, src)
}
func (m *AddPathStreamRequest) XXX_Size() int {
	return xxx_messageInfo_AddPathStreamRequest.Size(m)
}
func (m *AddPathStreamRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPathStreamRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPathStreamRequest proto.InternalMessageInfo

func (m *AddPathStreamRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *AddPathStreamRequest) GetVrfId() string {
	if m != nil {
		return m.VrfId
	}
	return ""
}

func (m *AddPathStreamRequest) GetPaths() []*Path {
	if m != nil {
		return m.Paths
	}
	return nil
}

type GetTableRequest struct {
	TableType            TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	Family               *Family   `protobuf:"bytes,2,opt,name=family,proto3" json:"family,omitempty"`
	Name                 string    `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *GetTableRequest) Reset()         { *m = GetTableRequest{} }
func (m *GetTableRequest) String() string { return proto.CompactTextString(m) }
func (*GetTableRequest) ProtoMessage()    {}
func (*GetTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{32}
}

func (m *GetTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTableRequest.Unmarshal(m, b)
}
func (m *GetTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTableRequest.Marshal(b, m, deterministic)
}
func (m *GetTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTableRequest.Merge(m, src)
}
func (m *GetTableRequest) XXX_Size() int {
	return xxx_messageInfo_GetTableRequest.Size(m)
}
func (m *GetTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_GetTableRequest proto.InternalMessageInfo

func (m *GetTableRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *GetTableRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *GetTableRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type GetTableResponse struct {
	NumDestination       uint64   `protobuf:"varint,1,opt,name=num_destination,json=numDestination,proto3" json:"num_destination,omitempty"`
	NumPath              uint64   `protobuf:"varint,2,opt,name=num_path,json=numPath,proto3" json:"num_path,omitempty"`
	NumAccepted          uint64   `protobuf:"varint,3,opt,name=num_accepted,json=numAccepted,proto3" json:"num_accepted,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GetTableResponse) Reset()         { *m = GetTableResponse{} }
func (m *GetTableResponse) String() string { return proto.CompactTextString(m) }
func (*GetTableResponse) ProtoMessage()    {}
func (*GetTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{33}
}

func (m *GetTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GetTableResponse.Unmarshal(m, b)
}
func (m *GetTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GetTableResponse.Marshal(b, m, deterministic)
}
func (m *GetTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GetTableResponse.Merge(m, src)
}
func (m *GetTableResponse) XXX_Size() int {
	return xxx_messageInfo_GetTableResponse.Size(m)
}
func (m *GetTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_GetTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_GetTableResponse proto.InternalMessageInfo

func (m *GetTableResponse) GetNumDestination() uint64 {
	if m != nil {
		return m.NumDestination
	}
	return 0
}

func (m *GetTableResponse) GetNumPath() uint64 {
	if m != nil {
		return m.NumPath
	}
	return 0
}

func (m *GetTableResponse) GetNumAccepted() uint64 {
	if m != nil {
		return m.NumAccepted
	}
	return 0
}

type MonitorTableRequest struct {
	TableType            TableType `protobuf:"varint,1,opt,name=table_type,json=tableType,proto3,enum=gobgpapi.TableType" json:"table_type,omitempty"`
	Name                 string    `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Family               *Family   `protobuf:"bytes,3,opt,name=family,proto3" json:"family,omitempty"`
	Current              bool      `protobuf:"varint,4,opt,name=current,proto3" json:"current,omitempty"`
	PostPolicy           bool      `protobuf:"varint,5,opt,name=post_policy,json=postPolicy,proto3" json:"post_policy,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *MonitorTableRequest) Reset()         { *m = MonitorTableRequest{} }
func (m *MonitorTableRequest) String() string { return proto.CompactTextString(m) }
func (*MonitorTableRequest) ProtoMessage()    {}
func (*MonitorTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{34}
}

func (m *MonitorTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MonitorTableRequest.Unmarshal(m, b)
}
func (m *MonitorTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MonitorTableRequest.Marshal(b, m, deterministic)
}
func (m *MonitorTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MonitorTableRequest.Merge(m, src)
}
func (m *MonitorTableRequest) XXX_Size() int {
	return xxx_messageInfo_MonitorTableRequest.Size(m)
}
func (m *MonitorTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_MonitorTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_MonitorTableRequest proto.InternalMessageInfo

func (m *MonitorTableRequest) GetTableType() TableType {
	if m != nil {
		return m.TableType
	}
	return TableType_GLOBAL
}

func (m *MonitorTableRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *MonitorTableRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *MonitorTableRequest) GetCurrent() bool {
	if m != nil {
		return m.Current
	}
	return false
}

func (m *MonitorTableRequest) GetPostPolicy() bool {
	if m != nil {
		return m.PostPolicy
	}
	return false
}

type MonitorTableResponse struct {
	Path                 *Path    `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MonitorTableResponse) Reset()         { *m = MonitorTableResponse{} }
func (m *MonitorTableResponse) String() string { return proto.CompactTextString(m) }
func (*MonitorTableResponse) ProtoMessage()    {}
func (*MonitorTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{35}
}

func (m *MonitorTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MonitorTableResponse.Unmarshal(m, b)
}
func (m *MonitorTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MonitorTableResponse.Marshal(b, m, deterministic)
}
func (m *MonitorTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MonitorTableResponse.Merge(m, src)
}
func (m *MonitorTableResponse) XXX_Size() int {
	return xxx_messageInfo_MonitorTableResponse.Size(m)
}
func (m *MonitorTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_MonitorTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_MonitorTableResponse proto.InternalMessageInfo

func (m *MonitorTableResponse) GetPath() *Path {
	if m != nil {
		return m.Path
	}
	return nil
}

type AddVrfRequest struct {
	Vrf                  *Vrf     `protobuf:"bytes,1,opt,name=vrf,proto3" json:"vrf,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddVrfRequest) Reset()         { *m = AddVrfRequest{} }
func (m *AddVrfRequest) String() string { return proto.CompactTextString(m) }
func (*AddVrfRequest) ProtoMessage()    {}
func (*AddVrfRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{36}
}

func (m *AddVrfRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddVrfRequest.Unmarshal(m, b)
}
func (m *AddVrfRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddVrfRequest.Marshal(b, m, deterministic)
}
func (m *AddVrfRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddVrfRequest.Merge(m, src)
}
func (m *AddVrfRequest) XXX_Size() int {
	return xxx_messageInfo_AddVrfRequest.Size(m)
}
func (m *AddVrfRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddVrfRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddVrfRequest proto.InternalMessageInfo

func (m *AddVrfRequest) GetVrf() *Vrf {
	if m != nil {
		return m.Vrf
	}
	return nil
}

type DeleteVrfRequest struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteVrfRequest) Reset()         { *m = DeleteVrfRequest{} }
func (m *DeleteVrfRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteVrfRequest) ProtoMessage()    {}
func (*DeleteVrfRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{37}
}

func (m *DeleteVrfRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteVrfRequest.Unmarshal(m, b)
}
func (m *DeleteVrfRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteVrfRequest.Marshal(b, m, deterministic)
}
func (m *DeleteVrfRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteVrfRequest.Merge(m, src)
}
func (m *DeleteVrfRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteVrfRequest.Size(m)
}
func (m *DeleteVrfRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteVrfRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteVrfRequest proto.InternalMessageInfo

func (m *DeleteVrfRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type ListVrfRequest struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListVrfRequest) Reset()         { *m = ListVrfRequest{} }
func (m *ListVrfRequest) String() string { return proto.CompactTextString(m) }
func (*ListVrfRequest) ProtoMessage()    {}
func (*ListVrfRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{38}
}

func (m *ListVrfRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListVrfRequest.Unmarshal(m, b)
}
func (m *ListVrfRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListVrfRequest.Marshal(b, m, deterministic)
}
func (m *ListVrfRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListVrfRequest.Merge(m, src)
}
func (m *ListVrfRequest) XXX_Size() int {
	return xxx_messageInfo_ListVrfRequest.Size(m)
}
func (m *ListVrfRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListVrfRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListVrfRequest proto.InternalMessageInfo

func (m *ListVrfRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type ListVrfResponse struct {
	Vrf                  *Vrf     `protobuf:"bytes,1,opt,name=vrf,proto3" json:"vrf,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListVrfResponse) Reset()         { *m = ListVrfResponse{} }
func (m *ListVrfResponse) String() string { return proto.CompactTextString(m) }
func (*ListVrfResponse) ProtoMessage()    {}
func (*ListVrfResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{39}
}

func (m *ListVrfResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListVrfResponse.Unmarshal(m, b)
}
func (m *ListVrfResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListVrfResponse.Marshal(b, m, deterministic)
}
func (m *ListVrfResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListVrfResponse.Merge(m, src)
}
func (m *ListVrfResponse) XXX_Size() int {
	return xxx_messageInfo_ListVrfResponse.Size(m)
}
func (m *ListVrfResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListVrfResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListVrfResponse proto.InternalMessageInfo

func (m *ListVrfResponse) GetVrf() *Vrf {
	if m != nil {
		return m.Vrf
	}
	return nil
}

type AddPolicyRequest struct {
	Policy *Policy `protobuf:"bytes,1,opt,name=policy,proto3" 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,proto3" json:"refer_existing_statements,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *AddPolicyRequest) Reset()         { *m = AddPolicyRequest{} }
func (m *AddPolicyRequest) String() string { return proto.CompactTextString(m) }
func (*AddPolicyRequest) ProtoMessage()    {}
func (*AddPolicyRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{40}
}

func (m *AddPolicyRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPolicyRequest.Unmarshal(m, b)
}
func (m *AddPolicyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPolicyRequest.Marshal(b, m, deterministic)
}
func (m *AddPolicyRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPolicyRequest.Merge(m, src)
}
func (m *AddPolicyRequest) XXX_Size() int {
	return xxx_messageInfo_AddPolicyRequest.Size(m)
}
func (m *AddPolicyRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPolicyRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPolicyRequest proto.InternalMessageInfo

func (m *AddPolicyRequest) GetPolicy() *Policy {
	if m != nil {
		return m.Policy
	}
	return nil
}

func (m *AddPolicyRequest) GetReferExistingStatements() bool {
	if m != nil {
		return m.ReferExistingStatements
	}
	return false
}

type DeletePolicyRequest struct {
	Policy *Policy `protobuf:"bytes,1,opt,name=policy,proto3" 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,proto3" json:"preserve_statements,omitempty"`
	All                  bool     `protobuf:"varint,3,opt,name=all,proto3" json:"all,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeletePolicyRequest) Reset()         { *m = DeletePolicyRequest{} }
func (m *DeletePolicyRequest) String() string { return proto.CompactTextString(m) }
func (*DeletePolicyRequest) ProtoMessage()    {}
func (*DeletePolicyRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{41}
}

func (m *DeletePolicyRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeletePolicyRequest.Unmarshal(m, b)
}
func (m *DeletePolicyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeletePolicyRequest.Marshal(b, m, deterministic)
}
func (m *DeletePolicyRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeletePolicyRequest.Merge(m, src)
}
func (m *DeletePolicyRequest) XXX_Size() int {
	return xxx_messageInfo_DeletePolicyRequest.Size(m)
}
func (m *DeletePolicyRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeletePolicyRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeletePolicyRequest proto.InternalMessageInfo

func (m *DeletePolicyRequest) GetPolicy() *Policy {
	if m != nil {
		return m.Policy
	}
	return nil
}

func (m *DeletePolicyRequest) GetPreserveStatements() bool {
	if m != nil {
		return m.PreserveStatements
	}
	return false
}

func (m *DeletePolicyRequest) GetAll() bool {
	if m != nil {
		return m.All
	}
	return false
}

type ListPolicyRequest struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPolicyRequest) Reset()         { *m = ListPolicyRequest{} }
func (m *ListPolicyRequest) String() string { return proto.CompactTextString(m) }
func (*ListPolicyRequest) ProtoMessage()    {}
func (*ListPolicyRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{42}
}

func (m *ListPolicyRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPolicyRequest.Unmarshal(m, b)
}
func (m *ListPolicyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPolicyRequest.Marshal(b, m, deterministic)
}
func (m *ListPolicyRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPolicyRequest.Merge(m, src)
}
func (m *ListPolicyRequest) XXX_Size() int {
	return xxx_messageInfo_ListPolicyRequest.Size(m)
}
func (m *ListPolicyRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPolicyRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListPolicyRequest proto.InternalMessageInfo

func (m *ListPolicyRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type ListPolicyResponse struct {
	Policy               *Policy  `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListPolicyResponse) Reset()         { *m = ListPolicyResponse{} }
func (m *ListPolicyResponse) String() string { return proto.CompactTextString(m) }
func (*ListPolicyResponse) ProtoMessage()    {}
func (*ListPolicyResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{43}
}

func (m *ListPolicyResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPolicyResponse.Unmarshal(m, b)
}
func (m *ListPolicyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPolicyResponse.Marshal(b, m, deterministic)
}
func (m *ListPolicyResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPolicyResponse.Merge(m, src)
}
func (m *ListPolicyResponse) XXX_Size() int {
	return xxx_messageInfo_ListPolicyResponse.Size(m)
}
func (m *ListPolicyResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPolicyResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListPolicyResponse proto.InternalMessageInfo

func (m *ListPolicyResponse) GetPolicy() *Policy {
	if m != nil {
		return m.Policy
	}
	return nil
}

type SetPoliciesRequest struct {
	DefinedSets          []*DefinedSet       `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets,proto3" json:"defined_sets,omitempty"`
	Policies             []*Policy           `protobuf:"bytes,2,rep,name=policies,proto3" json:"policies,omitempty"`
	Assignments          []*PolicyAssignment `protobuf:"bytes,3,rep,name=assignments,proto3" json:"assignments,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *SetPoliciesRequest) Reset()         { *m = SetPoliciesRequest{} }
func (m *SetPoliciesRequest) String() string { return proto.CompactTextString(m) }
func (*SetPoliciesRequest) ProtoMessage()    {}
func (*SetPoliciesRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{44}
}

func (m *SetPoliciesRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SetPoliciesRequest.Unmarshal(m, b)
}
func (m *SetPoliciesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SetPoliciesRequest.Marshal(b, m, deterministic)
}
func (m *SetPoliciesRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SetPoliciesRequest.Merge(m, src)
}
func (m *SetPoliciesRequest) XXX_Size() int {
	return xxx_messageInfo_SetPoliciesRequest.Size(m)
}
func (m *SetPoliciesRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_SetPoliciesRequest.DiscardUnknown(m)
}

var xxx_messageInfo_SetPoliciesRequest proto.InternalMessageInfo

func (m *SetPoliciesRequest) GetDefinedSets() []*DefinedSet {
	if m != nil {
		return m.DefinedSets
	}
	return nil
}

func (m *SetPoliciesRequest) GetPolicies() []*Policy {
	if m != nil {
		return m.Policies
	}
	return nil
}

func (m *SetPoliciesRequest) GetAssignments() []*PolicyAssignment {
	if m != nil {
		return m.Assignments
	}
	return nil
}

type AddDefinedSetRequest struct {
	DefinedSet           *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet,proto3" json:"defined_set,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *AddDefinedSetRequest) Reset()         { *m = AddDefinedSetRequest{} }
func (m *AddDefinedSetRequest) String() string { return proto.CompactTextString(m) }
func (*AddDefinedSetRequest) ProtoMessage()    {}
func (*AddDefinedSetRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{45}
}

func (m *AddDefinedSetRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddDefinedSetRequest.Unmarshal(m, b)
}
func (m *AddDefinedSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddDefinedSetRequest.Marshal(b, m, deterministic)
}
func (m *AddDefinedSetRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddDefinedSetRequest.Merge(m, src)
}
func (m *AddDefinedSetRequest) XXX_Size() int {
	return xxx_messageInfo_AddDefinedSetRequest.Size(m)
}
func (m *AddDefinedSetRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddDefinedSetRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddDefinedSetRequest proto.InternalMessageInfo

func (m *AddDefinedSetRequest) GetDefinedSet() *DefinedSet {
	if m != nil {
		return m.DefinedSet
	}
	return nil
}

type DeleteDefinedSetRequest struct {
	DefinedSet           *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet,proto3" json:"defined_set,omitempty"`
	All                  bool        `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *DeleteDefinedSetRequest) Reset()         { *m = DeleteDefinedSetRequest{} }
func (m *DeleteDefinedSetRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteDefinedSetRequest) ProtoMessage()    {}
func (*DeleteDefinedSetRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{46}
}

func (m *DeleteDefinedSetRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteDefinedSetRequest.Unmarshal(m, b)
}
func (m *DeleteDefinedSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteDefinedSetRequest.Marshal(b, m, deterministic)
}
func (m *DeleteDefinedSetRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteDefinedSetRequest.Merge(m, src)
}
func (m *DeleteDefinedSetRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteDefinedSetRequest.Size(m)
}
func (m *DeleteDefinedSetRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteDefinedSetRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteDefinedSetRequest proto.InternalMessageInfo

func (m *DeleteDefinedSetRequest) GetDefinedSet() *DefinedSet {
	if m != nil {
		return m.DefinedSet
	}
	return nil
}

func (m *DeleteDefinedSetRequest) GetAll() bool {
	if m != nil {
		return m.All
	}
	return false
}

type ListDefinedSetRequest struct {
	DefinedType          DefinedType `protobuf:"varint,1,opt,name=defined_type,json=definedType,proto3,enum=gobgpapi.DefinedType" json:"defined_type,omitempty"`
	Name                 string      `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *ListDefinedSetRequest) Reset()         { *m = ListDefinedSetRequest{} }
func (m *ListDefinedSetRequest) String() string { return proto.CompactTextString(m) }
func (*ListDefinedSetRequest) ProtoMessage()    {}
func (*ListDefinedSetRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{47}
}

func (m *ListDefinedSetRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListDefinedSetRequest.Unmarshal(m, b)
}
func (m *ListDefinedSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListDefinedSetRequest.Marshal(b, m, deterministic)
}
func (m *ListDefinedSetRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListDefinedSetRequest.Merge(m, src)
}
func (m *ListDefinedSetRequest) XXX_Size() int {
	return xxx_messageInfo_ListDefinedSetRequest.Size(m)
}
func (m *ListDefinedSetRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListDefinedSetRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListDefinedSetRequest proto.InternalMessageInfo

func (m *ListDefinedSetRequest) GetDefinedType() DefinedType {
	if m != nil {
		return m.DefinedType
	}
	return DefinedType_PREFIX
}

func (m *ListDefinedSetRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type ListDefinedSetResponse struct {
	DefinedSet           *DefinedSet `protobuf:"bytes,1,opt,name=defined_set,json=definedSet,proto3" json:"defined_set,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *ListDefinedSetResponse) Reset()         { *m = ListDefinedSetResponse{} }
func (m *ListDefinedSetResponse) String() string { return proto.CompactTextString(m) }
func (*ListDefinedSetResponse) ProtoMessage()    {}
func (*ListDefinedSetResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{48}
}

func (m *ListDefinedSetResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListDefinedSetResponse.Unmarshal(m, b)
}
func (m *ListDefinedSetResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListDefinedSetResponse.Marshal(b, m, deterministic)
}
func (m *ListDefinedSetResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListDefinedSetResponse.Merge(m, src)
}
func (m *ListDefinedSetResponse) XXX_Size() int {
	return xxx_messageInfo_ListDefinedSetResponse.Size(m)
}
func (m *ListDefinedSetResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListDefinedSetResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListDefinedSetResponse proto.InternalMessageInfo

func (m *ListDefinedSetResponse) GetDefinedSet() *DefinedSet {
	if m != nil {
		return m.DefinedSet
	}
	return nil
}

type AddStatementRequest struct {
	Statement            *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *AddStatementRequest) Reset()         { *m = AddStatementRequest{} }
func (m *AddStatementRequest) String() string { return proto.CompactTextString(m) }
func (*AddStatementRequest) ProtoMessage()    {}
func (*AddStatementRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{49}
}

func (m *AddStatementRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddStatementRequest.Unmarshal(m, b)
}
func (m *AddStatementRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddStatementRequest.Marshal(b, m, deterministic)
}
func (m *AddStatementRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddStatementRequest.Merge(m, src)
}
func (m *AddStatementRequest) XXX_Size() int {
	return xxx_messageInfo_AddStatementRequest.Size(m)
}
func (m *AddStatementRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddStatementRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddStatementRequest proto.InternalMessageInfo

func (m *AddStatementRequest) GetStatement() *Statement {
	if m != nil {
		return m.Statement
	}
	return nil
}

type DeleteStatementRequest struct {
	Statement            *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
	All                  bool       `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *DeleteStatementRequest) Reset()         { *m = DeleteStatementRequest{} }
func (m *DeleteStatementRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteStatementRequest) ProtoMessage()    {}
func (*DeleteStatementRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{50}
}

func (m *DeleteStatementRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteStatementRequest.Unmarshal(m, b)
}
func (m *DeleteStatementRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteStatementRequest.Marshal(b, m, deterministic)
}
func (m *DeleteStatementRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteStatementRequest.Merge(m, src)
}
func (m *DeleteStatementRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteStatementRequest.Size(m)
}
func (m *DeleteStatementRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteStatementRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteStatementRequest proto.InternalMessageInfo

func (m *DeleteStatementRequest) GetStatement() *Statement {
	if m != nil {
		return m.Statement
	}
	return nil
}

func (m *DeleteStatementRequest) GetAll() bool {
	if m != nil {
		return m.All
	}
	return false
}

type ListStatementRequest struct {
	Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListStatementRequest) Reset()         { *m = ListStatementRequest{} }
func (m *ListStatementRequest) String() string { return proto.CompactTextString(m) }
func (*ListStatementRequest) ProtoMessage()    {}
func (*ListStatementRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{51}
}

func (m *ListStatementRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListStatementRequest.Unmarshal(m, b)
}
func (m *ListStatementRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListStatementRequest.Marshal(b, m, deterministic)
}
func (m *ListStatementRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListStatementRequest.Merge(m, src)
}
func (m *ListStatementRequest) XXX_Size() int {
	return xxx_messageInfo_ListStatementRequest.Size(m)
}
func (m *ListStatementRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListStatementRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListStatementRequest proto.InternalMessageInfo

func (m *ListStatementRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type ListStatementResponse struct {
	Statement            *Statement `protobuf:"bytes,1,opt,name=statement,proto3" json:"statement,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *ListStatementResponse) Reset()         { *m = ListStatementResponse{} }
func (m *ListStatementResponse) String() string { return proto.CompactTextString(m) }
func (*ListStatementResponse) ProtoMessage()    {}
func (*ListStatementResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{52}
}

func (m *ListStatementResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListStatementResponse.Unmarshal(m, b)
}
func (m *ListStatementResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListStatementResponse.Marshal(b, m, deterministic)
}
func (m *ListStatementResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListStatementResponse.Merge(m, src)
}
func (m *ListStatementResponse) XXX_Size() int {
	return xxx_messageInfo_ListStatementResponse.Size(m)
}
func (m *ListStatementResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListStatementResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListStatementResponse proto.InternalMessageInfo

func (m *ListStatementResponse) GetStatement() *Statement {
	if m != nil {
		return m.Statement
	}
	return nil
}

type AddPolicyAssignmentRequest struct {
	Assignment           *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment,proto3" json:"assignment,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *AddPolicyAssignmentRequest) Reset()         { *m = AddPolicyAssignmentRequest{} }
func (m *AddPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) }
func (*AddPolicyAssignmentRequest) ProtoMessage()    {}
func (*AddPolicyAssignmentRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{53}
}

func (m *AddPolicyAssignmentRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPolicyAssignmentRequest.Unmarshal(m, b)
}
func (m *AddPolicyAssignmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPolicyAssignmentRequest.Marshal(b, m, deterministic)
}
func (m *AddPolicyAssignmentRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPolicyAssignmentRequest.Merge(m, src)
}
func (m *AddPolicyAssignmentRequest) XXX_Size() int {
	return xxx_messageInfo_AddPolicyAssignmentRequest.Size(m)
}
func (m *AddPolicyAssignmentRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPolicyAssignmentRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddPolicyAssignmentRequest proto.InternalMessageInfo

func (m *AddPolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
	if m != nil {
		return m.Assignment
	}
	return nil
}

type DeletePolicyAssignmentRequest struct {
	Assignment           *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment,proto3" json:"assignment,omitempty"`
	All                  bool              `protobuf:"varint,2,opt,name=all,proto3" json:"all,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *DeletePolicyAssignmentRequest) Reset()         { *m = DeletePolicyAssignmentRequest{} }
func (m *DeletePolicyAssignmentRequest) String() string { return proto.CompactTextString(m) }
func (*DeletePolicyAssignmentRequest) ProtoMessage()    {}
func (*DeletePolicyAssignmentRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{54}
}

func (m *DeletePolicyAssignmentRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeletePolicyAssignmentRequest.Unmarshal(m, b)
}
func (m *DeletePolicyAssignmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeletePolicyAssignmentRequest.Marshal(b, m, deterministic)
}
func (m *DeletePolicyAssignmentRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeletePolicyAssignmentRequest.Merge(m, src)
}
func (m *DeletePolicyAssignmentRequest) XXX_Size() int {
	return xxx_messageInfo_DeletePolicyAssignmentRequest.Size(m)
}
func (m *DeletePolicyAssignmentRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeletePolicyAssignmentRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeletePolicyAssignmentRequest proto.InternalMessageInfo

func (m *DeletePolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
	if m != nil {
		return m.Assignment
	}
	return nil
}

func (m *DeletePolicyAssignmentRequest) GetAll() bool {
	if m != nil {
		return m.All
	}
	return false
}

type ListPolicyAssignmentRequest struct {
	Name                 string          `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Direction            PolicyDirection `protobuf:"varint,2,opt,name=direction,proto3,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *ListPolicyAssignmentRequest) Reset()         { *m = ListPolicyAssignmentRequest{} }
func (m *ListPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) }
func (*ListPolicyAssignmentRequest) ProtoMessage()    {}
func (*ListPolicyAssignmentRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{55}
}

func (m *ListPolicyAssignmentRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPolicyAssignmentRequest.Unmarshal(m, b)
}
func (m *ListPolicyAssignmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPolicyAssignmentRequest.Marshal(b, m, deterministic)
}
func (m *ListPolicyAssignmentRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPolicyAssignmentRequest.Merge(m, src)
}
func (m *ListPolicyAssignmentRequest) XXX_Size() int {
	return xxx_messageInfo_ListPolicyAssignmentRequest.Size(m)
}
func (m *ListPolicyAssignmentRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPolicyAssignmentRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListPolicyAssignmentRequest proto.InternalMessageInfo

func (m *ListPolicyAssignmentRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *ListPolicyAssignmentRequest) GetDirection() PolicyDirection {
	if m != nil {
		return m.Direction
	}
	return PolicyDirection_UNKNOWN
}

type ListPolicyAssignmentResponse struct {
	Assignment           *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment,proto3" json:"assignment,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *ListPolicyAssignmentResponse) Reset()         { *m = ListPolicyAssignmentResponse{} }
func (m *ListPolicyAssignmentResponse) String() string { return proto.CompactTextString(m) }
func (*ListPolicyAssignmentResponse) ProtoMessage()    {}
func (*ListPolicyAssignmentResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{56}
}

func (m *ListPolicyAssignmentResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListPolicyAssignmentResponse.Unmarshal(m, b)
}
func (m *ListPolicyAssignmentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListPolicyAssignmentResponse.Marshal(b, m, deterministic)
}
func (m *ListPolicyAssignmentResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListPolicyAssignmentResponse.Merge(m, src)
}
func (m *ListPolicyAssignmentResponse) XXX_Size() int {
	return xxx_messageInfo_ListPolicyAssignmentResponse.Size(m)
}
func (m *ListPolicyAssignmentResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListPolicyAssignmentResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListPolicyAssignmentResponse proto.InternalMessageInfo

func (m *ListPolicyAssignmentResponse) GetAssignment() *PolicyAssignment {
	if m != nil {
		return m.Assignment
	}
	return nil
}

type SetPolicyAssignmentRequest struct {
	Assignment           *PolicyAssignment `protobuf:"bytes,1,opt,name=assignment,proto3" json:"assignment,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *SetPolicyAssignmentRequest) Reset()         { *m = SetPolicyAssignmentRequest{} }
func (m *SetPolicyAssignmentRequest) String() string { return proto.CompactTextString(m) }
func (*SetPolicyAssignmentRequest) ProtoMessage()    {}
func (*SetPolicyAssignmentRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{57}
}

func (m *SetPolicyAssignmentRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SetPolicyAssignmentRequest.Unmarshal(m, b)
}
func (m *SetPolicyAssignmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SetPolicyAssignmentRequest.Marshal(b, m, deterministic)
}
func (m *SetPolicyAssignmentRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SetPolicyAssignmentRequest.Merge(m, src)
}
func (m *SetPolicyAssignmentRequest) XXX_Size() int {
	return xxx_messageInfo_SetPolicyAssignmentRequest.Size(m)
}
func (m *SetPolicyAssignmentRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_SetPolicyAssignmentRequest.DiscardUnknown(m)
}

var xxx_messageInfo_SetPolicyAssignmentRequest proto.InternalMessageInfo

func (m *SetPolicyAssignmentRequest) GetAssignment() *PolicyAssignment {
	if m != nil {
		return m.Assignment
	}
	return nil
}

type AddRpkiRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Lifetime             int64    `protobuf:"varint,3,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddRpkiRequest) Reset()         { *m = AddRpkiRequest{} }
func (m *AddRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*AddRpkiRequest) ProtoMessage()    {}
func (*AddRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{58}
}

func (m *AddRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddRpkiRequest.Unmarshal(m, b)
}
func (m *AddRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddRpkiRequest.Marshal(b, m, deterministic)
}
func (m *AddRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddRpkiRequest.Merge(m, src)
}
func (m *AddRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_AddRpkiRequest.Size(m)
}
func (m *AddRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddRpkiRequest proto.InternalMessageInfo

func (m *AddRpkiRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *AddRpkiRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

func (m *AddRpkiRequest) GetLifetime() int64 {
	if m != nil {
		return m.Lifetime
	}
	return 0
}

type DeleteRpkiRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteRpkiRequest) Reset()         { *m = DeleteRpkiRequest{} }
func (m *DeleteRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteRpkiRequest) ProtoMessage()    {}
func (*DeleteRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{59}
}

func (m *DeleteRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteRpkiRequest.Unmarshal(m, b)
}
func (m *DeleteRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteRpkiRequest.Marshal(b, m, deterministic)
}
func (m *DeleteRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteRpkiRequest.Merge(m, src)
}
func (m *DeleteRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteRpkiRequest.Size(m)
}
func (m *DeleteRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteRpkiRequest proto.InternalMessageInfo

func (m *DeleteRpkiRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *DeleteRpkiRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type ListRpkiRequest struct {
	Family               *Family  `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRpkiRequest) Reset()         { *m = ListRpkiRequest{} }
func (m *ListRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*ListRpkiRequest) ProtoMessage()    {}
func (*ListRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{60}
}

func (m *ListRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRpkiRequest.Unmarshal(m, b)
}
func (m *ListRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRpkiRequest.Marshal(b, m, deterministic)
}
func (m *ListRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRpkiRequest.Merge(m, src)
}
func (m *ListRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_ListRpkiRequest.Size(m)
}
func (m *ListRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListRpkiRequest proto.InternalMessageInfo

func (m *ListRpkiRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

type ListRpkiResponse struct {
	Server               *Rpki    `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRpkiResponse) Reset()         { *m = ListRpkiResponse{} }
func (m *ListRpkiResponse) String() string { return proto.CompactTextString(m) }
func (*ListRpkiResponse) ProtoMessage()    {}
func (*ListRpkiResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{61}
}

func (m *ListRpkiResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRpkiResponse.Unmarshal(m, b)
}
func (m *ListRpkiResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRpkiResponse.Marshal(b, m, deterministic)
}
func (m *ListRpkiResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRpkiResponse.Merge(m, src)
}
func (m *ListRpkiResponse) XXX_Size() int {
	return xxx_messageInfo_ListRpkiResponse.Size(m)
}
func (m *ListRpkiResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRpkiResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListRpkiResponse proto.InternalMessageInfo

func (m *ListRpkiResponse) GetServer() *Rpki {
	if m != nil {
		return m.Server
	}
	return nil
}

type EnableRpkiRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EnableRpkiRequest) Reset()         { *m = EnableRpkiRequest{} }
func (m *EnableRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*EnableRpkiRequest) ProtoMessage()    {}
func (*EnableRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{62}
}

func (m *EnableRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EnableRpkiRequest.Unmarshal(m, b)
}
func (m *EnableRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EnableRpkiRequest.Marshal(b, m, deterministic)
}
func (m *EnableRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EnableRpkiRequest.Merge(m, src)
}
func (m *EnableRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_EnableRpkiRequest.Size(m)
}
func (m *EnableRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_EnableRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_EnableRpkiRequest proto.InternalMessageInfo

func (m *EnableRpkiRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *EnableRpkiRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type DisableRpkiRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DisableRpkiRequest) Reset()         { *m = DisableRpkiRequest{} }
func (m *DisableRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*DisableRpkiRequest) ProtoMessage()    {}
func (*DisableRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{63}
}

func (m *DisableRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DisableRpkiRequest.Unmarshal(m, b)
}
func (m *DisableRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DisableRpkiRequest.Marshal(b, m, deterministic)
}
func (m *DisableRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DisableRpkiRequest.Merge(m, src)
}
func (m *DisableRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_DisableRpkiRequest.Size(m)
}
func (m *DisableRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DisableRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DisableRpkiRequest proto.InternalMessageInfo

func (m *DisableRpkiRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *DisableRpkiRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type ResetRpkiRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Soft                 bool     `protobuf:"varint,3,opt,name=soft,proto3" json:"soft,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ResetRpkiRequest) Reset()         { *m = ResetRpkiRequest{} }
func (m *ResetRpkiRequest) String() string { return proto.CompactTextString(m) }
func (*ResetRpkiRequest) ProtoMessage()    {}
func (*ResetRpkiRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{64}
}

func (m *ResetRpkiRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ResetRpkiRequest.Unmarshal(m, b)
}
func (m *ResetRpkiRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ResetRpkiRequest.Marshal(b, m, deterministic)
}
func (m *ResetRpkiRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ResetRpkiRequest.Merge(m, src)
}
func (m *ResetRpkiRequest) XXX_Size() int {
	return xxx_messageInfo_ResetRpkiRequest.Size(m)
}
func (m *ResetRpkiRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ResetRpkiRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ResetRpkiRequest proto.InternalMessageInfo

func (m *ResetRpkiRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *ResetRpkiRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

func (m *ResetRpkiRequest) GetSoft() bool {
	if m != nil {
		return m.Soft
	}
	return false
}

type ListRpkiTableRequest struct {
	Family               *Family  `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRpkiTableRequest) Reset()         { *m = ListRpkiTableRequest{} }
func (m *ListRpkiTableRequest) String() string { return proto.CompactTextString(m) }
func (*ListRpkiTableRequest) ProtoMessage()    {}
func (*ListRpkiTableRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{65}
}

func (m *ListRpkiTableRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRpkiTableRequest.Unmarshal(m, b)
}
func (m *ListRpkiTableRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRpkiTableRequest.Marshal(b, m, deterministic)
}
func (m *ListRpkiTableRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRpkiTableRequest.Merge(m, src)
}
func (m *ListRpkiTableRequest) XXX_Size() int {
	return xxx_messageInfo_ListRpkiTableRequest.Size(m)
}
func (m *ListRpkiTableRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRpkiTableRequest.DiscardUnknown(m)
}

var xxx_messageInfo_ListRpkiTableRequest proto.InternalMessageInfo

func (m *ListRpkiTableRequest) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

type ListRpkiTableResponse struct {
	Roa                  *Roa     `protobuf:"bytes,1,opt,name=roa,proto3" json:"roa,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *ListRpkiTableResponse) Reset()         { *m = ListRpkiTableResponse{} }
func (m *ListRpkiTableResponse) String() string { return proto.CompactTextString(m) }
func (*ListRpkiTableResponse) ProtoMessage()    {}
func (*ListRpkiTableResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{66}
}

func (m *ListRpkiTableResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ListRpkiTableResponse.Unmarshal(m, b)
}
func (m *ListRpkiTableResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ListRpkiTableResponse.Marshal(b, m, deterministic)
}
func (m *ListRpkiTableResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ListRpkiTableResponse.Merge(m, src)
}
func (m *ListRpkiTableResponse) XXX_Size() int {
	return xxx_messageInfo_ListRpkiTableResponse.Size(m)
}
func (m *ListRpkiTableResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_ListRpkiTableResponse.DiscardUnknown(m)
}

var xxx_messageInfo_ListRpkiTableResponse proto.InternalMessageInfo

func (m *ListRpkiTableResponse) GetRoa() *Roa {
	if m != nil {
		return m.Roa
	}
	return nil
}

type EnableZebraRequest struct {
	Url                  string   `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	RouteTypes           []string `protobuf:"bytes,2,rep,name=route_types,json=routeTypes,proto3" json:"route_types,omitempty"`
	Version              uint32   `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
	NexthopTriggerEnable bool     `protobuf:"varint,4,opt,name=nexthop_trigger_enable,json=nexthopTriggerEnable,proto3" json:"nexthop_trigger_enable,omitempty"`
	NexthopTriggerDelay  uint32   `protobuf:"varint,5,opt,name=nexthop_trigger_delay,json=nexthopTriggerDelay,proto3" json:"nexthop_trigger_delay,omitempty"`
	MplsLabelRangeSize   uint32   `protobuf:"varint,6,opt,name=mpls_label_range_size,json=mplsLabelRangeSize,proto3" json:"mpls_label_range_size,omitempty"`
	SoftwareName         string   `protobuf:"bytes,7,opt,name=software_name,json=softwareName,proto3" json:"software_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EnableZebraRequest) Reset()         { *m = EnableZebraRequest{} }
func (m *EnableZebraRequest) String() string { return proto.CompactTextString(m) }
func (*EnableZebraRequest) ProtoMessage()    {}
func (*EnableZebraRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{67}
}

func (m *EnableZebraRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EnableZebraRequest.Unmarshal(m, b)
}
func (m *EnableZebraRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EnableZebraRequest.Marshal(b, m, deterministic)
}
func (m *EnableZebraRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EnableZebraRequest.Merge(m, src)
}
func (m *EnableZebraRequest) XXX_Size() int {
	return xxx_messageInfo_EnableZebraRequest.Size(m)
}
func (m *EnableZebraRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_EnableZebraRequest.DiscardUnknown(m)
}

var xxx_messageInfo_EnableZebraRequest proto.InternalMessageInfo

func (m *EnableZebraRequest) GetUrl() string {
	if m != nil {
		return m.Url
	}
	return ""
}

func (m *EnableZebraRequest) GetRouteTypes() []string {
	if m != nil {
		return m.RouteTypes
	}
	return nil
}

func (m *EnableZebraRequest) GetVersion() uint32 {
	if m != nil {
		return m.Version
	}
	return 0
}

func (m *EnableZebraRequest) GetNexthopTriggerEnable() bool {
	if m != nil {
		return m.NexthopTriggerEnable
	}
	return false
}

func (m *EnableZebraRequest) GetNexthopTriggerDelay() uint32 {
	if m != nil {
		return m.NexthopTriggerDelay
	}
	return 0
}

func (m *EnableZebraRequest) GetMplsLabelRangeSize() uint32 {
	if m != nil {
		return m.MplsLabelRangeSize
	}
	return 0
}

func (m *EnableZebraRequest) GetSoftwareName() string {
	if m != nil {
		return m.SoftwareName
	}
	return ""
}

type EnableMrtRequest struct {
	DumpType             int32    `protobuf:"varint,1,opt,name=dump_type,json=dumpType,proto3" json:"dump_type,omitempty"`
	Filename             string   `protobuf:"bytes,2,opt,name=filename,proto3" json:"filename,omitempty"`
	DumpInterval         uint64   `protobuf:"varint,3,opt,name=dump_interval,json=dumpInterval,proto3" json:"dump_interval,omitempty"`
	RotationInterval     uint64   `protobuf:"varint,4,opt,name=rotation_interval,json=rotationInterval,proto3" json:"rotation_interval,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EnableMrtRequest) Reset()         { *m = EnableMrtRequest{} }
func (m *EnableMrtRequest) String() string { return proto.CompactTextString(m) }
func (*EnableMrtRequest) ProtoMessage()    {}
func (*EnableMrtRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{68}
}

func (m *EnableMrtRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EnableMrtRequest.Unmarshal(m, b)
}
func (m *EnableMrtRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EnableMrtRequest.Marshal(b, m, deterministic)
}
func (m *EnableMrtRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EnableMrtRequest.Merge(m, src)
}
func (m *EnableMrtRequest) XXX_Size() int {
	return xxx_messageInfo_EnableMrtRequest.Size(m)
}
func (m *EnableMrtRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_EnableMrtRequest.DiscardUnknown(m)
}

var xxx_messageInfo_EnableMrtRequest proto.InternalMessageInfo

func (m *EnableMrtRequest) GetDumpType() int32 {
	if m != nil {
		return m.DumpType
	}
	return 0
}

func (m *EnableMrtRequest) GetFilename() string {
	if m != nil {
		return m.Filename
	}
	return ""
}

func (m *EnableMrtRequest) GetDumpInterval() uint64 {
	if m != nil {
		return m.DumpInterval
	}
	return 0
}

func (m *EnableMrtRequest) GetRotationInterval() uint64 {
	if m != nil {
		return m.RotationInterval
	}
	return 0
}

type DisableMrtRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DisableMrtRequest) Reset()         { *m = DisableMrtRequest{} }
func (m *DisableMrtRequest) String() string { return proto.CompactTextString(m) }
func (*DisableMrtRequest) ProtoMessage()    {}
func (*DisableMrtRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{69}
}

func (m *DisableMrtRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DisableMrtRequest.Unmarshal(m, b)
}
func (m *DisableMrtRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DisableMrtRequest.Marshal(b, m, deterministic)
}
func (m *DisableMrtRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DisableMrtRequest.Merge(m, src)
}
func (m *DisableMrtRequest) XXX_Size() int {
	return xxx_messageInfo_DisableMrtRequest.Size(m)
}
func (m *DisableMrtRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DisableMrtRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DisableMrtRequest proto.InternalMessageInfo

type AddBmpRequest struct {
	Address              string                         `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32                         `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Policy               AddBmpRequest_MonitoringPolicy `protobuf:"varint,3,opt,name=policy,proto3,enum=gobgpapi.AddBmpRequest_MonitoringPolicy" json:"policy,omitempty"`
	StatisticsTimeout    int32                          `protobuf:"varint,4,opt,name=StatisticsTimeout,proto3" json:"StatisticsTimeout,omitempty"`
	SysName              string                         `protobuf:"bytes,5,opt,name=SysName,proto3" json:"SysName,omitempty"`
	SysDescr             string                         `protobuf:"bytes,6,opt,name=SysDescr,proto3" json:"SysDescr,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (m *AddBmpRequest) Reset()         { *m = AddBmpRequest{} }
func (m *AddBmpRequest) String() string { return proto.CompactTextString(m) }
func (*AddBmpRequest) ProtoMessage()    {}
func (*AddBmpRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{70}
}

func (m *AddBmpRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddBmpRequest.Unmarshal(m, b)
}
func (m *AddBmpRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddBmpRequest.Marshal(b, m, deterministic)
}
func (m *AddBmpRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddBmpRequest.Merge(m, src)
}
func (m *AddBmpRequest) XXX_Size() int {
	return xxx_messageInfo_AddBmpRequest.Size(m)
}
func (m *AddBmpRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_AddBmpRequest.DiscardUnknown(m)
}

var xxx_messageInfo_AddBmpRequest proto.InternalMessageInfo

func (m *AddBmpRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *AddBmpRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

func (m *AddBmpRequest) GetPolicy() AddBmpRequest_MonitoringPolicy {
	if m != nil {
		return m.Policy
	}
	return AddBmpRequest_PRE
}

func (m *AddBmpRequest) GetStatisticsTimeout() int32 {
	if m != nil {
		return m.StatisticsTimeout
	}
	return 0
}

func (m *AddBmpRequest) GetSysName() string {
	if m != nil {
		return m.SysName
	}
	return ""
}

func (m *AddBmpRequest) GetSysDescr() string {
	if m != nil {
		return m.SysDescr
	}
	return ""
}

type DeleteBmpRequest struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Port                 uint32   `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DeleteBmpRequest) Reset()         { *m = DeleteBmpRequest{} }
func (m *DeleteBmpRequest) String() string { return proto.CompactTextString(m) }
func (*DeleteBmpRequest) ProtoMessage()    {}
func (*DeleteBmpRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{71}
}

func (m *DeleteBmpRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DeleteBmpRequest.Unmarshal(m, b)
}
func (m *DeleteBmpRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DeleteBmpRequest.Marshal(b, m, deterministic)
}
func (m *DeleteBmpRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DeleteBmpRequest.Merge(m, src)
}
func (m *DeleteBmpRequest) XXX_Size() int {
	return xxx_messageInfo_DeleteBmpRequest.Size(m)
}
func (m *DeleteBmpRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_DeleteBmpRequest.DiscardUnknown(m)
}

var xxx_messageInfo_DeleteBmpRequest proto.InternalMessageInfo

func (m *DeleteBmpRequest) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *DeleteBmpRequest) GetPort() uint32 {
	if m != nil {
		return m.Port
	}
	return 0
}

type Family struct {
	Afi                  Family_Afi  `protobuf:"varint,1,opt,name=afi,proto3,enum=gobgpapi.Family_Afi" json:"afi,omitempty"`
	Safi                 Family_Safi `protobuf:"varint,2,opt,name=safi,proto3,enum=gobgpapi.Family_Safi" json:"safi,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Family) Reset()         { *m = Family{} }
func (m *Family) String() string { return proto.CompactTextString(m) }
func (*Family) ProtoMessage()    {}
func (*Family) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{72}
}

func (m *Family) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Family.Unmarshal(m, b)
}
func (m *Family) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Family.Marshal(b, m, deterministic)
}
func (m *Family) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Family.Merge(m, src)
}
func (m *Family) XXX_Size() int {
	return xxx_messageInfo_Family.Size(m)
}
func (m *Family) XXX_DiscardUnknown() {
	xxx_messageInfo_Family.DiscardUnknown(m)
}

var xxx_messageInfo_Family proto.InternalMessageInfo

func (m *Family) GetAfi() Family_Afi {
	if m != nil {
		return m.Afi
	}
	return Family_AFI_UNKNOWN
}

func (m *Family) GetSafi() Family_Safi {
	if m != nil {
		return m.Safi
	}
	return Family_SAFI_UNKNOWN
}

type Validation struct {
	State                Validation_State  `protobuf:"varint,1,opt,name=state,proto3,enum=gobgpapi.Validation_State" json:"state,omitempty"`
	Reason               Validation_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=gobgpapi.Validation_Reason" json:"reason,omitempty"`
	Matched              []*Roa            `protobuf:"bytes,3,rep,name=matched,proto3" json:"matched,omitempty"`
	UnmatchedAs          []*Roa            `protobuf:"bytes,4,rep,name=unmatched_as,json=unmatchedAs,proto3" json:"unmatched_as,omitempty"`
	UnmatchedLength      []*Roa            `protobuf:"bytes,5,rep,name=unmatched_length,json=unmatchedLength,proto3" json:"unmatched_length,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *Validation) Reset()         { *m = Validation{} }
func (m *Validation) String() string { return proto.CompactTextString(m) }
func (*Validation) ProtoMessage()    {}
func (*Validation) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{73}
}

func (m *Validation) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Validation.Unmarshal(m, b)
}
func (m *Validation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Validation.Marshal(b, m, deterministic)
}
func (m *Validation) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Validation.Merge(m, src)
}
func (m *Validation) XXX_Size() int {
	return xxx_messageInfo_Validation.Size(m)
}
func (m *Validation) XXX_DiscardUnknown() {
	xxx_messageInfo_Validation.DiscardUnknown(m)
}

var xxx_messageInfo_Validation proto.InternalMessageInfo

func (m *Validation) GetState() Validation_State {
	if m != nil {
		return m.State
	}
	return Validation_STATE_NONE
}

func (m *Validation) GetReason() Validation_Reason {
	if m != nil {
		return m.Reason
	}
	return Validation_REASOT_NONE
}

func (m *Validation) GetMatched() []*Roa {
	if m != nil {
		return m.Matched
	}
	return nil
}

func (m *Validation) GetUnmatchedAs() []*Roa {
	if m != nil {
		return m.UnmatchedAs
	}
	return nil
}

func (m *Validation) GetUnmatchedLength() []*Roa {
	if m != nil {
		return m.UnmatchedLength
	}
	return nil
}

type Path struct {
	// One of the following defined in "api/attribute.proto":
	// - IPAddressPrefix
	// - LabeledIPAddressPrefix
	// - EncapsulationNLRI
	// - EVPNEthernetAutoDiscoveryRoute
	// - EVPNMACIPAdvertisementRoute
	// - EVPNInclusiveMulticastEthernetTagRoute
	// - EVPNEthernetSegmentRoute
	// - EVPNIPPrefixRoute
	// - EVPNIPMSIRoute
	// - LabeledVPNIPAddressPrefix
	// - RouteTargetMembershipNLRI
	// - FlowSpecNLRI
	// - VPNFlowSpecNLRI
	// - OpaqueNLRI
	// - LsAddrPrefix
	// - SRPolicyNLRI
	Nlri *any.Any `protobuf:"bytes,1,opt,name=nlri,proto3" json:"nlri,omitempty"`
	// Each attribute must be one of *Attribute defined in
	// "api/attribute.proto".
	Pattrs               []*any.Any           `protobuf:"bytes,2,rep,name=pattrs,proto3" json:"pattrs,omitempty"`
	Age                  *timestamp.Timestamp `protobuf:"bytes,3,opt,name=age,proto3" json:"age,omitempty"`
	Best                 bool                 `protobuf:"varint,4,opt,name=best,proto3" json:"best,omitempty"`
	IsWithdraw           bool                 `protobuf:"varint,5,opt,name=is_withdraw,json=isWithdraw,proto3" json:"is_withdraw,omitempty"`
	Validation           *Validation          `protobuf:"bytes,7,opt,name=validation,proto3" json:"validation,omitempty"`
	NoImplicitWithdraw   bool                 `protobuf:"varint,8,opt,name=no_implicit_withdraw,json=noImplicitWithdraw,proto3" json:"no_implicit_withdraw,omitempty"`
	Family               *Family              `protobuf:"bytes,9,opt,name=family,proto3" json:"family,omitempty"`
	SourceAsn            uint32               `protobuf:"varint,10,opt,name=source_asn,json=sourceAsn,proto3" json:"source_asn,omitempty"`
	SourceId             string               `protobuf:"bytes,11,opt,name=source_id,json=sourceId,proto3" json:"source_id,omitempty"`
	Filtered             bool                 `protobuf:"varint,12,opt,name=filtered,proto3" json:"filtered,omitempty"`
	Stale                bool                 `protobuf:"varint,13,opt,name=stale,proto3" json:"stale,omitempty"`
	IsFromExternal       bool                 `protobuf:"varint,14,opt,name=is_from_external,json=isFromExternal,proto3" json:"is_from_external,omitempty"`
	NeighborIp           string               `protobuf:"bytes,15,opt,name=neighbor_ip,json=neighborIp,proto3" json:"neighbor_ip,omitempty"`
	Uuid                 []byte               `protobuf:"bytes,16,opt,name=uuid,proto3" json:"uuid,omitempty"`
	IsNexthopInvalid     bool                 `protobuf:"varint,17,opt,name=is_nexthop_invalid,json=isNexthopInvalid,proto3" json:"is_nexthop_invalid,omitempty"`
	Identifier           uint32               `protobuf:"varint,18,opt,name=identifier,proto3" json:"identifier,omitempty"`
	LocalIdentifier      uint32               `protobuf:"varint,19,opt,name=local_identifier,json=localIdentifier,proto3" json:"local_identifier,omitempty"`
	NlriBinary           []byte               `protobuf:"bytes,20,opt,name=nlri_binary,json=nlriBinary,proto3" json:"nlri_binary,omitempty"`
	PattrsBinary         [][]byte             `protobuf:"bytes,21,rep,name=pattrs_binary,json=pattrsBinary,proto3" json:"pattrs_binary,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *Path) Reset()         { *m = Path{} }
func (m *Path) String() string { return proto.CompactTextString(m) }
func (*Path) ProtoMessage()    {}
func (*Path) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{74}
}

func (m *Path) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Path.Unmarshal(m, b)
}
func (m *Path) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Path.Marshal(b, m, deterministic)
}
func (m *Path) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Path.Merge(m, src)
}
func (m *Path) XXX_Size() int {
	return xxx_messageInfo_Path.Size(m)
}
func (m *Path) XXX_DiscardUnknown() {
	xxx_messageInfo_Path.DiscardUnknown(m)
}

var xxx_messageInfo_Path proto.InternalMessageInfo

func (m *Path) GetNlri() *any.Any {
	if m != nil {
		return m.Nlri
	}
	return nil
}

func (m *Path) GetPattrs() []*any.Any {
	if m != nil {
		return m.Pattrs
	}
	return nil
}

func (m *Path) GetAge() *timestamp.Timestamp {
	if m != nil {
		return m.Age
	}
	return nil
}

func (m *Path) GetBest() bool {
	if m != nil {
		return m.Best
	}
	return false
}

func (m *Path) GetIsWithdraw() bool {
	if m != nil {
		return m.IsWithdraw
	}
	return false
}

func (m *Path) GetValidation() *Validation {
	if m != nil {
		return m.Validation
	}
	return nil
}

func (m *Path) GetNoImplicitWithdraw() bool {
	if m != nil {
		return m.NoImplicitWithdraw
	}
	return false
}

func (m *Path) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *Path) GetSourceAsn() uint32 {
	if m != nil {
		return m.SourceAsn
	}
	return 0
}

func (m *Path) GetSourceId() string {
	if m != nil {
		return m.SourceId
	}
	return ""
}

func (m *Path) GetFiltered() bool {
	if m != nil {
		return m.Filtered
	}
	return false
}

func (m *Path) GetStale() bool {
	if m != nil {
		return m.Stale
	}
	return false
}

func (m *Path) GetIsFromExternal() bool {
	if m != nil {
		return m.IsFromExternal
	}
	return false
}

func (m *Path) GetNeighborIp() string {
	if m != nil {
		return m.NeighborIp
	}
	return ""
}

func (m *Path) GetUuid() []byte {
	if m != nil {
		return m.Uuid
	}
	return nil
}

func (m *Path) GetIsNexthopInvalid() bool {
	if m != nil {
		return m.IsNexthopInvalid
	}
	return false
}

func (m *Path) GetIdentifier() uint32 {
	if m != nil {
		return m.Identifier
	}
	return 0
}

func (m *Path) GetLocalIdentifier() uint32 {
	if m != nil {
		return m.LocalIdentifier
	}
	return 0
}

func (m *Path) GetNlriBinary() []byte {
	if m != nil {
		return m.NlriBinary
	}
	return nil
}

func (m *Path) GetPattrsBinary() [][]byte {
	if m != nil {
		return m.PattrsBinary
	}
	return nil
}

type Destination struct {
	Prefix               string   `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Paths                []*Path  `protobuf:"bytes,2,rep,name=paths,proto3" json:"paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Destination) Reset()         { *m = Destination{} }
func (m *Destination) String() string { return proto.CompactTextString(m) }
func (*Destination) ProtoMessage()    {}
func (*Destination) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{75}
}

func (m *Destination) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Destination.Unmarshal(m, b)
}
func (m *Destination) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Destination.Marshal(b, m, deterministic)
}
func (m *Destination) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Destination.Merge(m, src)
}
func (m *Destination) XXX_Size() int {
	return xxx_messageInfo_Destination.Size(m)
}
func (m *Destination) XXX_DiscardUnknown() {
	xxx_messageInfo_Destination.DiscardUnknown(m)
}

var xxx_messageInfo_Destination proto.InternalMessageInfo

func (m *Destination) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *Destination) GetPaths() []*Path {
	if m != nil {
		return m.Paths
	}
	return nil
}

// API representation of table.LookupPrefix
type TableLookupPrefix struct {
	Prefix               string            `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	LookupOption         TableLookupOption `protobuf:"varint,2,opt,name=lookup_option,json=lookupOption,proto3,enum=gobgpapi.TableLookupOption" json:"lookup_option,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *TableLookupPrefix) Reset()         { *m = TableLookupPrefix{} }
func (m *TableLookupPrefix) String() string { return proto.CompactTextString(m) }
func (*TableLookupPrefix) ProtoMessage()    {}
func (*TableLookupPrefix) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{76}
}

func (m *TableLookupPrefix) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TableLookupPrefix.Unmarshal(m, b)
}
func (m *TableLookupPrefix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TableLookupPrefix.Marshal(b, m, deterministic)
}
func (m *TableLookupPrefix) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TableLookupPrefix.Merge(m, src)
}
func (m *TableLookupPrefix) XXX_Size() int {
	return xxx_messageInfo_TableLookupPrefix.Size(m)
}
func (m *TableLookupPrefix) XXX_DiscardUnknown() {
	xxx_messageInfo_TableLookupPrefix.DiscardUnknown(m)
}

var xxx_messageInfo_TableLookupPrefix proto.InternalMessageInfo

func (m *TableLookupPrefix) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *TableLookupPrefix) GetLookupOption() TableLookupOption {
	if m != nil {
		return m.LookupOption
	}
	return TableLookupOption_LOOKUP_EXACT
}

type Peer struct {
	ApplyPolicy          *ApplyPolicy     `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy,proto3" json:"apply_policy,omitempty"`
	Conf                 *PeerConf        `protobuf:"bytes,2,opt,name=conf,proto3" json:"conf,omitempty"`
	EbgpMultihop         *EbgpMultihop    `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop,proto3" json:"ebgp_multihop,omitempty"`
	RouteReflector       *RouteReflector  `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector,proto3" json:"route_reflector,omitempty"`
	State                *PeerState       `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"`
	Timers               *Timers          `protobuf:"bytes,6,opt,name=timers,proto3" json:"timers,omitempty"`
	Transport            *Transport       `protobuf:"bytes,7,opt,name=transport,proto3" json:"transport,omitempty"`
	RouteServer          *RouteServer     `protobuf:"bytes,8,opt,name=route_server,json=routeServer,proto3" json:"route_server,omitempty"`
	GracefulRestart      *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart,proto3" json:"graceful_restart,omitempty"`
	AfiSafis             []*AfiSafi       `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis,proto3" json:"afi_safis,omitempty"`
	TtlSecurity          *TtlSecurity     `protobuf:"bytes,11,opt,name=ttl_security,json=ttlSecurity,proto3" json:"ttl_security,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *Peer) Reset()         { *m = Peer{} }
func (m *Peer) String() string { return proto.CompactTextString(m) }
func (*Peer) ProtoMessage()    {}
func (*Peer) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{77}
}

func (m *Peer) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Peer.Unmarshal(m, b)
}
func (m *Peer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Peer.Marshal(b, m, deterministic)
}
func (m *Peer) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Peer.Merge(m, src)
}
func (m *Peer) XXX_Size() int {
	return xxx_messageInfo_Peer.Size(m)
}
func (m *Peer) XXX_DiscardUnknown() {
	xxx_messageInfo_Peer.DiscardUnknown(m)
}

var xxx_messageInfo_Peer proto.InternalMessageInfo

func (m *Peer) GetApplyPolicy() *ApplyPolicy {
	if m != nil {
		return m.ApplyPolicy
	}
	return nil
}

func (m *Peer) GetConf() *PeerConf {
	if m != nil {
		return m.Conf
	}
	return nil
}

func (m *Peer) GetEbgpMultihop() *EbgpMultihop {
	if m != nil {
		return m.EbgpMultihop
	}
	return nil
}

func (m *Peer) GetRouteReflector() *RouteReflector {
	if m != nil {
		return m.RouteReflector
	}
	return nil
}

func (m *Peer) GetState() *PeerState {
	if m != nil {
		return m.State
	}
	return nil
}

func (m *Peer) GetTimers() *Timers {
	if m != nil {
		return m.Timers
	}
	return nil
}

func (m *Peer) GetTransport() *Transport {
	if m != nil {
		return m.Transport
	}
	return nil
}

func (m *Peer) GetRouteServer() *RouteServer {
	if m != nil {
		return m.RouteServer
	}
	return nil
}

func (m *Peer) GetGracefulRestart() *GracefulRestart {
	if m != nil {
		return m.GracefulRestart
	}
	return nil
}

func (m *Peer) GetAfiSafis() []*AfiSafi {
	if m != nil {
		return m.AfiSafis
	}
	return nil
}

func (m *Peer) GetTtlSecurity() *TtlSecurity {
	if m != nil {
		return m.TtlSecurity
	}
	return nil
}

type PeerGroup struct {
	ApplyPolicy          *ApplyPolicy     `protobuf:"bytes,1,opt,name=apply_policy,json=applyPolicy,proto3" json:"apply_policy,omitempty"`
	Conf                 *PeerGroupConf   `protobuf:"bytes,2,opt,name=conf,proto3" json:"conf,omitempty"`
	EbgpMultihop         *EbgpMultihop    `protobuf:"bytes,3,opt,name=ebgp_multihop,json=ebgpMultihop,proto3" json:"ebgp_multihop,omitempty"`
	RouteReflector       *RouteReflector  `protobuf:"bytes,4,opt,name=route_reflector,json=routeReflector,proto3" json:"route_reflector,omitempty"`
	Info                 *PeerGroupState  `protobuf:"bytes,5,opt,name=info,proto3" json:"info,omitempty"`
	Timers               *Timers          `protobuf:"bytes,6,opt,name=timers,proto3" json:"timers,omitempty"`
	Transport            *Transport       `protobuf:"bytes,7,opt,name=transport,proto3" json:"transport,omitempty"`
	RouteServer          *RouteServer     `protobuf:"bytes,8,opt,name=route_server,json=routeServer,proto3" json:"route_server,omitempty"`
	GracefulRestart      *GracefulRestart `protobuf:"bytes,9,opt,name=graceful_restart,json=gracefulRestart,proto3" json:"graceful_restart,omitempty"`
	AfiSafis             []*AfiSafi       `protobuf:"bytes,10,rep,name=afi_safis,json=afiSafis,proto3" json:"afi_safis,omitempty"`
	TtlSecurity          *TtlSecurity     `protobuf:"bytes,11,opt,name=ttl_security,json=ttlSecurity,proto3" json:"ttl_security,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *PeerGroup) Reset()         { *m = PeerGroup{} }
func (m *PeerGroup) String() string { return proto.CompactTextString(m) }
func (*PeerGroup) ProtoMessage()    {}
func (*PeerGroup) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{78}
}

func (m *PeerGroup) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PeerGroup.Unmarshal(m, b)
}
func (m *PeerGroup) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PeerGroup.Marshal(b, m, deterministic)
}
func (m *PeerGroup) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PeerGroup.Merge(m, src)
}
func (m *PeerGroup) XXX_Size() int {
	return xxx_messageInfo_PeerGroup.Size(m)
}
func (m *PeerGroup) XXX_DiscardUnknown() {
	xxx_messageInfo_PeerGroup.DiscardUnknown(m)
}

var xxx_messageInfo_PeerGroup proto.InternalMessageInfo

func (m *PeerGroup) GetApplyPolicy() *ApplyPolicy {
	if m != nil {
		return m.ApplyPolicy
	}
	return nil
}

func (m *PeerGroup) GetConf() *PeerGroupConf {
	if m != nil {
		return m.Conf
	}
	return nil
}

func (m *PeerGroup) GetEbgpMultihop() *EbgpMultihop {
	if m != nil {
		return m.EbgpMultihop
	}
	return nil
}

func (m *PeerGroup) GetRouteReflector() *RouteReflector {
	if m != nil {
		return m.RouteReflector
	}
	return nil
}

func (m *PeerGroup) GetInfo() *PeerGroupState {
	if m != nil {
		return m.Info
	}
	return nil
}

func (m *PeerGroup) GetTimers() *Timers {
	if m != nil {
		return m.Timers
	}
	return nil
}

func (m *PeerGroup) GetTransport() *Transport {
	if m != nil {
		return m.Transport
	}
	return nil
}

func (m *PeerGroup) GetRouteServer() *RouteServer {
	if m != nil {
		return m.RouteServer
	}
	return nil
}

func (m *PeerGroup) GetGracefulRestart() *GracefulRestart {
	if m != nil {
		return m.GracefulRestart
	}
	return nil
}

func (m *PeerGroup) GetAfiSafis() []*AfiSafi {
	if m != nil {
		return m.AfiSafis
	}
	return nil
}

func (m *PeerGroup) GetTtlSecurity() *TtlSecurity {
	if m != nil {
		return m.TtlSecurity
	}
	return nil
}

type DynamicNeighbor struct {
	Prefix               string   `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	PeerGroup            string   `protobuf:"bytes,2,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *DynamicNeighbor) Reset()         { *m = DynamicNeighbor{} }
func (m *DynamicNeighbor) String() string { return proto.CompactTextString(m) }
func (*DynamicNeighbor) ProtoMessage()    {}
func (*DynamicNeighbor) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{79}
}

func (m *DynamicNeighbor) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DynamicNeighbor.Unmarshal(m, b)
}
func (m *DynamicNeighbor) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DynamicNeighbor.Marshal(b, m, deterministic)
}
func (m *DynamicNeighbor) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DynamicNeighbor.Merge(m, src)
}
func (m *DynamicNeighbor) XXX_Size() int {
	return xxx_messageInfo_DynamicNeighbor.Size(m)
}
func (m *DynamicNeighbor) XXX_DiscardUnknown() {
	xxx_messageInfo_DynamicNeighbor.DiscardUnknown(m)
}

var xxx_messageInfo_DynamicNeighbor proto.InternalMessageInfo

func (m *DynamicNeighbor) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *DynamicNeighbor) GetPeerGroup() string {
	if m != nil {
		return m.PeerGroup
	}
	return ""
}

type ApplyPolicy struct {
	InPolicy             *PolicyAssignment `protobuf:"bytes,1,opt,name=in_policy,json=inPolicy,proto3" json:"in_policy,omitempty"`
	ExportPolicy         *PolicyAssignment `protobuf:"bytes,2,opt,name=export_policy,json=exportPolicy,proto3" json:"export_policy,omitempty"`
	ImportPolicy         *PolicyAssignment `protobuf:"bytes,3,opt,name=import_policy,json=importPolicy,proto3" json:"import_policy,omitempty"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *ApplyPolicy) Reset()         { *m = ApplyPolicy{} }
func (m *ApplyPolicy) String() string { return proto.CompactTextString(m) }
func (*ApplyPolicy) ProtoMessage()    {}
func (*ApplyPolicy) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{80}
}

func (m *ApplyPolicy) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_ApplyPolicy.Unmarshal(m, b)
}
func (m *ApplyPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_ApplyPolicy.Marshal(b, m, deterministic)
}
func (m *ApplyPolicy) XXX_Merge(src proto.Message) {
	xxx_messageInfo_ApplyPolicy.Merge(m, src)
}
func (m *ApplyPolicy) XXX_Size() int {
	return xxx_messageInfo_ApplyPolicy.Size(m)
}
func (m *ApplyPolicy) XXX_DiscardUnknown() {
	xxx_messageInfo_ApplyPolicy.DiscardUnknown(m)
}

var xxx_messageInfo_ApplyPolicy proto.InternalMessageInfo

func (m *ApplyPolicy) GetInPolicy() *PolicyAssignment {
	if m != nil {
		return m.InPolicy
	}
	return nil
}

func (m *ApplyPolicy) GetExportPolicy() *PolicyAssignment {
	if m != nil {
		return m.ExportPolicy
	}
	return nil
}

func (m *ApplyPolicy) GetImportPolicy() *PolicyAssignment {
	if m != nil {
		return m.ImportPolicy
	}
	return nil
}

type PrefixLimit struct {
	Family               *Family  `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
	MaxPrefixes          uint32   `protobuf:"varint,2,opt,name=max_prefixes,json=maxPrefixes,proto3" json:"max_prefixes,omitempty"`
	ShutdownThresholdPct uint32   `protobuf:"varint,3,opt,name=shutdown_threshold_pct,json=shutdownThresholdPct,proto3" json:"shutdown_threshold_pct,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *PrefixLimit) Reset()         { *m = PrefixLimit{} }
func (m *PrefixLimit) String() string { return proto.CompactTextString(m) }
func (*PrefixLimit) ProtoMessage()    {}
func (*PrefixLimit) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{81}
}

func (m *PrefixLimit) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PrefixLimit.Unmarshal(m, b)
}
func (m *PrefixLimit) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PrefixLimit.Marshal(b, m, deterministic)
}
func (m *PrefixLimit) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PrefixLimit.Merge(m, src)
}
func (m *PrefixLimit) XXX_Size() int {
	return xxx_messageInfo_PrefixLimit.Size(m)
}
func (m *PrefixLimit) XXX_DiscardUnknown() {
	xxx_messageInfo_PrefixLimit.DiscardUnknown(m)
}

var xxx_messageInfo_PrefixLimit proto.InternalMessageInfo

func (m *PrefixLimit) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *PrefixLimit) GetMaxPrefixes() uint32 {
	if m != nil {
		return m.MaxPrefixes
	}
	return 0
}

func (m *PrefixLimit) GetShutdownThresholdPct() uint32 {
	if m != nil {
		return m.ShutdownThresholdPct
	}
	return 0
}

type PeerConf struct {
	AuthPassword         string                   `protobuf:"bytes,1,opt,name=auth_password,json=authPassword,proto3" json:"auth_password,omitempty"`
	Description          string                   `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	LocalAs              uint32                   `protobuf:"varint,3,opt,name=local_as,json=localAs,proto3" json:"local_as,omitempty"`
	NeighborAddress      string                   `protobuf:"bytes,4,opt,name=neighbor_address,json=neighborAddress,proto3" json:"neighbor_address,omitempty"`
	PeerAs               uint32                   `protobuf:"varint,5,opt,name=peer_as,json=peerAs,proto3" json:"peer_as,omitempty"`
	PeerGroup            string                   `protobuf:"bytes,6,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	PeerType             uint32                   `protobuf:"varint,7,opt,name=peer_type,json=peerType,proto3" json:"peer_type,omitempty"`
	RemovePrivateAs      PeerConf_RemovePrivateAs `protobuf:"varint,8,opt,name=remove_private_as,json=removePrivateAs,proto3,enum=gobgpapi.PeerConf_RemovePrivateAs" json:"remove_private_as,omitempty"`
	RouteFlapDamping     bool                     `protobuf:"varint,9,opt,name=route_flap_damping,json=routeFlapDamping,proto3" json:"route_flap_damping,omitempty"`
	SendCommunity        uint32                   `protobuf:"varint,10,opt,name=send_community,json=sendCommunity,proto3" json:"send_community,omitempty"`
	NeighborInterface    string                   `protobuf:"bytes,11,opt,name=neighbor_interface,json=neighborInterface,proto3" json:"neighbor_interface,omitempty"`
	Vrf                  string                   `protobuf:"bytes,12,opt,name=vrf,proto3" json:"vrf,omitempty"`
	AllowOwnAs           uint32                   `protobuf:"varint,13,opt,name=allow_own_as,json=allowOwnAs,proto3" json:"allow_own_as,omitempty"`
	ReplacePeerAs        bool                     `protobuf:"varint,14,opt,name=replace_peer_as,json=replacePeerAs,proto3" json:"replace_peer_as,omitempty"`
	AdminDown            bool                     `protobuf:"varint,15,opt,name=admin_down,json=adminDown,proto3" json:"admin_down,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *PeerConf) Reset()         { *m = PeerConf{} }
func (m *PeerConf) String() string { return proto.CompactTextString(m) }
func (*PeerConf) ProtoMessage()    {}
func (*PeerConf) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{82}
}

func (m *PeerConf) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PeerConf.Unmarshal(m, b)
}
func (m *PeerConf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PeerConf.Marshal(b, m, deterministic)
}
func (m *PeerConf) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PeerConf.Merge(m, src)
}
func (m *PeerConf) XXX_Size() int {
	return xxx_messageInfo_PeerConf.Size(m)
}
func (m *PeerConf) XXX_DiscardUnknown() {
	xxx_messageInfo_PeerConf.DiscardUnknown(m)
}

var xxx_messageInfo_PeerConf proto.InternalMessageInfo

func (m *PeerConf) GetAuthPassword() string {
	if m != nil {
		return m.AuthPassword
	}
	return ""
}

func (m *PeerConf) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *PeerConf) GetLocalAs() uint32 {
	if m != nil {
		return m.LocalAs
	}
	return 0
}

func (m *PeerConf) GetNeighborAddress() string {
	if m != nil {
		return m.NeighborAddress
	}
	return ""
}

func (m *PeerConf) GetPeerAs() uint32 {
	if m != nil {
		return m.PeerAs
	}
	return 0
}

func (m *PeerConf) GetPeerGroup() string {
	if m != nil {
		return m.PeerGroup
	}
	return ""
}

func (m *PeerConf) GetPeerType() uint32 {
	if m != nil {
		return m.PeerType
	}
	return 0
}

func (m *PeerConf) GetRemovePrivateAs() PeerConf_RemovePrivateAs {
	if m != nil {
		return m.RemovePrivateAs
	}
	return PeerConf_NONE
}

func (m *PeerConf) GetRouteFlapDamping() bool {
	if m != nil {
		return m.RouteFlapDamping
	}
	return false
}

func (m *PeerConf) GetSendCommunity() uint32 {
	if m != nil {
		return m.SendCommunity
	}
	return 0
}

func (m *PeerConf) GetNeighborInterface() string {
	if m != nil {
		return m.NeighborInterface
	}
	return ""
}

func (m *PeerConf) GetVrf() string {
	if m != nil {
		return m.Vrf
	}
	return ""
}

func (m *PeerConf) GetAllowOwnAs() uint32 {
	if m != nil {
		return m.AllowOwnAs
	}
	return 0
}

func (m *PeerConf) GetReplacePeerAs() bool {
	if m != nil {
		return m.ReplacePeerAs
	}
	return false
}

func (m *PeerConf) GetAdminDown() bool {
	if m != nil {
		return m.AdminDown
	}
	return false
}

type PeerGroupConf struct {
	AuthPassword         string                        `protobuf:"bytes,1,opt,name=auth_password,json=authPassword,proto3" json:"auth_password,omitempty"`
	Description          string                        `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	LocalAs              uint32                        `protobuf:"varint,3,opt,name=local_as,json=localAs,proto3" json:"local_as,omitempty"`
	PeerAs               uint32                        `protobuf:"varint,4,opt,name=peer_as,json=peerAs,proto3" json:"peer_as,omitempty"`
	PeerGroupName        string                        `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName,proto3" json:"peer_group_name,omitempty"`
	PeerType             uint32                        `protobuf:"varint,6,opt,name=peer_type,json=peerType,proto3" json:"peer_type,omitempty"`
	RemovePrivateAs      PeerGroupConf_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,proto3,enum=gobgpapi.PeerGroupConf_RemovePrivateAs" json:"remove_private_as,omitempty"`
	RouteFlapDamping     bool                          `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping,proto3" json:"route_flap_damping,omitempty"`
	SendCommunity        uint32                        `protobuf:"varint,9,opt,name=send_community,json=sendCommunity,proto3" json:"send_community,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
	XXX_unrecognized     []byte                        `json:"-"`
	XXX_sizecache        int32                         `json:"-"`
}

func (m *PeerGroupConf) Reset()         { *m = PeerGroupConf{} }
func (m *PeerGroupConf) String() string { return proto.CompactTextString(m) }
func (*PeerGroupConf) ProtoMessage()    {}
func (*PeerGroupConf) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{83}
}

func (m *PeerGroupConf) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PeerGroupConf.Unmarshal(m, b)
}
func (m *PeerGroupConf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PeerGroupConf.Marshal(b, m, deterministic)
}
func (m *PeerGroupConf) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PeerGroupConf.Merge(m, src)
}
func (m *PeerGroupConf) XXX_Size() int {
	return xxx_messageInfo_PeerGroupConf.Size(m)
}
func (m *PeerGroupConf) XXX_DiscardUnknown() {
	xxx_messageInfo_PeerGroupConf.DiscardUnknown(m)
}

var xxx_messageInfo_PeerGroupConf proto.InternalMessageInfo

func (m *PeerGroupConf) GetAuthPassword() string {
	if m != nil {
		return m.AuthPassword
	}
	return ""
}

func (m *PeerGroupConf) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *PeerGroupConf) GetLocalAs() uint32 {
	if m != nil {
		return m.LocalAs
	}
	return 0
}

func (m *PeerGroupConf) GetPeerAs() uint32 {
	if m != nil {
		return m.PeerAs
	}
	return 0
}

func (m *PeerGroupConf) GetPeerGroupName() string {
	if m != nil {
		return m.PeerGroupName
	}
	return ""
}

func (m *PeerGroupConf) GetPeerType() uint32 {
	if m != nil {
		return m.PeerType
	}
	return 0
}

func (m *PeerGroupConf) GetRemovePrivateAs() PeerGroupConf_RemovePrivateAs {
	if m != nil {
		return m.RemovePrivateAs
	}
	return PeerGroupConf_NONE
}

func (m *PeerGroupConf) GetRouteFlapDamping() bool {
	if m != nil {
		return m.RouteFlapDamping
	}
	return false
}

func (m *PeerGroupConf) GetSendCommunity() uint32 {
	if m != nil {
		return m.SendCommunity
	}
	return 0
}

type PeerGroupState struct {
	AuthPassword         string                         `protobuf:"bytes,1,opt,name=auth_password,json=authPassword,proto3" json:"auth_password,omitempty"`
	Description          string                         `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	LocalAs              uint32                         `protobuf:"varint,3,opt,name=local_as,json=localAs,proto3" json:"local_as,omitempty"`
	PeerAs               uint32                         `protobuf:"varint,4,opt,name=peer_as,json=peerAs,proto3" json:"peer_as,omitempty"`
	PeerGroupName        string                         `protobuf:"bytes,5,opt,name=peer_group_name,json=peerGroupName,proto3" json:"peer_group_name,omitempty"`
	PeerType             uint32                         `protobuf:"varint,6,opt,name=peer_type,json=peerType,proto3" json:"peer_type,omitempty"`
	RemovePrivateAs      PeerGroupState_RemovePrivateAs `protobuf:"varint,7,opt,name=remove_private_as,json=removePrivateAs,proto3,enum=gobgpapi.PeerGroupState_RemovePrivateAs" json:"remove_private_as,omitempty"`
	RouteFlapDamping     bool                           `protobuf:"varint,8,opt,name=route_flap_damping,json=routeFlapDamping,proto3" json:"route_flap_damping,omitempty"`
	SendCommunity        uint32                         `protobuf:"varint,9,opt,name=send_community,json=sendCommunity,proto3" json:"send_community,omitempty"`
	TotalPaths           uint32                         `protobuf:"varint,10,opt,name=total_paths,json=totalPaths,proto3" json:"total_paths,omitempty"`
	TotalPrefixes        uint32                         `protobuf:"varint,11,opt,name=total_prefixes,json=totalPrefixes,proto3" json:"total_prefixes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                       `json:"-"`
	XXX_unrecognized     []byte                         `json:"-"`
	XXX_sizecache        int32                          `json:"-"`
}

func (m *PeerGroupState) Reset()         { *m = PeerGroupState{} }
func (m *PeerGroupState) String() string { return proto.CompactTextString(m) }
func (*PeerGroupState) ProtoMessage()    {}
func (*PeerGroupState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{84}
}

func (m *PeerGroupState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PeerGroupState.Unmarshal(m, b)
}
func (m *PeerGroupState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PeerGroupState.Marshal(b, m, deterministic)
}
func (m *PeerGroupState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PeerGroupState.Merge(m, src)
}
func (m *PeerGroupState) XXX_Size() int {
	return xxx_messageInfo_PeerGroupState.Size(m)
}
func (m *PeerGroupState) XXX_DiscardUnknown() {
	xxx_messageInfo_PeerGroupState.DiscardUnknown(m)
}

var xxx_messageInfo_PeerGroupState proto.InternalMessageInfo

func (m *PeerGroupState) GetAuthPassword() string {
	if m != nil {
		return m.AuthPassword
	}
	return ""
}

func (m *PeerGroupState) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *PeerGroupState) GetLocalAs() uint32 {
	if m != nil {
		return m.LocalAs
	}
	return 0
}

func (m *PeerGroupState) GetPeerAs() uint32 {
	if m != nil {
		return m.PeerAs
	}
	return 0
}

func (m *PeerGroupState) GetPeerGroupName() string {
	if m != nil {
		return m.PeerGroupName
	}
	return ""
}

func (m *PeerGroupState) GetPeerType() uint32 {
	if m != nil {
		return m.PeerType
	}
	return 0
}

func (m *PeerGroupState) GetRemovePrivateAs() PeerGroupState_RemovePrivateAs {
	if m != nil {
		return m.RemovePrivateAs
	}
	return PeerGroupState_NONE
}

func (m *PeerGroupState) GetRouteFlapDamping() bool {
	if m != nil {
		return m.RouteFlapDamping
	}
	return false
}

func (m *PeerGroupState) GetSendCommunity() uint32 {
	if m != nil {
		return m.SendCommunity
	}
	return 0
}

func (m *PeerGroupState) GetTotalPaths() uint32 {
	if m != nil {
		return m.TotalPaths
	}
	return 0
}

func (m *PeerGroupState) GetTotalPrefixes() uint32 {
	if m != nil {
		return m.TotalPrefixes
	}
	return 0
}

type TtlSecurity struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	TtlMin               uint32   `protobuf:"varint,2,opt,name=ttl_min,json=ttlMin,proto3" json:"ttl_min,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TtlSecurity) Reset()         { *m = TtlSecurity{} }
func (m *TtlSecurity) String() string { return proto.CompactTextString(m) }
func (*TtlSecurity) ProtoMessage()    {}
func (*TtlSecurity) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{85}
}

func (m *TtlSecurity) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TtlSecurity.Unmarshal(m, b)
}
func (m *TtlSecurity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TtlSecurity.Marshal(b, m, deterministic)
}
func (m *TtlSecurity) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TtlSecurity.Merge(m, src)
}
func (m *TtlSecurity) XXX_Size() int {
	return xxx_messageInfo_TtlSecurity.Size(m)
}
func (m *TtlSecurity) XXX_DiscardUnknown() {
	xxx_messageInfo_TtlSecurity.DiscardUnknown(m)
}

var xxx_messageInfo_TtlSecurity proto.InternalMessageInfo

func (m *TtlSecurity) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *TtlSecurity) GetTtlMin() uint32 {
	if m != nil {
		return m.TtlMin
	}
	return 0
}

type EbgpMultihop struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	MultihopTtl          uint32   `protobuf:"varint,2,opt,name=multihop_ttl,json=multihopTtl,proto3" json:"multihop_ttl,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EbgpMultihop) Reset()         { *m = EbgpMultihop{} }
func (m *EbgpMultihop) String() string { return proto.CompactTextString(m) }
func (*EbgpMultihop) ProtoMessage()    {}
func (*EbgpMultihop) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{86}
}

func (m *EbgpMultihop) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EbgpMultihop.Unmarshal(m, b)
}
func (m *EbgpMultihop) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EbgpMultihop.Marshal(b, m, deterministic)
}
func (m *EbgpMultihop) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EbgpMultihop.Merge(m, src)
}
func (m *EbgpMultihop) XXX_Size() int {
	return xxx_messageInfo_EbgpMultihop.Size(m)
}
func (m *EbgpMultihop) XXX_DiscardUnknown() {
	xxx_messageInfo_EbgpMultihop.DiscardUnknown(m)
}

var xxx_messageInfo_EbgpMultihop proto.InternalMessageInfo

func (m *EbgpMultihop) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *EbgpMultihop) GetMultihopTtl() uint32 {
	if m != nil {
		return m.MultihopTtl
	}
	return 0
}

type RouteReflector struct {
	RouteReflectorClient    bool     `protobuf:"varint,1,opt,name=route_reflector_client,json=routeReflectorClient,proto3" json:"route_reflector_client,omitempty"`
	RouteReflectorClusterId string   `protobuf:"bytes,2,opt,name=route_reflector_cluster_id,json=routeReflectorClusterId,proto3" json:"route_reflector_cluster_id,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *RouteReflector) Reset()         { *m = RouteReflector{} }
func (m *RouteReflector) String() string { return proto.CompactTextString(m) }
func (*RouteReflector) ProtoMessage()    {}
func (*RouteReflector) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{87}
}

func (m *RouteReflector) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteReflector.Unmarshal(m, b)
}
func (m *RouteReflector) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteReflector.Marshal(b, m, deterministic)
}
func (m *RouteReflector) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteReflector.Merge(m, src)
}
func (m *RouteReflector) XXX_Size() int {
	return xxx_messageInfo_RouteReflector.Size(m)
}
func (m *RouteReflector) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteReflector.DiscardUnknown(m)
}

var xxx_messageInfo_RouteReflector proto.InternalMessageInfo

func (m *RouteReflector) GetRouteReflectorClient() bool {
	if m != nil {
		return m.RouteReflectorClient
	}
	return false
}

func (m *RouteReflector) GetRouteReflectorClusterId() string {
	if m != nil {
		return m.RouteReflectorClusterId
	}
	return ""
}

type PeerState struct {
	AuthPassword     string                 `protobuf:"bytes,1,opt,name=auth_password,json=authPassword,proto3" json:"auth_password,omitempty"`
	Description      string                 `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	LocalAs          uint32                 `protobuf:"varint,3,opt,name=local_as,json=localAs,proto3" json:"local_as,omitempty"`
	Messages         *Messages              `protobuf:"bytes,4,opt,name=messages,proto3" json:"messages,omitempty"`
	NeighborAddress  string                 `protobuf:"bytes,5,opt,name=neighbor_address,json=neighborAddress,proto3" json:"neighbor_address,omitempty"`
	PeerAs           uint32                 `protobuf:"varint,6,opt,name=peer_as,json=peerAs,proto3" json:"peer_as,omitempty"`
	PeerGroup        string                 `protobuf:"bytes,7,opt,name=peer_group,json=peerGroup,proto3" json:"peer_group,omitempty"`
	PeerType         uint32                 `protobuf:"varint,8,opt,name=peer_type,json=peerType,proto3" json:"peer_type,omitempty"`
	Queues           *Queues                `protobuf:"bytes,9,opt,name=queues,proto3" json:"queues,omitempty"`
	RemovePrivateAs  uint32                 `protobuf:"varint,10,opt,name=remove_private_as,json=removePrivateAs,proto3" json:"remove_private_as,omitempty"`
	RouteFlapDamping bool                   `protobuf:"varint,11,opt,name=route_flap_damping,json=routeFlapDamping,proto3" json:"route_flap_damping,omitempty"`
	SendCommunity    uint32                 `protobuf:"varint,12,opt,name=send_community,json=sendCommunity,proto3" json:"send_community,omitempty"`
	SessionState     PeerState_SessionState `protobuf:"varint,13,opt,name=session_state,json=sessionState,proto3,enum=gobgpapi.PeerState_SessionState" json:"session_state,omitempty"`
	AdminState       PeerState_AdminState   `protobuf:"varint,15,opt,name=admin_state,json=adminState,proto3,enum=gobgpapi.PeerState_AdminState" json:"admin_state,omitempty"`
	OutQ             uint32                 `protobuf:"varint,16,opt,name=out_q,json=outQ,proto3" json:"out_q,omitempty"`
	Flops            uint32                 `protobuf:"varint,17,opt,name=flops,proto3" json:"flops,omitempty"`
	// Each attribute must be one of *Capability defined in
	// "api/capability.proto".
	RemoteCap            []*any.Any `protobuf:"bytes,18,rep,name=remote_cap,json=remoteCap,proto3" json:"remote_cap,omitempty"`
	LocalCap             []*any.Any `protobuf:"bytes,19,rep,name=local_cap,json=localCap,proto3" json:"local_cap,omitempty"`
	RouterId             string     `protobuf:"bytes,20,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *PeerState) Reset()         { *m = PeerState{} }
func (m *PeerState) String() string { return proto.CompactTextString(m) }
func (*PeerState) ProtoMessage()    {}
func (*PeerState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{88}
}

func (m *PeerState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PeerState.Unmarshal(m, b)
}
func (m *PeerState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PeerState.Marshal(b, m, deterministic)
}
func (m *PeerState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PeerState.Merge(m, src)
}
func (m *PeerState) XXX_Size() int {
	return xxx_messageInfo_PeerState.Size(m)
}
func (m *PeerState) XXX_DiscardUnknown() {
	xxx_messageInfo_PeerState.DiscardUnknown(m)
}

var xxx_messageInfo_PeerState proto.InternalMessageInfo

func (m *PeerState) GetAuthPassword() string {
	if m != nil {
		return m.AuthPassword
	}
	return ""
}

func (m *PeerState) GetDescription() string {
	if m != nil {
		return m.Description
	}
	return ""
}

func (m *PeerState) GetLocalAs() uint32 {
	if m != nil {
		return m.LocalAs
	}
	return 0
}

func (m *PeerState) GetMessages() *Messages {
	if m != nil {
		return m.Messages
	}
	return nil
}

func (m *PeerState) GetNeighborAddress() string {
	if m != nil {
		return m.NeighborAddress
	}
	return ""
}

func (m *PeerState) GetPeerAs() uint32 {
	if m != nil {
		return m.PeerAs
	}
	return 0
}

func (m *PeerState) GetPeerGroup() string {
	if m != nil {
		return m.PeerGroup
	}
	return ""
}

func (m *PeerState) GetPeerType() uint32 {
	if m != nil {
		return m.PeerType
	}
	return 0
}

func (m *PeerState) GetQueues() *Queues {
	if m != nil {
		return m.Queues
	}
	return nil
}

func (m *PeerState) GetRemovePrivateAs() uint32 {
	if m != nil {
		return m.RemovePrivateAs
	}
	return 0
}

func (m *PeerState) GetRouteFlapDamping() bool {
	if m != nil {
		return m.RouteFlapDamping
	}
	return false
}

func (m *PeerState) GetSendCommunity() uint32 {
	if m != nil {
		return m.SendCommunity
	}
	return 0
}

func (m *PeerState) GetSessionState() PeerState_SessionState {
	if m != nil {
		return m.SessionState
	}
	return PeerState_UNKNOWN
}

func (m *PeerState) GetAdminState() PeerState_AdminState {
	if m != nil {
		return m.AdminState
	}
	return PeerState_UP
}

func (m *PeerState) GetOutQ() uint32 {
	if m != nil {
		return m.OutQ
	}
	return 0
}

func (m *PeerState) GetFlops() uint32 {
	if m != nil {
		return m.Flops
	}
	return 0
}

func (m *PeerState) GetRemoteCap() []*any.Any {
	if m != nil {
		return m.RemoteCap
	}
	return nil
}

func (m *PeerState) GetLocalCap() []*any.Any {
	if m != nil {
		return m.LocalCap
	}
	return nil
}

func (m *PeerState) GetRouterId() string {
	if m != nil {
		return m.RouterId
	}
	return ""
}

type Messages struct {
	Received             *Message `protobuf:"bytes,1,opt,name=received,proto3" json:"received,omitempty"`
	Sent                 *Message `protobuf:"bytes,2,opt,name=sent,proto3" json:"sent,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Messages) Reset()         { *m = Messages{} }
func (m *Messages) String() string { return proto.CompactTextString(m) }
func (*Messages) ProtoMessage()    {}
func (*Messages) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{89}
}

func (m *Messages) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Messages.Unmarshal(m, b)
}
func (m *Messages) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Messages.Marshal(b, m, deterministic)
}
func (m *Messages) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Messages.Merge(m, src)
}
func (m *Messages) XXX_Size() int {
	return xxx_messageInfo_Messages.Size(m)
}
func (m *Messages) XXX_DiscardUnknown() {
	xxx_messageInfo_Messages.DiscardUnknown(m)
}

var xxx_messageInfo_Messages proto.InternalMessageInfo

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,proto3" json:"notification,omitempty"`
	Update               uint64   `protobuf:"varint,2,opt,name=update,proto3" json:"update,omitempty"`
	Open                 uint64   `protobuf:"varint,3,opt,name=open,proto3" json:"open,omitempty"`
	Keepalive            uint64   `protobuf:"varint,4,opt,name=keepalive,proto3" json:"keepalive,omitempty"`
	Refresh              uint64   `protobuf:"varint,5,opt,name=refresh,proto3" json:"refresh,omitempty"`
	Discarded            uint64   `protobuf:"varint,6,opt,name=discarded,proto3" json:"discarded,omitempty"`
	Total                uint64   `protobuf:"varint,7,opt,name=total,proto3" json:"total,omitempty"`
	WithdrawUpdate       uint64   `protobuf:"varint,8,opt,name=withdraw_update,json=withdrawUpdate,proto3" json:"withdraw_update,omitempty"`
	WithdrawPrefix       uint64   `protobuf:"varint,9,opt,name=withdraw_prefix,json=withdrawPrefix,proto3" json:"withdraw_prefix,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Message) Reset()         { *m = Message{} }
func (m *Message) String() string { return proto.CompactTextString(m) }
func (*Message) ProtoMessage()    {}
func (*Message) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{90}
}

func (m *Message) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Message.Unmarshal(m, b)
}
func (m *Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Message.Marshal(b, m, deterministic)
}
func (m *Message) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Message.Merge(m, src)
}
func (m *Message) XXX_Size() int {
	return xxx_messageInfo_Message.Size(m)
}
func (m *Message) XXX_DiscardUnknown() {
	xxx_messageInfo_Message.DiscardUnknown(m)
}

var xxx_messageInfo_Message proto.InternalMessageInfo

func (m *Message) GetNotification() uint64 {
	if m != nil {
		return m.Notification
	}
	return 0
}

func (m *Message) GetUpdate() uint64 {
	if m != nil {
		return m.Update
	}
	return 0
}

func (m *Message) GetOpen() uint64 {
	if m != nil {
		return m.Open
	}
	return 0
}

func (m *Message) GetKeepalive() uint64 {
	if m != nil {
		return m.Keepalive
	}
	return 0
}

func (m *Message) GetRefresh() uint64 {
	if m != nil {
		return m.Refresh
	}
	return 0
}

func (m *Message) GetDiscarded() uint64 {
	if m != nil {
		return m.Discarded
	}
	return 0
}

func (m *Message) GetTotal() uint64 {
	if m != nil {
		return m.Total
	}
	return 0
}

func (m *Message) GetWithdrawUpdate() uint64 {
	if m != nil {
		return m.WithdrawUpdate
	}
	return 0
}

func (m *Message) GetWithdrawPrefix() uint64 {
	if m != nil {
		return m.WithdrawPrefix
	}
	return 0
}

type Queues struct {
	Input                uint32   `protobuf:"varint,1,opt,name=input,proto3" json:"input,omitempty"`
	Output               uint32   `protobuf:"varint,2,opt,name=output,proto3" json:"output,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Queues) Reset()         { *m = Queues{} }
func (m *Queues) String() string { return proto.CompactTextString(m) }
func (*Queues) ProtoMessage()    {}
func (*Queues) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{91}
}

func (m *Queues) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Queues.Unmarshal(m, b)
}
func (m *Queues) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Queues.Marshal(b, m, deterministic)
}
func (m *Queues) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Queues.Merge(m, src)
}
func (m *Queues) XXX_Size() int {
	return xxx_messageInfo_Queues.Size(m)
}
func (m *Queues) XXX_DiscardUnknown() {
	xxx_messageInfo_Queues.DiscardUnknown(m)
}

var xxx_messageInfo_Queues proto.InternalMessageInfo

func (m *Queues) GetInput() uint32 {
	if m != nil {
		return m.Input
	}
	return 0
}

func (m *Queues) GetOutput() uint32 {
	if m != nil {
		return m.Output
	}
	return 0
}

type Timers struct {
	Config               *TimersConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *TimersState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *Timers) Reset()         { *m = Timers{} }
func (m *Timers) String() string { return proto.CompactTextString(m) }
func (*Timers) ProtoMessage()    {}
func (*Timers) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{92}
}

func (m *Timers) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Timers.Unmarshal(m, b)
}
func (m *Timers) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Timers.Marshal(b, m, deterministic)
}
func (m *Timers) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Timers.Merge(m, src)
}
func (m *Timers) XXX_Size() int {
	return xxx_messageInfo_Timers.Size(m)
}
func (m *Timers) XXX_DiscardUnknown() {
	xxx_messageInfo_Timers.DiscardUnknown(m)
}

var xxx_messageInfo_Timers proto.InternalMessageInfo

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,proto3" json:"connect_retry,omitempty"`
	HoldTime                     uint64   `protobuf:"varint,2,opt,name=hold_time,json=holdTime,proto3" json:"hold_time,omitempty"`
	KeepaliveInterval            uint64   `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval,proto3" json:"keepalive_interval,omitempty"`
	MinimumAdvertisementInterval uint64   `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval,proto3" json:"minimum_advertisement_interval,omitempty"`
	IdleHoldTimeAfterReset       uint64   `protobuf:"varint,5,opt,name=idle_hold_time_after_reset,json=idleHoldTimeAfterReset,proto3" json:"idle_hold_time_after_reset,omitempty"`
	XXX_NoUnkeyedLiteral         struct{} `json:"-"`
	XXX_unrecognized             []byte   `json:"-"`
	XXX_sizecache                int32    `json:"-"`
}

func (m *TimersConfig) Reset()         { *m = TimersConfig{} }
func (m *TimersConfig) String() string { return proto.CompactTextString(m) }
func (*TimersConfig) ProtoMessage()    {}
func (*TimersConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{93}
}

func (m *TimersConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TimersConfig.Unmarshal(m, b)
}
func (m *TimersConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TimersConfig.Marshal(b, m, deterministic)
}
func (m *TimersConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimersConfig.Merge(m, src)
}
func (m *TimersConfig) XXX_Size() int {
	return xxx_messageInfo_TimersConfig.Size(m)
}
func (m *TimersConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_TimersConfig.DiscardUnknown(m)
}

var xxx_messageInfo_TimersConfig proto.InternalMessageInfo

func (m *TimersConfig) GetConnectRetry() uint64 {
	if m != nil {
		return m.ConnectRetry
	}
	return 0
}

func (m *TimersConfig) GetHoldTime() uint64 {
	if m != nil {
		return m.HoldTime
	}
	return 0
}

func (m *TimersConfig) GetKeepaliveInterval() uint64 {
	if m != nil {
		return m.KeepaliveInterval
	}
	return 0
}

func (m *TimersConfig) GetMinimumAdvertisementInterval() uint64 {
	if m != nil {
		return m.MinimumAdvertisementInterval
	}
	return 0
}

func (m *TimersConfig) GetIdleHoldTimeAfterReset() uint64 {
	if m != nil {
		return m.IdleHoldTimeAfterReset
	}
	return 0
}

type TimersState struct {
	ConnectRetry                 uint64               `protobuf:"varint,1,opt,name=connect_retry,json=connectRetry,proto3" json:"connect_retry,omitempty"`
	HoldTime                     uint64               `protobuf:"varint,2,opt,name=hold_time,json=holdTime,proto3" json:"hold_time,omitempty"`
	KeepaliveInterval            uint64               `protobuf:"varint,3,opt,name=keepalive_interval,json=keepaliveInterval,proto3" json:"keepalive_interval,omitempty"`
	MinimumAdvertisementInterval uint64               `protobuf:"varint,4,opt,name=minimum_advertisement_interval,json=minimumAdvertisementInterval,proto3" json:"minimum_advertisement_interval,omitempty"`
	NegotiatedHoldTime           uint64               `protobuf:"varint,5,opt,name=negotiated_hold_time,json=negotiatedHoldTime,proto3" json:"negotiated_hold_time,omitempty"`
	Uptime                       *timestamp.Timestamp `protobuf:"bytes,6,opt,name=uptime,proto3" json:"uptime,omitempty"`
	Downtime                     *timestamp.Timestamp `protobuf:"bytes,7,opt,name=downtime,proto3" json:"downtime,omitempty"`
	XXX_NoUnkeyedLiteral         struct{}             `json:"-"`
	XXX_unrecognized             []byte               `json:"-"`
	XXX_sizecache                int32                `json:"-"`
}

func (m *TimersState) Reset()         { *m = TimersState{} }
func (m *TimersState) String() string { return proto.CompactTextString(m) }
func (*TimersState) ProtoMessage()    {}
func (*TimersState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{94}
}

func (m *TimersState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TimersState.Unmarshal(m, b)
}
func (m *TimersState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TimersState.Marshal(b, m, deterministic)
}
func (m *TimersState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimersState.Merge(m, src)
}
func (m *TimersState) XXX_Size() int {
	return xxx_messageInfo_TimersState.Size(m)
}
func (m *TimersState) XXX_DiscardUnknown() {
	xxx_messageInfo_TimersState.DiscardUnknown(m)
}

var xxx_messageInfo_TimersState proto.InternalMessageInfo

func (m *TimersState) GetConnectRetry() uint64 {
	if m != nil {
		return m.ConnectRetry
	}
	return 0
}

func (m *TimersState) GetHoldTime() uint64 {
	if m != nil {
		return m.HoldTime
	}
	return 0
}

func (m *TimersState) GetKeepaliveInterval() uint64 {
	if m != nil {
		return m.KeepaliveInterval
	}
	return 0
}

func (m *TimersState) GetMinimumAdvertisementInterval() uint64 {
	if m != nil {
		return m.MinimumAdvertisementInterval
	}
	return 0
}

func (m *TimersState) GetNegotiatedHoldTime() uint64 {
	if m != nil {
		return m.NegotiatedHoldTime
	}
	return 0
}

func (m *TimersState) GetUptime() *timestamp.Timestamp {
	if m != nil {
		return m.Uptime
	}
	return nil
}

func (m *TimersState) GetDowntime() *timestamp.Timestamp {
	if m != nil {
		return m.Downtime
	}
	return nil
}

type Transport struct {
	LocalAddress         string   `protobuf:"bytes,1,opt,name=local_address,json=localAddress,proto3" json:"local_address,omitempty"`
	LocalPort            uint32   `protobuf:"varint,2,opt,name=local_port,json=localPort,proto3" json:"local_port,omitempty"`
	MtuDiscovery         bool     `protobuf:"varint,3,opt,name=mtu_discovery,json=mtuDiscovery,proto3" json:"mtu_discovery,omitempty"`
	PassiveMode          bool     `protobuf:"varint,4,opt,name=passive_mode,json=passiveMode,proto3" json:"passive_mode,omitempty"`
	RemoteAddress        string   `protobuf:"bytes,5,opt,name=remote_address,json=remoteAddress,proto3" json:"remote_address,omitempty"`
	RemotePort           uint32   `protobuf:"varint,6,opt,name=remote_port,json=remotePort,proto3" json:"remote_port,omitempty"`
	TcpMss               uint32   `protobuf:"varint,7,opt,name=tcp_mss,json=tcpMss,proto3" json:"tcp_mss,omitempty"`
	BindInterface        string   `protobuf:"bytes,8,opt,name=bind_interface,json=bindInterface,proto3" json:"bind_interface,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Transport) Reset()         { *m = Transport{} }
func (m *Transport) String() string { return proto.CompactTextString(m) }
func (*Transport) ProtoMessage()    {}
func (*Transport) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{95}
}

func (m *Transport) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Transport.Unmarshal(m, b)
}
func (m *Transport) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Transport.Marshal(b, m, deterministic)
}
func (m *Transport) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Transport.Merge(m, src)
}
func (m *Transport) XXX_Size() int {
	return xxx_messageInfo_Transport.Size(m)
}
func (m *Transport) XXX_DiscardUnknown() {
	xxx_messageInfo_Transport.DiscardUnknown(m)
}

var xxx_messageInfo_Transport proto.InternalMessageInfo

func (m *Transport) GetLocalAddress() string {
	if m != nil {
		return m.LocalAddress
	}
	return ""
}

func (m *Transport) GetLocalPort() uint32 {
	if m != nil {
		return m.LocalPort
	}
	return 0
}

func (m *Transport) GetMtuDiscovery() bool {
	if m != nil {
		return m.MtuDiscovery
	}
	return false
}

func (m *Transport) GetPassiveMode() bool {
	if m != nil {
		return m.PassiveMode
	}
	return false
}

func (m *Transport) GetRemoteAddress() string {
	if m != nil {
		return m.RemoteAddress
	}
	return ""
}

func (m *Transport) GetRemotePort() uint32 {
	if m != nil {
		return m.RemotePort
	}
	return 0
}

func (m *Transport) GetTcpMss() uint32 {
	if m != nil {
		return m.TcpMss
	}
	return 0
}

func (m *Transport) GetBindInterface() string {
	if m != nil {
		return m.BindInterface
	}
	return ""
}

type RouteServer struct {
	RouteServerClient    bool     `protobuf:"varint,1,opt,name=route_server_client,json=routeServerClient,proto3" json:"route_server_client,omitempty"`
	SecondaryRoute       bool     `protobuf:"varint,2,opt,name=secondary_route,json=secondaryRoute,proto3" json:"secondary_route,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RouteServer) Reset()         { *m = RouteServer{} }
func (m *RouteServer) String() string { return proto.CompactTextString(m) }
func (*RouteServer) ProtoMessage()    {}
func (*RouteServer) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{96}
}

func (m *RouteServer) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteServer.Unmarshal(m, b)
}
func (m *RouteServer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteServer.Marshal(b, m, deterministic)
}
func (m *RouteServer) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteServer.Merge(m, src)
}
func (m *RouteServer) XXX_Size() int {
	return xxx_messageInfo_RouteServer.Size(m)
}
func (m *RouteServer) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteServer.DiscardUnknown(m)
}

var xxx_messageInfo_RouteServer proto.InternalMessageInfo

func (m *RouteServer) GetRouteServerClient() bool {
	if m != nil {
		return m.RouteServerClient
	}
	return false
}

func (m *RouteServer) GetSecondaryRoute() bool {
	if m != nil {
		return m.SecondaryRoute
	}
	return false
}

type GracefulRestart struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	RestartTime          uint32   `protobuf:"varint,2,opt,name=restart_time,json=restartTime,proto3" json:"restart_time,omitempty"`
	HelperOnly           bool     `protobuf:"varint,3,opt,name=helper_only,json=helperOnly,proto3" json:"helper_only,omitempty"`
	DeferralTime         uint32   `protobuf:"varint,4,opt,name=deferral_time,json=deferralTime,proto3" json:"deferral_time,omitempty"`
	NotificationEnabled  bool     `protobuf:"varint,5,opt,name=notification_enabled,json=notificationEnabled,proto3" json:"notification_enabled,omitempty"`
	LonglivedEnabled     bool     `protobuf:"varint,6,opt,name=longlived_enabled,json=longlivedEnabled,proto3" json:"longlived_enabled,omitempty"`
	StaleRoutesTime      uint32   `protobuf:"varint,7,opt,name=stale_routes_time,json=staleRoutesTime,proto3" json:"stale_routes_time,omitempty"`
	PeerRestartTime      uint32   `protobuf:"varint,8,opt,name=peer_restart_time,json=peerRestartTime,proto3" json:"peer_restart_time,omitempty"`
	PeerRestarting       bool     `protobuf:"varint,9,opt,name=peer_restarting,json=peerRestarting,proto3" json:"peer_restarting,omitempty"`
	LocalRestarting      bool     `protobuf:"varint,10,opt,name=local_restarting,json=localRestarting,proto3" json:"local_restarting,omitempty"`
	Mode                 string   `protobuf:"bytes,11,opt,name=mode,proto3" json:"mode,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *GracefulRestart) Reset()         { *m = GracefulRestart{} }
func (m *GracefulRestart) String() string { return proto.CompactTextString(m) }
func (*GracefulRestart) ProtoMessage()    {}
func (*GracefulRestart) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{97}
}

func (m *GracefulRestart) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_GracefulRestart.Unmarshal(m, b)
}
func (m *GracefulRestart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_GracefulRestart.Marshal(b, m, deterministic)
}
func (m *GracefulRestart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_GracefulRestart.Merge(m, src)
}
func (m *GracefulRestart) XXX_Size() int {
	return xxx_messageInfo_GracefulRestart.Size(m)
}
func (m *GracefulRestart) XXX_DiscardUnknown() {
	xxx_messageInfo_GracefulRestart.DiscardUnknown(m)
}

var xxx_messageInfo_GracefulRestart proto.InternalMessageInfo

func (m *GracefulRestart) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *GracefulRestart) GetRestartTime() uint32 {
	if m != nil {
		return m.RestartTime
	}
	return 0
}

func (m *GracefulRestart) GetHelperOnly() bool {
	if m != nil {
		return m.HelperOnly
	}
	return false
}

func (m *GracefulRestart) GetDeferralTime() uint32 {
	if m != nil {
		return m.DeferralTime
	}
	return 0
}

func (m *GracefulRestart) GetNotificationEnabled() bool {
	if m != nil {
		return m.NotificationEnabled
	}
	return false
}

func (m *GracefulRestart) GetLonglivedEnabled() bool {
	if m != nil {
		return m.LonglivedEnabled
	}
	return false
}

func (m *GracefulRestart) GetStaleRoutesTime() uint32 {
	if m != nil {
		return m.StaleRoutesTime
	}
	return 0
}

func (m *GracefulRestart) GetPeerRestartTime() uint32 {
	if m != nil {
		return m.PeerRestartTime
	}
	return 0
}

func (m *GracefulRestart) GetPeerRestarting() bool {
	if m != nil {
		return m.PeerRestarting
	}
	return false
}

func (m *GracefulRestart) GetLocalRestarting() bool {
	if m != nil {
		return m.LocalRestarting
	}
	return false
}

func (m *GracefulRestart) GetMode() string {
	if m != nil {
		return m.Mode
	}
	return ""
}

type MpGracefulRestartConfig struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MpGracefulRestartConfig) Reset()         { *m = MpGracefulRestartConfig{} }
func (m *MpGracefulRestartConfig) String() string { return proto.CompactTextString(m) }
func (*MpGracefulRestartConfig) ProtoMessage()    {}
func (*MpGracefulRestartConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{98}
}

func (m *MpGracefulRestartConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MpGracefulRestartConfig.Unmarshal(m, b)
}
func (m *MpGracefulRestartConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MpGracefulRestartConfig.Marshal(b, m, deterministic)
}
func (m *MpGracefulRestartConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MpGracefulRestartConfig.Merge(m, src)
}
func (m *MpGracefulRestartConfig) XXX_Size() int {
	return xxx_messageInfo_MpGracefulRestartConfig.Size(m)
}
func (m *MpGracefulRestartConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_MpGracefulRestartConfig.DiscardUnknown(m)
}

var xxx_messageInfo_MpGracefulRestartConfig proto.InternalMessageInfo

func (m *MpGracefulRestartConfig) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

type MpGracefulRestartState struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Received             bool     `protobuf:"varint,2,opt,name=received,proto3" json:"received,omitempty"`
	Advertised           bool     `protobuf:"varint,3,opt,name=advertised,proto3" json:"advertised,omitempty"`
	EndOfRibReceived     bool     `protobuf:"varint,4,opt,name=end_of_rib_received,json=endOfRibReceived,proto3" json:"end_of_rib_received,omitempty"`
	EndOfRibSent         bool     `protobuf:"varint,5,opt,name=end_of_rib_sent,json=endOfRibSent,proto3" json:"end_of_rib_sent,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *MpGracefulRestartState) Reset()         { *m = MpGracefulRestartState{} }
func (m *MpGracefulRestartState) String() string { return proto.CompactTextString(m) }
func (*MpGracefulRestartState) ProtoMessage()    {}
func (*MpGracefulRestartState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{99}
}

func (m *MpGracefulRestartState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MpGracefulRestartState.Unmarshal(m, b)
}
func (m *MpGracefulRestartState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MpGracefulRestartState.Marshal(b, m, deterministic)
}
func (m *MpGracefulRestartState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MpGracefulRestartState.Merge(m, src)
}
func (m *MpGracefulRestartState) XXX_Size() int {
	return xxx_messageInfo_MpGracefulRestartState.Size(m)
}
func (m *MpGracefulRestartState) XXX_DiscardUnknown() {
	xxx_messageInfo_MpGracefulRestartState.DiscardUnknown(m)
}

var xxx_messageInfo_MpGracefulRestartState proto.InternalMessageInfo

func (m *MpGracefulRestartState) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *MpGracefulRestartState) GetReceived() bool {
	if m != nil {
		return m.Received
	}
	return false
}

func (m *MpGracefulRestartState) GetAdvertised() bool {
	if m != nil {
		return m.Advertised
	}
	return false
}

func (m *MpGracefulRestartState) GetEndOfRibReceived() bool {
	if m != nil {
		return m.EndOfRibReceived
	}
	return false
}

func (m *MpGracefulRestartState) GetEndOfRibSent() bool {
	if m != nil {
		return m.EndOfRibSent
	}
	return false
}

type MpGracefulRestart struct {
	Config               *MpGracefulRestartConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *MpGracefulRestartState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *MpGracefulRestart) Reset()         { *m = MpGracefulRestart{} }
func (m *MpGracefulRestart) String() string { return proto.CompactTextString(m) }
func (*MpGracefulRestart) ProtoMessage()    {}
func (*MpGracefulRestart) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{100}
}

func (m *MpGracefulRestart) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MpGracefulRestart.Unmarshal(m, b)
}
func (m *MpGracefulRestart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MpGracefulRestart.Marshal(b, m, deterministic)
}
func (m *MpGracefulRestart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MpGracefulRestart.Merge(m, src)
}
func (m *MpGracefulRestart) XXX_Size() int {
	return xxx_messageInfo_MpGracefulRestart.Size(m)
}
func (m *MpGracefulRestart) XXX_DiscardUnknown() {
	xxx_messageInfo_MpGracefulRestart.DiscardUnknown(m)
}

var xxx_messageInfo_MpGracefulRestart proto.InternalMessageInfo

func (m *MpGracefulRestart) GetConfig() *MpGracefulRestartConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *MpGracefulRestart) GetState() *MpGracefulRestartState {
	if m != nil {
		return m.State
	}
	return nil
}

type AfiSafiConfig struct {
	Family               *Family  `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
	Enabled              bool     `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AfiSafiConfig) Reset()         { *m = AfiSafiConfig{} }
func (m *AfiSafiConfig) String() string { return proto.CompactTextString(m) }
func (*AfiSafiConfig) ProtoMessage()    {}
func (*AfiSafiConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{101}
}

func (m *AfiSafiConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AfiSafiConfig.Unmarshal(m, b)
}
func (m *AfiSafiConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AfiSafiConfig.Marshal(b, m, deterministic)
}
func (m *AfiSafiConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AfiSafiConfig.Merge(m, src)
}
func (m *AfiSafiConfig) XXX_Size() int {
	return xxx_messageInfo_AfiSafiConfig.Size(m)
}
func (m *AfiSafiConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_AfiSafiConfig.DiscardUnknown(m)
}

var xxx_messageInfo_AfiSafiConfig proto.InternalMessageInfo

func (m *AfiSafiConfig) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *AfiSafiConfig) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

type AfiSafiState struct {
	Family               *Family  `protobuf:"bytes,1,opt,name=family,proto3" json:"family,omitempty"`
	Enabled              bool     `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Received             uint64   `protobuf:"varint,3,opt,name=received,proto3" json:"received,omitempty"`
	Accepted             uint64   `protobuf:"varint,4,opt,name=accepted,proto3" json:"accepted,omitempty"`
	Advertised           uint64   `protobuf:"varint,5,opt,name=advertised,proto3" json:"advertised,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AfiSafiState) Reset()         { *m = AfiSafiState{} }
func (m *AfiSafiState) String() string { return proto.CompactTextString(m) }
func (*AfiSafiState) ProtoMessage()    {}
func (*AfiSafiState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{102}
}

func (m *AfiSafiState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AfiSafiState.Unmarshal(m, b)
}
func (m *AfiSafiState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AfiSafiState.Marshal(b, m, deterministic)
}
func (m *AfiSafiState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AfiSafiState.Merge(m, src)
}
func (m *AfiSafiState) XXX_Size() int {
	return xxx_messageInfo_AfiSafiState.Size(m)
}
func (m *AfiSafiState) XXX_DiscardUnknown() {
	xxx_messageInfo_AfiSafiState.DiscardUnknown(m)
}

var xxx_messageInfo_AfiSafiState proto.InternalMessageInfo

func (m *AfiSafiState) GetFamily() *Family {
	if m != nil {
		return m.Family
	}
	return nil
}

func (m *AfiSafiState) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *AfiSafiState) GetReceived() uint64 {
	if m != nil {
		return m.Received
	}
	return 0
}

func (m *AfiSafiState) GetAccepted() uint64 {
	if m != nil {
		return m.Accepted
	}
	return 0
}

func (m *AfiSafiState) GetAdvertised() uint64 {
	if m != nil {
		return m.Advertised
	}
	return 0
}

type RouteSelectionOptionsConfig struct {
	AlwaysCompareMed         bool     `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed,proto3" json:"always_compare_med,omitempty"`
	IgnoreAsPathLength       bool     `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength,proto3" json:"ignore_as_path_length,omitempty"`
	ExternalCompareRouterId  bool     `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId,proto3" json:"external_compare_router_id,omitempty"`
	AdvertiseInactiveRoutes  bool     `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes,proto3" json:"advertise_inactive_routes,omitempty"`
	EnableAigp               bool     `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp,proto3" json:"enable_aigp,omitempty"`
	IgnoreNextHopIgpMetric   bool     `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric,proto3" json:"ignore_next_hop_igp_metric,omitempty"`
	DisableBestPathSelection bool     `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection,proto3" json:"disable_best_path_selection,omitempty"`
	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
	XXX_unrecognized         []byte   `json:"-"`
	XXX_sizecache            int32    `json:"-"`
}

func (m *RouteSelectionOptionsConfig) Reset()         { *m = RouteSelectionOptionsConfig{} }
func (m *RouteSelectionOptionsConfig) String() string { return proto.CompactTextString(m) }
func (*RouteSelectionOptionsConfig) ProtoMessage()    {}
func (*RouteSelectionOptionsConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{103}
}

func (m *RouteSelectionOptionsConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteSelectionOptionsConfig.Unmarshal(m, b)
}
func (m *RouteSelectionOptionsConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteSelectionOptionsConfig.Marshal(b, m, deterministic)
}
func (m *RouteSelectionOptionsConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteSelectionOptionsConfig.Merge(m, src)
}
func (m *RouteSelectionOptionsConfig) XXX_Size() int {
	return xxx_messageInfo_RouteSelectionOptionsConfig.Size(m)
}
func (m *RouteSelectionOptionsConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteSelectionOptionsConfig.DiscardUnknown(m)
}

var xxx_messageInfo_RouteSelectionOptionsConfig proto.InternalMessageInfo

func (m *RouteSelectionOptionsConfig) GetAlwaysCompareMed() bool {
	if m != nil {
		return m.AlwaysCompareMed
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetIgnoreAsPathLength() bool {
	if m != nil {
		return m.IgnoreAsPathLength
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetExternalCompareRouterId() bool {
	if m != nil {
		return m.ExternalCompareRouterId
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetAdvertiseInactiveRoutes() bool {
	if m != nil {
		return m.AdvertiseInactiveRoutes
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetEnableAigp() bool {
	if m != nil {
		return m.EnableAigp
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetIgnoreNextHopIgpMetric() bool {
	if m != nil {
		return m.IgnoreNextHopIgpMetric
	}
	return false
}

func (m *RouteSelectionOptionsConfig) GetDisableBestPathSelection() bool {
	if m != nil {
		return m.DisableBestPathSelection
	}
	return false
}

type RouteSelectionOptionsState struct {
	AlwaysCompareMed         bool     `protobuf:"varint,1,opt,name=always_compare_med,json=alwaysCompareMed,proto3" json:"always_compare_med,omitempty"`
	IgnoreAsPathLength       bool     `protobuf:"varint,2,opt,name=ignore_as_path_length,json=ignoreAsPathLength,proto3" json:"ignore_as_path_length,omitempty"`
	ExternalCompareRouterId  bool     `protobuf:"varint,3,opt,name=external_compare_router_id,json=externalCompareRouterId,proto3" json:"external_compare_router_id,omitempty"`
	AdvertiseInactiveRoutes  bool     `protobuf:"varint,4,opt,name=advertise_inactive_routes,json=advertiseInactiveRoutes,proto3" json:"advertise_inactive_routes,omitempty"`
	EnableAigp               bool     `protobuf:"varint,5,opt,name=enable_aigp,json=enableAigp,proto3" json:"enable_aigp,omitempty"`
	IgnoreNextHopIgpMetric   bool     `protobuf:"varint,6,opt,name=ignore_next_hop_igp_metric,json=ignoreNextHopIgpMetric,proto3" json:"ignore_next_hop_igp_metric,omitempty"`
	DisableBestPathSelection bool     `protobuf:"varint,7,opt,name=disable_best_path_selection,json=disableBestPathSelection,proto3" json:"disable_best_path_selection,omitempty"`
	XXX_NoUnkeyedLiteral     struct{} `json:"-"`
	XXX_unrecognized         []byte   `json:"-"`
	XXX_sizecache            int32    `json:"-"`
}

func (m *RouteSelectionOptionsState) Reset()         { *m = RouteSelectionOptionsState{} }
func (m *RouteSelectionOptionsState) String() string { return proto.CompactTextString(m) }
func (*RouteSelectionOptionsState) ProtoMessage()    {}
func (*RouteSelectionOptionsState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{104}
}

func (m *RouteSelectionOptionsState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteSelectionOptionsState.Unmarshal(m, b)
}
func (m *RouteSelectionOptionsState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteSelectionOptionsState.Marshal(b, m, deterministic)
}
func (m *RouteSelectionOptionsState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteSelectionOptionsState.Merge(m, src)
}
func (m *RouteSelectionOptionsState) XXX_Size() int {
	return xxx_messageInfo_RouteSelectionOptionsState.Size(m)
}
func (m *RouteSelectionOptionsState) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteSelectionOptionsState.DiscardUnknown(m)
}

var xxx_messageInfo_RouteSelectionOptionsState proto.InternalMessageInfo

func (m *RouteSelectionOptionsState) GetAlwaysCompareMed() bool {
	if m != nil {
		return m.AlwaysCompareMed
	}
	return false
}

func (m *RouteSelectionOptionsState) GetIgnoreAsPathLength() bool {
	if m != nil {
		return m.IgnoreAsPathLength
	}
	return false
}

func (m *RouteSelectionOptionsState) GetExternalCompareRouterId() bool {
	if m != nil {
		return m.ExternalCompareRouterId
	}
	return false
}

func (m *RouteSelectionOptionsState) GetAdvertiseInactiveRoutes() bool {
	if m != nil {
		return m.AdvertiseInactiveRoutes
	}
	return false
}

func (m *RouteSelectionOptionsState) GetEnableAigp() bool {
	if m != nil {
		return m.EnableAigp
	}
	return false
}

func (m *RouteSelectionOptionsState) GetIgnoreNextHopIgpMetric() bool {
	if m != nil {
		return m.IgnoreNextHopIgpMetric
	}
	return false
}

func (m *RouteSelectionOptionsState) GetDisableBestPathSelection() bool {
	if m != nil {
		return m.DisableBestPathSelection
	}
	return false
}

type RouteSelectionOptions struct {
	Config               *RouteSelectionOptionsConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *RouteSelectionOptionsState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

func (m *RouteSelectionOptions) Reset()         { *m = RouteSelectionOptions{} }
func (m *RouteSelectionOptions) String() string { return proto.CompactTextString(m) }
func (*RouteSelectionOptions) ProtoMessage()    {}
func (*RouteSelectionOptions) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{105}
}

func (m *RouteSelectionOptions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteSelectionOptions.Unmarshal(m, b)
}
func (m *RouteSelectionOptions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteSelectionOptions.Marshal(b, m, deterministic)
}
func (m *RouteSelectionOptions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteSelectionOptions.Merge(m, src)
}
func (m *RouteSelectionOptions) XXX_Size() int {
	return xxx_messageInfo_RouteSelectionOptions.Size(m)
}
func (m *RouteSelectionOptions) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteSelectionOptions.DiscardUnknown(m)
}

var xxx_messageInfo_RouteSelectionOptions proto.InternalMessageInfo

func (m *RouteSelectionOptions) GetConfig() *RouteSelectionOptionsConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *RouteSelectionOptions) GetState() *RouteSelectionOptionsState {
	if m != nil {
		return m.State
	}
	return nil
}

type UseMultiplePathsConfig struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UseMultiplePathsConfig) Reset()         { *m = UseMultiplePathsConfig{} }
func (m *UseMultiplePathsConfig) String() string { return proto.CompactTextString(m) }
func (*UseMultiplePathsConfig) ProtoMessage()    {}
func (*UseMultiplePathsConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{106}
}

func (m *UseMultiplePathsConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UseMultiplePathsConfig.Unmarshal(m, b)
}
func (m *UseMultiplePathsConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UseMultiplePathsConfig.Marshal(b, m, deterministic)
}
func (m *UseMultiplePathsConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UseMultiplePathsConfig.Merge(m, src)
}
func (m *UseMultiplePathsConfig) XXX_Size() int {
	return xxx_messageInfo_UseMultiplePathsConfig.Size(m)
}
func (m *UseMultiplePathsConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_UseMultiplePathsConfig.DiscardUnknown(m)
}

var xxx_messageInfo_UseMultiplePathsConfig proto.InternalMessageInfo

func (m *UseMultiplePathsConfig) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

type UseMultiplePathsState struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *UseMultiplePathsState) Reset()         { *m = UseMultiplePathsState{} }
func (m *UseMultiplePathsState) String() string { return proto.CompactTextString(m) }
func (*UseMultiplePathsState) ProtoMessage()    {}
func (*UseMultiplePathsState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{107}
}

func (m *UseMultiplePathsState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UseMultiplePathsState.Unmarshal(m, b)
}
func (m *UseMultiplePathsState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UseMultiplePathsState.Marshal(b, m, deterministic)
}
func (m *UseMultiplePathsState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UseMultiplePathsState.Merge(m, src)
}
func (m *UseMultiplePathsState) XXX_Size() int {
	return xxx_messageInfo_UseMultiplePathsState.Size(m)
}
func (m *UseMultiplePathsState) XXX_DiscardUnknown() {
	xxx_messageInfo_UseMultiplePathsState.DiscardUnknown(m)
}

var xxx_messageInfo_UseMultiplePathsState proto.InternalMessageInfo

func (m *UseMultiplePathsState) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

type EbgpConfig struct {
	AllowMultipleAs      bool     `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs,proto3" json:"allow_multiple_as,omitempty"`
	MaximumPaths         uint32   `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths,proto3" json:"maximum_paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EbgpConfig) Reset()         { *m = EbgpConfig{} }
func (m *EbgpConfig) String() string { return proto.CompactTextString(m) }
func (*EbgpConfig) ProtoMessage()    {}
func (*EbgpConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{108}
}

func (m *EbgpConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EbgpConfig.Unmarshal(m, b)
}
func (m *EbgpConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EbgpConfig.Marshal(b, m, deterministic)
}
func (m *EbgpConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EbgpConfig.Merge(m, src)
}
func (m *EbgpConfig) XXX_Size() int {
	return xxx_messageInfo_EbgpConfig.Size(m)
}
func (m *EbgpConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_EbgpConfig.DiscardUnknown(m)
}

var xxx_messageInfo_EbgpConfig proto.InternalMessageInfo

func (m *EbgpConfig) GetAllowMultipleAs() bool {
	if m != nil {
		return m.AllowMultipleAs
	}
	return false
}

func (m *EbgpConfig) GetMaximumPaths() uint32 {
	if m != nil {
		return m.MaximumPaths
	}
	return 0
}

type EbgpState struct {
	AllowMultipleAs      bool     `protobuf:"varint,1,opt,name=allow_multiple_as,json=allowMultipleAs,proto3" json:"allow_multiple_as,omitempty"`
	MaximumPaths         uint32   `protobuf:"varint,2,opt,name=maximum_paths,json=maximumPaths,proto3" json:"maximum_paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *EbgpState) Reset()         { *m = EbgpState{} }
func (m *EbgpState) String() string { return proto.CompactTextString(m) }
func (*EbgpState) ProtoMessage()    {}
func (*EbgpState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{109}
}

func (m *EbgpState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_EbgpState.Unmarshal(m, b)
}
func (m *EbgpState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_EbgpState.Marshal(b, m, deterministic)
}
func (m *EbgpState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_EbgpState.Merge(m, src)
}
func (m *EbgpState) XXX_Size() int {
	return xxx_messageInfo_EbgpState.Size(m)
}
func (m *EbgpState) XXX_DiscardUnknown() {
	xxx_messageInfo_EbgpState.DiscardUnknown(m)
}

var xxx_messageInfo_EbgpState proto.InternalMessageInfo

func (m *EbgpState) GetAllowMultipleAs() bool {
	if m != nil {
		return m.AllowMultipleAs
	}
	return false
}

func (m *EbgpState) GetMaximumPaths() uint32 {
	if m != nil {
		return m.MaximumPaths
	}
	return 0
}

type Ebgp struct {
	Config               *EbgpConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *EbgpState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Ebgp) Reset()         { *m = Ebgp{} }
func (m *Ebgp) String() string { return proto.CompactTextString(m) }
func (*Ebgp) ProtoMessage()    {}
func (*Ebgp) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{110}
}

func (m *Ebgp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Ebgp.Unmarshal(m, b)
}
func (m *Ebgp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Ebgp.Marshal(b, m, deterministic)
}
func (m *Ebgp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Ebgp.Merge(m, src)
}
func (m *Ebgp) XXX_Size() int {
	return xxx_messageInfo_Ebgp.Size(m)
}
func (m *Ebgp) XXX_DiscardUnknown() {
	xxx_messageInfo_Ebgp.DiscardUnknown(m)
}

var xxx_messageInfo_Ebgp proto.InternalMessageInfo

func (m *Ebgp) GetConfig() *EbgpConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *Ebgp) GetState() *EbgpState {
	if m != nil {
		return m.State
	}
	return nil
}

type IbgpConfig struct {
	MaximumPaths         uint32   `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths,proto3" json:"maximum_paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IbgpConfig) Reset()         { *m = IbgpConfig{} }
func (m *IbgpConfig) String() string { return proto.CompactTextString(m) }
func (*IbgpConfig) ProtoMessage()    {}
func (*IbgpConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{111}
}

func (m *IbgpConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IbgpConfig.Unmarshal(m, b)
}
func (m *IbgpConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IbgpConfig.Marshal(b, m, deterministic)
}
func (m *IbgpConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IbgpConfig.Merge(m, src)
}
func (m *IbgpConfig) XXX_Size() int {
	return xxx_messageInfo_IbgpConfig.Size(m)
}
func (m *IbgpConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_IbgpConfig.DiscardUnknown(m)
}

var xxx_messageInfo_IbgpConfig proto.InternalMessageInfo

func (m *IbgpConfig) GetMaximumPaths() uint32 {
	if m != nil {
		return m.MaximumPaths
	}
	return 0
}

type IbgpState struct {
	MaximumPaths         uint32   `protobuf:"varint,1,opt,name=maximum_paths,json=maximumPaths,proto3" json:"maximum_paths,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *IbgpState) Reset()         { *m = IbgpState{} }
func (m *IbgpState) String() string { return proto.CompactTextString(m) }
func (*IbgpState) ProtoMessage()    {}
func (*IbgpState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{112}
}

func (m *IbgpState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_IbgpState.Unmarshal(m, b)
}
func (m *IbgpState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_IbgpState.Marshal(b, m, deterministic)
}
func (m *IbgpState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_IbgpState.Merge(m, src)
}
func (m *IbgpState) XXX_Size() int {
	return xxx_messageInfo_IbgpState.Size(m)
}
func (m *IbgpState) XXX_DiscardUnknown() {
	xxx_messageInfo_IbgpState.DiscardUnknown(m)
}

var xxx_messageInfo_IbgpState proto.InternalMessageInfo

func (m *IbgpState) GetMaximumPaths() uint32 {
	if m != nil {
		return m.MaximumPaths
	}
	return 0
}

type Ibgp struct {
	Config               *IbgpConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *IbgpState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Ibgp) Reset()         { *m = Ibgp{} }
func (m *Ibgp) String() string { return proto.CompactTextString(m) }
func (*Ibgp) ProtoMessage()    {}
func (*Ibgp) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{113}
}

func (m *Ibgp) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Ibgp.Unmarshal(m, b)
}
func (m *Ibgp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Ibgp.Marshal(b, m, deterministic)
}
func (m *Ibgp) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Ibgp.Merge(m, src)
}
func (m *Ibgp) XXX_Size() int {
	return xxx_messageInfo_Ibgp.Size(m)
}
func (m *Ibgp) XXX_DiscardUnknown() {
	xxx_messageInfo_Ibgp.DiscardUnknown(m)
}

var xxx_messageInfo_Ibgp proto.InternalMessageInfo

func (m *Ibgp) GetConfig() *IbgpConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *Ibgp) GetState() *IbgpState {
	if m != nil {
		return m.State
	}
	return nil
}

type UseMultiplePaths struct {
	Config               *UseMultiplePathsConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *UseMultiplePathsState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	Ebgp                 *Ebgp                   `protobuf:"bytes,3,opt,name=ebgp,proto3" json:"ebgp,omitempty"`
	Ibgp                 *Ibgp                   `protobuf:"bytes,4,opt,name=ibgp,proto3" json:"ibgp,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                `json:"-"`
	XXX_unrecognized     []byte                  `json:"-"`
	XXX_sizecache        int32                   `json:"-"`
}

func (m *UseMultiplePaths) Reset()         { *m = UseMultiplePaths{} }
func (m *UseMultiplePaths) String() string { return proto.CompactTextString(m) }
func (*UseMultiplePaths) ProtoMessage()    {}
func (*UseMultiplePaths) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{114}
}

func (m *UseMultiplePaths) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_UseMultiplePaths.Unmarshal(m, b)
}
func (m *UseMultiplePaths) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_UseMultiplePaths.Marshal(b, m, deterministic)
}
func (m *UseMultiplePaths) XXX_Merge(src proto.Message) {
	xxx_messageInfo_UseMultiplePaths.Merge(m, src)
}
func (m *UseMultiplePaths) XXX_Size() int {
	return xxx_messageInfo_UseMultiplePaths.Size(m)
}
func (m *UseMultiplePaths) XXX_DiscardUnknown() {
	xxx_messageInfo_UseMultiplePaths.DiscardUnknown(m)
}

var xxx_messageInfo_UseMultiplePaths proto.InternalMessageInfo

func (m *UseMultiplePaths) GetConfig() *UseMultiplePathsConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *UseMultiplePaths) GetState() *UseMultiplePathsState {
	if m != nil {
		return m.State
	}
	return nil
}

func (m *UseMultiplePaths) GetEbgp() *Ebgp {
	if m != nil {
		return m.Ebgp
	}
	return nil
}

func (m *UseMultiplePaths) GetIbgp() *Ibgp {
	if m != nil {
		return m.Ibgp
	}
	return nil
}

type RouteTargetMembershipConfig struct {
	DeferralTime         uint32   `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime,proto3" json:"deferral_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RouteTargetMembershipConfig) Reset()         { *m = RouteTargetMembershipConfig{} }
func (m *RouteTargetMembershipConfig) String() string { return proto.CompactTextString(m) }
func (*RouteTargetMembershipConfig) ProtoMessage()    {}
func (*RouteTargetMembershipConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{115}
}

func (m *RouteTargetMembershipConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteTargetMembershipConfig.Unmarshal(m, b)
}
func (m *RouteTargetMembershipConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteTargetMembershipConfig.Marshal(b, m, deterministic)
}
func (m *RouteTargetMembershipConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteTargetMembershipConfig.Merge(m, src)
}
func (m *RouteTargetMembershipConfig) XXX_Size() int {
	return xxx_messageInfo_RouteTargetMembershipConfig.Size(m)
}
func (m *RouteTargetMembershipConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteTargetMembershipConfig.DiscardUnknown(m)
}

var xxx_messageInfo_RouteTargetMembershipConfig proto.InternalMessageInfo

func (m *RouteTargetMembershipConfig) GetDeferralTime() uint32 {
	if m != nil {
		return m.DeferralTime
	}
	return 0
}

type RouteTargetMembershipState struct {
	DeferralTime         uint32   `protobuf:"varint,1,opt,name=deferral_time,json=deferralTime,proto3" json:"deferral_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RouteTargetMembershipState) Reset()         { *m = RouteTargetMembershipState{} }
func (m *RouteTargetMembershipState) String() string { return proto.CompactTextString(m) }
func (*RouteTargetMembershipState) ProtoMessage()    {}
func (*RouteTargetMembershipState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{116}
}

func (m *RouteTargetMembershipState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteTargetMembershipState.Unmarshal(m, b)
}
func (m *RouteTargetMembershipState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteTargetMembershipState.Marshal(b, m, deterministic)
}
func (m *RouteTargetMembershipState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteTargetMembershipState.Merge(m, src)
}
func (m *RouteTargetMembershipState) XXX_Size() int {
	return xxx_messageInfo_RouteTargetMembershipState.Size(m)
}
func (m *RouteTargetMembershipState) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteTargetMembershipState.DiscardUnknown(m)
}

var xxx_messageInfo_RouteTargetMembershipState proto.InternalMessageInfo

func (m *RouteTargetMembershipState) GetDeferralTime() uint32 {
	if m != nil {
		return m.DeferralTime
	}
	return 0
}

type RouteTargetMembership struct {
	Config               *RouteTargetMembershipConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *RouteTargetMembershipState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                     `json:"-"`
	XXX_unrecognized     []byte                       `json:"-"`
	XXX_sizecache        int32                        `json:"-"`
}

func (m *RouteTargetMembership) Reset()         { *m = RouteTargetMembership{} }
func (m *RouteTargetMembership) String() string { return proto.CompactTextString(m) }
func (*RouteTargetMembership) ProtoMessage()    {}
func (*RouteTargetMembership) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{117}
}

func (m *RouteTargetMembership) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RouteTargetMembership.Unmarshal(m, b)
}
func (m *RouteTargetMembership) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RouteTargetMembership.Marshal(b, m, deterministic)
}
func (m *RouteTargetMembership) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RouteTargetMembership.Merge(m, src)
}
func (m *RouteTargetMembership) XXX_Size() int {
	return xxx_messageInfo_RouteTargetMembership.Size(m)
}
func (m *RouteTargetMembership) XXX_DiscardUnknown() {
	xxx_messageInfo_RouteTargetMembership.DiscardUnknown(m)
}

var xxx_messageInfo_RouteTargetMembership proto.InternalMessageInfo

func (m *RouteTargetMembership) GetConfig() *RouteTargetMembershipConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *RouteTargetMembership) GetState() *RouteTargetMembershipState {
	if m != nil {
		return m.State
	}
	return nil
}

type LongLivedGracefulRestartConfig struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	RestartTime          uint32   `protobuf:"varint,2,opt,name=restart_time,json=restartTime,proto3" json:"restart_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LongLivedGracefulRestartConfig) Reset()         { *m = LongLivedGracefulRestartConfig{} }
func (m *LongLivedGracefulRestartConfig) String() string { return proto.CompactTextString(m) }
func (*LongLivedGracefulRestartConfig) ProtoMessage()    {}
func (*LongLivedGracefulRestartConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{118}
}

func (m *LongLivedGracefulRestartConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LongLivedGracefulRestartConfig.Unmarshal(m, b)
}
func (m *LongLivedGracefulRestartConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LongLivedGracefulRestartConfig.Marshal(b, m, deterministic)
}
func (m *LongLivedGracefulRestartConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LongLivedGracefulRestartConfig.Merge(m, src)
}
func (m *LongLivedGracefulRestartConfig) XXX_Size() int {
	return xxx_messageInfo_LongLivedGracefulRestartConfig.Size(m)
}
func (m *LongLivedGracefulRestartConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_LongLivedGracefulRestartConfig.DiscardUnknown(m)
}

var xxx_messageInfo_LongLivedGracefulRestartConfig proto.InternalMessageInfo

func (m *LongLivedGracefulRestartConfig) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *LongLivedGracefulRestartConfig) GetRestartTime() uint32 {
	if m != nil {
		return m.RestartTime
	}
	return 0
}

type LongLivedGracefulRestartState struct {
	Enabled                 bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Received                bool     `protobuf:"varint,2,opt,name=received,proto3" json:"received,omitempty"`
	Advertised              bool     `protobuf:"varint,3,opt,name=advertised,proto3" json:"advertised,omitempty"`
	PeerRestartTime         uint32   `protobuf:"varint,4,opt,name=peer_restart_time,json=peerRestartTime,proto3" json:"peer_restart_time,omitempty"`
	PeerRestartTimerExpired bool     `protobuf:"varint,5,opt,name=peer_restart_timer_expired,json=peerRestartTimerExpired,proto3" json:"peer_restart_timer_expired,omitempty"`
	XXX_NoUnkeyedLiteral    struct{} `json:"-"`
	XXX_unrecognized        []byte   `json:"-"`
	XXX_sizecache           int32    `json:"-"`
}

func (m *LongLivedGracefulRestartState) Reset()         { *m = LongLivedGracefulRestartState{} }
func (m *LongLivedGracefulRestartState) String() string { return proto.CompactTextString(m) }
func (*LongLivedGracefulRestartState) ProtoMessage()    {}
func (*LongLivedGracefulRestartState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{119}
}

func (m *LongLivedGracefulRestartState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LongLivedGracefulRestartState.Unmarshal(m, b)
}
func (m *LongLivedGracefulRestartState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LongLivedGracefulRestartState.Marshal(b, m, deterministic)
}
func (m *LongLivedGracefulRestartState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LongLivedGracefulRestartState.Merge(m, src)
}
func (m *LongLivedGracefulRestartState) XXX_Size() int {
	return xxx_messageInfo_LongLivedGracefulRestartState.Size(m)
}
func (m *LongLivedGracefulRestartState) XXX_DiscardUnknown() {
	xxx_messageInfo_LongLivedGracefulRestartState.DiscardUnknown(m)
}

var xxx_messageInfo_LongLivedGracefulRestartState proto.InternalMessageInfo

func (m *LongLivedGracefulRestartState) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *LongLivedGracefulRestartState) GetReceived() bool {
	if m != nil {
		return m.Received
	}
	return false
}

func (m *LongLivedGracefulRestartState) GetAdvertised() bool {
	if m != nil {
		return m.Advertised
	}
	return false
}

func (m *LongLivedGracefulRestartState) GetPeerRestartTime() uint32 {
	if m != nil {
		return m.PeerRestartTime
	}
	return 0
}

func (m *LongLivedGracefulRestartState) GetPeerRestartTimerExpired() bool {
	if m != nil {
		return m.PeerRestartTimerExpired
	}
	return false
}

type LongLivedGracefulRestart struct {
	Config               *LongLivedGracefulRestartConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *LongLivedGracefulRestartState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
	XXX_unrecognized     []byte                          `json:"-"`
	XXX_sizecache        int32                           `json:"-"`
}

func (m *LongLivedGracefulRestart) Reset()         { *m = LongLivedGracefulRestart{} }
func (m *LongLivedGracefulRestart) String() string { return proto.CompactTextString(m) }
func (*LongLivedGracefulRestart) ProtoMessage()    {}
func (*LongLivedGracefulRestart) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{120}
}

func (m *LongLivedGracefulRestart) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LongLivedGracefulRestart.Unmarshal(m, b)
}
func (m *LongLivedGracefulRestart) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LongLivedGracefulRestart.Marshal(b, m, deterministic)
}
func (m *LongLivedGracefulRestart) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LongLivedGracefulRestart.Merge(m, src)
}
func (m *LongLivedGracefulRestart) XXX_Size() int {
	return xxx_messageInfo_LongLivedGracefulRestart.Size(m)
}
func (m *LongLivedGracefulRestart) XXX_DiscardUnknown() {
	xxx_messageInfo_LongLivedGracefulRestart.DiscardUnknown(m)
}

var xxx_messageInfo_LongLivedGracefulRestart proto.InternalMessageInfo

func (m *LongLivedGracefulRestart) GetConfig() *LongLivedGracefulRestartConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *LongLivedGracefulRestart) GetState() *LongLivedGracefulRestartState {
	if m != nil {
		return m.State
	}
	return nil
}

type AfiSafi struct {
	MpGracefulRestart *MpGracefulRestart `protobuf:"bytes,1,opt,name=mp_graceful_restart,json=mpGracefulRestart,proto3" json:"mp_graceful_restart,omitempty"`
	Config            *AfiSafiConfig     `protobuf:"bytes,2,opt,name=config,proto3" json:"config,omitempty"`
	State             *AfiSafiState      `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"`
	ApplyPolicy       *ApplyPolicy       `protobuf:"bytes,4,opt,name=apply_policy,json=applyPolicy,proto3" json:"apply_policy,omitempty"`
	// TODO:
	// Support the following structures:
	// - Ipv4Unicast
	// - Ipv6Unicast
	// - Ipv4LabelledUnicast
	// - Ipv6LabelledUnicast
	// - L3vpnIpv4Unicast
	// - L3vpnIpv6Unicast
	// - L3vpnIpv4Multicast
	// - L3vpnIpv6Multicast
	// - L2vpnVpls
	// - L2vpnEvpn
	RouteSelectionOptions    *RouteSelectionOptions    `protobuf:"bytes,5,opt,name=route_selection_options,json=routeSelectionOptions,proto3" json:"route_selection_options,omitempty"`
	UseMultiplePaths         *UseMultiplePaths         `protobuf:"bytes,6,opt,name=use_multiple_paths,json=useMultiplePaths,proto3" json:"use_multiple_paths,omitempty"`
	PrefixLimits             *PrefixLimit              `protobuf:"bytes,7,opt,name=prefix_limits,json=prefixLimits,proto3" json:"prefix_limits,omitempty"`
	RouteTargetMembership    *RouteTargetMembership    `protobuf:"bytes,8,opt,name=route_target_membership,json=routeTargetMembership,proto3" json:"route_target_membership,omitempty"`
	LongLivedGracefulRestart *LongLivedGracefulRestart `protobuf:"bytes,9,opt,name=long_lived_graceful_restart,json=longLivedGracefulRestart,proto3" json:"long_lived_graceful_restart,omitempty"`
	AddPaths                 *AddPaths                 `protobuf:"bytes,10,opt,name=add_paths,json=addPaths,proto3" json:"add_paths,omitempty"`
	XXX_NoUnkeyedLiteral     struct{}                  `json:"-"`
	XXX_unrecognized         []byte                    `json:"-"`
	XXX_sizecache            int32                     `json:"-"`
}

func (m *AfiSafi) Reset()         { *m = AfiSafi{} }
func (m *AfiSafi) String() string { return proto.CompactTextString(m) }
func (*AfiSafi) ProtoMessage()    {}
func (*AfiSafi) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{121}
}

func (m *AfiSafi) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AfiSafi.Unmarshal(m, b)
}
func (m *AfiSafi) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AfiSafi.Marshal(b, m, deterministic)
}
func (m *AfiSafi) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AfiSafi.Merge(m, src)
}
func (m *AfiSafi) XXX_Size() int {
	return xxx_messageInfo_AfiSafi.Size(m)
}
func (m *AfiSafi) XXX_DiscardUnknown() {
	xxx_messageInfo_AfiSafi.DiscardUnknown(m)
}

var xxx_messageInfo_AfiSafi proto.InternalMessageInfo

func (m *AfiSafi) GetMpGracefulRestart() *MpGracefulRestart {
	if m != nil {
		return m.MpGracefulRestart
	}
	return nil
}

func (m *AfiSafi) GetConfig() *AfiSafiConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *AfiSafi) GetState() *AfiSafiState {
	if m != nil {
		return m.State
	}
	return nil
}

func (m *AfiSafi) GetApplyPolicy() *ApplyPolicy {
	if m != nil {
		return m.ApplyPolicy
	}
	return nil
}

func (m *AfiSafi) GetRouteSelectionOptions() *RouteSelectionOptions {
	if m != nil {
		return m.RouteSelectionOptions
	}
	return nil
}

func (m *AfiSafi) GetUseMultiplePaths() *UseMultiplePaths {
	if m != nil {
		return m.UseMultiplePaths
	}
	return nil
}

func (m *AfiSafi) GetPrefixLimits() *PrefixLimit {
	if m != nil {
		return m.PrefixLimits
	}
	return nil
}

func (m *AfiSafi) GetRouteTargetMembership() *RouteTargetMembership {
	if m != nil {
		return m.RouteTargetMembership
	}
	return nil
}

func (m *AfiSafi) GetLongLivedGracefulRestart() *LongLivedGracefulRestart {
	if m != nil {
		return m.LongLivedGracefulRestart
	}
	return nil
}

func (m *AfiSafi) GetAddPaths() *AddPaths {
	if m != nil {
		return m.AddPaths
	}
	return nil
}

type AddPathsConfig struct {
	Receive              bool     `protobuf:"varint,1,opt,name=receive,proto3" json:"receive,omitempty"`
	SendMax              uint32   `protobuf:"varint,2,opt,name=send_max,json=sendMax,proto3" json:"send_max,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddPathsConfig) Reset()         { *m = AddPathsConfig{} }
func (m *AddPathsConfig) String() string { return proto.CompactTextString(m) }
func (*AddPathsConfig) ProtoMessage()    {}
func (*AddPathsConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{122}
}

func (m *AddPathsConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPathsConfig.Unmarshal(m, b)
}
func (m *AddPathsConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPathsConfig.Marshal(b, m, deterministic)
}
func (m *AddPathsConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPathsConfig.Merge(m, src)
}
func (m *AddPathsConfig) XXX_Size() int {
	return xxx_messageInfo_AddPathsConfig.Size(m)
}
func (m *AddPathsConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPathsConfig.DiscardUnknown(m)
}

var xxx_messageInfo_AddPathsConfig proto.InternalMessageInfo

func (m *AddPathsConfig) GetReceive() bool {
	if m != nil {
		return m.Receive
	}
	return false
}

func (m *AddPathsConfig) GetSendMax() uint32 {
	if m != nil {
		return m.SendMax
	}
	return 0
}

type AddPathsState struct {
	Receive              bool     `protobuf:"varint,1,opt,name=receive,proto3" json:"receive,omitempty"`
	SendMax              uint32   `protobuf:"varint,2,opt,name=send_max,json=sendMax,proto3" json:"send_max,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AddPathsState) Reset()         { *m = AddPathsState{} }
func (m *AddPathsState) String() string { return proto.CompactTextString(m) }
func (*AddPathsState) ProtoMessage()    {}
func (*AddPathsState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{123}
}

func (m *AddPathsState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPathsState.Unmarshal(m, b)
}
func (m *AddPathsState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPathsState.Marshal(b, m, deterministic)
}
func (m *AddPathsState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPathsState.Merge(m, src)
}
func (m *AddPathsState) XXX_Size() int {
	return xxx_messageInfo_AddPathsState.Size(m)
}
func (m *AddPathsState) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPathsState.DiscardUnknown(m)
}

var xxx_messageInfo_AddPathsState proto.InternalMessageInfo

func (m *AddPathsState) GetReceive() bool {
	if m != nil {
		return m.Receive
	}
	return false
}

func (m *AddPathsState) GetSendMax() uint32 {
	if m != nil {
		return m.SendMax
	}
	return 0
}

type AddPaths struct {
	Config               *AddPathsConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	State                *AddPathsState  `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *AddPaths) Reset()         { *m = AddPaths{} }
func (m *AddPaths) String() string { return proto.CompactTextString(m) }
func (*AddPaths) ProtoMessage()    {}
func (*AddPaths) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{124}
}

func (m *AddPaths) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AddPaths.Unmarshal(m, b)
}
func (m *AddPaths) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AddPaths.Marshal(b, m, deterministic)
}
func (m *AddPaths) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AddPaths.Merge(m, src)
}
func (m *AddPaths) XXX_Size() int {
	return xxx_messageInfo_AddPaths.Size(m)
}
func (m *AddPaths) XXX_DiscardUnknown() {
	xxx_messageInfo_AddPaths.DiscardUnknown(m)
}

var xxx_messageInfo_AddPaths proto.InternalMessageInfo

func (m *AddPaths) GetConfig() *AddPathsConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *AddPaths) GetState() *AddPathsState {
	if m != nil {
		return m.State
	}
	return nil
}

type Prefix struct {
	IpPrefix             string   `protobuf:"bytes,1,opt,name=ip_prefix,json=ipPrefix,proto3" json:"ip_prefix,omitempty"`
	MaskLengthMin        uint32   `protobuf:"varint,2,opt,name=mask_length_min,json=maskLengthMin,proto3" json:"mask_length_min,omitempty"`
	MaskLengthMax        uint32   `protobuf:"varint,3,opt,name=mask_length_max,json=maskLengthMax,proto3" json:"mask_length_max,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Prefix) Reset()         { *m = Prefix{} }
func (m *Prefix) String() string { return proto.CompactTextString(m) }
func (*Prefix) ProtoMessage()    {}
func (*Prefix) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{125}
}

func (m *Prefix) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Prefix.Unmarshal(m, b)
}
func (m *Prefix) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Prefix.Marshal(b, m, deterministic)
}
func (m *Prefix) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Prefix.Merge(m, src)
}
func (m *Prefix) XXX_Size() int {
	return xxx_messageInfo_Prefix.Size(m)
}
func (m *Prefix) XXX_DiscardUnknown() {
	xxx_messageInfo_Prefix.DiscardUnknown(m)
}

var xxx_messageInfo_Prefix proto.InternalMessageInfo

func (m *Prefix) GetIpPrefix() string {
	if m != nil {
		return m.IpPrefix
	}
	return ""
}

func (m *Prefix) GetMaskLengthMin() uint32 {
	if m != nil {
		return m.MaskLengthMin
	}
	return 0
}

func (m *Prefix) GetMaskLengthMax() uint32 {
	if m != nil {
		return m.MaskLengthMax
	}
	return 0
}

type DefinedSet struct {
	DefinedType          DefinedType `protobuf:"varint,1,opt,name=defined_type,json=definedType,proto3,enum=gobgpapi.DefinedType" json:"defined_type,omitempty"`
	Name                 string      `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	List                 []string    `protobuf:"bytes,3,rep,name=list,proto3" json:"list,omitempty"`
	Prefixes             []*Prefix   `protobuf:"bytes,4,rep,name=prefixes,proto3" json:"prefixes,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *DefinedSet) Reset()         { *m = DefinedSet{} }
func (m *DefinedSet) String() string { return proto.CompactTextString(m) }
func (*DefinedSet) ProtoMessage()    {}
func (*DefinedSet) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{126}
}

func (m *DefinedSet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DefinedSet.Unmarshal(m, b)
}
func (m *DefinedSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DefinedSet.Marshal(b, m, deterministic)
}
func (m *DefinedSet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DefinedSet.Merge(m, src)
}
func (m *DefinedSet) XXX_Size() int {
	return xxx_messageInfo_DefinedSet.Size(m)
}
func (m *DefinedSet) XXX_DiscardUnknown() {
	xxx_messageInfo_DefinedSet.DiscardUnknown(m)
}

var xxx_messageInfo_DefinedSet proto.InternalMessageInfo

func (m *DefinedSet) GetDefinedType() DefinedType {
	if m != nil {
		return m.DefinedType
	}
	return DefinedType_PREFIX
}

func (m *DefinedSet) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *DefinedSet) GetList() []string {
	if m != nil {
		return m.List
	}
	return nil
}

func (m *DefinedSet) GetPrefixes() []*Prefix {
	if m != nil {
		return m.Prefixes
	}
	return nil
}

type MatchSet struct {
	MatchType            MatchType `protobuf:"varint,1,opt,name=match_type,json=matchType,proto3,enum=gobgpapi.MatchType" json:"match_type,omitempty"`
	Name                 string    `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *MatchSet) Reset()         { *m = MatchSet{} }
func (m *MatchSet) String() string { return proto.CompactTextString(m) }
func (*MatchSet) ProtoMessage()    {}
func (*MatchSet) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{127}
}

func (m *MatchSet) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MatchSet.Unmarshal(m, b)
}
func (m *MatchSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MatchSet.Marshal(b, m, deterministic)
}
func (m *MatchSet) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MatchSet.Merge(m, src)
}
func (m *MatchSet) XXX_Size() int {
	return xxx_messageInfo_MatchSet.Size(m)
}
func (m *MatchSet) XXX_DiscardUnknown() {
	xxx_messageInfo_MatchSet.DiscardUnknown(m)
}

var xxx_messageInfo_MatchSet proto.InternalMessageInfo

func (m *MatchSet) GetMatchType() MatchType {
	if m != nil {
		return m.MatchType
	}
	return MatchType_ANY
}

func (m *MatchSet) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

type AsPathLength struct {
	LengthType           AsPathLengthType `protobuf:"varint,1,opt,name=length_type,json=lengthType,proto3,enum=gobgpapi.AsPathLengthType" json:"length_type,omitempty"`
	Length               uint32           `protobuf:"varint,2,opt,name=length,proto3" json:"length,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *AsPathLength) Reset()         { *m = AsPathLength{} }
func (m *AsPathLength) String() string { return proto.CompactTextString(m) }
func (*AsPathLength) ProtoMessage()    {}
func (*AsPathLength) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{128}
}

func (m *AsPathLength) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AsPathLength.Unmarshal(m, b)
}
func (m *AsPathLength) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AsPathLength.Marshal(b, m, deterministic)
}
func (m *AsPathLength) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AsPathLength.Merge(m, src)
}
func (m *AsPathLength) XXX_Size() int {
	return xxx_messageInfo_AsPathLength.Size(m)
}
func (m *AsPathLength) XXX_DiscardUnknown() {
	xxx_messageInfo_AsPathLength.DiscardUnknown(m)
}

var xxx_messageInfo_AsPathLength proto.InternalMessageInfo

func (m *AsPathLength) GetLengthType() AsPathLengthType {
	if m != nil {
		return m.LengthType
	}
	return AsPathLengthType_EQ
}

func (m *AsPathLength) GetLength() uint32 {
	if m != nil {
		return m.Length
	}
	return 0
}

type Conditions struct {
	PrefixSet            *MatchSet            `protobuf:"bytes,1,opt,name=prefix_set,json=prefixSet,proto3" json:"prefix_set,omitempty"`
	NeighborSet          *MatchSet            `protobuf:"bytes,2,opt,name=neighbor_set,json=neighborSet,proto3" json:"neighbor_set,omitempty"`
	AsPathLength         *AsPathLength        `protobuf:"bytes,3,opt,name=as_path_length,json=asPathLength,proto3" json:"as_path_length,omitempty"`
	AsPathSet            *MatchSet            `protobuf:"bytes,4,opt,name=as_path_set,json=asPathSet,proto3" json:"as_path_set,omitempty"`
	CommunitySet         *MatchSet            `protobuf:"bytes,5,opt,name=community_set,json=communitySet,proto3" json:"community_set,omitempty"`
	ExtCommunitySet      *MatchSet            `protobuf:"bytes,6,opt,name=ext_community_set,json=extCommunitySet,proto3" json:"ext_community_set,omitempty"`
	RpkiResult           int32                `protobuf:"varint,7,opt,name=rpki_result,json=rpkiResult,proto3" json:"rpki_result,omitempty"`
	RouteType            Conditions_RouteType `protobuf:"varint,8,opt,name=route_type,json=routeType,proto3,enum=gobgpapi.Conditions_RouteType" json:"route_type,omitempty"`
	LargeCommunitySet    *MatchSet            `protobuf:"bytes,9,opt,name=large_community_set,json=largeCommunitySet,proto3" json:"large_community_set,omitempty"`
	NextHopInList        []string             `protobuf:"bytes,10,rep,name=next_hop_in_list,json=nextHopInList,proto3" json:"next_hop_in_list,omitempty"`
	AfiSafiIn            []*Family            `protobuf:"bytes,11,rep,name=afi_safi_in,json=afiSafiIn,proto3" json:"afi_safi_in,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *Conditions) Reset()         { *m = Conditions{} }
func (m *Conditions) String() string { return proto.CompactTextString(m) }
func (*Conditions) ProtoMessage()    {}
func (*Conditions) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{129}
}

func (m *Conditions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Conditions.Unmarshal(m, b)
}
func (m *Conditions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Conditions.Marshal(b, m, deterministic)
}
func (m *Conditions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Conditions.Merge(m, src)
}
func (m *Conditions) XXX_Size() int {
	return xxx_messageInfo_Conditions.Size(m)
}
func (m *Conditions) XXX_DiscardUnknown() {
	xxx_messageInfo_Conditions.DiscardUnknown(m)
}

var xxx_messageInfo_Conditions proto.InternalMessageInfo

func (m *Conditions) GetPrefixSet() *MatchSet {
	if m != nil {
		return m.PrefixSet
	}
	return nil
}

func (m *Conditions) GetNeighborSet() *MatchSet {
	if m != nil {
		return m.NeighborSet
	}
	return nil
}

func (m *Conditions) GetAsPathLength() *AsPathLength {
	if m != nil {
		return m.AsPathLength
	}
	return nil
}

func (m *Conditions) GetAsPathSet() *MatchSet {
	if m != nil {
		return m.AsPathSet
	}
	return nil
}

func (m *Conditions) GetCommunitySet() *MatchSet {
	if m != nil {
		return m.CommunitySet
	}
	return nil
}

func (m *Conditions) GetExtCommunitySet() *MatchSet {
	if m != nil {
		return m.ExtCommunitySet
	}
	return nil
}

func (m *Conditions) GetRpkiResult() int32 {
	if m != nil {
		return m.RpkiResult
	}
	return 0
}

func (m *Conditions) GetRouteType() Conditions_RouteType {
	if m != nil {
		return m.RouteType
	}
	return Conditions_ROUTE_TYPE_NONE
}

func (m *Conditions) GetLargeCommunitySet() *MatchSet {
	if m != nil {
		return m.LargeCommunitySet
	}
	return nil
}

func (m *Conditions) GetNextHopInList() []string {
	if m != nil {
		return m.NextHopInList
	}
	return nil
}

func (m *Conditions) GetAfiSafiIn() []*Family {
	if m != nil {
		return m.AfiSafiIn
	}
	return nil
}

type CommunityAction struct {
	ActionType           CommunityActionType `protobuf:"varint,1,opt,name=action_type,json=actionType,proto3,enum=gobgpapi.CommunityActionType" json:"action_type,omitempty"`
	Communities          []string            `protobuf:"bytes,2,rep,name=communities,proto3" json:"communities,omitempty"`
	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
	XXX_unrecognized     []byte              `json:"-"`
	XXX_sizecache        int32               `json:"-"`
}

func (m *CommunityAction) Reset()         { *m = CommunityAction{} }
func (m *CommunityAction) String() string { return proto.CompactTextString(m) }
func (*CommunityAction) ProtoMessage()    {}
func (*CommunityAction) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{130}
}

func (m *CommunityAction) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CommunityAction.Unmarshal(m, b)
}
func (m *CommunityAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CommunityAction.Marshal(b, m, deterministic)
}
func (m *CommunityAction) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CommunityAction.Merge(m, src)
}
func (m *CommunityAction) XXX_Size() int {
	return xxx_messageInfo_CommunityAction.Size(m)
}
func (m *CommunityAction) XXX_DiscardUnknown() {
	xxx_messageInfo_CommunityAction.DiscardUnknown(m)
}

var xxx_messageInfo_CommunityAction proto.InternalMessageInfo

func (m *CommunityAction) GetActionType() CommunityActionType {
	if m != nil {
		return m.ActionType
	}
	return CommunityActionType_COMMUNITY_ADD
}

func (m *CommunityAction) GetCommunities() []string {
	if m != nil {
		return m.Communities
	}
	return nil
}

type MedAction struct {
	ActionType           MedActionType `protobuf:"varint,1,opt,name=action_type,json=actionType,proto3,enum=gobgpapi.MedActionType" json:"action_type,omitempty"`
	Value                int64         `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *MedAction) Reset()         { *m = MedAction{} }
func (m *MedAction) String() string { return proto.CompactTextString(m) }
func (*MedAction) ProtoMessage()    {}
func (*MedAction) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{131}
}

func (m *MedAction) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_MedAction.Unmarshal(m, b)
}
func (m *MedAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_MedAction.Marshal(b, m, deterministic)
}
func (m *MedAction) XXX_Merge(src proto.Message) {
	xxx_messageInfo_MedAction.Merge(m, src)
}
func (m *MedAction) XXX_Size() int {
	return xxx_messageInfo_MedAction.Size(m)
}
func (m *MedAction) XXX_DiscardUnknown() {
	xxx_messageInfo_MedAction.DiscardUnknown(m)
}

var xxx_messageInfo_MedAction proto.InternalMessageInfo

func (m *MedAction) GetActionType() MedActionType {
	if m != nil {
		return m.ActionType
	}
	return MedActionType_MED_MOD
}

func (m *MedAction) GetValue() int64 {
	if m != nil {
		return m.Value
	}
	return 0
}

type AsPrependAction struct {
	Asn                  uint32   `protobuf:"varint,1,opt,name=asn,proto3" json:"asn,omitempty"`
	Repeat               uint32   `protobuf:"varint,2,opt,name=repeat,proto3" json:"repeat,omitempty"`
	UseLeftMost          bool     `protobuf:"varint,3,opt,name=use_left_most,json=useLeftMost,proto3" json:"use_left_most,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AsPrependAction) Reset()         { *m = AsPrependAction{} }
func (m *AsPrependAction) String() string { return proto.CompactTextString(m) }
func (*AsPrependAction) ProtoMessage()    {}
func (*AsPrependAction) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{132}
}

func (m *AsPrependAction) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AsPrependAction.Unmarshal(m, b)
}
func (m *AsPrependAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AsPrependAction.Marshal(b, m, deterministic)
}
func (m *AsPrependAction) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AsPrependAction.Merge(m, src)
}
func (m *AsPrependAction) XXX_Size() int {
	return xxx_messageInfo_AsPrependAction.Size(m)
}
func (m *AsPrependAction) XXX_DiscardUnknown() {
	xxx_messageInfo_AsPrependAction.DiscardUnknown(m)
}

var xxx_messageInfo_AsPrependAction proto.InternalMessageInfo

func (m *AsPrependAction) GetAsn() uint32 {
	if m != nil {
		return m.Asn
	}
	return 0
}

func (m *AsPrependAction) GetRepeat() uint32 {
	if m != nil {
		return m.Repeat
	}
	return 0
}

func (m *AsPrependAction) GetUseLeftMost() bool {
	if m != nil {
		return m.UseLeftMost
	}
	return false
}

type NexthopAction struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	Self                 bool     `protobuf:"varint,2,opt,name=self,proto3" json:"self,omitempty"`
	Unchanged            bool     `protobuf:"varint,3,opt,name=unchanged,proto3" json:"unchanged,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *NexthopAction) Reset()         { *m = NexthopAction{} }
func (m *NexthopAction) String() string { return proto.CompactTextString(m) }
func (*NexthopAction) ProtoMessage()    {}
func (*NexthopAction) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{133}
}

func (m *NexthopAction) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_NexthopAction.Unmarshal(m, b)
}
func (m *NexthopAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_NexthopAction.Marshal(b, m, deterministic)
}
func (m *NexthopAction) XXX_Merge(src proto.Message) {
	xxx_messageInfo_NexthopAction.Merge(m, src)
}
func (m *NexthopAction) XXX_Size() int {
	return xxx_messageInfo_NexthopAction.Size(m)
}
func (m *NexthopAction) XXX_DiscardUnknown() {
	xxx_messageInfo_NexthopAction.DiscardUnknown(m)
}

var xxx_messageInfo_NexthopAction proto.InternalMessageInfo

func (m *NexthopAction) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *NexthopAction) GetSelf() bool {
	if m != nil {
		return m.Self
	}
	return false
}

func (m *NexthopAction) GetUnchanged() bool {
	if m != nil {
		return m.Unchanged
	}
	return false
}

type LocalPrefAction struct {
	Value                uint32   `protobuf:"varint,1,opt,name=value,proto3" json:"value,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *LocalPrefAction) Reset()         { *m = LocalPrefAction{} }
func (m *LocalPrefAction) String() string { return proto.CompactTextString(m) }
func (*LocalPrefAction) ProtoMessage()    {}
func (*LocalPrefAction) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{134}
}

func (m *LocalPrefAction) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_LocalPrefAction.Unmarshal(m, b)
}
func (m *LocalPrefAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_LocalPrefAction.Marshal(b, m, deterministic)
}
func (m *LocalPrefAction) XXX_Merge(src proto.Message) {
	xxx_messageInfo_LocalPrefAction.Merge(m, src)
}
func (m *LocalPrefAction) XXX_Size() int {
	return xxx_messageInfo_LocalPrefAction.Size(m)
}
func (m *LocalPrefAction) XXX_DiscardUnknown() {
	xxx_messageInfo_LocalPrefAction.DiscardUnknown(m)
}

var xxx_messageInfo_LocalPrefAction proto.InternalMessageInfo

func (m *LocalPrefAction) GetValue() uint32 {
	if m != nil {
		return m.Value
	}
	return 0
}

type Actions struct {
	RouteAction          RouteAction      `protobuf:"varint,1,opt,name=route_action,json=routeAction,proto3,enum=gobgpapi.RouteAction" json:"route_action,omitempty"`
	Community            *CommunityAction `protobuf:"bytes,2,opt,name=community,proto3" json:"community,omitempty"`
	Med                  *MedAction       `protobuf:"bytes,3,opt,name=med,proto3" json:"med,omitempty"`
	AsPrepend            *AsPrependAction `protobuf:"bytes,4,opt,name=as_prepend,json=asPrepend,proto3" json:"as_prepend,omitempty"`
	ExtCommunity         *CommunityAction `protobuf:"bytes,5,opt,name=ext_community,json=extCommunity,proto3" json:"ext_community,omitempty"`
	Nexthop              *NexthopAction   `protobuf:"bytes,6,opt,name=nexthop,proto3" json:"nexthop,omitempty"`
	LocalPref            *LocalPrefAction `protobuf:"bytes,7,opt,name=local_pref,json=localPref,proto3" json:"local_pref,omitempty"`
	LargeCommunity       *CommunityAction `protobuf:"bytes,8,opt,name=large_community,json=largeCommunity,proto3" json:"large_community,omitempty"`
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

func (m *Actions) Reset()         { *m = Actions{} }
func (m *Actions) String() string { return proto.CompactTextString(m) }
func (*Actions) ProtoMessage()    {}
func (*Actions) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{135}
}

func (m *Actions) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Actions.Unmarshal(m, b)
}
func (m *Actions) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Actions.Marshal(b, m, deterministic)
}
func (m *Actions) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Actions.Merge(m, src)
}
func (m *Actions) XXX_Size() int {
	return xxx_messageInfo_Actions.Size(m)
}
func (m *Actions) XXX_DiscardUnknown() {
	xxx_messageInfo_Actions.DiscardUnknown(m)
}

var xxx_messageInfo_Actions proto.InternalMessageInfo

func (m *Actions) GetRouteAction() RouteAction {
	if m != nil {
		return m.RouteAction
	}
	return RouteAction_NONE
}

func (m *Actions) GetCommunity() *CommunityAction {
	if m != nil {
		return m.Community
	}
	return nil
}

func (m *Actions) GetMed() *MedAction {
	if m != nil {
		return m.Med
	}
	return nil
}

func (m *Actions) GetAsPrepend() *AsPrependAction {
	if m != nil {
		return m.AsPrepend
	}
	return nil
}

func (m *Actions) GetExtCommunity() *CommunityAction {
	if m != nil {
		return m.ExtCommunity
	}
	return nil
}

func (m *Actions) GetNexthop() *NexthopAction {
	if m != nil {
		return m.Nexthop
	}
	return nil
}

func (m *Actions) GetLocalPref() *LocalPrefAction {
	if m != nil {
		return m.LocalPref
	}
	return nil
}

func (m *Actions) GetLargeCommunity() *CommunityAction {
	if m != nil {
		return m.LargeCommunity
	}
	return nil
}

type Statement struct {
	Name                 string      `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Conditions           *Conditions `protobuf:"bytes,2,opt,name=conditions,proto3" json:"conditions,omitempty"`
	Actions              *Actions    `protobuf:"bytes,3,opt,name=actions,proto3" json:"actions,omitempty"`
	XXX_NoUnkeyedLiteral struct{}    `json:"-"`
	XXX_unrecognized     []byte      `json:"-"`
	XXX_sizecache        int32       `json:"-"`
}

func (m *Statement) Reset()         { *m = Statement{} }
func (m *Statement) String() string { return proto.CompactTextString(m) }
func (*Statement) ProtoMessage()    {}
func (*Statement) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{136}
}

func (m *Statement) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Statement.Unmarshal(m, b)
}
func (m *Statement) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Statement.Marshal(b, m, deterministic)
}
func (m *Statement) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Statement.Merge(m, src)
}
func (m *Statement) XXX_Size() int {
	return xxx_messageInfo_Statement.Size(m)
}
func (m *Statement) XXX_DiscardUnknown() {
	xxx_messageInfo_Statement.DiscardUnknown(m)
}

var xxx_messageInfo_Statement proto.InternalMessageInfo

func (m *Statement) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Statement) GetConditions() *Conditions {
	if m != nil {
		return m.Conditions
	}
	return nil
}

func (m *Statement) GetActions() *Actions {
	if m != nil {
		return m.Actions
	}
	return nil
}

type Policy struct {
	Name                 string       `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Statements           []*Statement `protobuf:"bytes,2,rep,name=statements,proto3" json:"statements,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *Policy) Reset()         { *m = Policy{} }
func (m *Policy) String() string { return proto.CompactTextString(m) }
func (*Policy) ProtoMessage()    {}
func (*Policy) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{137}
}

func (m *Policy) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Policy.Unmarshal(m, b)
}
func (m *Policy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Policy.Marshal(b, m, deterministic)
}
func (m *Policy) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Policy.Merge(m, src)
}
func (m *Policy) XXX_Size() int {
	return xxx_messageInfo_Policy.Size(m)
}
func (m *Policy) XXX_DiscardUnknown() {
	xxx_messageInfo_Policy.DiscardUnknown(m)
}

var xxx_messageInfo_Policy proto.InternalMessageInfo

func (m *Policy) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Policy) GetStatements() []*Statement {
	if m != nil {
		return m.Statements
	}
	return nil
}

type PolicyAssignment struct {
	Name                 string          `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Direction            PolicyDirection `protobuf:"varint,2,opt,name=direction,proto3,enum=gobgpapi.PolicyDirection" json:"direction,omitempty"`
	Policies             []*Policy       `protobuf:"bytes,4,rep,name=policies,proto3" json:"policies,omitempty"`
	DefaultAction        RouteAction     `protobuf:"varint,5,opt,name=default_action,json=defaultAction,proto3,enum=gobgpapi.RouteAction" json:"default_action,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

func (m *PolicyAssignment) Reset()         { *m = PolicyAssignment{} }
func (m *PolicyAssignment) String() string { return proto.CompactTextString(m) }
func (*PolicyAssignment) ProtoMessage()    {}
func (*PolicyAssignment) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{138}
}

func (m *PolicyAssignment) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PolicyAssignment.Unmarshal(m, b)
}
func (m *PolicyAssignment) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PolicyAssignment.Marshal(b, m, deterministic)
}
func (m *PolicyAssignment) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PolicyAssignment.Merge(m, src)
}
func (m *PolicyAssignment) XXX_Size() int {
	return xxx_messageInfo_PolicyAssignment.Size(m)
}
func (m *PolicyAssignment) XXX_DiscardUnknown() {
	xxx_messageInfo_PolicyAssignment.DiscardUnknown(m)
}

var xxx_messageInfo_PolicyAssignment proto.InternalMessageInfo

func (m *PolicyAssignment) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *PolicyAssignment) GetDirection() PolicyDirection {
	if m != nil {
		return m.Direction
	}
	return PolicyDirection_UNKNOWN
}

func (m *PolicyAssignment) GetPolicies() []*Policy {
	if m != nil {
		return m.Policies
	}
	return nil
}

func (m *PolicyAssignment) GetDefaultAction() RouteAction {
	if m != nil {
		return m.DefaultAction
	}
	return RouteAction_NONE
}

type RoutingPolicy struct {
	DefinedSets          []*DefinedSet `protobuf:"bytes,1,rep,name=defined_sets,json=definedSets,proto3" json:"defined_sets,omitempty"`
	Policies             []*Policy     `protobuf:"bytes,2,rep,name=policies,proto3" json:"policies,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *RoutingPolicy) Reset()         { *m = RoutingPolicy{} }
func (m *RoutingPolicy) String() string { return proto.CompactTextString(m) }
func (*RoutingPolicy) ProtoMessage()    {}
func (*RoutingPolicy) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{139}
}

func (m *RoutingPolicy) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RoutingPolicy.Unmarshal(m, b)
}
func (m *RoutingPolicy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RoutingPolicy.Marshal(b, m, deterministic)
}
func (m *RoutingPolicy) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RoutingPolicy.Merge(m, src)
}
func (m *RoutingPolicy) XXX_Size() int {
	return xxx_messageInfo_RoutingPolicy.Size(m)
}
func (m *RoutingPolicy) XXX_DiscardUnknown() {
	xxx_messageInfo_RoutingPolicy.DiscardUnknown(m)
}

var xxx_messageInfo_RoutingPolicy proto.InternalMessageInfo

func (m *RoutingPolicy) GetDefinedSets() []*DefinedSet {
	if m != nil {
		return m.DefinedSets
	}
	return nil
}

func (m *RoutingPolicy) GetPolicies() []*Policy {
	if m != nil {
		return m.Policies
	}
	return nil
}

type Roa struct {
	As                   uint32    `protobuf:"varint,1,opt,name=as,proto3" json:"as,omitempty"`
	Prefixlen            uint32    `protobuf:"varint,2,opt,name=prefixlen,proto3" json:"prefixlen,omitempty"`
	Maxlen               uint32    `protobuf:"varint,3,opt,name=maxlen,proto3" json:"maxlen,omitempty"`
	Prefix               string    `protobuf:"bytes,4,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Conf                 *RPKIConf `protobuf:"bytes,5,opt,name=conf,proto3" json:"conf,omitempty"`
	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
	XXX_unrecognized     []byte    `json:"-"`
	XXX_sizecache        int32     `json:"-"`
}

func (m *Roa) Reset()         { *m = Roa{} }
func (m *Roa) String() string { return proto.CompactTextString(m) }
func (*Roa) ProtoMessage()    {}
func (*Roa) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{140}
}

func (m *Roa) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Roa.Unmarshal(m, b)
}
func (m *Roa) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Roa.Marshal(b, m, deterministic)
}
func (m *Roa) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Roa.Merge(m, src)
}
func (m *Roa) XXX_Size() int {
	return xxx_messageInfo_Roa.Size(m)
}
func (m *Roa) XXX_DiscardUnknown() {
	xxx_messageInfo_Roa.DiscardUnknown(m)
}

var xxx_messageInfo_Roa proto.InternalMessageInfo

func (m *Roa) GetAs() uint32 {
	if m != nil {
		return m.As
	}
	return 0
}

func (m *Roa) GetPrefixlen() uint32 {
	if m != nil {
		return m.Prefixlen
	}
	return 0
}

func (m *Roa) GetMaxlen() uint32 {
	if m != nil {
		return m.Maxlen
	}
	return 0
}

func (m *Roa) GetPrefix() string {
	if m != nil {
		return m.Prefix
	}
	return ""
}

func (m *Roa) GetConf() *RPKIConf {
	if m != nil {
		return m.Conf
	}
	return nil
}

type Vrf struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Route Distinguisher must be one of
	// RouteDistinguisherTwoOctetAS,
	// RouteDistinguisherIPAddressAS,
	// or RouteDistinguisherFourOctetAS.
	Rd *any.Any `protobuf:"bytes,2,opt,name=rd,proto3" json:"rd,omitempty"`
	// List of the Import Route Targets. Each must be one of
	// TwoOctetAsSpecificExtended,
	// IPv4AddressSpecificExtended,
	// or FourOctetAsSpecificExtended.
	ImportRt []*any.Any `protobuf:"bytes,3,rep,name=import_rt,json=importRt,proto3" json:"import_rt,omitempty"`
	// List of the Export Route Targets. Each must be one of
	// TwoOctetAsSpecificExtended,
	// IPv4AddressSpecificExtended,
	// or FourOctetAsSpecificExtended.
	ExportRt             []*any.Any `protobuf:"bytes,4,rep,name=export_rt,json=exportRt,proto3" json:"export_rt,omitempty"`
	Id                   uint32     `protobuf:"varint,5,opt,name=id,proto3" json:"id,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *Vrf) Reset()         { *m = Vrf{} }
func (m *Vrf) String() string { return proto.CompactTextString(m) }
func (*Vrf) ProtoMessage()    {}
func (*Vrf) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{141}
}

func (m *Vrf) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Vrf.Unmarshal(m, b)
}
func (m *Vrf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Vrf.Marshal(b, m, deterministic)
}
func (m *Vrf) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Vrf.Merge(m, src)
}
func (m *Vrf) XXX_Size() int {
	return xxx_messageInfo_Vrf.Size(m)
}
func (m *Vrf) XXX_DiscardUnknown() {
	xxx_messageInfo_Vrf.DiscardUnknown(m)
}

var xxx_messageInfo_Vrf proto.InternalMessageInfo

func (m *Vrf) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *Vrf) GetRd() *any.Any {
	if m != nil {
		return m.Rd
	}
	return nil
}

func (m *Vrf) GetImportRt() []*any.Any {
	if m != nil {
		return m.ImportRt
	}
	return nil
}

func (m *Vrf) GetExportRt() []*any.Any {
	if m != nil {
		return m.ExportRt
	}
	return nil
}

func (m *Vrf) GetId() uint32 {
	if m != nil {
		return m.Id
	}
	return 0
}

type DefaultRouteDistance struct {
	ExternalRouteDistance uint32   `protobuf:"varint,1,opt,name=external_route_distance,json=externalRouteDistance,proto3" json:"external_route_distance,omitempty"`
	InternalRouteDistance uint32   `protobuf:"varint,2,opt,name=internal_route_distance,json=internalRouteDistance,proto3" json:"internal_route_distance,omitempty"`
	XXX_NoUnkeyedLiteral  struct{} `json:"-"`
	XXX_unrecognized      []byte   `json:"-"`
	XXX_sizecache         int32    `json:"-"`
}

func (m *DefaultRouteDistance) Reset()         { *m = DefaultRouteDistance{} }
func (m *DefaultRouteDistance) String() string { return proto.CompactTextString(m) }
func (*DefaultRouteDistance) ProtoMessage()    {}
func (*DefaultRouteDistance) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{142}
}

func (m *DefaultRouteDistance) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DefaultRouteDistance.Unmarshal(m, b)
}
func (m *DefaultRouteDistance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DefaultRouteDistance.Marshal(b, m, deterministic)
}
func (m *DefaultRouteDistance) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DefaultRouteDistance.Merge(m, src)
}
func (m *DefaultRouteDistance) XXX_Size() int {
	return xxx_messageInfo_DefaultRouteDistance.Size(m)
}
func (m *DefaultRouteDistance) XXX_DiscardUnknown() {
	xxx_messageInfo_DefaultRouteDistance.DiscardUnknown(m)
}

var xxx_messageInfo_DefaultRouteDistance proto.InternalMessageInfo

func (m *DefaultRouteDistance) GetExternalRouteDistance() uint32 {
	if m != nil {
		return m.ExternalRouteDistance
	}
	return 0
}

func (m *DefaultRouteDistance) GetInternalRouteDistance() uint32 {
	if m != nil {
		return m.InternalRouteDistance
	}
	return 0
}

type Global struct {
	As                    uint32                       `protobuf:"varint,1,opt,name=as,proto3" json:"as,omitempty"`
	RouterId              string                       `protobuf:"bytes,2,opt,name=router_id,json=routerId,proto3" json:"router_id,omitempty"`
	ListenPort            int32                        `protobuf:"varint,3,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"`
	ListenAddresses       []string                     `protobuf:"bytes,4,rep,name=listen_addresses,json=listenAddresses,proto3" json:"listen_addresses,omitempty"`
	Families              []uint32                     `protobuf:"varint,5,rep,packed,name=families,proto3" json:"families,omitempty"`
	UseMultiplePaths      bool                         `protobuf:"varint,6,opt,name=use_multiple_paths,json=useMultiplePaths,proto3" json:"use_multiple_paths,omitempty"`
	RouteSelectionOptions *RouteSelectionOptionsConfig `protobuf:"bytes,7,opt,name=route_selection_options,json=routeSelectionOptions,proto3" json:"route_selection_options,omitempty"`
	DefaultRouteDistance  *DefaultRouteDistance        `protobuf:"bytes,8,opt,name=default_route_distance,json=defaultRouteDistance,proto3" json:"default_route_distance,omitempty"`
	Confederation         *Confederation               `protobuf:"bytes,9,opt,name=confederation,proto3" json:"confederation,omitempty"`
	GracefulRestart       *GracefulRestart             `protobuf:"bytes,10,opt,name=graceful_restart,json=gracefulRestart,proto3" json:"graceful_restart,omitempty"`
	ApplyPolicy           *ApplyPolicy                 `protobuf:"bytes,11,opt,name=apply_policy,json=applyPolicy,proto3" json:"apply_policy,omitempty"`
	BindToDevice          string                       `protobuf:"bytes,12,opt,name=bind_to_device,json=bindToDevice,proto3" json:"bind_to_device,omitempty"`
	XXX_NoUnkeyedLiteral  struct{}                     `json:"-"`
	XXX_unrecognized      []byte                       `json:"-"`
	XXX_sizecache         int32                        `json:"-"`
}

func (m *Global) Reset()         { *m = Global{} }
func (m *Global) String() string { return proto.CompactTextString(m) }
func (*Global) ProtoMessage()    {}
func (*Global) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{143}
}

func (m *Global) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Global.Unmarshal(m, b)
}
func (m *Global) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Global.Marshal(b, m, deterministic)
}
func (m *Global) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Global.Merge(m, src)
}
func (m *Global) XXX_Size() int {
	return xxx_messageInfo_Global.Size(m)
}
func (m *Global) XXX_DiscardUnknown() {
	xxx_messageInfo_Global.DiscardUnknown(m)
}

var xxx_messageInfo_Global proto.InternalMessageInfo

func (m *Global) GetAs() uint32 {
	if m != nil {
		return m.As
	}
	return 0
}

func (m *Global) GetRouterId() string {
	if m != nil {
		return m.RouterId
	}
	return ""
}

func (m *Global) GetListenPort() int32 {
	if m != nil {
		return m.ListenPort
	}
	return 0
}

func (m *Global) GetListenAddresses() []string {
	if m != nil {
		return m.ListenAddresses
	}
	return nil
}

func (m *Global) GetFamilies() []uint32 {
	if m != nil {
		return m.Families
	}
	return nil
}

func (m *Global) GetUseMultiplePaths() bool {
	if m != nil {
		return m.UseMultiplePaths
	}
	return false
}

func (m *Global) GetRouteSelectionOptions() *RouteSelectionOptionsConfig {
	if m != nil {
		return m.RouteSelectionOptions
	}
	return nil
}

func (m *Global) GetDefaultRouteDistance() *DefaultRouteDistance {
	if m != nil {
		return m.DefaultRouteDistance
	}
	return nil
}

func (m *Global) GetConfederation() *Confederation {
	if m != nil {
		return m.Confederation
	}
	return nil
}

func (m *Global) GetGracefulRestart() *GracefulRestart {
	if m != nil {
		return m.GracefulRestart
	}
	return nil
}

func (m *Global) GetApplyPolicy() *ApplyPolicy {
	if m != nil {
		return m.ApplyPolicy
	}
	return nil
}

func (m *Global) GetBindToDevice() string {
	if m != nil {
		return m.BindToDevice
	}
	return ""
}

type Confederation struct {
	Enabled              bool     `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
	Identifier           uint32   `protobuf:"varint,2,opt,name=identifier,proto3" json:"identifier,omitempty"`
	MemberAsList         []uint32 `protobuf:"varint,3,rep,packed,name=member_as_list,json=memberAsList,proto3" json:"member_as_list,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *Confederation) Reset()         { *m = Confederation{} }
func (m *Confederation) String() string { return proto.CompactTextString(m) }
func (*Confederation) ProtoMessage()    {}
func (*Confederation) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{144}
}

func (m *Confederation) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Confederation.Unmarshal(m, b)
}
func (m *Confederation) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Confederation.Marshal(b, m, deterministic)
}
func (m *Confederation) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Confederation.Merge(m, src)
}
func (m *Confederation) XXX_Size() int {
	return xxx_messageInfo_Confederation.Size(m)
}
func (m *Confederation) XXX_DiscardUnknown() {
	xxx_messageInfo_Confederation.DiscardUnknown(m)
}

var xxx_messageInfo_Confederation proto.InternalMessageInfo

func (m *Confederation) GetEnabled() bool {
	if m != nil {
		return m.Enabled
	}
	return false
}

func (m *Confederation) GetIdentifier() uint32 {
	if m != nil {
		return m.Identifier
	}
	return 0
}

func (m *Confederation) GetMemberAsList() []uint32 {
	if m != nil {
		return m.MemberAsList
	}
	return nil
}

type RPKIConf struct {
	Address              string   `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	RemotePort           uint32   `protobuf:"varint,2,opt,name=remote_port,json=remotePort,proto3" json:"remote_port,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *RPKIConf) Reset()         { *m = RPKIConf{} }
func (m *RPKIConf) String() string { return proto.CompactTextString(m) }
func (*RPKIConf) ProtoMessage()    {}
func (*RPKIConf) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{145}
}

func (m *RPKIConf) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RPKIConf.Unmarshal(m, b)
}
func (m *RPKIConf) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RPKIConf.Marshal(b, m, deterministic)
}
func (m *RPKIConf) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RPKIConf.Merge(m, src)
}
func (m *RPKIConf) XXX_Size() int {
	return xxx_messageInfo_RPKIConf.Size(m)
}
func (m *RPKIConf) XXX_DiscardUnknown() {
	xxx_messageInfo_RPKIConf.DiscardUnknown(m)
}

var xxx_messageInfo_RPKIConf proto.InternalMessageInfo

func (m *RPKIConf) GetAddress() string {
	if m != nil {
		return m.Address
	}
	return ""
}

func (m *RPKIConf) GetRemotePort() uint32 {
	if m != nil {
		return m.RemotePort
	}
	return 0
}

type RPKIState struct {
	Uptime               *timestamp.Timestamp `protobuf:"bytes,1,opt,name=uptime,proto3" json:"uptime,omitempty"`
	Downtime             *timestamp.Timestamp `protobuf:"bytes,2,opt,name=downtime,proto3" json:"downtime,omitempty"`
	Up                   bool                 `protobuf:"varint,3,opt,name=up,proto3" json:"up,omitempty"`
	RecordIpv4           uint32               `protobuf:"varint,4,opt,name=record_ipv4,json=recordIpv4,proto3" json:"record_ipv4,omitempty"`
	RecordIpv6           uint32               `protobuf:"varint,5,opt,name=record_ipv6,json=recordIpv6,proto3" json:"record_ipv6,omitempty"`
	PrefixIpv4           uint32               `protobuf:"varint,6,opt,name=prefix_ipv4,json=prefixIpv4,proto3" json:"prefix_ipv4,omitempty"`
	PrefixIpv6           uint32               `protobuf:"varint,7,opt,name=prefix_ipv6,json=prefixIpv6,proto3" json:"prefix_ipv6,omitempty"`
	Serial               uint32               `protobuf:"varint,8,opt,name=serial,proto3" json:"serial,omitempty"`
	ReceivedIpv4         int64                `protobuf:"varint,9,opt,name=received_ipv4,json=receivedIpv4,proto3" json:"received_ipv4,omitempty"`
	ReceivedIpv6         int64                `protobuf:"varint,10,opt,name=received_ipv6,json=receivedIpv6,proto3" json:"received_ipv6,omitempty"`
	SerialNotify         int64                `protobuf:"varint,11,opt,name=serial_notify,json=serialNotify,proto3" json:"serial_notify,omitempty"`
	CacheReset           int64                `protobuf:"varint,12,opt,name=cache_reset,json=cacheReset,proto3" json:"cache_reset,omitempty"`
	CacheResponse        int64                `protobuf:"varint,13,opt,name=cache_response,json=cacheResponse,proto3" json:"cache_response,omitempty"`
	EndOfData            int64                `protobuf:"varint,14,opt,name=end_of_data,json=endOfData,proto3" json:"end_of_data,omitempty"`
	Error                int64                `protobuf:"varint,15,opt,name=error,proto3" json:"error,omitempty"`
	SerialQuery          int64                `protobuf:"varint,16,opt,name=serial_query,json=serialQuery,proto3" json:"serial_query,omitempty"`
	ResetQuery           int64                `protobuf:"varint,17,opt,name=reset_query,json=resetQuery,proto3" json:"reset_query,omitempty"`
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

func (m *RPKIState) Reset()         { *m = RPKIState{} }
func (m *RPKIState) String() string { return proto.CompactTextString(m) }
func (*RPKIState) ProtoMessage()    {}
func (*RPKIState) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{146}
}

func (m *RPKIState) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_RPKIState.Unmarshal(m, b)
}
func (m *RPKIState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_RPKIState.Marshal(b, m, deterministic)
}
func (m *RPKIState) XXX_Merge(src proto.Message) {
	xxx_messageInfo_RPKIState.Merge(m, src)
}
func (m *RPKIState) XXX_Size() int {
	return xxx_messageInfo_RPKIState.Size(m)
}
func (m *RPKIState) XXX_DiscardUnknown() {
	xxx_messageInfo_RPKIState.DiscardUnknown(m)
}

var xxx_messageInfo_RPKIState proto.InternalMessageInfo

func (m *RPKIState) GetUptime() *timestamp.Timestamp {
	if m != nil {
		return m.Uptime
	}
	return nil
}

func (m *RPKIState) GetDowntime() *timestamp.Timestamp {
	if m != nil {
		return m.Downtime
	}
	return nil
}

func (m *RPKIState) GetUp() bool {
	if m != nil {
		return m.Up
	}
	return false
}

func (m *RPKIState) GetRecordIpv4() uint32 {
	if m != nil {
		return m.RecordIpv4
	}
	return 0
}

func (m *RPKIState) GetRecordIpv6() uint32 {
	if m != nil {
		return m.RecordIpv6
	}
	return 0
}

func (m *RPKIState) GetPrefixIpv4() uint32 {
	if m != nil {
		return m.PrefixIpv4
	}
	return 0
}

func (m *RPKIState) GetPrefixIpv6() uint32 {
	if m != nil {
		return m.PrefixIpv6
	}
	return 0
}

func (m *RPKIState) GetSerial() uint32 {
	if m != nil {
		return m.Serial
	}
	return 0
}

func (m *RPKIState) GetReceivedIpv4() int64 {
	if m != nil {
		return m.ReceivedIpv4
	}
	return 0
}

func (m *RPKIState) GetReceivedIpv6() int64 {
	if m != nil {
		return m.ReceivedIpv6
	}
	return 0
}

func (m *RPKIState) GetSerialNotify() int64 {
	if m != nil {
		return m.SerialNotify
	}
	return 0
}

func (m *RPKIState) GetCacheReset() int64 {
	if m != nil {
		return m.CacheReset
	}
	return 0
}

func (m *RPKIState) GetCacheResponse() int64 {
	if m != nil {
		return m.CacheResponse
	}
	return 0
}

func (m *RPKIState) GetEndOfData() int64 {
	if m != nil {
		return m.EndOfData
	}
	return 0
}

func (m *RPKIState) GetError() int64 {
	if m != nil {
		return m.Error
	}
	return 0
}

func (m *RPKIState) GetSerialQuery() int64 {
	if m != nil {
		return m.SerialQuery
	}
	return 0
}

func (m *RPKIState) GetResetQuery() int64 {
	if m != nil {
		return m.ResetQuery
	}
	return 0
}

type Rpki struct {
	Conf                 *RPKIConf  `protobuf:"bytes,1,opt,name=conf,proto3" json:"conf,omitempty"`
	State                *RPKIState `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *Rpki) Reset()         { *m = Rpki{} }
func (m *Rpki) String() string { return proto.CompactTextString(m) }
func (*Rpki) ProtoMessage()    {}
func (*Rpki) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{147}
}

func (m *Rpki) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_Rpki.Unmarshal(m, b)
}
func (m *Rpki) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_Rpki.Marshal(b, m, deterministic)
}
func (m *Rpki) XXX_Merge(src proto.Message) {
	xxx_messageInfo_Rpki.Merge(m, src)
}
func (m *Rpki) XXX_Size() int {
	return xxx_messageInfo_Rpki.Size(m)
}
func (m *Rpki) XXX_DiscardUnknown() {
	xxx_messageInfo_Rpki.DiscardUnknown(m)
}

var xxx_messageInfo_Rpki proto.InternalMessageInfo

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 SetLogLevelRequest struct {
	Level                SetLogLevelRequest_Level `protobuf:"varint,1,opt,name=level,proto3,enum=gobgpapi.SetLogLevelRequest_Level" json:"level,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
	XXX_unrecognized     []byte                   `json:"-"`
	XXX_sizecache        int32                    `json:"-"`
}

func (m *SetLogLevelRequest) Reset()         { *m = SetLogLevelRequest{} }
func (m *SetLogLevelRequest) String() string { return proto.CompactTextString(m) }
func (*SetLogLevelRequest) ProtoMessage()    {}
func (*SetLogLevelRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_7cc8e5cf92decdb2, []int{148}
}

func (m *SetLogLevelRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_SetLogLevelRequest.Unmarshal(m, b)
}
func (m *SetLogLevelRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_SetLogLevelRequest.Marshal(b, m, deterministic)
}
func (m *SetLogLevelRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_SetLogLevelRequest.Merge(m, src)
}
func (m *SetLogLevelRequest) XXX_Size() int {
	return xxx_messageInfo_SetLogLevelRequest.Size(m)
}
func (m *SetLogLevelRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_SetLogLevelRequest.DiscardUnknown(m)
}

var xxx_messageInfo_SetLogLevelRequest proto.InternalMessageInfo

func (m *SetLogLevelRequest) GetLevel() SetLogLevelRequest_Level {
	if m != nil {
		return m.Level
	}
	return SetLogLevelRequest_PANIC
}

func init() {
	proto.RegisterEnum("gobgpapi.TableType", TableType_name, TableType_value)
	proto.RegisterEnum("gobgpapi.TableLookupOption", TableLookupOption_name, TableLookupOption_value)
	proto.RegisterEnum("gobgpapi.DefinedType", DefinedType_name, DefinedType_value)
	proto.RegisterEnum("gobgpapi.MatchType", MatchType_name, MatchType_value)
	proto.RegisterEnum("gobgpapi.AsPathLengthType", AsPathLengthType_name, AsPathLengthType_value)
	proto.RegisterEnum("gobgpapi.RouteAction", RouteAction_name, RouteAction_value)
	proto.RegisterEnum("gobgpapi.CommunityActionType", CommunityActionType_name, CommunityActionType_value)
	proto.RegisterEnum("gobgpapi.MedActionType", MedActionType_name, MedActionType_value)
	proto.RegisterEnum("gobgpapi.PolicyDirection", PolicyDirection_name, PolicyDirection_value)
	proto.RegisterEnum("gobgpapi.ResetPeerRequest_SoftResetDirection", ResetPeerRequest_SoftResetDirection_name, ResetPeerRequest_SoftResetDirection_value)
	proto.RegisterEnum("gobgpapi.ListPathRequest_SortType", ListPathRequest_SortType_name, ListPathRequest_SortType_value)
	proto.RegisterEnum("gobgpapi.AddBmpRequest_MonitoringPolicy", AddBmpRequest_MonitoringPolicy_name, AddBmpRequest_MonitoringPolicy_value)
	proto.RegisterEnum("gobgpapi.Family_Afi", Family_Afi_name, Family_Afi_value)
	proto.RegisterEnum("gobgpapi.Family_Safi", Family_Safi_name, Family_Safi_value)
	proto.RegisterEnum("gobgpapi.Validation_State", Validation_State_name, Validation_State_value)
	proto.RegisterEnum("gobgpapi.Validation_Reason", Validation_Reason_name, Validation_Reason_value)
	proto.RegisterEnum("gobgpapi.PeerConf_RemovePrivateAs", PeerConf_RemovePrivateAs_name, PeerConf_RemovePrivateAs_value)
	proto.RegisterEnum("gobgpapi.PeerGroupConf_RemovePrivateAs", PeerGroupConf_RemovePrivateAs_name, PeerGroupConf_RemovePrivateAs_value)
	proto.RegisterEnum("gobgpapi.PeerGroupState_RemovePrivateAs", PeerGroupState_RemovePrivateAs_name, PeerGroupState_RemovePrivateAs_value)
	proto.RegisterEnum("gobgpapi.PeerState_SessionState", PeerState_SessionState_name, PeerState_SessionState_value)
	proto.RegisterEnum("gobgpapi.PeerState_AdminState", PeerState_AdminState_name, PeerState_AdminState_value)
	proto.RegisterEnum("gobgpapi.Conditions_RouteType", Conditions_RouteType_name, Conditions_RouteType_value)
	proto.RegisterEnum("gobgpapi.SetLogLevelRequest_Level", SetLogLevelRequest_Level_name, SetLogLevelRequest_Level_value)
	proto.RegisterType((*StartBgpRequest)(nil), "gobgpapi.StartBgpRequest")
	proto.RegisterType((*StopBgpRequest)(nil), "gobgpapi.StopBgpRequest")
	proto.RegisterType((*GetBgpRequest)(nil), "gobgpapi.GetBgpRequest")
	proto.RegisterType((*GetBgpResponse)(nil), "gobgpapi.GetBgpResponse")
	proto.RegisterType((*AddPeerRequest)(nil), "gobgpapi.AddPeerRequest")
	proto.RegisterType((*DeletePeerRequest)(nil), "gobgpapi.DeletePeerRequest")
	proto.RegisterType((*ListPeerRequest)(nil), "gobgpapi.ListPeerRequest")
	proto.RegisterType((*ListPeerResponse)(nil), "gobgpapi.ListPeerResponse")
	proto.RegisterType((*UpdatePeerRequest)(nil), "gobgpapi.UpdatePeerRequest")
	proto.RegisterType((*UpdatePeerResponse)(nil), "gobgpapi.UpdatePeerResponse")
	proto.RegisterType((*ResetPeerRequest)(nil), "gobgpapi.ResetPeerRequest")
	proto.RegisterType((*ShutdownPeerRequest)(nil), "gobgpapi.ShutdownPeerRequest")
	proto.RegisterType((*EnablePeerRequest)(nil), "gobgpapi.EnablePeerRequest")
	proto.RegisterType((*DisablePeerRequest)(nil), "gobgpapi.DisablePeerRequest")
	proto.RegisterType((*MonitorPeerRequest)(nil), "gobgpapi.MonitorPeerRequest")
	proto.RegisterType((*MonitorPeerResponse)(nil), "gobgpapi.MonitorPeerResponse")
	proto.RegisterType((*AddPeerGroupRequest)(nil), "gobgpapi.AddPeerGroupRequest")
	proto.RegisterType((*DeletePeerGroupRequest)(nil), "gobgpapi.DeletePeerGroupRequest")
	proto.RegisterType((*UpdatePeerGroupRequest)(nil), "gobgpapi.UpdatePeerGroupRequest")
	proto.RegisterType((*UpdatePeerGroupResponse)(nil), "gobgpapi.UpdatePeerGroupResponse")
	proto.RegisterType((*ListPeerGroupRequest)(nil), "gobgpapi.ListPeerGroupRequest")
	proto.RegisterType((*ListPeerGroupResponse)(nil), "gobgpapi.ListPeerGroupResponse")
	proto.RegisterType((*AddDynamicNeighborRequest)(nil), "gobgpapi.AddDynamicNeighborRequest")
	proto.RegisterType((*DeleteDynamicNeighborRequest)(nil), "gobgpapi.DeleteDynamicNeighborRequest")
	proto.RegisterType((*ListDynamicNeighborRequest)(nil), "gobgpapi.ListDynamicNeighborRequest")
	proto.RegisterType((*ListDynamicNeighborResponse)(nil), "gobgpapi.ListDynamicNeighborResponse")
	proto.RegisterType((*AddPathRequest)(nil), "gobgpapi.AddPathRequest")
	proto.RegisterType((*AddPathResponse)(nil), "gobgpapi.AddPathResponse")
	proto.RegisterType((*DeletePathRequest)(nil), "gobgpapi.DeletePathRequest")
	proto.RegisterType((*ListPathRequest)(nil), "gobgpapi.ListPathRequest")
	proto.RegisterType((*ListPathResponse)(nil), "gobgpapi.ListPathResponse")
	proto.RegisterType((*AddPathStreamRequest)(nil), "gobgpapi.AddPathStreamRequest")
	proto.RegisterType((*GetTableRequest)(nil), "gobgpapi.GetTableRequest")
	proto.RegisterType((*GetTableResponse)(nil), "gobgpapi.GetTableResponse")
	proto.RegisterType((*MonitorTableRequest)(nil), "gobgpapi.MonitorTableRequest")
	proto.RegisterType((*MonitorTableResponse)(nil), "gobgpapi.MonitorTableResponse")
	proto.RegisterType((*AddVrfRequest)(nil), "gobgpapi.AddVrfRequest")
	proto.RegisterType((*DeleteVrfRequest)(nil), "gobgpapi.DeleteVrfRequest")
	proto.RegisterType((*ListVrfRequest)(nil), "gobgpapi.ListVrfRequest")
	proto.RegisterType((*ListVrfResponse)(nil), "gobgpapi.ListVrfResponse")
	proto.RegisterType((*AddPolicyRequest)(nil), "gobgpapi.AddPolicyRequest")
	proto.RegisterType((*DeletePolicyRequest)(nil), "gobgpapi.DeletePolicyRequest")
	proto.RegisterType((*ListPolicyRequest)(nil), "gobgpapi.ListPolicyRequest")
	proto.RegisterType((*ListPolicyResponse)(nil), "gobgpapi.ListPolicyResponse")
	proto.RegisterType((*SetPoliciesRequest)(nil), "gobgpapi.SetPoliciesRequest")
	proto.RegisterType((*AddDefinedSetRequest)(nil), "gobgpapi.AddDefinedSetRequest")
	proto.RegisterType((*DeleteDefinedSetRequest)(nil), "gobgpapi.DeleteDefinedSetRequest")
	proto.RegisterType((*ListDefinedSetRequest)(nil), "gobgpapi.ListDefinedSetRequest")
	proto.RegisterType((*ListDefinedSetResponse)(nil), "gobgpapi.ListDefinedSetResponse")
	proto.RegisterType((*AddStatementRequest)(nil), "gobgpapi.AddStatementRequest")
	proto.RegisterType((*DeleteStatementRequest)(nil), "gobgpapi.DeleteStatementRequest")
	proto.RegisterType((*ListStatementRequest)(nil), "gobgpapi.ListStatementRequest")
	proto.RegisterType((*ListStatementResponse)(nil), "gobgpapi.ListStatementResponse")
	proto.RegisterType((*AddPolicyAssignmentRequest)(nil), "gobgpapi.AddPolicyAssignmentRequest")
	proto.RegisterType((*DeletePolicyAssignmentRequest)(nil), "gobgpapi.DeletePolicyAssignmentRequest")
	proto.RegisterType((*ListPolicyAssignmentRequest)(nil), "gobgpapi.ListPolicyAssignmentRequest")
	proto.RegisterType((*ListPolicyAssignmentResponse)(nil), "gobgpapi.ListPolicyAssignmentResponse")
	proto.RegisterType((*SetPolicyAssignmentRequest)(nil), "gobgpapi.SetPolicyAssignmentRequest")
	proto.RegisterType((*AddRpkiRequest)(nil), "gobgpapi.AddRpkiRequest")
	proto.RegisterType((*DeleteRpkiRequest)(nil), "gobgpapi.DeleteRpkiRequest")
	proto.RegisterType((*ListRpkiRequest)(nil), "gobgpapi.ListRpkiRequest")
	proto.RegisterType((*ListRpkiResponse)(nil), "gobgpapi.ListRpkiResponse")
	proto.RegisterType((*EnableRpkiRequest)(nil), "gobgpapi.EnableRpkiRequest")
	proto.RegisterType((*DisableRpkiRequest)(nil), "gobgpapi.DisableRpkiRequest")
	proto.RegisterType((*ResetRpkiRequest)(nil), "gobgpapi.ResetRpkiRequest")
	proto.RegisterType((*ListRpkiTableRequest)(nil), "gobgpapi.ListRpkiTableRequest")
	proto.RegisterType((*ListRpkiTableResponse)(nil), "gobgpapi.ListRpkiTableResponse")
	proto.RegisterType((*EnableZebraRequest)(nil), "gobgpapi.EnableZebraRequest")
	proto.RegisterType((*EnableMrtRequest)(nil), "gobgpapi.EnableMrtRequest")
	proto.RegisterType((*DisableMrtRequest)(nil), "gobgpapi.DisableMrtRequest")
	proto.RegisterType((*AddBmpRequest)(nil), "gobgpapi.AddBmpRequest")
	proto.RegisterType((*DeleteBmpRequest)(nil), "gobgpapi.DeleteBmpRequest")
	proto.RegisterType((*Family)(nil), "gobgpapi.Family")
	proto.RegisterType((*Validation)(nil), "gobgpapi.Validation")
	proto.RegisterType((*Path)(nil), "gobgpapi.Path")
	proto.RegisterType((*Destination)(nil), "gobgpapi.Destination")
	proto.RegisterType((*TableLookupPrefix)(nil), "gobgpapi.TableLookupPrefix")
	proto.RegisterType((*Peer)(nil), "gobgpapi.Peer")
	proto.RegisterType((*PeerGroup)(nil), "gobgpapi.PeerGroup")
	proto.RegisterType((*DynamicNeighbor)(nil), "gobgpapi.DynamicNeighbor")
	proto.RegisterType((*ApplyPolicy)(nil), "gobgpapi.ApplyPolicy")
	proto.RegisterType((*PrefixLimit)(nil), "gobgpapi.PrefixLimit")
	proto.RegisterType((*PeerConf)(nil), "gobgpapi.PeerConf")
	proto.RegisterType((*PeerGroupConf)(nil), "gobgpapi.PeerGroupConf")
	proto.RegisterType((*PeerGroupState)(nil), "gobgpapi.PeerGroupState")
	proto.RegisterType((*TtlSecurity)(nil), "gobgpapi.TtlSecurity")
	proto.RegisterType((*EbgpMultihop)(nil), "gobgpapi.EbgpMultihop")
	proto.RegisterType((*RouteReflector)(nil), "gobgpapi.RouteReflector")
	proto.RegisterType((*PeerState)(nil), "gobgpapi.PeerState")
	proto.RegisterType((*Messages)(nil), "gobgpapi.Messages")
	proto.RegisterType((*Message)(nil), "gobgpapi.Message")
	proto.RegisterType((*Queues)(nil), "gobgpapi.Queues")
	proto.RegisterType((*Timers)(nil), "gobgpapi.Timers")
	proto.RegisterType((*TimersConfig)(nil), "gobgpapi.TimersConfig")
	proto.RegisterType((*TimersState)(nil), "gobgpapi.TimersState")
	proto.RegisterType((*Transport)(nil), "gobgpapi.Transport")
	proto.RegisterType((*RouteServer)(nil), "gobgpapi.RouteServer")
	proto.RegisterType((*GracefulRestart)(nil), "gobgpapi.GracefulRestart")
	proto.RegisterType((*MpGracefulRestartConfig)(nil), "gobgpapi.MpGracefulRestartConfig")
	proto.RegisterType((*MpGracefulRestartState)(nil), "gobgpapi.MpGracefulRestartState")
	proto.RegisterType((*MpGracefulRestart)(nil), "gobgpapi.MpGracefulRestart")
	proto.RegisterType((*AfiSafiConfig)(nil), "gobgpapi.AfiSafiConfig")
	proto.RegisterType((*AfiSafiState)(nil), "gobgpapi.AfiSafiState")
	proto.RegisterType((*RouteSelectionOptionsConfig)(nil), "gobgpapi.RouteSelectionOptionsConfig")
	proto.RegisterType((*RouteSelectionOptionsState)(nil), "gobgpapi.RouteSelectionOptionsState")
	proto.RegisterType((*RouteSelectionOptions)(nil), "gobgpapi.RouteSelectionOptions")
	proto.RegisterType((*UseMultiplePathsConfig)(nil), "gobgpapi.UseMultiplePathsConfig")
	proto.RegisterType((*UseMultiplePathsState)(nil), "gobgpapi.UseMultiplePathsState")
	proto.RegisterType((*EbgpConfig)(nil), "gobgpapi.EbgpConfig")
	proto.RegisterType((*EbgpState)(nil), "gobgpapi.EbgpState")
	proto.RegisterType((*Ebgp)(nil), "gobgpapi.Ebgp")
	proto.RegisterType((*IbgpConfig)(nil), "gobgpapi.IbgpConfig")
	proto.RegisterType((*IbgpState)(nil), "gobgpapi.IbgpState")
	proto.RegisterType((*Ibgp)(nil), "gobgpapi.Ibgp")
	proto.RegisterType((*UseMultiplePaths)(nil), "gobgpapi.UseMultiplePaths")
	proto.RegisterType((*RouteTargetMembershipConfig)(nil), "gobgpapi.RouteTargetMembershipConfig")
	proto.RegisterType((*RouteTargetMembershipState)(nil), "gobgpapi.RouteTargetMembershipState")
	proto.RegisterType((*RouteTargetMembership)(nil), "gobgpapi.RouteTargetMembership")
	proto.RegisterType((*LongLivedGracefulRestartConfig)(nil), "gobgpapi.LongLivedGracefulRestartConfig")
	proto.RegisterType((*LongLivedGracefulRestartState)(nil), "gobgpapi.LongLivedGracefulRestartState")
	proto.RegisterType((*LongLivedGracefulRestart)(nil), "gobgpapi.LongLivedGracefulRestart")
	proto.RegisterType((*AfiSafi)(nil), "gobgpapi.AfiSafi")
	proto.RegisterType((*AddPathsConfig)(nil), "gobgpapi.AddPathsConfig")
	proto.RegisterType((*AddPathsState)(nil), "gobgpapi.AddPathsState")
	proto.RegisterType((*AddPaths)(nil), "gobgpapi.AddPaths")
	proto.RegisterType((*Prefix)(nil), "gobgpapi.Prefix")
	proto.RegisterType((*DefinedSet)(nil), "gobgpapi.DefinedSet")
	proto.RegisterType((*MatchSet)(nil), "gobgpapi.MatchSet")
	proto.RegisterType((*AsPathLength)(nil), "gobgpapi.AsPathLength")
	proto.RegisterType((*Conditions)(nil), "gobgpapi.Conditions")
	proto.RegisterType((*CommunityAction)(nil), "gobgpapi.CommunityAction")
	proto.RegisterType((*MedAction)(nil), "gobgpapi.MedAction")
	proto.RegisterType((*AsPrependAction)(nil), "gobgpapi.AsPrependAction")
	proto.RegisterType((*NexthopAction)(nil), "gobgpapi.NexthopAction")
	proto.RegisterType((*LocalPrefAction)(nil), "gobgpapi.LocalPrefAction")
	proto.RegisterType((*Actions)(nil), "gobgpapi.Actions")
	proto.RegisterType((*Statement)(nil), "gobgpapi.Statement")
	proto.RegisterType((*Policy)(nil), "gobgpapi.Policy")
	proto.RegisterType((*PolicyAssignment)(nil), "gobgpapi.PolicyAssignment")
	proto.RegisterType((*RoutingPolicy)(nil), "gobgpapi.RoutingPolicy")
	proto.RegisterType((*Roa)(nil), "gobgpapi.Roa")
	proto.RegisterType((*Vrf)(nil), "gobgpapi.Vrf")
	proto.RegisterType((*DefaultRouteDistance)(nil), "gobgpapi.DefaultRouteDistance")
	proto.RegisterType((*Global)(nil), "gobgpapi.Global")
	proto.RegisterType((*Confederation)(nil), "gobgpapi.Confederation")
	proto.RegisterType((*RPKIConf)(nil), "gobgpapi.RPKIConf")
	proto.RegisterType((*RPKIState)(nil), "gobgpapi.RPKIState")
	proto.RegisterType((*Rpki)(nil), "gobgpapi.Rpki")
	proto.RegisterType((*SetLogLevelRequest)(nil), "gobgpapi.SetLogLevelRequest")
}

func init() { proto.RegisterFile("gobgp.proto", fileDescriptor_7cc8e5cf92decdb2) }

var fileDescriptor_7cc8e5cf92decdb2 = []byte{
	// 8305 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x4b, 0x6c, 0x1c, 0xc9,
	0x92, 0xd8, 0xf4, 0x87, 0xcd, 0xee, 0xe8, 0x6e, 0x76, 0x31, 0x49, 0x91, 0x14, 0x35, 0xfa, 0x4c,
	0x8d, 0x46, 0xd2, 0x68, 0x34, 0x1a, 0x49, 0x33, 0x4f, 0x33, 0x4f, 0xda, 0xf9, 0xb4, 0xc8, 0x16,
	0xd5, 0x4f, 0xcd, 0xee, 0x9e, 0xea, 0xa6, 0x46, 0xf3, 0xd6, 0xcf, 0xb5, 0xc5, 0xae, 0xec, 0x66,
	0x79, 0xaa, 0xab, 0x6a, 0xaa, 0xaa, 0x29, 0x72, 0x2f, 0x7e, 0xfb, 0x76, 0xfd, 0x0c, 0xc3, 0x30,
	0x60, 0xd8, 0x87, 0x3d, 0x78, 0x0d, 0x03, 0xf6, 0xc5, 0x30, 0x0c, 0xfb, 0x62, 0x1f, 0x0c, 0x5f,
	0x0c, 0xc3, 0x07, 0xc3, 0x0b, 0xf8, 0xe4, 0x93, 0x0f, 0x36, 0x60, 0xd8, 0xf0, 0xcd, 0x80, 0x2f,
	0x3e, 0x1b, 0xf9, 0xa9, 0xaa, 0xac, 0x4f, 0x93, 0x14, 0xa5, 0xf7, 0x76, 0x17, 0xd8, 0x13, 0x3b,
	0x23, 0x22, 0x23, 0x23, 0x33, 0x23, 0x23, 0x23, 0x23, 0xb3, 0x82, 0x50, 0x9d, 0xd8, 0xfb, 0x13,
	0xe7, 0xae, 0xe3, 0xda, 0xbe, 0x8d, 0xca, 0xb4, 0xa0, 0x39, 0xc6, 0xe6, 0xc5, 0x89, 0x6d, 0x4f,
	0x4c, 0xfc, 0x09, 0x85, 0xef, 0xcf, 0xc6, 0x9f, 0x68, 0xd6, 0x31, 0x23, 0xda, 0xbc, 0x94, 0x44,
	0xe1, 0xa9, 0xe3, 0x07, 0xc8, 0xab, 0x49, 0xa4, 0x6f, 0x4c, 0xb1, 0xe7, 0x6b, 0x53, 0xde, 0x84,
	0xfc, 0x18, 0x1a, 0x03, 0x5f, 0x73, 0xfd, 0x27, 0x13, 0x47, 0xc1, 0x3f, 0xce, 0xb0, 0xe7, 0xa3,
	0x5b, 0x50, 0x9a, 0x98, 0xf6, 0xbe, 0x66, 0x6e, 0xe4, 0xae, 0xe5, 0x6e, 0x55, 0x1f, 0x48, 0x77,
	0x03, 0x31, 0xee, 0xee, 0x50, 0xb8, 0xc2, 0xf1, 0xb2, 0x04, 0x4b, 0x03, 0xdf, 0x76, 0xa2, 0xba,
	0x72, 0x03, 0xea, 0x3b, 0x58, 0x60, 0x26, 0x3f, 0x82, 0xa5, 0x00, 0xe0, 0x39, 0xb6, 0xe5, 0xe1,
	0xd7, 0x60, 0xff, 0x19, 0x2c, 0x35, 0x75, 0xbd, 0x8f, 0xb1, 0x1b, 0x88, 0x26, 0x43, 0xd1, 0xc1,
	0xd8, 0xe5, 0x35, 0x97, 0xa2, 0x9a, 0x94, 0x88, 0xe2, 0xe4, 0xe7, 0xb0, 0xbc, 0x8d, 0x4d, 0xec,
	0x63, 0xb1, 0xe2, 0x06, 0x2c, 0x6a, 0xba, 0xee, 0x62, 0xcf, 0xa3, 0x75, 0x2b, 0x4a, 0x50, 0x44,
	0xef, 0x42, 0xc5, 0xb0, 0x7c, 0xec, 0x8e, 0xb5, 0x11, 0xde, 0xc8, 0x53, 0x5c, 0x04, 0x90, 0xbf,
	0x83, 0x46, 0xc7, 0xf0, 0xfc, 0xb3, 0xb1, 0xba, 0x0d, 0x12, 0xb6, 0xb4, 0x7d, 0x13, 0x37, 0xf5,
	0x43, 0xec, 0xfa, 0x86, 0x87, 0x75, 0xca, 0xb1, 0xac, 0xa4, 0xe0, 0xf2, 0x43, 0x90, 0x22, 0xc6,
	0x7c, 0x64, 0xce, 0xd2, 0xbb, 0xdf, 0x83, 0xe5, 0x3d, 0x47, 0xd7, 0xe2, 0xbd, 0x3b, 0x43, 0x45,
	0x74, 0x13, 0x24, 0xdd, 0x56, 0x3d, 0x7b, 0xec, 0xab, 0x2e, 0xf6, 0xb0, 0xaf, 0x1a, 0x16, 0x17,
	0xae, 0xae, 0xdb, 0x03, 0x7b, 0xec, 0x2b, 0x04, 0xda, 0xb6, 0xe4, 0x2d, 0x40, 0x62, 0x0b, 0x5c,
	0xb6, 0x8f, 0x61, 0xc5, 0xc2, 0x58, 0xf7, 0x12, 0x1c, 0x72, 0xac, 0x7b, 0x14, 0x25, 0x32, 0xf9,
	0x9f, 0x39, 0x90, 0xe8, 0xef, 0xb3, 0x8d, 0xdc, 0x75, 0xa8, 0x8f, 0xec, 0xe9, 0x74, 0x66, 0x19,
	0x23, 0xcd, 0x37, 0x6c, 0x8b, 0x4f, 0x44, 0x1c, 0x88, 0x10, 0x14, 0x49, 0xeb, 0x1b, 0x05, 0xda,
	0x28, 0xfd, 0x8d, 0x9e, 0x43, 0x45, 0x37, 0x5c, 0x3c, 0xa2, 0xb5, 0x8a, 0xd7, 0x72, 0xb7, 0x96,
	0x1e, 0x7c, 0x1c, 0xf5, 0x3f, 0x29, 0xc2, 0xdd, 0x50, 0xc6, 0xed, 0xa0, 0x92, 0x12, 0xd5, 0x97,
	0x3f, 0x01, 0x94, 0x26, 0x40, 0x25, 0xc8, 0xb7, 0xbb, 0xd2, 0x3b, 0x68, 0x11, 0x0a, 0xbd, 0xbd,
	0xa1, 0x94, 0x43, 0x65, 0x28, 0x3e, 0xe9, 0x0d, 0x9f, 0x49, 0x79, 0x79, 0x0f, 0x56, 0x06, 0x07,
	0x33, 0x5f, 0xb7, 0x5f, 0x59, 0x6f, 0xb1, 0xa3, 0xf2, 0xc7, 0xb0, 0xdc, 0xa2, 0x0a, 0x73, 0x26,
	0xa6, 0xf2, 0x10, 0xd0, 0xb6, 0xe1, 0x9d, 0x99, 0xfe, 0x8c, 0x42, 0x4c, 0x01, 0xed, 0xda, 0x96,
	0xe1, 0xdb, 0xee, 0xd9, 0xb8, 0x6e, 0xc0, 0xe2, 0x68, 0xe6, 0xba, 0xd8, 0xf2, 0xb9, 0x5e, 0x05,
	0x45, 0xf4, 0x3e, 0xd4, 0x0d, 0xcb, 0xf0, 0x0d, 0xcd, 0x54, 0x3d, 0x5f, 0xf3, 0x31, 0x9f, 0xc0,
	0x1a, 0x07, 0x0e, 0x08, 0x4c, 0xfe, 0x29, 0xac, 0xc4, 0x9a, 0x7b, 0x8d, 0x35, 0xd1, 0x86, 0x15,
	0x6e, 0x27, 0x76, 0x5c, 0x7b, 0x16, 0xda, 0xb1, 0x07, 0x00, 0x04, 0xad, 0x4e, 0x08, 0x90, 0x33,
	0x58, 0x89, 0x33, 0x60, 0xf4, 0x15, 0x27, 0xf8, 0x29, 0xdf, 0x81, 0xb5, 0xc8, 0x78, 0xc4, 0xb8,
	0x21, 0x28, 0x5a, 0xda, 0x14, 0xf3, 0x5e, 0xd3, 0xdf, 0xf2, 0x0c, 0xd6, 0xa2, 0xa5, 0xf2, 0xa6,
	0x6d, 0x9f, 0x7d, 0x85, 0x3e, 0x83, 0xf5, 0x54, 0xb3, 0xe7, 0x5b, 0xa6, 0x5f, 0xc1, 0x6a, 0x60,
	0x85, 0x62, 0xe2, 0xdf, 0x80, 0x46, 0x24, 0xbe, 0x2a, 0xf4, 0xbb, 0x1e, 0x8a, 0xdb, 0x25, 0x03,
	0xf0, 0x1c, 0x2e, 0x24, 0xea, 0x73, 0x39, 0xce, 0x33, 0xf6, 0x1a, 0x5c, 0x6c, 0xea, 0xfa, 0xf6,
	0xb1, 0xa5, 0x4d, 0x8d, 0x51, 0x17, 0x1b, 0x93, 0x83, 0x7d, 0x3b, 0xd4, 0xbb, 0x6d, 0x90, 0x74,
	0x86, 0x51, 0x2d, 0x8e, 0xe2, 0x6c, 0x2f, 0x46, 0x6c, 0x93, 0x75, 0x1b, 0x7a, 0x1c, 0x20, 0xef,
	0xc1, 0xbb, 0x6c, 0x7a, 0xe7, 0xb4, 0xb2, 0x06, 0x25, 0xc7, 0xc5, 0x63, 0xe3, 0x88, 0x77, 0x97,
	0x97, 0xd0, 0xe5, 0x58, 0x77, 0xf8, 0x2e, 0x11, 0x49, 0xfe, 0x18, 0x36, 0xc9, 0x30, 0xcc, 0x61,
	0x7a, 0x39, 0x35, 0x16, 0xb1, 0xca, 0x23, 0xb8, 0x94, 0x59, 0x99, 0x8f, 0xe4, 0xdb, 0xe9, 0xf8,
	0x5f, 0x67, 0x5b, 0xa9, 0xe6, 0x1f, 0x08, 0x1a, 0xea, 0x13, 0x93, 0xa1, 0xfa, 0xc7, 0x0e, 0x9b,
	0xdd, 0x25, 0x71, 0x86, 0x86, 0x04, 0x37, 0x3c, 0x76, 0xb0, 0x52, 0xf1, 0x83, 0x9f, 0xe8, 0x02,
	0x94, 0x0e, 0xdd, 0xb1, 0x6a, 0xe8, 0x7c, 0x08, 0x16, 0x0e, 0xdd, 0x71, 0x5b, 0xa7, 0x6b, 0x54,
	0xf3, 0x0f, 0xe8, 0xb2, 0x8e, 0xaf, 0x51, 0xd2, 0x1e, 0xc5, 0xc9, 0x1f, 0x40, 0x23, 0x14, 0x80,
	0xf7, 0x0c, 0x41, 0x71, 0x36, 0x33, 0x74, 0xda, 0x76, 0x4d, 0xa1, 0xbf, 0xe5, 0x7f, 0x97, 0x0b,
	0x77, 0xef, 0xdf, 0x8c, 0xac, 0xb7, 0xa0, 0x34, 0xd6, 0xa6, 0x86, 0x79, 0xcc, 0xa5, 0x15, 0xbc,
	0x8f, 0xa7, 0x14, 0xae, 0x70, 0x7c, 0xd8, 0xab, 0xe2, 0xfc, 0x5e, 0x85, 0x5d, 0x58, 0x10, 0xba,
	0xf0, 0x2f, 0x0a, 0xdc, 0x67, 0x78, 0xc3, 0x0e, 0x04, 0x06, 0x27, 0x1f, 0x19, 0x9c, 0xd7, 0x90,
	0xfe, 0x73, 0x28, 0x33, 0xdd, 0xc5, 0xde, 0x46, 0xf1, 0x5a, 0xe1, 0x56, 0xf5, 0xc1, 0xa5, 0x44,
	0x7b, 0x1d, 0xdb, 0xfe, 0x61, 0xe6, 0xf4, 0x29, 0x91, 0x12, 0x12, 0xa3, 0xaf, 0xa1, 0xe2, 0xd9,
	0xae, 0xcf, 0x24, 0x5d, 0xa0, 0x92, 0xca, 0x51, 0xcd, 0x44, 0xc7, 0xee, 0x0e, 0x6c, 0xd7, 0xa7,
	0x82, 0x97, 0x3d, 0xfe, 0x0b, 0xdd, 0x84, 0x06, 0xf3, 0x76, 0xd4, 0xb1, 0x61, 0xfa, 0xd8, 0xc5,
	0xfa, 0x46, 0x89, 0x9a, 0x9f, 0x25, 0x06, 0x7e, 0xca, 0xa1, 0xe8, 0x0e, 0x20, 0x4e, 0x68, 0x99,
	0xae, 0xa1, 0xee, 0x1b, 0x96, 0xe6, 0x1e, 0x6f, 0x2c, 0x8a, 0x0e, 0x53, 0xd7, 0x74, 0x8d, 0x27,
	0x14, 0x8e, 0x1e, 0xc2, 0x3a, 0xa7, 0xd6, 0x7c, 0xdf, 0x35, 0xf6, 0x67, 0x3e, 0x0e, 0xaa, 0x94,
	0x69, 0x95, 0x0b, 0xdc, 0xc7, 0x0a, 0xb0, 0xac, 0x9e, 0x7c, 0x0d, 0xca, 0x81, 0x90, 0x64, 0xe3,
	0xee, 0xf6, 0xba, 0x2d, 0xe9, 0x1d, 0x04, 0x50, 0xea, 0x2b, 0xad, 0xa7, 0xed, 0x97, 0x52, 0x4e,
	0x7e, 0xce, 0x5d, 0x31, 0x51, 0x37, 0x3f, 0x87, 0xaa, 0x8e, 0x3d, 0xdf, 0xb0, 0xd8, 0x06, 0xc9,
	0x16, 0xdc, 0x05, 0x61, 0xc1, 0x45, 0x48, 0x45, 0xa4, 0x94, 0xff, 0x66, 0x0e, 0x56, 0xb9, 0xa2,
	0x0f, 0x7c, 0x17, 0x6b, 0xd3, 0xdf, 0x80, 0x0e, 0x5f, 0x87, 0x05, 0xa2, 0x7d, 0xde, 0x46, 0x81,
	0x4e, 0x6c, 0x52, 0x35, 0x19, 0x52, 0xfe, 0xc3, 0x1c, 0x34, 0x76, 0xb0, 0x4f, 0x19, 0xbf, 0x89,
	0x10, 0x91, 0xce, 0xe5, 0x4f, 0xd1, 0xb9, 0x40, 0x63, 0x0b, 0xc2, 0x16, 0x79, 0x0c, 0x52, 0x24,
	0x04, 0x1f, 0xdc, 0x9b, 0xd0, 0xb0, 0x66, 0x53, 0x35, 0x39, 0xc0, 0x45, 0x65, 0xc9, 0x9a, 0x4d,
	0x85, 0x91, 0x45, 0x17, 0xa1, 0x4c, 0x08, 0xe9, 0x32, 0xcc, 0x53, 0x8a, 0x45, 0x6b, 0x36, 0x25,
	0x9d, 0x44, 0xef, 0x41, 0x8d, 0xa0, 0xb4, 0xd1, 0x08, 0x3b, 0x3e, 0xd6, 0x69, 0x9b, 0x45, 0xa5,
	0x6a, 0xcd, 0xa6, 0x4d, 0x0e, 0x92, 0xff, 0x7d, 0x2e, 0x74, 0x29, 0xde, 0x78, 0x10, 0xde, 0x6c,
	0x31, 0x0a, 0xae, 0x51, 0x31, 0xee, 0x1a, 0x5d, 0x85, 0xaa, 0x63, 0x7b, 0xbe, 0xea, 0xd8, 0xa6,
	0x31, 0x3a, 0xa6, 0xeb, 0xad, 0xac, 0x00, 0x01, 0xf5, 0x29, 0x44, 0x7e, 0x04, 0xab, 0xf1, 0x3e,
	0x08, 0x7e, 0x11, 0x19, 0x96, 0xdc, 0x09, 0x36, 0xf7, 0x1e, 0xd4, 0x9b, 0xba, 0xfe, 0xc2, 0x1d,
	0x07, 0x3d, 0xbf, 0x0a, 0x85, 0x43, 0x77, 0xcc, 0xeb, 0xd4, 0xa3, 0x3a, 0x84, 0x84, 0x60, 0xe4,
	0x1b, 0x20, 0x31, 0xeb, 0x2b, 0x54, 0xca, 0x72, 0x7c, 0xae, 0xc3, 0x12, 0x59, 0x32, 0xa7, 0x50,
	0x3d, 0x60, 0x86, 0x90, 0x52, 0x71, 0xb1, 0x4f, 0x95, 0xe0, 0x08, 0x24, 0xb2, 0x7c, 0x68, 0xe7,
	0x85, 0x03, 0x29, 0x1f, 0x9f, 0xd4, 0x89, 0x91, 0x13, 0x72, 0x3c, 0x7a, 0x04, 0x17, 0x5d, 0x3c,
	0xc6, 0xae, 0x8a, 0x8f, 0x0c, 0xa2, 0x46, 0x13, 0xe6, 0x70, 0x4e, 0xb1, 0xe5, 0x7b, 0xdc, 0x97,
	0x5a, 0xa7, 0x04, 0x2d, 0x8e, 0x1f, 0x84, 0x68, 0xf9, 0x57, 0x39, 0x58, 0xe1, 0x5b, 0xcf, 0x39,
	0x5b, 0xff, 0x04, 0x56, 0x1c, 0xe2, 0x72, 0xb9, 0x87, 0x38, 0xdd, 0x2e, 0x0a, 0x50, 0x51, 0x93,
	0x48, 0x82, 0x82, 0x66, 0x9a, 0xdc, 0x1d, 0x26, 0x3f, 0xe5, 0x9b, 0xb0, 0x4c, 0x6d, 0x51, 0x4c,
	0x82, 0xac, 0xb1, 0xfd, 0x0a, 0x90, 0x48, 0x18, 0x9d, 0xad, 0xcf, 0x26, 0xab, 0xfc, 0x6f, 0x72,
	0x80, 0x06, 0x98, 0xd5, 0x37, 0xb0, 0x17, 0x34, 0xf5, 0x39, 0xd4, 0x74, 0x3c, 0x36, 0x2c, 0xac,
	0xab, 0x1e, 0xf6, 0x89, 0x8f, 0x4f, 0x2c, 0xcc, 0xaa, 0x68, 0xf8, 0x28, 0x76, 0x80, 0x7d, 0x62,
	0xf7, 0x82, 0xdf, 0x1e, 0xba, 0x03, 0x65, 0x87, 0xf3, 0xda, 0xc8, 0xd3, 0x4a, 0xe9, 0xb6, 0x43,
	0x0a, 0xf4, 0x3b, 0x50, 0xd5, 0x3c, 0xcf, 0x98, 0x58, 0x6c, 0x84, 0x98, 0x1d, 0xdb, 0x4c, 0x56,
	0x68, 0x86, 0x24, 0x8a, 0x48, 0x2e, 0xef, 0x52, 0x13, 0x2b, 0x48, 0xc2, 0x85, 0xff, 0x09, 0x54,
	0x05, 0xe1, 0xf9, 0x10, 0x64, 0xcb, 0x0e, 0x91, 0xec, 0xf2, 0x3e, 0xac, 0x73, 0xa7, 0xf0, 0x2d,
	0x71, 0x0c, 0xe6, 0x35, 0x1f, 0xcd, 0x2b, 0x66, 0x8e, 0x72, 0xba, 0x85, 0x2f, 0xa2, 0x01, 0x17,
	0xcc, 0xd1, 0x85, 0x54, 0x13, 0xd4, 0x20, 0x05, 0xc2, 0xcc, 0x33, 0x49, 0x72, 0x0f, 0xd6, 0x92,
	0xcd, 0x70, 0xcd, 0x38, 0xe7, 0xd8, 0x3c, 0xa3, 0x47, 0xab, 0x50, 0x65, 0x03, 0xa9, 0xef, 0x43,
	0x25, 0x54, 0xf0, 0xb4, 0x77, 0x1f, 0x91, 0x47, 0x54, 0xf2, 0x2f, 0x82, 0x93, 0xd5, 0x5b, 0x60,
	0x96, 0x31, 0xc0, 0xb7, 0xd9, 0x49, 0x26, 0xc5, 0x3c, 0x6b, 0xed, 0xfc, 0x8c, 0x4d, 0x86, 0x40,
	0xcb, 0x07, 0xe9, 0x1c, 0xdd, 0x7a, 0x09, 0x9b, 0xa1, 0xbd, 0x12, 0xf4, 0x95, 0xb7, 0xfe, 0x08,
	0x20, 0x52, 0x5c, 0xce, 0xf1, 0x24, 0x35, 0x17, 0xa8, 0xe5, 0x29, 0x5c, 0x16, 0xcd, 0xd1, 0x5b,
	0x65, 0x9e, 0x31, 0x80, 0x7f, 0x8d, 0x1d, 0x43, 0xe6, 0x35, 0x96, 0x31, 0x8e, 0xe8, 0x73, 0x31,
	0xf6, 0x92, 0xa7, 0x8a, 0x7b, 0x31, 0xd9, 0x7e, 0x66, 0x9c, 0xe5, 0xe7, 0xf0, 0x6e, 0x76, 0x5b,
	0x7c, 0x1e, 0xde, 0x64, 0xd8, 0x5e, 0xc2, 0x66, 0x60, 0xd7, 0xde, 0xf2, 0x84, 0xfc, 0x9c, 0x9e,
	0xa1, 0x14, 0xe7, 0x07, 0xe3, 0xf4, 0x60, 0x08, 0x82, 0xa2, 0x63, 0xbb, 0x2c, 0x12, 0x52, 0x57,
	0xe8, 0x6f, 0xb4, 0x09, 0x65, 0xd3, 0x18, 0x63, 0xdf, 0xe0, 0x2e, 0x52, 0x41, 0x09, 0xcb, 0x72,
	0x33, 0x38, 0xf6, 0x9c, 0x9b, 0xbd, 0xfc, 0x98, 0xed, 0xb6, 0x22, 0x83, 0xc8, 0x43, 0xc9, 0x9d,
	0xec, 0xa1, 0xc8, 0x8f, 0x98, 0x0f, 0xcc, 0x2a, 0xf3, 0x59, 0xb8, 0x01, 0x25, 0xba, 0x61, 0x65,
	0x04, 0x5f, 0x28, 0x1d, 0xc7, 0x12, 0xd9, 0x59, 0xb4, 0xea, 0xfc, 0xb2, 0x3f, 0x09, 0x23, 0x58,
	0xe7, 0xe7, 0x31, 0xe4, 0x11, 0xc7, 0xf3, 0x4f, 0x50, 0x46, 0x7c, 0x51, 0xfe, 0x86, 0xd9, 0x15,
	0xc2, 0x34, 0xe6, 0x44, 0x9e, 0x7d, 0x68, 0xbf, 0x60, 0xd6, 0x46, 0xe0, 0x10, 0xf9, 0x42, 0xae,
	0xad, 0xa5, 0x7d, 0x21, 0xc5, 0xd6, 0x14, 0x82, 0x91, 0xff, 0x49, 0x1e, 0x10, 0x1b, 0xd9, 0x9f,
	0xe3, 0x7d, 0x57, 0x0b, 0x9a, 0x96, 0xa0, 0x30, 0x73, 0x4d, 0xde, 0x21, 0xf2, 0x93, 0x78, 0x91,
	0xae, 0x4d, 0x0e, 0x44, 0x64, 0x0b, 0x61, 0xfb, 0x6f, 0x45, 0x01, 0x0a, 0x22, 0x5b, 0x05, 0x8d,
	0xcd, 0x1d, 0x62, 0xd7, 0x23, 0xeb, 0xb4, 0x40, 0x3b, 0x1c, 0x14, 0xd1, 0x67, 0xb0, 0x66, 0xe1,
	0x23, 0xff, 0xc0, 0x76, 0x54, 0xdf, 0x35, 0x26, 0x13, 0xe2, 0x3b, 0xd1, 0x26, 0xb9, 0xa7, 0xba,
	0xca, 0xb1, 0x43, 0x86, 0x64, 0xe2, 0xa0, 0x07, 0x70, 0x21, 0x59, 0x4b, 0xc7, 0xa6, 0xc6, 0x1c,
	0xd8, 0xba, 0xb2, 0x12, 0xaf, 0xb4, 0x4d, 0x50, 0xe8, 0x3e, 0x5c, 0x98, 0x3a, 0xa6, 0xa7, 0x9a,
	0xda, 0x3e, 0x36, 0x55, 0x57, 0xb3, 0x26, 0x58, 0xf5, 0x8c, 0xdf, 0xc7, 0xf4, 0x74, 0x58, 0x57,
	0x10, 0x41, 0x76, 0x08, 0x4e, 0x21, 0xa8, 0x81, 0xf1, 0xfb, 0x18, 0xbd, 0x0f, 0x75, 0x32, 0x09,
	0xaf, 0x34, 0x17, 0xb3, 0x20, 0xd4, 0x22, 0xed, 0x73, 0x2d, 0x00, 0xd2, 0x18, 0xd4, 0x3f, 0xcc,
	0x81, 0xc4, 0xc4, 0xda, 0x75, 0xc3, 0x75, 0x7e, 0x09, 0x2a, 0xfa, 0x6c, 0xea, 0x44, 0x7b, 0xea,
	0x82, 0x52, 0x26, 0x00, 0xba, 0x73, 0x6e, 0x42, 0x79, 0x6c, 0x98, 0x58, 0xd8, 0x3d, 0xc3, 0x32,
	0x69, 0x92, 0x56, 0xa4, 0x57, 0x00, 0x87, 0x9a, 0xc9, 0x0f, 0x16, 0x35, 0x02, 0x6c, 0x73, 0x18,
	0xfa, 0x08, 0x96, 0x5d, 0xdb, 0xa7, 0x67, 0x94, 0x88, 0xb0, 0x48, 0x09, 0xa5, 0x00, 0x11, 0x10,
	0xcb, 0x2b, 0xb0, 0xcc, 0x75, 0x3b, 0x92, 0x4f, 0xfe, 0xa7, 0x79, 0xea, 0x9b, 0x3f, 0x99, 0x3a,
	0xe7, 0x53, 0xd5, 0x6f, 0x42, 0x47, 0xaf, 0x40, 0xed, 0xee, 0xad, 0x48, 0x7d, 0x62, 0x6c, 0xef,
	0xf2, 0xc3, 0x83, 0x61, 0x4d, 0x12, 0xce, 0xea, 0x1d, 0x58, 0x26, 0x1b, 0x1a, 0x71, 0x83, 0x47,
	0xde, 0xd0, 0x98, 0x62, 0x7b, 0xc6, 0x4e, 0x27, 0x0b, 0x4a, 0x1a, 0x41, 0xa4, 0x1b, 0x1c, 0x7b,
	0x64, 0xbc, 0xe9, 0x14, 0x57, 0x94, 0xa0, 0x48, 0x06, 0x73, 0x70, 0xec, 0x6d, 0x63, 0x6f, 0xe4,
	0xd2, 0x99, 0xac, 0x28, 0x61, 0x59, 0xde, 0x02, 0x29, 0xd9, 0x3e, 0x5a, 0x84, 0x42, 0x5f, 0x21,
	0x47, 0xf0, 0x32, 0x14, 0xfb, 0xbd, 0x41, 0x2c, 0x9e, 0x8e, 0x2a, 0xb0, 0xd0, 0xe9, 0x6d, 0x35,
	0x3b, 0x52, 0x81, 0xd0, 0x35, 0x3b, 0x1d, 0xa9, 0x28, 0x7f, 0x13, 0x9c, 0x49, 0xce, 0x3b, 0x58,
	0xf2, 0xdf, 0x2a, 0x42, 0x89, 0x2d, 0x4a, 0x74, 0x03, 0x0a, 0xda, 0xd8, 0xe0, 0x5e, 0xd6, 0x6a,
	0x72, 0xcd, 0xde, 0x6d, 0x8e, 0x0d, 0x85, 0x10, 0xa0, 0x0f, 0xa1, 0xe8, 0x11, 0xc2, 0x7c, 0xd2,
	0x1d, 0xe3, 0x84, 0x03, 0x6d, 0x6c, 0x28, 0x94, 0x44, 0xfe, 0xab, 0x50, 0x68, 0x8e, 0x0d, 0xd4,
	0x80, 0x6a, 0xf3, 0x69, 0x5b, 0xdd, 0xeb, 0x3e, 0xef, 0xf6, 0xbe, 0xeb, 0xb2, 0x10, 0x03, 0x01,
	0xb4, 0xfb, 0x52, 0x0e, 0x55, 0x61, 0x91, 0xfd, 0x7e, 0x28, 0xe5, 0x51, 0x1d, 0x2a, 0xa4, 0xd0,
	0x79, 0xf0, 0xa2, 0xdf, 0x95, 0x2e, 0xa2, 0x1a, 0xa3, 0xeb, 0x0c, 0xa4, 0x3f, 0xfa, 0x65, 0x0e,
	0x49, 0x00, 0xa4, 0xd4, 0xeb, 0x37, 0xbf, 0xdd, 0x6b, 0x49, 0x7f, 0xe7, 0x97, 0x39, 0xf9, 0x4f,
	0xf3, 0x50, 0x24, 0xcd, 0x21, 0x09, 0x6a, 0x83, 0x78, 0x13, 0x11, 0xa4, 0xbd, 0xd5, 0xa4, 0x43,
	0x89, 0x60, 0x89, 0x42, 0x76, 0xf7, 0x3a, 0x43, 0x06, 0xcb, 0xa3, 0x15, 0x68, 0x30, 0x58, 0xbf,
	0x33, 0x50, 0x3b, 0xcd, 0x27, 0xad, 0x8e, 0x54, 0x44, 0x6b, 0x80, 0x28, 0xb0, 0xd5, 0xdd, 0x6a,
	0xf6, 0x07, 0x7b, 0x9d, 0xe6, 0xb0, 0xdd, 0xeb, 0x4a, 0x8b, 0x44, 0x38, 0x0a, 0x7f, 0xd1, 0xef,
	0x0c, 0xa4, 0x66, 0x58, 0x6c, 0x11, 0x59, 0x9f, 0x92, 0x7e, 0x0c, 0xb8, 0xb0, 0x3b, 0x61, 0x5b,
	0x03, 0x45, 0xed, 0xf7, 0x3a, 0xed, 0xad, 0xef, 0xa5, 0x36, 0x42, 0x50, 0x8f, 0xda, 0x22, 0x75,
	0x7e, 0x99, 0x43, 0xef, 0xc2, 0x7a, 0x0c, 0x26, 0x08, 0xf7, 0x07, 0x39, 0x24, 0xc3, 0x65, 0x8a,
	0x55, 0x7a, 0x7b, 0xc3, 0x96, 0x3a, 0x6c, 0x2a, 0x3b, 0xad, 0xa1, 0xba, 0xd5, 0xeb, 0x0e, 0x86,
	0x4a, 0xb3, 0xdd, 0x1d, 0x0e, 0xa4, 0x3f, 0xca, 0xa1, 0x4b, 0xb0, 0x46, 0x69, 0x9e, 0x76, 0x7a,
	0xdf, 0xa9, 0x83, 0x7e, 0x6b, 0x2b, 0xec, 0xf1, 0xdf, 0xc8, 0xa1, 0x75, 0xde, 0x93, 0x08, 0x49,
	0xda, 0xfd, 0x75, 0x0e, 0xad, 0x70, 0xf9, 0x9e, 0xb7, 0xbe, 0x57, 0x5f, 0x34, 0x3b, 0x7b, 0x2d,
	0xe9, 0xff, 0xe6, 0xe4, 0x3f, 0x2e, 0x00, 0xbc, 0xd0, 0x4c, 0x43, 0x67, 0x11, 0x86, 0x7b, 0xb0,
	0xc0, 0xae, 0x24, 0x98, 0x46, 0x08, 0xae, 0x40, 0x44, 0xc4, 0x1c, 0x3f, 0x85, 0x11, 0xa2, 0x4f,
	0xa1, 0xe4, 0x62, 0xcd, 0x0b, 0x3d, 0x9e, 0x4b, 0x99, 0x55, 0x14, 0x4a, 0xa2, 0x70, 0x52, 0x74,
	0x13, 0x16, 0xa7, 0x9a, 0x3f, 0x3a, 0xa0, 0x81, 0x8a, 0x42, 0xda, 0xdc, 0x07, 0x58, 0x74, 0x0f,
	0x6a, 0x33, 0x8b, 0x17, 0x54, 0x2d, 0x08, 0xdd, 0x25, 0xa8, 0xab, 0x21, 0x49, 0xd3, 0x43, 0x5f,
	0x80, 0x14, 0xd5, 0x30, 0xb1, 0x35, 0xf1, 0x0f, 0x36, 0x16, 0xb2, 0x6a, 0x35, 0x42, 0xb2, 0x0e,
	0xa5, 0x92, 0xfb, 0xb0, 0x40, 0x7b, 0x86, 0x96, 0x00, 0x06, 0xc3, 0xe6, 0xb0, 0xa5, 0xf2, 0xe0,
	0x18, 0x51, 0x18, 0x5e, 0x1e, 0xaa, 0x4f, 0x7b, 0x7b, 0xdd, 0x6d, 0x29, 0x47, 0xf4, 0x9b, 0x01,
	0x5f, 0x34, 0x3b, 0xed, 0x6d, 0x29, 0x8f, 0x96, 0xa1, 0xce, 0x00, 0xed, 0x2e, 0x03, 0x15, 0xe4,
	0xc7, 0x50, 0x62, 0x1d, 0x27, 0xd4, 0x4a, 0xab, 0x39, 0xe8, 0x0d, 0x03, 0x9e, 0x75, 0xa8, 0x50,
	0x40, 0x57, 0x6d, 0x0e, 0xa4, 0x1c, 0xa9, 0xcc, 0x8b, 0x9d, 0x56, 0x77, 0x87, 0xde, 0xa5, 0xfd,
	0xf7, 0x05, 0x28, 0xd2, 0xd0, 0xce, 0x2d, 0x28, 0x5a, 0xa6, 0x6b, 0x08, 0x67, 0x14, 0x7b, 0x62,
	0xe2, 0xbb, 0xc1, 0x15, 0xf6, 0xdd, 0xa6, 0x75, 0xac, 0x50, 0x0a, 0x74, 0x07, 0x4a, 0x8e, 0xe6,
	0xfb, 0x6e, 0x70, 0xe4, 0xcc, 0xa6, 0xe5, 0x34, 0xe8, 0x0e, 0x14, 0xb4, 0x09, 0xe6, 0xc1, 0x9a,
	0xcd, 0x14, 0xe9, 0x30, 0xb8, 0x19, 0x57, 0x08, 0x19, 0x31, 0x24, 0xfb, 0xd8, 0x0b, 0x02, 0x36,
	0xf4, 0x37, 0xd9, 0x67, 0x0d, 0x4f, 0x7d, 0x65, 0xf8, 0x07, 0xba, 0xab, 0xbd, 0x0a, 0xa2, 0x35,
	0x86, 0xf7, 0x1d, 0x87, 0xa0, 0xcf, 0x00, 0x0e, 0x43, 0x25, 0xa0, 0xbb, 0x55, 0xec, 0x90, 0x15,
	0x29, 0x88, 0x22, 0xd0, 0xa1, 0x7b, 0xb0, 0x6a, 0xd9, 0xaa, 0x31, 0x75, 0xc8, 0xe9, 0xd8, 0x8f,
	0xf8, 0xb3, 0xb8, 0x26, 0xb2, 0xec, 0x36, 0x47, 0x85, 0xed, 0x44, 0xde, 0x47, 0xe5, 0x94, 0xd0,
	0xd3, 0x65, 0x00, 0xcf, 0x9e, 0xb9, 0x23, 0xac, 0x6a, 0x9e, 0xb5, 0x01, 0xd4, 0x2a, 0x56, 0x18,
	0xa4, 0xe9, 0x59, 0x64, 0x9f, 0xe4, 0x68, 0x43, 0xdf, 0xa8, 0x32, 0xf3, 0xcd, 0x00, 0x6d, 0x9d,
	0xef, 0x93, 0x2c, 0x84, 0x5b, 0xa3, 0xb2, 0x84, 0x65, 0xb4, 0x4a, 0x17, 0x8e, 0x89, 0x37, 0xea,
	0x14, 0xc1, 0x0a, 0xe8, 0x16, 0x48, 0x86, 0xa7, 0x8e, 0x5d, 0x7b, 0xaa, 0xe2, 0x23, 0x1f, 0xbb,
	0x96, 0x66, 0x6e, 0x2c, 0xb1, 0xe0, 0xaf, 0xe1, 0x3d, 0x75, 0xed, 0x69, 0x8b, 0x43, 0xc9, 0x50,
	0x06, 0xd7, 0x19, 0xaa, 0xe1, 0x6c, 0x34, 0x68, 0xd3, 0x10, 0x80, 0xda, 0x4e, 0x18, 0x5a, 0x97,
	0xa2, 0xd0, 0x3a, 0xba, 0x03, 0xc8, 0xf0, 0xd4, 0xc0, 0xf3, 0x30, 0x2c, 0x3a, 0x86, 0x1b, 0xcb,
	0x2c, 0x62, 0x6c, 0x78, 0x5d, 0x86, 0x68, 0x33, 0x38, 0xba, 0x02, 0x60, 0xe8, 0xd8, 0xf2, 0x8d,
	0xb1, 0x81, 0xdd, 0x0d, 0x44, 0xbb, 0x2e, 0x40, 0xd0, 0x87, 0x20, 0x99, 0xf6, 0x48, 0x33, 0x55,
	0x81, 0x6a, 0x85, 0x52, 0x35, 0x28, 0xbc, 0x1d, 0x91, 0x12, 0x69, 0x85, 0x18, 0xf5, 0x2a, 0x95,
	0x09, 0xac, 0x28, 0x3a, 0xfd, 0x3e, 0xd4, 0x99, 0x96, 0x05, 0x24, 0x17, 0xae, 0x15, 0x6e, 0xd5,
	0x94, 0x1a, 0x03, 0xf2, 0x50, 0xf4, 0x73, 0xa8, 0x8a, 0xd1, 0xcd, 0x79, 0x97, 0x4d, 0x61, 0x78,
	0x37, 0x7f, 0x52, 0x78, 0x77, 0x0a, 0xcb, 0xa9, 0x30, 0xfe, 0x5c, 0x96, 0xdf, 0x40, 0xdd, 0xa4,
	0x74, 0xaa, 0xed, 0x08, 0xa7, 0xb5, 0xec, 0x2b, 0x81, 0x1e, 0x25, 0x51, 0x6a, 0xa6, 0x50, 0x92,
	0xff, 0x6b, 0x11, 0x8a, 0x7d, 0x8c, 0x5d, 0xf4, 0x05, 0xd4, 0x34, 0xc7, 0x31, 0x8f, 0xd5, 0x58,
	0xa0, 0x49, 0xd8, 0x21, 0x9b, 0x04, 0xcb, 0x9d, 0x8d, 0xaa, 0x16, 0x15, 0xd0, 0x0d, 0x28, 0x8e,
	0x6c, 0x6b, 0xcc, 0xc3, 0xc8, 0x28, 0x7e, 0x1b, 0xb8, 0x65, 0x5b, 0x63, 0x85, 0xe2, 0xd1, 0x63,
	0xa8, 0xe3, 0xfd, 0x89, 0xa3, 0x4e, 0x67, 0xa6, 0x6f, 0x1c, 0xd8, 0x0e, 0x5f, 0xb1, 0x6b, 0x51,
	0x85, 0xd6, 0xfe, 0xc4, 0xd9, 0xe5, 0x58, 0xa5, 0x86, 0x85, 0x12, 0x6a, 0x42, 0x83, 0xb9, 0xc2,
	0x2e, 0x1e, 0x9b, 0x78, 0xe4, 0xdb, 0x2e, 0xbf, 0xc0, 0xd9, 0x10, 0xad, 0xe1, 0xcc, 0xc7, 0x4a,
	0x80, 0x57, 0x96, 0xdc, 0x58, 0x19, 0x7d, 0x18, 0xec, 0x09, 0x0b, 0x59, 0xd7, 0x96, 0xb1, 0xcd,
	0xe0, 0x16, 0x94, 0xc8, 0xf1, 0xcd, 0xf5, 0xa8, 0xeb, 0x13, 0x5b, 0x87, 0x43, 0x0a, 0x57, 0x38,
	0x1e, 0xdd, 0x87, 0x8a, 0xef, 0x6a, 0x96, 0x47, 0x9d, 0x93, 0xc5, 0x24, 0xe3, 0x61, 0x80, 0x52,
	0x22, 0x2a, 0x32, 0xd2, 0xac, 0x2b, 0xfc, 0x14, 0x56, 0x4e, 0x8e, 0x34, 0xed, 0xc7, 0x80, 0x22,
	0x15, 0x76, 0x00, 0x60, 0x05, 0xb4, 0x0d, 0xd2, 0xc4, 0xd5, 0x46, 0x78, 0x3c, 0x33, 0x55, 0x97,
	0x18, 0x35, 0xd7, 0xe7, 0x86, 0x42, 0x38, 0x9f, 0xef, 0x70, 0x0a, 0x85, 0x11, 0x28, 0x8d, 0x49,
	0x1c, 0x80, 0xee, 0x42, 0x45, 0x1b, 0x1b, 0x2a, 0x71, 0x72, 0xbc, 0x0d, 0xa0, 0xba, 0xb8, 0x2c,
	0x4c, 0xf3, 0xd8, 0xa0, 0x4e, 0x50, 0x59, 0x63, 0x3f, 0xc8, 0x4e, 0x54, 0xf3, 0x7d, 0x53, 0xf5,
	0xf0, 0x68, 0xe6, 0x1a, 0xfe, 0x31, 0x35, 0x27, 0x31, 0x79, 0x87, 0xbe, 0x39, 0xe0, 0x48, 0xa5,
	0xea, 0x47, 0x05, 0xf9, 0x7f, 0x17, 0xa1, 0x12, 0x5e, 0x09, 0xbf, 0x81, 0x86, 0x7d, 0x14, 0xd3,
	0xb0, 0xf5, 0x8c, 0xfb, 0xe6, 0x3f, 0x47, 0x6a, 0x76, 0x07, 0x8a, 0x86, 0x35, 0xb6, 0xb9, 0x96,
	0x6d, 0x64, 0x08, 0xcb, 0x54, 0x8d, 0x52, 0xfd, 0xa5, 0xa6, 0xbd, 0x1d, 0x4d, 0x7b, 0x06, 0x8d,
	0xc4, 0x5d, 0xf9, 0x79, 0xef, 0xfc, 0xff, 0x63, 0x0e, 0xaa, 0x82, 0x22, 0xa2, 0xcf, 0xa1, 0x62,
	0x58, 0x71, 0x95, 0x3d, 0x29, 0xb0, 0x54, 0x36, 0x2c, 0x5e, 0xf1, 0x6b, 0xa8, 0xe3, 0x23, 0x32,
	0x0d, 0x41, 0xe5, 0xfc, 0xa9, 0x95, 0x6b, 0xac, 0x42, 0xc4, 0xc0, 0x98, 0x8a, 0x0c, 0x0a, 0xa7,
	0x33, 0x60, 0x15, 0xf8, 0x1d, 0xd3, 0xdf, 0xcd, 0x41, 0x95, 0x6d, 0x20, 0x1d, 0x63, 0x6a, 0xbc,
	0x46, 0x6c, 0x03, 0xbd, 0x07, 0xb5, 0xa9, 0x76, 0xa4, 0x86, 0x37, 0xcd, 0xec, 0xd4, 0x55, 0x9d,
	0x6a, 0x47, 0xfd, 0xe0, 0x3e, 0xf9, 0x33, 0x58, 0xf3, 0xf8, 0x13, 0x29, 0xd5, 0x3f, 0x70, 0xb1,
	0x77, 0x60, 0x9b, 0xba, 0xea, 0x8c, 0x7c, 0x1e, 0x89, 0x58, 0x0d, 0xb0, 0xc3, 0x00, 0xd9, 0x1f,
	0xf9, 0xf2, 0xff, 0x29, 0x42, 0x39, 0xd8, 0x16, 0xc8, 0xe6, 0xaa, 0xcd, 0xfc, 0x03, 0xd5, 0xd1,
	0x3c, 0xef, 0x95, 0xed, 0xea, 0x7c, 0xa2, 0x6a, 0x04, 0xd8, 0xe7, 0x30, 0x74, 0x8d, 0xde, 0xd8,
	0x8e, 0x5c, 0xc3, 0x11, 0x9e, 0x34, 0x89, 0x20, 0x74, 0x11, 0xca, 0x6c, 0xbf, 0xd7, 0xbc, 0x20,
	0x0a, 0x42, 0xcb, 0x4d, 0x8f, 0xb8, 0x02, 0xa1, 0x37, 0x12, 0x1c, 0x2c, 0x8b, 0x94, 0x43, 0x23,
	0x80, 0x37, 0xf9, 0x01, 0x73, 0x1d, 0x16, 0xa9, 0x5a, 0x68, 0x1e, 0x0f, 0x76, 0x94, 0x48, 0xb1,
	0xe9, 0x25, 0xf4, 0xa5, 0x94, 0xd0, 0x17, 0xe2, 0x69, 0x51, 0x34, 0x8d, 0x48, 0x2c, 0xd2, 0x9a,
	0x65, 0x02, 0xa0, 0x11, 0x89, 0x2e, 0x2c, 0xbb, 0x78, 0x6a, 0x1f, 0x62, 0xd5, 0x71, 0x8d, 0x43,
	0xcd, 0x27, 0xde, 0x1a, 0x5d, 0x85, 0xb1, 0xcb, 0xf7, 0x60, 0x40, 0xee, 0x2a, 0x94, 0xb6, 0xcf,
	0x48, 0x9b, 0x9e, 0xd2, 0x70, 0xe3, 0x00, 0xe2, 0x28, 0xb1, 0x05, 0x3d, 0x36, 0x35, 0x47, 0xd5,
	0xb5, 0xa9, 0x63, 0x58, 0x13, 0xba, 0x30, 0xcb, 0x8a, 0x44, 0x31, 0x4f, 0x4d, 0xcd, 0xd9, 0x66,
	0x70, 0xf4, 0x01, 0x2c, 0x79, 0xd8, 0xd2, 0x55, 0xfe, 0xfe, 0xcb, 0x3f, 0xe6, 0x7e, 0x62, 0x9d,
	0x40, 0xb7, 0x02, 0x20, 0xfa, 0x18, 0x50, 0xe4, 0xb2, 0x85, 0x4f, 0x26, 0x99, 0xd3, 0xb8, 0x1c,
	0x7a, 0x6e, 0x01, 0x02, 0x49, 0xec, 0xaa, 0xaf, 0xc6, 0xc2, 0x54, 0x87, 0xee, 0x18, 0x5d, 0x83,
	0x9a, 0x66, 0x9a, 0xf6, 0x2b, 0x95, 0xe8, 0x82, 0xe6, 0x51, 0xd7, 0xb1, 0xae, 0x00, 0x85, 0xf5,
	0x5e, 0x59, 0x4d, 0x0f, 0xdd, 0x80, 0x86, 0x8b, 0x1d, 0x53, 0x1b, 0x61, 0x35, 0x18, 0x64, 0xe6,
	0x3e, 0xd6, 0x39, 0xb8, 0x1f, 0x8e, 0xb5, 0xa6, 0x4f, 0x0d, 0x4b, 0x25, 0x8a, 0x43, 0x9d, 0xc7,
	0xb2, 0x52, 0xa1, 0x90, 0x6d, 0xfb, 0x95, 0x25, 0xdf, 0x87, 0x46, 0x62, 0x88, 0x84, 0xab, 0x7f,
	0x1e, 0x58, 0xa0, 0x87, 0x72, 0xa5, 0xd5, 0xef, 0x34, 0xb7, 0x5a, 0x52, 0x5e, 0xfe, 0xe7, 0x05,
	0xa8, 0xc7, 0x76, 0x89, 0xdf, 0x82, 0xd6, 0x09, 0xaa, 0x54, 0x8c, 0xa9, 0x52, 0xc6, 0xf3, 0xab,
	0x85, 0x8c, 0xe7, 0x57, 0x71, 0x9d, 0x2a, 0x25, 0x74, 0x6a, 0x90, 0xa5, 0x53, 0x8b, 0x54, 0xa7,
	0x6e, 0xce, 0xd9, 0x19, 0xcf, 0xab, 0x58, 0xe5, 0x33, 0x2b, 0x56, 0x25, 0x43, 0xb1, 0xce, 0x33,
	0x5d, 0xff, 0xaf, 0x00, 0x4b, 0xf1, 0x7d, 0xf2, 0x2f, 0xfc, 0x7c, 0x0d, 0xe7, 0xcf, 0xd7, 0xad,
	0x79, 0xce, 0xc1, 0x9f, 0xcd, 0x84, 0x91, 0xe3, 0x90, 0x6f, 0xfb, 0x9a, 0xa9, 0xb2, 0x73, 0x0a,
	0xb3, 0x16, 0x40, 0x41, 0xe4, 0x88, 0xe2, 0x11, 0x3e, 0x9c, 0x20, 0xd8, 0x19, 0xaa, 0x8c, 0x0f,
	0xa3, 0xe1, 0xc0, 0xf3, 0x4c, 0xfc, 0x37, 0x50, 0x15, 0x36, 0x77, 0xb4, 0x01, 0x8b, 0x2c, 0x5c,
	0xad, 0xf3, 0x37, 0x8e, 0x41, 0x91, 0x4c, 0x16, 0xf1, 0x11, 0xa6, 0xfc, 0x11, 0x65, 0x5d, 0x29,
	0xf9, 0xbe, 0xb9, 0x6b, 0x58, 0xf2, 0x73, 0xa8, 0x89, 0x8e, 0xdd, 0x09, 0x2c, 0xc8, 0xee, 0xc6,
	0xa9, 0x54, 0xdf, 0x37, 0xc3, 0xdd, 0x8d, 0xc3, 0x86, 0xbe, 0x29, 0xff, 0x61, 0x0e, 0x96, 0xe2,
	0x7e, 0x1e, 0xd9, 0xf0, 0x12, 0xae, 0xa1, 0x3a, 0x32, 0x8d, 0xe0, 0xba, 0xa9, 0xac, 0xac, 0xc6,
	0xfd, 0xc0, 0x2d, 0x8a, 0x43, 0x8f, 0x61, 0x33, 0x5d, 0x6b, 0xe6, 0xf9, 0xd8, 0x8d, 0x9e, 0xff,
	0xac, 0x27, 0x6b, 0x52, 0x7c, 0x5b, 0x97, 0xff, 0x64, 0x91, 0xf9, 0xcf, 0xbf, 0xad, 0x85, 0x70,
	0x17, 0xca, 0x53, 0xec, 0x79, 0xda, 0x04, 0x7b, 0xdc, 0xed, 0x15, 0x4e, 0x73, 0xbb, 0x1c, 0xa3,
	0x84, 0x34, 0x99, 0xdb, 0xeb, 0xc2, 0xa9, 0xdb, 0x6b, 0xe9, 0x84, 0xed, 0x75, 0xf1, 0xc4, 0xed,
	0xb5, 0x9c, 0x58, 0x5a, 0xb7, 0xa0, 0xf4, 0xe3, 0x0c, 0xcf, 0xb0, 0x97, 0x0e, 0x97, 0x7c, 0x4b,
	0xe1, 0x0a, 0xc7, 0xa3, 0xdb, 0x59, 0x8b, 0x90, 0xe9, 0xf7, 0x19, 0x97, 0x56, 0xf5, 0xcc, 0x4b,
	0xab, 0x96, 0xb5, 0xb4, 0x5a, 0x50, 0xf7, 0xb0, 0xe7, 0x19, 0xb6, 0xc5, 0xdf, 0x4a, 0xd7, 0xa9,
	0x05, 0xb8, 0x96, 0x71, 0x08, 0xbd, 0x3b, 0x60, 0x84, 0xec, 0x98, 0x50, 0xf3, 0x84, 0x12, 0xfa,
	0x1a, 0xaa, 0x6c, 0x83, 0x64, 0x4c, 0x1a, 0x94, 0xc9, 0x95, 0x2c, 0x26, 0x4d, 0x42, 0xc6, 0x58,
	0xb0, 0x3d, 0x95, 0x31, 0x58, 0x81, 0x05, 0x7b, 0xe6, 0xab, 0x3f, 0xd2, 0xf8, 0x4b, 0x5d, 0x29,
	0xda, 0x33, 0xff, 0x5b, 0xb4, 0x0a, 0x0b, 0x63, 0xd3, 0x76, 0x3c, 0x1a, 0x72, 0xa9, 0x2b, 0xac,
	0x80, 0x3e, 0x05, 0x20, 0x43, 0xe3, 0x63, 0x75, 0xa4, 0x39, 0x1b, 0xe8, 0x84, 0x48, 0x5c, 0x85,
	0xd1, 0x6d, 0x69, 0x0e, 0x39, 0xa5, 0x30, 0xed, 0x22, 0x75, 0x56, 0x4e, 0xa8, 0xc3, 0x94, 0x90,
	0x54, 0xb9, 0x04, 0x15, 0x3a, 0xaa, 0x74, 0x45, 0xac, 0xb2, 0x58, 0x15, 0x03, 0xb4, 0x75, 0xd9,
	0x82, 0x9a, 0x38, 0x1c, 0xc4, 0x68, 0x44, 0x71, 0xf2, 0x32, 0x14, 0xdb, 0xdb, 0x9d, 0x16, 0xb3,
	0x25, 0x5b, 0xbd, 0x6e, 0xb7, 0xb5, 0x35, 0x94, 0xf2, 0x34, 0x42, 0xbf, 0x35, 0x6c, 0xbf, 0x68,
	0x49, 0x05, 0x54, 0x83, 0x72, 0xaf, 0xdf, 0xea, 0x0e, 0x5a, 0xdd, 0xa1, 0x54, 0x44, 0x0d, 0xa8,
	0x92, 0xd2, 0x56, 0xaf, 0xfb, 0xb4, 0xad, 0xec, 0x4a, 0x0b, 0x04, 0xd0, 0x1a, 0x0c, 0x9b, 0x4f,
	0x3a, 0xed, 0xc1, 0xb3, 0xd6, 0xb6, 0x54, 0x92, 0x6f, 0x03, 0x44, 0x23, 0x87, 0x4a, 0x90, 0xdf,
	0xeb, 0xb3, 0x86, 0xb6, 0x49, 0x93, 0x39, 0xfa, 0xc0, 0xf0, 0xe9, 0x4b, 0x95, 0xb4, 0x23, 0xff,
	0x1e, 0x94, 0x83, 0x45, 0x81, 0x3e, 0x86, 0xb2, 0x8b, 0x47, 0xd8, 0x38, 0xe4, 0xe6, 0x26, 0x76,
	0xd2, 0xe1, 0x54, 0x4a, 0x48, 0x82, 0x3e, 0x80, 0xa2, 0x17, 0xbc, 0xa8, 0xcf, 0x24, 0xa5, 0x68,
	0xf9, 0x8f, 0xf3, 0xb0, 0xc8, 0x21, 0x48, 0x86, 0x9a, 0x65, 0xfb, 0xc6, 0x38, 0x78, 0xdc, 0xcf,
	0x9e, 0xd6, 0xc5, 0x60, 0xe4, 0xcc, 0x33, 0xa3, 0x2f, 0xc8, 0xf9, 0xb3, 0x3a, 0x5e, 0x42, 0x08,
	0x8a, 0xb6, 0x83, 0x2d, 0x7e, 0xe9, 0x45, 0x7f, 0xa3, 0x77, 0xa1, 0xf2, 0x03, 0xc6, 0x8e, 0x66,
	0x1a, 0x87, 0x98, 0x5f, 0x72, 0x45, 0x00, 0x62, 0x3d, 0x5d, 0x3c, 0x26, 0x9e, 0x3b, 0x5d, 0xd1,
	0x45, 0x25, 0x28, 0x92, 0x7a, 0xba, 0xe1, 0x8d, 0x34, 0x57, 0xe7, 0x2f, 0x40, 0x8b, 0x4a, 0x04,
	0x20, 0xaa, 0x44, 0xf7, 0x02, 0xba, 0x92, 0x8b, 0x0a, 0x2b, 0xa0, 0x9b, 0xd0, 0x08, 0xa2, 0x9f,
	0x2a, 0x17, 0xb0, 0xcc, 0x5e, 0x06, 0x06, 0x60, 0xf6, 0xf0, 0x3d, 0x46, 0xc8, 0x4f, 0x6f, 0x95,
	0x38, 0x21, 0xdb, 0x64, 0xe4, 0x87, 0x50, 0x62, 0x4b, 0x9c, 0xb4, 0x68, 0x58, 0xce, 0x8c, 0x99,
	0xe1, 0xba, 0xc2, 0x0a, 0x64, 0x24, 0xec, 0x99, 0x4f, 0xc0, 0x7c, 0x97, 0x60, 0x25, 0x19, 0x43,
	0x89, 0x9d, 0xab, 0xd1, 0x5d, 0x28, 0x8d, 0x6c, 0x6b, 0x6c, 0x4c, 0xf8, 0x7c, 0xad, 0x25, 0x4f,
	0xde, 0x5b, 0x14, 0xab, 0x70, 0x2a, 0xf4, 0x51, 0x10, 0x3e, 0xca, 0xa7, 0x4e, 0xa5, 0x94, 0x5c,
	0x0c, 0x20, 0xc9, 0x7f, 0x90, 0x87, 0x9a, 0xc8, 0x85, 0x18, 0xef, 0x91, 0x6d, 0x59, 0x78, 0xe4,
	0xab, 0x2e, 0xf6, 0xdd, 0xe3, 0x60, 0xfa, 0x38, 0x50, 0x21, 0x30, 0xb2, 0x12, 0xe8, 0x29, 0x8a,
	0x3e, 0x25, 0x60, 0x33, 0x58, 0x26, 0x00, 0xc2, 0x89, 0xb8, 0xe9, 0xe1, 0xf4, 0x24, 0xaf, 0x31,
	0x97, 0x43, 0x4c, 0x78, 0x97, 0xb9, 0x0d, 0x57, 0xa6, 0x86, 0x65, 0x4c, 0x67, 0x53, 0x55, 0x0b,
	0x3e, 0x4f, 0x22, 0x67, 0xc4, 0xe4, 0xc5, 0xe6, 0xbb, 0x9c, 0xaa, 0x29, 0x12, 0x85, 0x5c, 0x1e,
	0xc1, 0xa6, 0xa1, 0x9b, 0x58, 0x0d, 0xc5, 0x52, 0xb5, 0x31, 0x59, 0xa9, 0xf4, 0x0b, 0x04, 0xae,
	0x19, 0x6b, 0x84, 0xe2, 0x19, 0x17, 0xb3, 0x49, 0xd0, 0xf4, 0xbe, 0x5e, 0xfe, 0x1f, 0x79, 0xa8,
	0x0a, 0x43, 0xf3, 0x17, 0x75, 0x08, 0xee, 0xc1, 0xaa, 0x85, 0x27, 0xb6, 0x6f, 0x68, 0x3e, 0xd6,
	0xa3, 0x81, 0xe0, 0x9d, 0x47, 0x11, 0x2e, 0x18, 0x02, 0xf4, 0x80, 0xac, 0x42, 0x4a, 0x53, 0x3a,
	0xf5, 0x4e, 0x82, 0x53, 0xa2, 0x87, 0x50, 0x26, 0x67, 0x1e, 0x5a, 0x6b, 0xf1, 0xd4, 0x5a, 0x21,
	0xad, 0xfc, 0x8f, 0xf2, 0x50, 0x09, 0x63, 0x3f, 0x64, 0x88, 0xf9, 0xde, 0x1e, 0xbb, 0x45, 0xad,
	0xb1, 0x0d, 0x9e, 0x6f, 0xc5, 0x97, 0x01, 0x18, 0x91, 0x70, 0xa1, 0xca, 0x8c, 0x76, 0x9f, 0xf3,
	0x98, 0xfa, 0x33, 0x95, 0x2c, 0x69, 0xfb, 0x10, 0xbb, 0xc7, 0xc1, 0x57, 0x3d, 0x53, 0x7f, 0xb6,
	0x1d, 0xc0, 0x88, 0x0b, 0x45, 0xdc, 0x10, 0x32, 0x0f, 0x53, 0x5b, 0x0f, 0x1e, 0x15, 0x54, 0x39,
	0x6c, 0xd7, 0xd6, 0x31, 0xd9, 0x18, 0xf9, 0xf6, 0x11, 0x77, 0x0d, 0xea, 0x0c, 0x1a, 0x48, 0x73,
	0x15, 0xaa, 0x9c, 0x8c, 0x8a, 0xc3, 0x9c, 0x03, 0xbe, 0xf1, 0x50, 0x79, 0x88, 0xc3, 0x37, 0x72,
	0xd4, 0xa9, 0xe7, 0xf1, 0xe3, 0x75, 0xc9, 0x1f, 0x39, 0xbb, 0x1e, 0x75, 0x46, 0xf7, 0x0d, 0x4b,
	0x17, 0xce, 0xac, 0x65, 0xd6, 0x00, 0x81, 0x86, 0xe7, 0x55, 0x79, 0x0c, 0x55, 0x21, 0xcc, 0x85,
	0xee, 0xc2, 0x8a, 0x18, 0x13, 0x8b, 0xfb, 0x70, 0xcb, 0x42, 0x0c, 0x8c, 0x3b, 0x70, 0x37, 0xa1,
	0xe1, 0xe1, 0x91, 0x6d, 0xe9, 0x9a, 0x7b, 0xac, 0x52, 0x34, 0x7f, 0x5d, 0xb5, 0x14, 0x82, 0x29,
	0x7b, 0xf9, 0x5f, 0x15, 0xa0, 0x91, 0x88, 0x88, 0x9d, 0xec, 0x83, 0xf2, 0xb8, 0x5a, 0xa4, 0xea,
	0x75, 0xa5, 0xca, 0x61, 0x54, 0x8d, 0xae, 0x42, 0xf5, 0x00, 0x9b, 0x0e, 0x76, 0x55, 0xdb, 0x32,
	0x83, 0x69, 0x00, 0x06, 0xea, 0x59, 0x26, 0xbd, 0x9c, 0xd0, 0xf1, 0x18, 0xbb, 0xae, 0x66, 0x32,
	0x26, 0xec, 0xf4, 0x52, 0x0b, 0x80, 0x94, 0xcb, 0x7d, 0x58, 0x15, 0xb7, 0x08, 0x35, 0x90, 0x87,
	0x5d, 0x72, 0xad, 0x88, 0xb8, 0x16, 0x97, 0xed, 0x23, 0x58, 0x36, 0x6d, 0x6b, 0x42, 0xd6, 0x92,
	0x1e, 0xd2, 0xb3, 0xb7, 0xfe, 0x52, 0x88, 0x08, 0x88, 0x6f, 0xc3, 0x32, 0xbd, 0x23, 0x62, 0x63,
	0xe3, 0xa9, 0xa1, 0x06, 0xd7, 0x95, 0x06, 0x45, 0xd0, 0xd1, 0xa1, 0x0f, 0x0e, 0x08, 0x2d, 0x75,
	0xe6, 0x62, 0x3d, 0x67, 0x4e, 0x1d, 0x3d, 0x68, 0x29, 0x42, 0xef, 0x6f, 0xf2, 0xb3, 0x17, 0xa7,
	0x8d, 0xe2, 0x1c, 0x4b, 0x02, 0x25, 0x71, 0xc0, 0xc2, 0xeb, 0x1e, 0x81, 0x12, 0x28, 0x25, 0xbb,
	0xee, 0x11, 0x48, 0x11, 0x14, 0xa9, 0xb6, 0xb2, 0xd8, 0x06, 0xfd, 0x2d, 0x7f, 0x0a, 0xeb, 0xbb,
	0x4e, 0x62, 0xde, 0xb8, 0xcd, 0x9e, 0x3b, 0x7b, 0xf2, 0x7f, 0xc8, 0xc1, 0x5a, 0xaa, 0x16, 0xb3,
	0x72, 0xf3, 0xa7, 0x7c, 0x53, 0x70, 0x11, 0x98, 0x0a, 0x45, 0xfe, 0xc0, 0x15, 0x00, 0x2d, 0xfa,
	0xb8, 0x94, 0x4f, 0x75, 0x04, 0x41, 0x1f, 0xc3, 0x0a, 0x71, 0x32, 0xed, 0xb1, 0xea, 0x1a, 0xfb,
	0x6a, 0xc8, 0xa6, 0x18, 0x7c, 0x54, 0xa1, 0xf7, 0xc6, 0x8a, 0xb1, 0xaf, 0x44, 0xee, 0x45, 0x43,
	0x20, 0xa7, 0x9e, 0x06, 0x9b, 0xef, 0x5a, 0x40, 0x3a, 0x20, 0xee, 0xc5, 0xaf, 0x73, 0xb0, 0x9c,
	0xea, 0x06, 0xfa, 0x69, 0x62, 0x63, 0x7c, 0x4f, 0xf0, 0x4e, 0xb2, 0x47, 0x2a, 0xdc, 0x23, 0x1f,
	0xc6, 0xf7, 0xc8, 0x6b, 0x27, 0xd4, 0x8c, 0x6d, 0x97, 0x03, 0xa8, 0xf3, 0x68, 0x30, 0x1f, 0xfa,
	0xb3, 0x87, 0x2a, 0x85, 0xf1, 0xce, 0xc7, 0x27, 0xe9, 0x9f, 0xe5, 0xa0, 0xc6, 0xb9, 0x0e, 0x82,
	0x5b, 0x9d, 0x37, 0x65, 0x1a, 0x9b, 0x44, 0xb6, 0xf1, 0x44, 0x93, 0xb8, 0x09, 0xe5, 0xf0, 0xbb,
	0x05, 0xb6, 0xb3, 0x84, 0xe5, 0xc4, 0x04, 0xb3, 0xbd, 0x43, 0x80, 0xc8, 0x7f, 0xbf, 0x00, 0x97,
	0xb8, 0x99, 0x32, 0xd9, 0x6b, 0x4a, 0x76, 0x41, 0x17, 0xf8, 0x0f, 0x77, 0x00, 0x69, 0xe6, 0x2b,
	0xed, 0xd8, 0x23, 0x07, 0x0d, 0x47, 0x73, 0xb1, 0x3a, 0x0d, 0x35, 0x4c, 0x62, 0x98, 0x2d, 0x86,
	0xd8, 0xc5, 0x3a, 0xba, 0x0f, 0x17, 0x8c, 0x89, 0x65, 0xbb, 0xe4, 0x98, 0x43, 0x0f, 0xf3, 0xc1,
	0x0b, 0x02, 0xfe, 0x66, 0x9d, 0x21, 0x9b, 0x1e, 0x39, 0xd5, 0xb3, 0x57, 0x03, 0xe4, 0xa0, 0x1a,
	0x5c, 0xed, 0x86, 0x4d, 0x44, 0x6e, 0x39, 0xd3, 0xc8, 0xf5, 0x80, 0x82, 0x37, 0xa5, 0x70, 0x2f,
	0x1d, 0x3d, 0x82, 0x8b, 0x61, 0x5f, 0x54, 0xc3, 0xd2, 0x46, 0x3e, 0xd9, 0x19, 0x98, 0x45, 0xe0,
	0x4a, 0xba, 0x1e, 0x12, 0xb4, 0x39, 0x9e, 0x19, 0x06, 0x62, 0xe6, 0x82, 0x0f, 0x80, 0x8c, 0x89,
	0x13, 0x5c, 0xbe, 0xf3, 0x8f, 0x7e, 0x8c, 0x89, 0x43, 0x7d, 0x10, 0xd6, 0x19, 0x0b, 0x1f, 0xf9,
	0x2a, 0xbd, 0x22, 0x9e, 0x38, 0xea, 0x14, 0xfb, 0xae, 0x31, 0xe2, 0x76, 0x69, 0x8d, 0x51, 0x74,
	0xf1, 0x91, 0xff, 0xcc, 0x76, 0xda, 0x13, 0x67, 0x97, 0x62, 0xd1, 0x97, 0x70, 0x49, 0x67, 0x8f,
	0xb4, 0xd4, 0x7d, 0xec, 0xf9, 0x6c, 0x2c, 0xbc, 0x60, 0x88, 0xf9, 0x47, 0x49, 0x1b, 0x9c, 0xe4,
	0x09, 0x66, 0x5f, 0x0b, 0x85, 0x53, 0x20, 0xff, 0xbd, 0x02, 0x6c, 0x66, 0xce, 0x0a, 0x53, 0xa8,
	0xbf, 0x9c, 0x94, 0x3f, 0x93, 0x49, 0xc9, 0xc1, 0x85, 0xcc, 0x49, 0x41, 0x5f, 0x26, 0x2c, 0xd7,
	0x07, 0xa9, 0x9b, 0xae, 0xac, 0xb5, 0x15, 0x5a, 0xaf, 0x47, 0x71, 0xeb, 0x75, 0xfd, 0x94, 0xda,
	0x31, 0x0b, 0xf6, 0x00, 0xd6, 0xf6, 0x3c, 0x4c, 0x83, 0x4f, 0x8e, 0x49, 0x3f, 0x72, 0xf4, 0x4e,
	0xdd, 0x45, 0xee, 0xc3, 0x85, 0x64, 0x9d, 0x53, 0xf6, 0x10, 0xf9, 0x17, 0x00, 0xad, 0xfd, 0x89,
	0xc3, 0x59, 0xdf, 0x86, 0x65, 0x16, 0x78, 0x9f, 0x72, 0x1e, 0xaa, 0xe6, 0xf1, 0x1a, 0x0d, 0x8a,
	0x08, 0x78, 0x37, 0x3d, 0xea, 0xd6, 0x69, 0x47, 0xd4, 0x19, 0x0e, 0x5e, 0x21, 0x50, 0x67, 0x81,
	0x03, 0x69, 0xeb, 0xf2, 0x5f, 0x81, 0x0a, 0x61, 0xcf, 0xa4, 0x78, 0xeb, 0xdc, 0x55, 0x28, 0x12,
	0xee, 0xe8, 0x4e, 0x62, 0x9a, 0x56, 0xe3, 0x57, 0xb3, 0x89, 0x59, 0xf9, 0x30, 0x3e, 0x2b, 0x2b,
	0x71, 0xe2, 0xd8, 0x24, 0xdc, 0x07, 0x68, 0x47, 0xa3, 0x93, 0x92, 0x29, 0x97, 0x21, 0xd3, 0x3d,
	0xa8, 0xb4, 0xc3, 0x1e, 0x9f, 0xa9, 0x86, 0x0a, 0xc5, 0xf6, 0x29, 0xbd, 0x68, 0xbf, 0x4e, 0x2f,
	0xda, 0xc9, 0x5e, 0xfc, 0x69, 0x0e, 0xa4, 0xa4, 0x5e, 0xa0, 0x2f, 0x12, 0xad, 0x09, 0x5b, 0x6b,
	0xb6, 0xde, 0x85, 0x2d, 0xff, 0x24, 0xde, 0xf2, 0xd5, 0xf9, 0x15, 0x63, 0x4f, 0x20, 0x64, 0x28,
	0xe2, 0xfd, 0x89, 0x93, 0xfe, 0xf8, 0x97, 0x8c, 0xba, 0x42, 0x71, 0x84, 0xc6, 0x20, 0x34, 0xa9,
	0x4f, 0x69, 0xdb, 0x94, 0x86, 0xe0, 0xe4, 0x27, 0x7c, 0x5f, 0x1b, 0x6a, 0xee, 0x04, 0xfb, 0xbb,
	0x78, 0xba, 0x8f, 0x5d, 0xef, 0xc0, 0x10, 0x26, 0x29, 0xee, 0xc3, 0xe6, 0xd2, 0x3e, 0xac, 0xdc,
	0xe4, 0x56, 0x38, 0xc9, 0x23, 0x9c, 0xb5, 0xd3, 0x59, 0x84, 0x46, 0x23, 0xc9, 0xe3, 0x54, 0xa3,
	0x91, 0x2d, 0xf8, 0x59, 0x8d, 0x46, 0xa6, 0xc8, 0xc1, 0x4c, 0xff, 0x02, 0xae, 0x74, 0x6c, 0x6b,
	0xd2, 0x21, 0xde, 0xc3, 0x6b, 0xba, 0xa0, 0x67, 0x38, 0x40, 0xc8, 0xff, 0x2d, 0x07, 0x97, 0xe7,
	0xf1, 0xff, 0x4d, 0x3a, 0xab, 0x99, 0x6e, 0x7e, 0x31, 0xdb, 0xcd, 0x7f, 0x0c, 0x9b, 0x29, 0x5a,
	0x57, 0xc5, 0x47, 0x8e, 0xe1, 0x86, 0x87, 0x94, 0xf5, 0x44, 0x25, 0xb7, 0xc5, 0xd0, 0xf2, 0x3f,
	0xc8, 0xc1, 0xc6, 0xbc, 0x0e, 0xa2, 0x6f, 0x12, 0xf3, 0x2a, 0x5c, 0xb6, 0x9c, 0x3c, 0xe8, 0xe1,
	0xd4, 0x7e, 0x19, 0x9f, 0xda, 0x9b, 0xa7, 0x33, 0x88, 0xcd, 0xee, 0xbf, 0x5d, 0x80, 0x45, 0xee,
	0x7f, 0xa2, 0xe7, 0xb0, 0x32, 0x75, 0xd4, 0xd4, 0x93, 0x0a, 0x26, 0xd9, 0xa5, 0x13, 0xdc, 0x64,
	0x65, 0x79, 0x9a, 0x72, 0xd0, 0x3f, 0x09, 0x7b, 0x96, 0x7a, 0x10, 0x13, 0xf3, 0xa2, 0xc3, 0x8e,
	0xdc, 0x09, 0x3a, 0x92, 0x7a, 0x0a, 0x23, 0xfa, 0xc7, 0xc1, 0xca, 0x4f, 0xbe, 0xd3, 0x29, 0x9e,
	0xf9, 0x9d, 0xce, 0x77, 0xb0, 0x1e, 0x9c, 0xad, 0xf9, 0x56, 0xc9, 0xdf, 0xa5, 0x79, 0xfc, 0x35,
	0xcc, 0xd5, 0x53, 0xb6, 0x54, 0xe5, 0x82, 0x9b, 0xb9, 0xb1, 0x3f, 0x03, 0x34, 0xf3, 0x70, 0xb4,
	0x11, 0x31, 0xeb, 0x5c, 0x4a, 0xbe, 0x87, 0x48, 0x1a, 0x34, 0x45, 0x9a, 0x25, 0xed, 0xe8, 0x23,
	0xa8, 0xb3, 0xb8, 0xa2, 0x6a, 0x1a, 0x53, 0xc3, 0xf7, 0x78, 0xb0, 0x45, 0xe8, 0x9d, 0xf0, 0x62,
	0x42, 0xa9, 0x39, 0x51, 0xc1, 0x8b, 0xba, 0xe7, 0xd3, 0x45, 0xad, 0x4e, 0xc3, 0x55, 0xcd, 0x5f,
	0xd6, 0x5c, 0x3d, 0x65, 0xf1, 0xf3, 0xee, 0xa5, 0x4c, 0x90, 0x06, 0x97, 0xc8, 0xb9, 0x5a, 0x65,
	0x27, 0xee, 0x39, 0x0f, 0x6f, 0xe4, 0xd3, 0xd5, 0x4f, 0xd9, 0x30, 0xe7, 0xad, 0x86, 0x4f, 0xa0,
	0xa2, 0xe9, 0xba, 0x70, 0xb1, 0x17, 0xbb, 0xdb, 0xe1, 0x5f, 0xb6, 0x7b, 0x4a, 0x59, 0xe3, 0xbf,
	0xe4, 0x56, 0x98, 0x59, 0x42, 0x70, 0x64, 0xb8, 0x09, 0x08, 0x8c, 0x05, 0x2f, 0xa2, 0x8b, 0x50,
	0xa6, 0x77, 0x20, 0x53, 0xed, 0x88, 0xdb, 0xa1, 0x45, 0x52, 0xde, 0xd5, 0x8e, 0xe4, 0x6d, 0xfa,
	0x3d, 0x44, 0xdc, 0xb7, 0x79, 0x7d, 0x2e, 0x3f, 0x40, 0x39, 0xe0, 0x82, 0xee, 0x25, 0xd6, 0xf5,
	0x46, 0xba, 0x1b, 0x09, 0xf5, 0xff, 0x38, 0xbe, 0x8e, 0xd7, 0xd3, 0x15, 0x62, 0xeb, 0x76, 0x06,
	0x25, 0xfe, 0xec, 0xf2, 0x12, 0x54, 0x0c, 0x47, 0x8d, 0xbd, 0x22, 0x2a, 0x1b, 0xc1, 0x9b, 0xcc,
	0x1b, 0xd0, 0x98, 0x6a, 0xde, 0x0f, 0xdc, 0x89, 0x17, 0x2e, 0x24, 0xeb, 0x04, 0xcc, 0x1c, 0xf8,
	0x5d, 0xc3, 0x4a, 0xd1, 0x69, 0x47, 0xfc, 0xda, 0x4d, 0xa4, 0xd3, 0x8e, 0xe4, 0x3f, 0xc9, 0x01,
	0x44, 0x5f, 0x6b, 0xbe, 0xdd, 0x0f, 0x48, 0x09, 0xcc, 0x34, 0x3c, 0x9f, 0xbe, 0x52, 0xaf, 0x28,
	0xf4, 0x37, 0xfd, 0xb4, 0x37, 0x9e, 0x4a, 0x42, 0x4a, 0xae, 0x82, 0x28, 0x7f, 0x84, 0xac, 0x40,
	0x79, 0x57, 0xf3, 0x47, 0x07, 0x44, 0xb6, 0x07, 0x00, 0xf4, 0xc9, 0xf9, 0x9c, 0x2f, 0xed, 0x29,
	0x1d, 0xfb, 0xd2, 0x7e, 0x1a, 0xfc, 0xcc, 0xfc, 0xac, 0x75, 0x04, 0xb5, 0xc4, 0x71, 0xa7, 0xca,
	0x47, 0x49, 0x60, 0x2c, 0xac, 0x6f, 0x91, 0x98, 0xf2, 0x07, 0x33, 0xfc, 0x8d, 0xd6, 0xa0, 0x24,
	0x9c, 0xa7, 0xea, 0x0a, 0x2f, 0xc9, 0xff, 0x69, 0x01, 0x60, 0xcb, 0xb6, 0x74, 0x83, 0x99, 0x92,
	0xfb, 0x00, 0xdc, 0x00, 0x44, 0xdf, 0xcb, 0xa2, 0x84, 0xec, 0x03, 0xec, 0x2b, 0x15, 0x46, 0x45,
	0xba, 0xfb, 0x13, 0xa8, 0x85, 0xd7, 0x9c, 0xa4, 0x52, 0x7e, 0x6e, 0xa5, 0xf0, 0xed, 0x33, 0xa9,
	0xf6, 0x3b, 0xb0, 0x94, 0x38, 0xe8, 0xa5, 0xcd, 0xaf, 0xd0, 0x21, 0xa5, 0xa6, 0x89, 0x63, 0xf1,
	0x00, 0xaa, 0x41, 0x6d, 0xd2, 0x66, 0x71, 0xbe, 0xa0, 0xac, 0x1a, 0x69, 0xf1, 0xf3, 0x30, 0x01,
	0x94, 0x7f, 0xac, 0x06, 0x01, 0xfa, 0xec, 0x5a, 0xb5, 0x90, 0x90, 0x54, 0xfc, 0x0a, 0x96, 0xc9,
	0x29, 0x2e, 0x5e, 0xb9, 0x34, 0xb7, 0x72, 0x03, 0x1f, 0xf9, 0x5b, 0x62, 0xfd, 0xab, 0x50, 0x75,
	0x9d, 0x1f, 0x0c, 0x62, 0xb1, 0x66, 0x26, 0x7b, 0x9d, 0xb8, 0xa0, 0x80, 0xcb, 0xbe, 0x3a, 0x9c,
	0x99, 0x3e, 0xfa, 0x12, 0x20, 0xfa, 0x92, 0x8d, 0xbf, 0x80, 0x12, 0xae, 0x2d, 0xa3, 0xf9, 0xe1,
	0x86, 0x93, 0x2a, 0x4f, 0xf8, 0xa1, 0x1b, 0x7a, 0x02, 0x2b, 0x26, 0x31, 0x9a, 0x09, 0x09, 0x2b,
	0x73, 0x25, 0x5c, 0xa6, 0xe4, 0x31, 0x19, 0x6f, 0x82, 0x14, 0x1d, 0x55, 0x2d, 0x95, 0x2e, 0x07,
	0xa0, 0xcb, 0xa1, 0x6e, 0xf1, 0x13, 0xaa, 0xd5, 0x21, 0xeb, 0xe2, 0x1e, 0x54, 0x83, 0x57, 0x8b,
	0xaa, 0x61, 0x6d, 0x54, 0x93, 0x4b, 0x83, 0xc7, 0x8a, 0x2a, 0xfc, 0xd9, 0x62, 0xdb, 0x92, 0x0f,
	0xa0, 0x12, 0x8a, 0x8d, 0x56, 0xa0, 0xc1, 0xbf, 0x79, 0xf9, 0xbe, 0x1f, 0x7e, 0x7a, 0xb1, 0x0e,
	0x2b, 0x02, 0xb0, 0xdd, 0x1d, 0xb6, 0x94, 0x6e, 0xb3, 0x23, 0xe5, 0x12, 0x88, 0xd6, 0x4b, 0x8e,
	0xc8, 0xa3, 0x55, 0x90, 0x04, 0x04, 0xff, 0x7a, 0x4a, 0xf6, 0xa0, 0x11, 0x76, 0xaa, 0xc9, 0xd2,
	0x98, 0x7d, 0x05, 0x55, 0x8d, 0xed, 0xb5, 0xc2, 0xa2, 0xb9, 0x2c, 0x8e, 0x6d, 0x8c, 0x9e, 0xad,
	0x1b, 0x2d, 0xfc, 0x8d, 0xae, 0x41, 0x35, 0x18, 0x55, 0x23, 0xfc, 0xc8, 0x50, 0x04, 0xc9, 0xbf,
	0x0b, 0x95, 0x5d, 0xac, 0xf3, 0xe6, 0xbe, 0xc8, 0x6a, 0x6e, 0x5d, 0xbc, 0xc0, 0xd4, 0xe7, 0x34,
	0xb4, 0x0a, 0x0b, 0x87, 0x9a, 0x39, 0x63, 0x26, 0xa0, 0xa0, 0xb0, 0x82, 0xac, 0x42, 0xa3, 0xe9,
	0xf5, 0x5d, 0xec, 0x60, 0x2b, 0x68, 0x42, 0x82, 0x82, 0xe6, 0x59, 0xdc, 0x8d, 0x27, 0x3f, 0xc9,
	0xda, 0x26, 0x14, 0x5a, 0x78, 0x9b, 0xc7, 0x4a, 0x48, 0x86, 0x3a, 0xf1, 0x0b, 0x4c, 0x3c, 0xf6,
	0xd5, 0xa9, 0xed, 0x05, 0x9f, 0x78, 0x56, 0x67, 0x1e, 0xee, 0xe0, 0xb1, 0xbf, 0x6b, 0x7b, 0xbe,
	0xfc, 0xbb, 0x50, 0xe7, 0x1f, 0x10, 0x70, 0xf6, 0x27, 0x7e, 0x64, 0xe6, 0x61, 0x73, 0xcc, 0x1d,
	0x5e, 0xfa, 0x1b, 0xbd, 0x0b, 0x95, 0x99, 0x35, 0x3a, 0xd0, 0xac, 0x49, 0xe8, 0xeb, 0x46, 0x00,
	0xf9, 0x26, 0x34, 0x3a, 0xf4, 0xe6, 0xc4, 0xc5, 0x63, 0xce, 0x3e, 0xec, 0x26, 0xbf, 0x8f, 0x64,
	0xdd, 0xfc, 0xcf, 0x05, 0x58, 0x64, 0x04, 0x5e, 0xf4, 0x2c, 0x97, 0x0d, 0x4e, 0xda, 0xb4, 0x53,
	0x65, 0x62, 0xd4, 0xfc, 0x59, 0x2e, 0xe7, 0xfd, 0x39, 0x54, 0xa2, 0x77, 0x06, 0xf9, 0xe4, 0x7b,
	0xdc, 0xc4, 0x4c, 0x2b, 0x11, 0x2d, 0xfa, 0x00, 0x0a, 0x53, 0x2e, 0x7f, 0xec, 0xf0, 0x19, 0xce,
	0x96, 0x42, 0xf0, 0xe8, 0x0b, 0x00, 0x62, 0x74, 0xd8, 0x6c, 0x70, 0x9b, 0x73, 0x31, 0x66, 0xae,
	0xc4, 0x89, 0xa2, 0xa6, 0x87, 0x01, 0xd0, 0x57, 0x50, 0x8f, 0x59, 0x10, 0x6e, 0x7a, 0x4e, 0x90,
	0xae, 0x26, 0x1a, 0x11, 0x74, 0x1f, 0x16, 0xf9, 0xf7, 0x1f, 0xdc, 0xee, 0x08, 0x2a, 0x15, 0x9b,
	0x3e, 0x25, 0xa0, 0x23, 0xc2, 0xf2, 0x7b, 0x2c, 0x17, 0x8f, 0xb9, 0x1f, 0x77, 0x51, 0x74, 0x92,
	0x62, 0xf3, 0x12, 0x5c, 0x71, 0xb9, 0x78, 0x8c, 0x9e, 0x40, 0x23, 0x61, 0x4e, 0xb8, 0x03, 0x77,
	0x82, 0xb8, 0x4b, 0x71, 0x8b, 0x22, 0xff, 0x2a, 0x07, 0x95, 0x30, 0x73, 0x40, 0xe6, 0x67, 0xf4,
	0x9f, 0x01, 0x8c, 0x42, 0xbb, 0xc6, 0x67, 0x6b, 0x35, 0xcb, 0xe6, 0x29, 0x02, 0x1d, 0xfa, 0x08,
	0x16, 0x99, 0x5a, 0x78, 0x7c, 0xb6, 0xc4, 0x17, 0xd3, 0x0c, 0xa1, 0x04, 0x14, 0xf2, 0xb7, 0x50,
	0xe2, 0xae, 0x77, 0x96, 0x00, 0x9f, 0x02, 0xc4, 0xd2, 0x95, 0x14, 0xe6, 0xe5, 0x3d, 0x10, 0xc8,
	0x68, 0xf4, 0x21, 0xf9, 0xae, 0xf8, 0xad, 0x66, 0x09, 0x88, 0xa5, 0x14, 0x29, 0x9e, 0x21, 0xa5,
	0xc8, 0x92, 0x8e, 0xc7, 0xda, 0xcc, 0xf4, 0x83, 0xe5, 0xb2, 0x70, 0xd2, 0x72, 0xa9, 0x73, 0x62,
	0x56, 0x94, 0x0f, 0xa1, 0x4e, 0xb0, 0xd1, 0x67, 0xaa, 0xbf, 0x9d, 0x44, 0x28, 0xf2, 0xdf, 0xce,
	0x41, 0x41, 0xb1, 0x35, 0xb4, 0x04, 0x79, 0x2d, 0x08, 0x23, 0xe5, 0x35, 0x9a, 0x95, 0x94, 0xf9,
	0x15, 0x26, 0x0e, 0xdc, 0xc5, 0x08, 0x40, 0xcc, 0xdc, 0x54, 0xa3, 0x28, 0xe6, 0x21, 0xf2, 0x92,
	0xf0, 0x94, 0xbd, 0x18, 0x7b, 0xca, 0x1e, 0x7c, 0x79, 0x93, 0xda, 0xe6, 0x95, 0xfe, 0xf3, 0x76,
	0xf4, 0x49, 0x84, 0xfc, 0xaf, 0x73, 0x50, 0x78, 0xe1, 0x8e, 0x33, 0xa7, 0xf1, 0x3a, 0xe4, 0x5d,
	0x5d, 0xd0, 0xce, 0xf4, 0x4b, 0x9d, 0xbc, 0xab, 0xa3, 0xfb, 0x50, 0xe1, 0x6f, 0xd1, 0x5d, 0x9f,
	0x7f, 0xea, 0x38, 0xe7, 0x59, 0x0f, 0x23, 0x53, 0x68, 0xfa, 0x0f, 0xfe, 0xfe, 0xdd, 0xf5, 0xf9,
	0x3c, 0xcf, 0xa9, 0xc2, 0xc8, 0x14, 0x9f, 0x8c, 0x16, 0x4f, 0xba, 0x56, 0x57, 0xf2, 0x86, 0x2e,
	0xff, 0x3a, 0x07, 0xab, 0xdb, 0x6c, 0x3e, 0xe9, 0x1c, 0x6f, 0x1b, 0x9e, 0xaf, 0x59, 0x23, 0x4c,
	0x93, 0x86, 0x05, 0x71, 0x71, 0x66, 0x4a, 0x75, 0x8e, 0xe2, 0x63, 0x7d, 0x21, 0x40, 0xa7, 0xea,
	0xd1, 0xdb, 0xe2, 0x8c, 0x7a, 0x6c, 0x32, 0x2e, 0x04, 0xe8, 0x58, 0x3d, 0xf9, 0x7f, 0x15, 0xa1,
	0xc4, 0x92, 0xd8, 0xa6, 0x66, 0x34, 0xf6, 0x7a, 0x29, 0x1f, 0x7f, 0xbd, 0x44, 0xfc, 0x22, 0xe2,
	0x67, 0x60, 0x8b, 0x5d, 0x6e, 0x17, 0x98, 0x5f, 0xc4, 0x40, 0xf4, 0x72, 0xfb, 0x43, 0x90, 0x38,
	0x01, 0xdf, 0x83, 0xf8, 0x9a, 0xa8, 0x28, 0x0d, 0x06, 0x6f, 0x06, 0x60, 0xfa, 0xd5, 0x1e, 0xf1,
	0x3c, 0x88, 0x02, 0x2e, 0x5c, 0x2b, 0xdc, 0xaa, 0x2b, 0x61, 0x19, 0xdd, 0x99, 0x7b, 0x3e, 0x2e,
	0x67, 0x9c, 0x81, 0x7f, 0x31, 0xff, 0x98, 0xbe, 0xf8, 0x3a, 0x71, 0xf3, 0x39, 0x87, 0xf5, 0x21,
	0xac, 0x05, 0x2b, 0x36, 0x31, 0xc6, 0xcc, 0xc8, 0x5e, 0x89, 0x2d, 0xb6, 0xd4, 0xe4, 0x2a, 0xab,
	0x7a, 0xd6, 0x94, 0x7f, 0x49, 0x5f, 0x8f, 0x8c, 0xb1, 0x8e, 0x5d, 0xf6, 0xfe, 0xa9, 0x92, 0xdc,
	0x26, 0xb6, 0x44, 0xb4, 0x12, 0xa7, 0xce, 0xfc, 0xa0, 0x05, 0x5e, 0xfb, 0x83, 0x96, 0x64, 0x68,
	0xa4, 0x7a, 0xe6, 0xd0, 0xc8, 0x75, 0xfe, 0x58, 0xc1, 0xb7, 0x55, 0x1d, 0x1f, 0x1a, 0x23, 0xcc,
	0x1f, 0xd0, 0xd7, 0x08, 0x74, 0x68, 0x6f, 0x53, 0x98, 0x6c, 0x43, 0x3d, 0xd6, 0x8b, 0x13, 0x02,
	0x74, 0xf1, 0xaf, 0x20, 0xf3, 0xa9, 0xaf, 0x20, 0xaf, 0xc3, 0x12, 0x8b, 0x4f, 0xa8, 0x9a, 0xa7,
	0x86, 0x67, 0xbf, 0xba, 0x52, 0x63, 0xd0, 0xa6, 0x47, 0x7c, 0x5d, 0xb9, 0x05, 0xe5, 0xc0, 0x56,
	0x9c, 0xe0, 0x17, 0x25, 0xde, 0x68, 0xe4, 0x93, 0x6f, 0x34, 0xe4, 0xff, 0x52, 0x84, 0x0a, 0xe1,
	0xc3, 0x8e, 0xf8, 0xd1, 0xfb, 0x97, 0xdc, 0xb9, 0xde, 0xbf, 0xe4, 0xcf, 0xfe, 0xfe, 0x85, 0x2c,
	0xc7, 0x99, 0xc3, 0xfd, 0xb2, 0xfc, 0xcc, 0x61, 0xa2, 0x8e, 0x6c, 0x57, 0x57, 0x0d, 0xe7, 0xf0,
	0x33, 0x1e, 0x75, 0x04, 0x06, 0x6a, 0x3b, 0x87, 0x9f, 0xc5, 0x09, 0x1e, 0x72, 0x63, 0x13, 0x11,
	0x3c, 0xa4, 0xa9, 0xdb, 0xd8, 0x01, 0x91, 0x72, 0xe0, 0x0f, 0x52, 0x18, 0x28, 0xe0, 0x10, 0x11,
	0x3c, 0xe4, 0x6f, 0x1d, 0x22, 0x82, 0x87, 0xc4, 0x5c, 0x7b, 0xd8, 0x35, 0x34, 0x93, 0xbf, 0x6d,
	0xe0, 0x25, 0xf4, 0x3e, 0xd4, 0x83, 0x18, 0x2a, 0xe3, 0x5d, 0xa1, 0x8e, 0x70, 0x2d, 0x00, 0x52,
	0xee, 0x09, 0xa2, 0x87, 0x54, 0x4b, 0xe3, 0x44, 0x0f, 0x69, 0x02, 0x0d, 0xca, 0x53, 0xa5, 0xef,
	0x37, 0x98, 0x22, 0x16, 0x94, 0x1a, 0x03, 0x76, 0x29, 0x8c, 0xc8, 0x39, 0xd2, 0x46, 0x07, 0x98,
	0x3f, 0xd6, 0xaa, 0x51, 0x12, 0xa0, 0x20, 0xfa, 0x40, 0x0b, 0x7d, 0x00, 0x4b, 0x21, 0x01, 0x4d,
	0x5d, 0x42, 0x1f, 0xa5, 0x16, 0x94, 0x7a, 0x40, 0xc3, 0xf2, 0x99, 0x5c, 0x81, 0x2a, 0x7f, 0x4c,
	0xa0, 0x6b, 0xbe, 0x46, 0x3f, 0xdc, 0x28, 0x28, 0x15, 0xfa, 0x90, 0x60, 0x5b, 0xf3, 0x35, 0xe2,
	0xf0, 0x62, 0xd7, 0xb5, 0x5d, 0xfa, 0x1a, 0xb5, 0xa0, 0xb0, 0x02, 0x7a, 0x0f, 0xb8, 0x34, 0xea,
	0x8f, 0x33, 0xec, 0x1e, 0xd3, 0xf7, 0xa6, 0x05, 0xa5, 0xca, 0x60, 0xdf, 0x12, 0x10, 0x9b, 0x0a,
	0x0f, 0xfb, 0x9c, 0x62, 0x99, 0x09, 0x48, 0x41, 0x94, 0x40, 0xfe, 0x1e, 0x8a, 0x8a, 0xf3, 0x83,
	0x11, 0xee, 0x73, 0xb9, 0x93, 0xf7, 0xb9, 0x13, 0x2e, 0x59, 0x42, 0xe5, 0x0c, 0x82, 0x3c, 0xff,
	0x98, 0xe5, 0x49, 0xeb, 0xd8, 0x93, 0x0e, 0x3e, 0xc4, 0x66, 0x94, 0xb6, 0x6b, 0xc1, 0x24, 0x65,
	0xee, 0x93, 0x0b, 0x31, 0xb7, 0x34, 0xf1, 0x5d, 0x56, 0x60, 0x15, 0x64, 0x05, 0x16, 0x68, 0x19,
	0x55, 0x60, 0xa1, 0xdf, 0xec, 0xb6, 0xb7, 0xa4, 0x77, 0xc8, 0xcf, 0xa7, 0xcd, 0x21, 0x3d, 0xe7,
	0x55, 0x60, 0xa1, 0xa5, 0x28, 0x3d, 0x45, 0xca, 0xa3, 0x32, 0x14, 0xbf, 0x6b, 0x2a, 0x5d, 0xa9,
	0x40, 0xdf, 0xaf, 0x76, 0x9f, 0xf6, 0xa4, 0x22, 0x41, 0x6f, 0xb7, 0x9e, 0xec, 0xed, 0x48, 0x0b,
	0xe4, 0xe7, 0x50, 0x69, 0x6e, 0xb5, 0xa4, 0xd2, 0xed, 0x6d, 0xa8, 0x84, 0x59, 0x0b, 0x11, 0x40,
	0x69, 0xa7, 0xd3, 0x7b, 0xd2, 0xec, 0x30, 0xc6, 0xec, 0x44, 0x48, 0x1f, 0xa4, 0x36, 0xb7, 0x7f,
	0xa6, 0xb6, 0xbb, 0x52, 0x9e, 0xa6, 0xa3, 0xd8, 0xfe, 0x99, 0xda, 0xdb, 0x1b, 0xb2, 0x44, 0x1b,
	0x2f, 0x94, 0xa7, 0x52, 0xf1, 0x76, 0x27, 0xf6, 0x45, 0x31, 0xb3, 0xd2, 0x48, 0x82, 0x5a, 0xa7,
	0xd7, 0x7b, 0xbe, 0xd7, 0x57, 0x5b, 0x2f, 0x9b, 0x5b, 0x43, 0xe9, 0x1d, 0xb4, 0x0c, 0x75, 0x0e,
	0xe9, 0xf4, 0xba, 0x3b, 0x2d, 0x85, 0x65, 0x9d, 0xe0, 0xa0, 0xc1, 0xb3, 0x9e, 0x32, 0x6c, 0x29,
	0x52, 0xfe, 0xf6, 0xaf, 0x72, 0x50, 0x15, 0x42, 0x4f, 0x42, 0xc6, 0xcd, 0x77, 0x50, 0x0d, 0xca,
	0xdd, 0x56, 0x7b, 0xe7, 0xd9, 0x93, 0x1e, 0xa9, 0xbd, 0x08, 0x85, 0x61, 0x73, 0x87, 0x8b, 0x35,
	0x50, 0xfb, 0xcd, 0xe1, 0x33, 0xa9, 0x80, 0xea, 0x50, 0xd9, 0xea, 0xed, 0xee, 0xee, 0x75, 0xdb,
	0xc3, 0xef, 0xa5, 0x22, 0x69, 0xb5, 0xf5, 0x72, 0xa8, 0x46, 0xa0, 0x05, 0x72, 0x80, 0xee, 0x34,
	0x95, 0x9d, 0x96, 0x00, 0x2c, 0x31, 0xd6, 0x2f, 0x87, 0xea, 0xb3, 0x5e, 0x5f, 0x5a, 0xbc, 0xfd,
	0x21, 0x54, 0xc2, 0x20, 0x13, 0xfd, 0xa0, 0xa0, 0xfb, 0xbd, 0xf8, 0x65, 0x01, 0x40, 0xa9, 0xdd,
	0x7d, 0xd1, 0x52, 0x86, 0x52, 0xfe, 0xf6, 0x6d, 0x90, 0x92, 0x61, 0x23, 0x54, 0x82, 0x7c, 0xeb,
	0x5b, 0xe9, 0x1d, 0xf2, 0x77, 0xa7, 0x25, 0xe5, 0xc8, 0xdf, 0x4e, 0x4b, 0xca, 0xdf, 0xfe, 0x84,
	0x3f, 0x15, 0xe3, 0xa7, 0xad, 0x58, 0x5a, 0xd1, 0xe6, 0xd6, 0x56, 0xab, 0x3f, 0x64, 0xcc, 0x95,
	0xd6, 0xcf, 0xe8, 0x4b, 0xe3, 0xdb, 0x7b, 0xb0, 0x92, 0x71, 0xbc, 0x26, 0x9d, 0x0a, 0x65, 0x57,
	0x9b, 0xdb, 0xdb, 0xd2, 0x3b, 0xe4, 0x38, 0x1f, 0x81, 0x94, 0xd6, 0x6e, 0xef, 0x05, 0x69, 0xf8,
	0x02, 0x2c, 0x8b, 0x50, 0xfe, 0x31, 0xc4, 0xed, 0x8f, 0xa1, 0x1e, 0x3b, 0x46, 0x93, 0x11, 0xdc,
	0x6d, 0x6d, 0xab, 0xbb, 0x3d, 0xc2, 0xaa, 0x01, 0x55, 0x52, 0x08, 0xc8, 0x73, 0xb7, 0x1f, 0x42,
	0x23, 0xe1, 0x6e, 0xc7, 0x9f, 0x49, 0x93, 0xe1, 0xd8, 0xed, 0xf7, 0x14, 0x2e, 0x7d, 0xeb, 0x25,
	0xfd, 0x9d, 0x7f, 0xf0, 0x2f, 0xaf, 0x42, 0x79, 0x87, 0xe8, 0x77, 0xd3, 0x31, 0xd0, 0x97, 0x50,
	0x0e, 0xfe, 0x61, 0x00, 0xba, 0x18, 0x3b, 0x24, 0x88, 0xff, 0x44, 0x60, 0x73, 0x2d, 0x65, 0x95,
	0x5b, 0x53, 0xc7, 0x3f, 0x46, 0x8f, 0x61, 0x91, 0xff, 0xcb, 0x00, 0xb4, 0x21, 0xd6, 0x16, 0xff,
	0x8b, 0xc0, 0x09, 0x95, 0x4b, 0xec, 0x9f, 0x09, 0x20, 0x61, 0x3b, 0x8f, 0xfd, 0xbf, 0x81, 0xcd,
	0x8d, 0x34, 0x82, 0x9b, 0xa7, 0xc7, 0xb0, 0xc8, 0xb3, 0x84, 0xa3, 0x44, 0x28, 0x38, 0x4a, 0x6f,
	0x3e, 0xb7, 0xe5, 0x26, 0x40, 0x94, 0x17, 0x1c, 0x5d, 0x12, 0x3d, 0x93, 0xc4, 0xbf, 0x1a, 0x98,
	0xcb, 0x62, 0x0b, 0xca, 0x41, 0xae, 0x6c, 0x71, 0xe0, 0x12, 0xff, 0x5e, 0x60, 0x73, 0x33, 0x0b,
	0xc5, 0xba, 0x70, 0x2f, 0x87, 0x76, 0x00, 0xa2, 0xd4, 0xdf, 0xa2, 0x1c, 0xa9, 0x7f, 0x0a, 0xb0,
	0xf9, 0x6e, 0x36, 0x92, 0x8f, 0xc6, 0xd7, 0x50, 0x09, 0x93, 0xe3, 0xa3, 0xcd, 0xf9, 0x19, 0xf3,
	0xe7, 0x76, 0xa7, 0x05, 0x35, 0x31, 0xf5, 0x3d, 0x12, 0x22, 0x49, 0x19, 0x29, 0xf1, 0x4f, 0x1a,
	0xd8, 0x28, 0xd5, 0xbd, 0xd8, 0xa1, 0x54, 0x02, 0xfc, 0x13, 0x06, 0xb6, 0x2a, 0xa4, 0xbf, 0x47,
	0x42, 0xbf, 0xd3, 0x59, 0xf1, 0xe7, 0x32, 0xe9, 0x40, 0x55, 0x48, 0x3f, 0x2f, 0x32, 0x49, 0x27,
	0xc1, 0xdf, 0xbc, 0x3c, 0x07, 0x1b, 0x4e, 0x53, 0x0b, 0x6a, 0x62, 0x46, 0x7a, 0x71, 0x70, 0x32,
	0x32, 0xd5, 0xcf, 0x15, 0xea, 0x39, 0x34, 0x12, 0xd9, 0xe8, 0xd1, 0xb5, 0x2c, 0xd5, 0x3b, 0x13,
	0x33, 0x05, 0xea, 0xb1, 0x5c, 0xed, 0xe8, 0x4a, 0x5a, 0xd3, 0x62, 0x8c, 0xae, 0xce, 0xc5, 0x87,
	0xfd, 0x7c, 0x01, 0x8d, 0x44, 0x26, 0x7a, 0x51, 0xc0, 0xec, 0xdc, 0xf8, 0x9b, 0xef, 0x9d, 0x40,
	0xc1, 0xb5, 0xf3, 0x5b, 0x40, 0xe9, 0x54, 0xf0, 0xe8, 0xfd, 0xd8, 0x28, 0x66, 0x67, 0x5b, 0x9f,
	0xdb, 0x7d, 0x1d, 0x56, 0x32, 0xd2, 0xac, 0xa3, 0xeb, 0xf1, 0x4e, 0xce, 0x61, 0xfa, 0xc1, 0x29,
	0x54, 0xe1, 0x80, 0x7c, 0x07, 0x17, 0x32, 0x13, 0xcc, 0xa3, 0x1b, 0xc9, 0x79, 0x7b, 0x4d, 0xf1,
	0xbf, 0x62, 0xd6, 0x4b, 0xf3, 0x0f, 0x50, 0xfa, 0x22, 0x2b, 0xa8, 0x7c, 0x31, 0x03, 0xc3, 0x47,
	0x34, 0x32, 0x60, 0x84, 0x45, 0xda, 0x80, 0x09, 0x5c, 0x4e, 0x33, 0x60, 0x84, 0xc1, 0xc5, 0xb9,
	0x29, 0xc1, 0x53, 0x06, 0x4c, 0x90, 0xe2, 0x5e, 0x0e, 0xb5, 0xc3, 0x7b, 0x3e, 0x96, 0x1e, 0x5b,
	0xd4, 0xc2, 0xac, 0xbc, 0xd9, 0xf3, 0xa4, 0xb9, 0x95, 0x43, 0x4d, 0x28, 0x07, 0xa9, 0xa5, 0x45,
	0x79, 0x12, 0x39, 0xaf, 0x45, 0x79, 0x52, 0x99, 0xa8, 0x7b, 0x50, 0x13, 0xb3, 0x2b, 0xa3, 0xf4,
	0xc2, 0x8e, 0xb1, 0xba, 0x32, 0x0f, 0x1d, 0x76, 0xef, 0xa7, 0x50, 0x62, 0x29, 0x97, 0x51, 0xfc,
	0xf6, 0x30, 0xca, 0x94, 0x3c, 0x77, 0x78, 0xbf, 0x86, 0x4a, 0x98, 0x7b, 0x59, 0xb4, 0xc8, 0xc9,
	0x84, 0xcc, 0x73, 0x19, 0x7c, 0x03, 0x8b, 0x3c, 0xdd, 0xb2, 0xa8, 0x22, 0xf1, 0x3c, 0xcd, 0x9b,
	0x17, 0x33, 0x30, 0xa1, 0xf4, 0x5f, 0x43, 0x25, 0x4c, 0x66, 0x2a, 0x8a, 0x90, 0xcc, 0xc8, 0x7c,
	0xd2, 0xa6, 0x20, 0xe6, 0x2c, 0x15, 0xc7, 0x33, 0x23, 0xb5, 0xf2, 0x5c, 0x36, 0x6d, 0x80, 0x28,
	0x3f, 0xa8, 0xa8, 0xac, 0xa9, 0xdc, 0xc8, 0xe2, 0x2e, 0x97, 0xce, 0x87, 0x7c, 0x2f, 0x47, 0x36,
	0x07, 0x21, 0xcd, 0xb1, 0x68, 0xd7, 0xd3, 0xd9, 0x8f, 0xe7, 0xca, 0xb3, 0x43, 0x95, 0x56, 0xb8,
	0x74, 0x8d, 0x2b, 0x6d, 0x2a, 0xab, 0xef, 0x5c, 0x46, 0xbb, 0x41, 0x2e, 0x3b, 0x81, 0xd7, 0x7b,
	0x29, 0xcb, 0x70, 0x66, 0x76, 0x7b, 0x2c, 0x0d, 0xb7, 0xc0, 0x2c, 0x61, 0xb3, 0xd3, 0xac, 0xae,
	0xcd, 0x27, 0x48, 0xec, 0x5e, 0x51, 0xd0, 0x3a, 0xbe, 0x7b, 0x25, 0x53, 0xec, 0x9e, 0xbe, 0x7b,
	0x45, 0x9c, 0x52, 0xbb, 0xd7, 0x99, 0x99, 0xf1, 0xdd, 0x2b, 0x62, 0x95, 0xd8, 0xbd, 0x52, 0x8c,
	0xae, 0xce, 0xc5, 0x87, 0xfd, 0x1c, 0xb0, 0xff, 0x1b, 0x93, 0x0c, 0x62, 0x5f, 0xcf, 0x50, 0xfc,
	0x54, 0x26, 0xd9, 0xb9, 0x82, 0x7e, 0x1f, 0xfe, 0x07, 0x99, 0x24, 0xdf, 0x9b, 0xd9, 0x8b, 0xe1,
	0xec, 0xac, 0x27, 0xfc, 0xbf, 0xb5, 0x24, 0x19, 0x7f, 0x90, 0xb5, 0x06, 0xd2, 0x6c, 0x6f, 0x9c,
	0x46, 0x26, 0x0e, 0x4c, 0x46, 0x0e, 0x5d, 0x71, 0x60, 0xe6, 0xa7, 0xd8, 0x3d, 0xc9, 0xf3, 0xe7,
	0xe9, 0x73, 0x13, 0x3b, 0x98, 0x90, 0xb0, 0xf5, 0x74, 0xff, 0x9b, 0xd6, 0x4f, 0x6d, 0x5f, 0x67,
	0x61, 0xc1, 0xb7, 0x2f, 0xca, 0x20, 0x61, 0x05, 0xc5, 0xea, 0x9b, 0x59, 0xa8, 0x70, 0x64, 0x42,
	0x77, 0x35, 0x29, 0x47, 0x2a, 0x03, 0xee, 0x19, 0xdc, 0x55, 0xca, 0x23, 0xed, 0xae, 0x9e, 0x85,
	0x49, 0xe0, 0xbe, 0x53, 0x16, 0x49, 0xf7, 0xfd, 0x2c, 0x0c, 0xf8, 0x7a, 0x0a, 0xb3, 0xd2, 0x26,
	0xd7, 0x53, 0x32, 0xe1, 0x6d, 0x72, 0x3d, 0xa5, 0xd2, 0xd9, 0x32, 0x5b, 0x2b, 0xa4, 0xab, 0x15,
	0x7b, 0x96, 0xce, 0x62, 0x7b, 0x52, 0xcf, 0xc2, 0x6c, 0xae, 0x62, 0xcf, 0x92, 0x29, 0x5e, 0x4f,
	0x54, 0x95, 0x30, 0xdf, 0x6a, 0x4c, 0x55, 0x92, 0x59, 0x58, 0xe7, 0xb2, 0x60, 0xbb, 0xf8, 0x93,
	0xa9, 0x93, 0xd8, 0xc5, 0xa3, 0x0c, 0xa4, 0xa7, 0xef, 0xe2, 0xa4, 0x76, 0x6a, 0x17, 0x3f, 0x03,
	0x03, 0xb6, 0x61, 0x05, 0x21, 0xa4, 0xc4, 0x86, 0x95, 0x88, 0x2c, 0xcd, 0x63, 0xb2, 0x5f, 0xa2,
	0xe5, 0x4f, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x9e, 0xa6, 0xe5, 0x04, 0x4e, 0x70, 0x00,
	0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// GobgpApiClient is the client API for GobgpApi service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type GobgpApiClient interface {
	StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error)
	AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error)
	UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error)
	ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error)
	AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListPeerGroup(ctx context.Context, in *ListPeerGroupRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerGroupClient, error)
	UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error)
	AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListDynamicNeighbor(ctx context.Context, in *ListDynamicNeighborRequest, opts ...grpc.CallOption) (GobgpApi_ListDynamicNeighborClient, error)
	DeleteDynamicNeighbor(ctx context.Context, in *DeleteDynamicNeighborRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	AddPath(ctx context.Context, in *AddPathRequest, opts ...grpc.CallOption) (*AddPathResponse, error)
	DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error)
	AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error)
	GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error)
	MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error)
	AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error)
	AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error)
	SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error)
	AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error)
	AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error)
	SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error)
	EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error)
	EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	SetLogLevel(ctx context.Context, in *SetLogLevelRequest, opts ...grpc.CallOption) (*empty.Empty, error)
}

type gobgpApiClient struct {
	cc *grpc.ClientConn
}

func NewGobgpApiClient(cc *grpc.ClientConn) GobgpApiClient {
	return &gobgpApiClient{cc}
}

func (c *gobgpApiClient) StartBgp(ctx context.Context, in *StartBgpRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/StartBgp", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) StopBgp(ctx context.Context, in *StopBgpRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/StopBgp", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) GetBgp(ctx context.Context, in *GetBgpRequest, opts ...grpc.CallOption) (*GetBgpResponse, error) {
	out := new(GetBgpResponse)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/GetBgp", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) AddPeer(ctx context.Context, in *AddPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeletePeer(ctx context.Context, in *DeletePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListPeer(ctx context.Context, in *ListPeerRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[0], "/gobgpapi.GobgpApi/ListPeer", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListPeerClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListPeerClient interface {
	Recv() (*ListPeerResponse, error)
	grpc.ClientStream
}

type gobgpApiListPeerClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListPeerClient) Recv() (*ListPeerResponse, error) {
	m := new(ListPeerResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) UpdatePeer(ctx context.Context, in *UpdatePeerRequest, opts ...grpc.CallOption) (*UpdatePeerResponse, error) {
	out := new(UpdatePeerResponse)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ResetPeer(ctx context.Context, in *ResetPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetPeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ShutdownPeer(ctx context.Context, in *ShutdownPeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/ShutdownPeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) EnablePeer(ctx context.Context, in *EnablePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/EnablePeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DisablePeer(ctx context.Context, in *DisablePeerRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DisablePeer", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) MonitorPeer(ctx context.Context, in *MonitorPeerRequest, opts ...grpc.CallOption) (GobgpApi_MonitorPeerClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[1], "/gobgpapi.GobgpApi/MonitorPeer", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiMonitorPeerClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_MonitorPeerClient interface {
	Recv() (*MonitorPeerResponse, error)
	grpc.ClientStream
}

type gobgpApiMonitorPeerClient struct {
	grpc.ClientStream
}

func (x *gobgpApiMonitorPeerClient) Recv() (*MonitorPeerResponse, error) {
	m := new(MonitorPeerResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddPeerGroup(ctx context.Context, in *AddPeerGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPeerGroup", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeletePeerGroup(ctx context.Context, in *DeletePeerGroupRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePeerGroup", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListPeerGroup(ctx context.Context, in *ListPeerGroupRequest, opts ...grpc.CallOption) (GobgpApi_ListPeerGroupClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[2], "/gobgpapi.GobgpApi/ListPeerGroup", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListPeerGroupClient{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_ListPeerGroupClient interface {
	Recv() (*ListPeerGroupResponse, error)
	grpc.ClientStream
}

type gobgpApiListPeerGroupClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListPeerGroupClient) Recv() (*ListPeerGroupResponse, error) {
	m := new(ListPeerGroupResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) UpdatePeerGroup(ctx context.Context, in *UpdatePeerGroupRequest, opts ...grpc.CallOption) (*UpdatePeerGroupResponse, error) {
	out := new(UpdatePeerGroupResponse)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/UpdatePeerGroup", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) AddDynamicNeighbor(ctx context.Context, in *AddDynamicNeighborRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDynamicNeighbor", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListDynamicNeighbor(ctx context.Context, in *ListDynamicNeighborRequest, opts ...grpc.CallOption) (GobgpApi_ListDynamicNeighborClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[3], "/gobgpapi.GobgpApi/ListDynamicNeighbor", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListDynamicNeighborClient{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_ListDynamicNeighborClient interface {
	Recv() (*ListDynamicNeighborResponse, error)
	grpc.ClientStream
}

type gobgpApiListDynamicNeighborClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListDynamicNeighborClient) Recv() (*ListDynamicNeighborResponse, error) {
	m := new(ListDynamicNeighborResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) DeleteDynamicNeighbor(ctx context.Context, in *DeleteDynamicNeighborRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteDynamicNeighbor", in, out, 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 := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPath", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeletePath(ctx context.Context, in *DeletePathRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePath", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListPath(ctx context.Context, in *ListPathRequest, opts ...grpc.CallOption) (GobgpApi_ListPathClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[4], "/gobgpapi.GobgpApi/ListPath", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListPathClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListPathClient interface {
	Recv() (*ListPathResponse, error)
	grpc.ClientStream
}

type gobgpApiListPathClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListPathClient) Recv() (*ListPathResponse, error) {
	m := new(ListPathResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddPathStream(ctx context.Context, opts ...grpc.CallOption) (GobgpApi_AddPathStreamClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[5], "/gobgpapi.GobgpApi/AddPathStream", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiAddPathStreamClient{stream}
	return x, nil
}

type GobgpApi_AddPathStreamClient interface {
	Send(*AddPathStreamRequest) error
	CloseAndRecv() (*empty.Empty, error)
	grpc.ClientStream
}

type gobgpApiAddPathStreamClient struct {
	grpc.ClientStream
}

func (x *gobgpApiAddPathStreamClient) Send(m *AddPathStreamRequest) error {
	return x.ClientStream.SendMsg(m)
}

func (x *gobgpApiAddPathStreamClient) CloseAndRecv() (*empty.Empty, error) {
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	m := new(empty.Empty)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) GetTable(ctx context.Context, in *GetTableRequest, opts ...grpc.CallOption) (*GetTableResponse, error) {
	out := new(GetTableResponse)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/GetTable", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) MonitorTable(ctx context.Context, in *MonitorTableRequest, opts ...grpc.CallOption) (GobgpApi_MonitorTableClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[6], "/gobgpapi.GobgpApi/MonitorTable", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiMonitorTableClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_MonitorTableClient interface {
	Recv() (*MonitorTableResponse, error)
	grpc.ClientStream
}

type gobgpApiMonitorTableClient struct {
	grpc.ClientStream
}

func (x *gobgpApiMonitorTableClient) Recv() (*MonitorTableResponse, error) {
	m := new(MonitorTableResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddVrf(ctx context.Context, in *AddVrfRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddVrf", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeleteVrf(ctx context.Context, in *DeleteVrfRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteVrf", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListVrf(ctx context.Context, in *ListVrfRequest, opts ...grpc.CallOption) (GobgpApi_ListVrfClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[7], "/gobgpapi.GobgpApi/ListVrf", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListVrfClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListVrfClient interface {
	Recv() (*ListVrfResponse, error)
	grpc.ClientStream
}

type gobgpApiListVrfClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListVrfClient) Recv() (*ListVrfResponse, error) {
	m := new(ListVrfResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddPolicy(ctx context.Context, in *AddPolicyRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicy", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicy", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListPolicy(ctx context.Context, in *ListPolicyRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[8], "/gobgpapi.GobgpApi/ListPolicy", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListPolicyClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListPolicyClient interface {
	Recv() (*ListPolicyResponse, error)
	grpc.ClientStream
}

type gobgpApiListPolicyClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListPolicyClient) Recv() (*ListPolicyResponse, error) {
	m := new(ListPolicyResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) SetPolicies(ctx context.Context, in *SetPoliciesRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicies", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) AddDefinedSet(ctx context.Context, in *AddDefinedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddDefinedSet", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeleteDefinedSet(ctx context.Context, in *DeleteDefinedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteDefinedSet", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListDefinedSet(ctx context.Context, in *ListDefinedSetRequest, opts ...grpc.CallOption) (GobgpApi_ListDefinedSetClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[9], "/gobgpapi.GobgpApi/ListDefinedSet", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListDefinedSetClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListDefinedSetClient interface {
	Recv() (*ListDefinedSetResponse, error)
	grpc.ClientStream
}

type gobgpApiListDefinedSetClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListDefinedSetClient) Recv() (*ListDefinedSetResponse, error) {
	m := new(ListDefinedSetResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddStatement(ctx context.Context, in *AddStatementRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddStatement", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeleteStatement(ctx context.Context, in *DeleteStatementRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteStatement", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListStatement(ctx context.Context, in *ListStatementRequest, opts ...grpc.CallOption) (GobgpApi_ListStatementClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[10], "/gobgpapi.GobgpApi/ListStatement", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListStatementClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListStatementClient interface {
	Recv() (*ListStatementResponse, error)
	grpc.ClientStream
}

type gobgpApiListStatementClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListStatementClient) Recv() (*ListStatementResponse, error) {
	m := new(ListStatementResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) AddPolicyAssignment(ctx context.Context, in *AddPolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddPolicyAssignment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeletePolicyAssignment(ctx context.Context, in *DeletePolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeletePolicyAssignment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListPolicyAssignment(ctx context.Context, in *ListPolicyAssignmentRequest, opts ...grpc.CallOption) (GobgpApi_ListPolicyAssignmentClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[11], "/gobgpapi.GobgpApi/ListPolicyAssignment", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListPolicyAssignmentClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListPolicyAssignmentClient interface {
	Recv() (*ListPolicyAssignmentResponse, error)
	grpc.ClientStream
}

type gobgpApiListPolicyAssignmentClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListPolicyAssignmentClient) Recv() (*ListPolicyAssignmentResponse, error) {
	m := new(ListPolicyAssignmentResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) SetPolicyAssignment(ctx context.Context, in *SetPolicyAssignmentRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/SetPolicyAssignment", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) AddRpki(ctx context.Context, in *AddRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddRpki", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeleteRpki(ctx context.Context, in *DeleteRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteRpki", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListRpki(ctx context.Context, in *ListRpkiRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[12], "/gobgpapi.GobgpApi/ListRpki", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListRpkiClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListRpkiClient interface {
	Recv() (*ListRpkiResponse, error)
	grpc.ClientStream
}

type gobgpApiListRpkiClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListRpkiClient) Recv() (*ListRpkiResponse, error) {
	m := new(ListRpkiResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) EnableRpki(ctx context.Context, in *EnableRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableRpki", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DisableRpki(ctx context.Context, in *DisableRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableRpki", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ResetRpki(ctx context.Context, in *ResetRpkiRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/ResetRpki", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) ListRpkiTable(ctx context.Context, in *ListRpkiTableRequest, opts ...grpc.CallOption) (GobgpApi_ListRpkiTableClient, error) {
	stream, err := c.cc.NewStream(ctx, &_GobgpApi_serviceDesc.Streams[13], "/gobgpapi.GobgpApi/ListRpkiTable", opts...)
	if err != nil {
		return nil, err
	}
	x := &gobgpApiListRpkiTableClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type GobgpApi_ListRpkiTableClient interface {
	Recv() (*ListRpkiTableResponse, error)
	grpc.ClientStream
}

type gobgpApiListRpkiTableClient struct {
	grpc.ClientStream
}

func (x *gobgpApiListRpkiTableClient) Recv() (*ListRpkiTableResponse, error) {
	m := new(ListRpkiTableResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func (c *gobgpApiClient) EnableZebra(ctx context.Context, in *EnableZebraRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableZebra", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) EnableMrt(ctx context.Context, in *EnableMrtRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/EnableMrt", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DisableMrt(ctx context.Context, in *DisableMrtRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DisableMrt", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) AddBmp(ctx context.Context, in *AddBmpRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/AddBmp", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) DeleteBmp(ctx context.Context, in *DeleteBmpRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/DeleteBmp", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *gobgpApiClient) SetLogLevel(ctx context.Context, in *SetLogLevelRequest, opts ...grpc.CallOption) (*empty.Empty, error) {
	out := new(empty.Empty)
	err := c.cc.Invoke(ctx, "/gobgpapi.GobgpApi/SetLogLevel", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// GobgpApiServer is the server API for GobgpApi service.
type GobgpApiServer interface {
	StartBgp(context.Context, *StartBgpRequest) (*empty.Empty, error)
	StopBgp(context.Context, *StopBgpRequest) (*empty.Empty, error)
	GetBgp(context.Context, *GetBgpRequest) (*GetBgpResponse, error)
	AddPeer(context.Context, *AddPeerRequest) (*empty.Empty, error)
	DeletePeer(context.Context, *DeletePeerRequest) (*empty.Empty, error)
	ListPeer(*ListPeerRequest, GobgpApi_ListPeerServer) error
	UpdatePeer(context.Context, *UpdatePeerRequest) (*UpdatePeerResponse, error)
	ResetPeer(context.Context, *ResetPeerRequest) (*empty.Empty, error)
	ShutdownPeer(context.Context, *ShutdownPeerRequest) (*empty.Empty, error)
	EnablePeer(context.Context, *EnablePeerRequest) (*empty.Empty, error)
	DisablePeer(context.Context, *DisablePeerRequest) (*empty.Empty, error)
	MonitorPeer(*MonitorPeerRequest, GobgpApi_MonitorPeerServer) error
	AddPeerGroup(context.Context, *AddPeerGroupRequest) (*empty.Empty, error)
	DeletePeerGroup(context.Context, *DeletePeerGroupRequest) (*empty.Empty, error)
	ListPeerGroup(*ListPeerGroupRequest, GobgpApi_ListPeerGroupServer) error
	UpdatePeerGroup(context.Context, *UpdatePeerGroupRequest) (*UpdatePeerGroupResponse, error)
	AddDynamicNeighbor(context.Context, *AddDynamicNeighborRequest) (*empty.Empty, error)
	ListDynamicNeighbor(*ListDynamicNeighborRequest, GobgpApi_ListDynamicNeighborServer) error
	DeleteDynamicNeighbor(context.Context, *DeleteDynamicNeighborRequest) (*empty.Empty, error)
	AddPath(context.Context, *AddPathRequest) (*AddPathResponse, error)
	DeletePath(context.Context, *DeletePathRequest) (*empty.Empty, error)
	ListPath(*ListPathRequest, GobgpApi_ListPathServer) error
	AddPathStream(GobgpApi_AddPathStreamServer) error
	GetTable(context.Context, *GetTableRequest) (*GetTableResponse, error)
	MonitorTable(*MonitorTableRequest, GobgpApi_MonitorTableServer) error
	AddVrf(context.Context, *AddVrfRequest) (*empty.Empty, error)
	DeleteVrf(context.Context, *DeleteVrfRequest) (*empty.Empty, error)
	ListVrf(*ListVrfRequest, GobgpApi_ListVrfServer) error
	AddPolicy(context.Context, *AddPolicyRequest) (*empty.Empty, error)
	DeletePolicy(context.Context, *DeletePolicyRequest) (*empty.Empty, error)
	ListPolicy(*ListPolicyRequest, GobgpApi_ListPolicyServer) error
	SetPolicies(context.Context, *SetPoliciesRequest) (*empty.Empty, error)
	AddDefinedSet(context.Context, *AddDefinedSetRequest) (*empty.Empty, error)
	DeleteDefinedSet(context.Context, *DeleteDefinedSetRequest) (*empty.Empty, error)
	ListDefinedSet(*ListDefinedSetRequest, GobgpApi_ListDefinedSetServer) error
	AddStatement(context.Context, *AddStatementRequest) (*empty.Empty, error)
	DeleteStatement(context.Context, *DeleteStatementRequest) (*empty.Empty, error)
	ListStatement(*ListStatementRequest, GobgpApi_ListStatementServer) error
	AddPolicyAssignment(context.Context, *AddPolicyAssignmentRequest) (*empty.Empty, error)
	DeletePolicyAssignment(context.Context, *DeletePolicyAssignmentRequest) (*empty.Empty, error)
	ListPolicyAssignment(*ListPolicyAssignmentRequest, GobgpApi_ListPolicyAssignmentServer) error
	SetPolicyAssignment(context.Context, *SetPolicyAssignmentRequest) (*empty.Empty, error)
	AddRpki(context.Context, *AddRpkiRequest) (*empty.Empty, error)
	DeleteRpki(context.Context, *DeleteRpkiRequest) (*empty.Empty, error)
	ListRpki(*ListRpkiRequest, GobgpApi_ListRpkiServer) error
	EnableRpki(context.Context, *EnableRpkiRequest) (*empty.Empty, error)
	DisableRpki(context.Context, *DisableRpkiRequest) (*empty.Empty, error)
	ResetRpki(context.Context, *ResetRpkiRequest) (*empty.Empty, error)
	ListRpkiTable(*ListRpkiTableRequest, GobgpApi_ListRpkiTableServer) error
	EnableZebra(context.Context, *EnableZebraRequest) (*empty.Empty, error)
	EnableMrt(context.Context, *EnableMrtRequest) (*empty.Empty, error)
	DisableMrt(context.Context, *DisableMrtRequest) (*empty.Empty, error)
	AddBmp(context.Context, *AddBmpRequest) (*empty.Empty, error)
	DeleteBmp(context.Context, *DeleteBmpRequest) (*empty.Empty, error)
	SetLogLevel(context.Context, *SetLogLevelRequest) (*empty.Empty, error)
}

// UnimplementedGobgpApiServer can be embedded to have forward compatible implementations.
type UnimplementedGobgpApiServer struct {
}

func (*UnimplementedGobgpApiServer) StartBgp(ctx context.Context, req *StartBgpRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method StartBgp not implemented")
}
func (*UnimplementedGobgpApiServer) StopBgp(ctx context.Context, req *StopBgpRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method StopBgp not implemented")
}
func (*UnimplementedGobgpApiServer) GetBgp(ctx context.Context, req *GetBgpRequest) (*GetBgpResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetBgp not implemented")
}
func (*UnimplementedGobgpApiServer) AddPeer(ctx context.Context, req *AddPeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddPeer not implemented")
}
func (*UnimplementedGobgpApiServer) DeletePeer(ctx context.Context, req *DeletePeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeletePeer not implemented")
}
func (*UnimplementedGobgpApiServer) ListPeer(req *ListPeerRequest, srv GobgpApi_ListPeerServer) error {
	return status.Errorf(codes.Unimplemented, "method ListPeer not implemented")
}
func (*UnimplementedGobgpApiServer) UpdatePeer(ctx context.Context, req *UpdatePeerRequest) (*UpdatePeerResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdatePeer not implemented")
}
func (*UnimplementedGobgpApiServer) ResetPeer(ctx context.Context, req *ResetPeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ResetPeer not implemented")
}
func (*UnimplementedGobgpApiServer) ShutdownPeer(ctx context.Context, req *ShutdownPeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ShutdownPeer not implemented")
}
func (*UnimplementedGobgpApiServer) EnablePeer(ctx context.Context, req *EnablePeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnablePeer not implemented")
}
func (*UnimplementedGobgpApiServer) DisablePeer(ctx context.Context, req *DisablePeerRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DisablePeer not implemented")
}
func (*UnimplementedGobgpApiServer) MonitorPeer(req *MonitorPeerRequest, srv GobgpApi_MonitorPeerServer) error {
	return status.Errorf(codes.Unimplemented, "method MonitorPeer not implemented")
}
func (*UnimplementedGobgpApiServer) AddPeerGroup(ctx context.Context, req *AddPeerGroupRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddPeerGroup not implemented")
}
func (*UnimplementedGobgpApiServer) DeletePeerGroup(ctx context.Context, req *DeletePeerGroupRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeletePeerGroup not implemented")
}
func (*UnimplementedGobgpApiServer) ListPeerGroup(req *ListPeerGroupRequest, srv GobgpApi_ListPeerGroupServer) error {
	return status.Errorf(codes.Unimplemented, "method ListPeerGroup not implemented")
}
func (*UnimplementedGobgpApiServer) UpdatePeerGroup(ctx context.Context, req *UpdatePeerGroupRequest) (*UpdatePeerGroupResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method UpdatePeerGroup not implemented")
}
func (*UnimplementedGobgpApiServer) AddDynamicNeighbor(ctx context.Context, req *AddDynamicNeighborRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddDynamicNeighbor not implemented")
}
func (*UnimplementedGobgpApiServer) ListDynamicNeighbor(req *ListDynamicNeighborRequest, srv GobgpApi_ListDynamicNeighborServer) error {
	return status.Errorf(codes.Unimplemented, "method ListDynamicNeighbor not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteDynamicNeighbor(ctx context.Context, req *DeleteDynamicNeighborRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteDynamicNeighbor not implemented")
}
func (*UnimplementedGobgpApiServer) AddPath(ctx context.Context, req *AddPathRequest) (*AddPathResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddPath not implemented")
}
func (*UnimplementedGobgpApiServer) DeletePath(ctx context.Context, req *DeletePathRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeletePath not implemented")
}
func (*UnimplementedGobgpApiServer) ListPath(req *ListPathRequest, srv GobgpApi_ListPathServer) error {
	return status.Errorf(codes.Unimplemented, "method ListPath not implemented")
}
func (*UnimplementedGobgpApiServer) AddPathStream(srv GobgpApi_AddPathStreamServer) error {
	return status.Errorf(codes.Unimplemented, "method AddPathStream not implemented")
}
func (*UnimplementedGobgpApiServer) GetTable(ctx context.Context, req *GetTableRequest) (*GetTableResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method GetTable not implemented")
}
func (*UnimplementedGobgpApiServer) MonitorTable(req *MonitorTableRequest, srv GobgpApi_MonitorTableServer) error {
	return status.Errorf(codes.Unimplemented, "method MonitorTable not implemented")
}
func (*UnimplementedGobgpApiServer) AddVrf(ctx context.Context, req *AddVrfRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddVrf not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteVrf(ctx context.Context, req *DeleteVrfRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteVrf not implemented")
}
func (*UnimplementedGobgpApiServer) ListVrf(req *ListVrfRequest, srv GobgpApi_ListVrfServer) error {
	return status.Errorf(codes.Unimplemented, "method ListVrf not implemented")
}
func (*UnimplementedGobgpApiServer) AddPolicy(ctx context.Context, req *AddPolicyRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddPolicy not implemented")
}
func (*UnimplementedGobgpApiServer) DeletePolicy(ctx context.Context, req *DeletePolicyRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeletePolicy not implemented")
}
func (*UnimplementedGobgpApiServer) ListPolicy(req *ListPolicyRequest, srv GobgpApi_ListPolicyServer) error {
	return status.Errorf(codes.Unimplemented, "method ListPolicy not implemented")
}
func (*UnimplementedGobgpApiServer) SetPolicies(ctx context.Context, req *SetPoliciesRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetPolicies not implemented")
}
func (*UnimplementedGobgpApiServer) AddDefinedSet(ctx context.Context, req *AddDefinedSetRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddDefinedSet not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteDefinedSet(ctx context.Context, req *DeleteDefinedSetRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteDefinedSet not implemented")
}
func (*UnimplementedGobgpApiServer) ListDefinedSet(req *ListDefinedSetRequest, srv GobgpApi_ListDefinedSetServer) error {
	return status.Errorf(codes.Unimplemented, "method ListDefinedSet not implemented")
}
func (*UnimplementedGobgpApiServer) AddStatement(ctx context.Context, req *AddStatementRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddStatement not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteStatement(ctx context.Context, req *DeleteStatementRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteStatement not implemented")
}
func (*UnimplementedGobgpApiServer) ListStatement(req *ListStatementRequest, srv GobgpApi_ListStatementServer) error {
	return status.Errorf(codes.Unimplemented, "method ListStatement not implemented")
}
func (*UnimplementedGobgpApiServer) AddPolicyAssignment(ctx context.Context, req *AddPolicyAssignmentRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddPolicyAssignment not implemented")
}
func (*UnimplementedGobgpApiServer) DeletePolicyAssignment(ctx context.Context, req *DeletePolicyAssignmentRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeletePolicyAssignment not implemented")
}
func (*UnimplementedGobgpApiServer) ListPolicyAssignment(req *ListPolicyAssignmentRequest, srv GobgpApi_ListPolicyAssignmentServer) error {
	return status.Errorf(codes.Unimplemented, "method ListPolicyAssignment not implemented")
}
func (*UnimplementedGobgpApiServer) SetPolicyAssignment(ctx context.Context, req *SetPolicyAssignmentRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetPolicyAssignment not implemented")
}
func (*UnimplementedGobgpApiServer) AddRpki(ctx context.Context, req *AddRpkiRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddRpki not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteRpki(ctx context.Context, req *DeleteRpkiRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteRpki not implemented")
}
func (*UnimplementedGobgpApiServer) ListRpki(req *ListRpkiRequest, srv GobgpApi_ListRpkiServer) error {
	return status.Errorf(codes.Unimplemented, "method ListRpki not implemented")
}
func (*UnimplementedGobgpApiServer) EnableRpki(ctx context.Context, req *EnableRpkiRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnableRpki not implemented")
}
func (*UnimplementedGobgpApiServer) DisableRpki(ctx context.Context, req *DisableRpkiRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DisableRpki not implemented")
}
func (*UnimplementedGobgpApiServer) ResetRpki(ctx context.Context, req *ResetRpkiRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method ResetRpki not implemented")
}
func (*UnimplementedGobgpApiServer) ListRpkiTable(req *ListRpkiTableRequest, srv GobgpApi_ListRpkiTableServer) error {
	return status.Errorf(codes.Unimplemented, "method ListRpkiTable not implemented")
}
func (*UnimplementedGobgpApiServer) EnableZebra(ctx context.Context, req *EnableZebraRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnableZebra not implemented")
}
func (*UnimplementedGobgpApiServer) EnableMrt(ctx context.Context, req *EnableMrtRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method EnableMrt not implemented")
}
func (*UnimplementedGobgpApiServer) DisableMrt(ctx context.Context, req *DisableMrtRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DisableMrt not implemented")
}
func (*UnimplementedGobgpApiServer) AddBmp(ctx context.Context, req *AddBmpRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method AddBmp not implemented")
}
func (*UnimplementedGobgpApiServer) DeleteBmp(ctx context.Context, req *DeleteBmpRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method DeleteBmp not implemented")
}
func (*UnimplementedGobgpApiServer) SetLogLevel(ctx context.Context, req *SetLogLevelRequest) (*empty.Empty, error) {
	return nil, status.Errorf(codes.Unimplemented, "method SetLogLevel not implemented")
}

func RegisterGobgpApiServer(s *grpc.Server, srv GobgpApiServer) {
	s.RegisterService(&_GobgpApi_serviceDesc, srv)
}

func _GobgpApi_StartBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StartBgpRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).StartBgp(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/StartBgp",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).StartBgp(ctx, req.(*StartBgpRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_StopBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(StopBgpRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).StopBgp(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/StopBgp",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).StopBgp(ctx, req.(*StopBgpRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_GetBgp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetBgpRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).GetBgp(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/GetBgp",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).GetBgp(ctx, req.(*GetBgpRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddPeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddPeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddPeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddPeer(ctx, req.(*AddPeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeletePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeletePeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeletePeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeletePeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeletePeer(ctx, req.(*DeletePeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListPeer_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListPeerRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListPeer(m, &gobgpApiListPeerServer{stream})
}

type GobgpApi_ListPeerServer interface {
	Send(*ListPeerResponse) error
	grpc.ServerStream
}

type gobgpApiListPeerServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListPeerServer) Send(m *ListPeerResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_UpdatePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdatePeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).UpdatePeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/UpdatePeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).UpdatePeer(ctx, req.(*UpdatePeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ResetPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ResetPeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).ResetPeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/ResetPeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).ResetPeer(ctx, req.(*ResetPeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ShutdownPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ShutdownPeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).ShutdownPeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/ShutdownPeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).ShutdownPeer(ctx, req.(*ShutdownPeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_EnablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnablePeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).EnablePeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/EnablePeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).EnablePeer(ctx, req.(*EnablePeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DisablePeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DisablePeerRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DisablePeer(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DisablePeer",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DisablePeer(ctx, req.(*DisablePeerRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_MonitorPeer_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(MonitorPeerRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).MonitorPeer(m, &gobgpApiMonitorPeerServer{stream})
}

type GobgpApi_MonitorPeerServer interface {
	Send(*MonitorPeerResponse) error
	grpc.ServerStream
}

type gobgpApiMonitorPeerServer struct {
	grpc.ServerStream
}

func (x *gobgpApiMonitorPeerServer) Send(m *MonitorPeerResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddPeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddPeerGroupRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddPeerGroup(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddPeerGroup",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddPeerGroup(ctx, req.(*AddPeerGroupRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeletePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeletePeerGroupRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeletePeerGroup(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeletePeerGroup",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeletePeerGroup(ctx, req.(*DeletePeerGroupRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListPeerGroup_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListPeerGroupRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListPeerGroup(m, &gobgpApiListPeerGroupServer{stream})
}

type GobgpApi_ListPeerGroupServer interface {
	Send(*ListPeerGroupResponse) error
	grpc.ServerStream
}

type gobgpApiListPeerGroupServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListPeerGroupServer) Send(m *ListPeerGroupResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_UpdatePeerGroup_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdatePeerGroupRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).UpdatePeerGroup(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/UpdatePeerGroup",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).UpdatePeerGroup(ctx, req.(*UpdatePeerGroupRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddDynamicNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddDynamicNeighborRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddDynamicNeighbor",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddDynamicNeighbor(ctx, req.(*AddDynamicNeighborRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListDynamicNeighbor_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListDynamicNeighborRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListDynamicNeighbor(m, &gobgpApiListDynamicNeighborServer{stream})
}

type GobgpApi_ListDynamicNeighborServer interface {
	Send(*ListDynamicNeighborResponse) error
	grpc.ServerStream
}

type gobgpApiListDynamicNeighborServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListDynamicNeighborServer) Send(m *ListDynamicNeighborResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_DeleteDynamicNeighbor_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteDynamicNeighborRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteDynamicNeighbor(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteDynamicNeighbor",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteDynamicNeighbor(ctx, req.(*DeleteDynamicNeighborRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddPath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddPathRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddPath(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddPath",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddPath(ctx, req.(*AddPathRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeletePath_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeletePathRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeletePath(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeletePath",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeletePath(ctx, req.(*DeletePathRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListPath_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListPathRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListPath(m, &gobgpApiListPathServer{stream})
}

type GobgpApi_ListPathServer interface {
	Send(*ListPathResponse) error
	grpc.ServerStream
}

type gobgpApiListPathServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListPathServer) Send(m *ListPathResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddPathStream_Handler(srv interface{}, stream grpc.ServerStream) error {
	return srv.(GobgpApiServer).AddPathStream(&gobgpApiAddPathStreamServer{stream})
}

type GobgpApi_AddPathStreamServer interface {
	SendAndClose(*empty.Empty) error
	Recv() (*AddPathStreamRequest, error)
	grpc.ServerStream
}

type gobgpApiAddPathStreamServer struct {
	grpc.ServerStream
}

func (x *gobgpApiAddPathStreamServer) SendAndClose(m *empty.Empty) error {
	return x.ServerStream.SendMsg(m)
}

func (x *gobgpApiAddPathStreamServer) Recv() (*AddPathStreamRequest, error) {
	m := new(AddPathStreamRequest)
	if err := x.ServerStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

func _GobgpApi_GetTable_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetTableRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).GetTable(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/GetTable",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).GetTable(ctx, req.(*GetTableRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_MonitorTable_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(MonitorTableRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).MonitorTable(m, &gobgpApiMonitorTableServer{stream})
}

type GobgpApi_MonitorTableServer interface {
	Send(*MonitorTableResponse) error
	grpc.ServerStream
}

type gobgpApiMonitorTableServer struct {
	grpc.ServerStream
}

func (x *gobgpApiMonitorTableServer) Send(m *MonitorTableResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddVrfRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddVrf(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddVrf",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddVrf(ctx, req.(*AddVrfRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeleteVrf_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteVrfRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteVrf(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteVrf",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteVrf(ctx, req.(*DeleteVrfRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListVrf_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListVrfRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListVrf(m, &gobgpApiListVrfServer{stream})
}

type GobgpApi_ListVrfServer interface {
	Send(*ListVrfResponse) error
	grpc.ServerStream
}

type gobgpApiListVrfServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListVrfServer) Send(m *ListVrfResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddPolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddPolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddPolicy",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddPolicy(ctx, req.(*AddPolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeletePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeletePolicyRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeletePolicy(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeletePolicy",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeletePolicy(ctx, req.(*DeletePolicyRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListPolicy_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListPolicyRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListPolicy(m, &gobgpApiListPolicyServer{stream})
}

type GobgpApi_ListPolicyServer interface {
	Send(*ListPolicyResponse) error
	grpc.ServerStream
}

type gobgpApiListPolicyServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListPolicyServer) Send(m *ListPolicyResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_SetPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetPoliciesRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).SetPolicies(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/SetPolicies",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).SetPolicies(ctx, req.(*SetPoliciesRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddDefinedSetRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddDefinedSet(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddDefinedSet",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddDefinedSet(ctx, req.(*AddDefinedSetRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeleteDefinedSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteDefinedSetRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteDefinedSet(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteDefinedSet",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteDefinedSet(ctx, req.(*DeleteDefinedSetRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListDefinedSet_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListDefinedSetRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListDefinedSet(m, &gobgpApiListDefinedSetServer{stream})
}

type GobgpApi_ListDefinedSetServer interface {
	Send(*ListDefinedSetResponse) error
	grpc.ServerStream
}

type gobgpApiListDefinedSetServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListDefinedSetServer) Send(m *ListDefinedSetResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddStatementRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddStatement(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddStatement",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddStatement(ctx, req.(*AddStatementRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeleteStatement_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteStatementRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteStatement(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteStatement",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteStatement(ctx, req.(*DeleteStatementRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListStatement_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListStatementRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListStatement(m, &gobgpApiListStatementServer{stream})
}

type GobgpApi_ListStatementServer interface {
	Send(*ListStatementResponse) error
	grpc.ServerStream
}

type gobgpApiListStatementServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListStatementServer) Send(m *ListStatementResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_AddPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddPolicyAssignmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddPolicyAssignment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddPolicyAssignment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddPolicyAssignment(ctx, req.(*AddPolicyAssignmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeletePolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeletePolicyAssignmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeletePolicyAssignment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeletePolicyAssignment(ctx, req.(*DeletePolicyAssignmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListPolicyAssignment_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListPolicyAssignmentRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListPolicyAssignment(m, &gobgpApiListPolicyAssignmentServer{stream})
}

type GobgpApi_ListPolicyAssignmentServer interface {
	Send(*ListPolicyAssignmentResponse) error
	grpc.ServerStream
}

type gobgpApiListPolicyAssignmentServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListPolicyAssignmentServer) Send(m *ListPolicyAssignmentResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_SetPolicyAssignment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetPolicyAssignmentRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).SetPolicyAssignment(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/SetPolicyAssignment",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).SetPolicyAssignment(ctx, req.(*SetPolicyAssignmentRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddRpkiRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddRpki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddRpki",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddRpki(ctx, req.(*AddRpkiRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeleteRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteRpkiRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteRpki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteRpki",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteRpki(ctx, req.(*DeleteRpkiRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListRpki_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListRpkiRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListRpki(m, &gobgpApiListRpkiServer{stream})
}

type GobgpApi_ListRpkiServer interface {
	Send(*ListRpkiResponse) error
	grpc.ServerStream
}

type gobgpApiListRpkiServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListRpkiServer) Send(m *ListRpkiResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_EnableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnableRpkiRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).EnableRpki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/EnableRpki",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).EnableRpki(ctx, req.(*EnableRpkiRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DisableRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DisableRpkiRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DisableRpki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DisableRpki",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DisableRpki(ctx, req.(*DisableRpkiRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ResetRpki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ResetRpkiRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).ResetRpki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/ResetRpki",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).ResetRpki(ctx, req.(*ResetRpkiRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_ListRpkiTable_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(ListRpkiTableRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(GobgpApiServer).ListRpkiTable(m, &gobgpApiListRpkiTableServer{stream})
}

type GobgpApi_ListRpkiTableServer interface {
	Send(*ListRpkiTableResponse) error
	grpc.ServerStream
}

type gobgpApiListRpkiTableServer struct {
	grpc.ServerStream
}

func (x *gobgpApiListRpkiTableServer) Send(m *ListRpkiTableResponse) error {
	return x.ServerStream.SendMsg(m)
}

func _GobgpApi_EnableZebra_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnableZebraRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).EnableZebra(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/EnableZebra",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).EnableZebra(ctx, req.(*EnableZebraRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_EnableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(EnableMrtRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).EnableMrt(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/EnableMrt",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).EnableMrt(ctx, req.(*EnableMrtRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DisableMrt_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DisableMrtRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DisableMrt(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DisableMrt",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DisableMrt(ctx, req.(*DisableMrtRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_AddBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddBmpRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).AddBmp(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/AddBmp",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).AddBmp(ctx, req.(*AddBmpRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_DeleteBmp_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(DeleteBmpRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).DeleteBmp(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/DeleteBmp",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).DeleteBmp(ctx, req.(*DeleteBmpRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _GobgpApi_SetLogLevel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SetLogLevelRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(GobgpApiServer).SetLogLevel(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/gobgpapi.GobgpApi/SetLogLevel",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(GobgpApiServer).SetLogLevel(ctx, req.(*SetLogLevelRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _GobgpApi_serviceDesc = grpc.ServiceDesc{
	ServiceName: "gobgpapi.GobgpApi",
	HandlerType: (*GobgpApiServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "StartBgp",
			Handler:    _GobgpApi_StartBgp_Handler,
		},
		{
			MethodName: "StopBgp",
			Handler:    _GobgpApi_StopBgp_Handler,
		},
		{
			MethodName: "GetBgp",
			Handler:    _GobgpApi_GetBgp_Handler,
		},
		{
			MethodName: "AddPeer",
			Handler:    _GobgpApi_AddPeer_Handler,
		},
		{
			MethodName: "DeletePeer",
			Handler:    _GobgpApi_DeletePeer_Handler,
		},
		{
			MethodName: "UpdatePeer",
			Handler:    _GobgpApi_UpdatePeer_Handler,
		},
		{
			MethodName: "ResetPeer",
			Handler:    _GobgpApi_ResetPeer_Handler,
		},
		{
			MethodName: "ShutdownPeer",
			Handler:    _GobgpApi_ShutdownPeer_Handler,
		},
		{
			MethodName: "EnablePeer",
			Handler:    _GobgpApi_EnablePeer_Handler,
		},
		{
			MethodName: "DisablePeer",
			Handler:    _GobgpApi_DisablePeer_Handler,
		},
		{
			MethodName: "AddPeerGroup",
			Handler:    _GobgpApi_AddPeerGroup_Handler,
		},
		{
			MethodName: "DeletePeerGroup",
			Handler:    _GobgpApi_DeletePeerGroup_Handler,
		},
		{
			MethodName: "UpdatePeerGroup",
			Handler:    _GobgpApi_UpdatePeerGroup_Handler,
		},
		{
			MethodName: "AddDynamicNeighbor",
			Handler:    _GobgpApi_AddDynamicNeighbor_Handler,
		},
		{
			MethodName: "DeleteDynamicNeighbor",
			Handler:    _GobgpApi_DeleteDynamicNeighbor_Handler,
		},
		{
			MethodName: "AddPath",
			Handler:    _GobgpApi_AddPath_Handler,
		},
		{
			MethodName: "DeletePath",
			Handler:    _GobgpApi_DeletePath_Handler,
		},
		{
			MethodName: "GetTable",
			Handler:    _GobgpApi_GetTable_Handler,
		},
		{
			MethodName: "AddVrf",
			Handler:    _GobgpApi_AddVrf_Handler,
		},
		{
			MethodName: "DeleteVrf",
			Handler:    _GobgpApi_DeleteVrf_Handler,
		},
		{
			MethodName: "AddPolicy",
			Handler:    _GobgpApi_AddPolicy_Handler,
		},
		{
			MethodName: "DeletePolicy",
			Handler:    _GobgpApi_DeletePolicy_Handler,
		},
		{
			MethodName: "SetPolicies",
			Handler:    _GobgpApi_SetPolicies_Handler,
		},
		{
			MethodName: "AddDefinedSet",
			Handler:    _GobgpApi_AddDefinedSet_Handler,
		},
		{
			MethodName: "DeleteDefinedSet",
			Handler:    _GobgpApi_DeleteDefinedSet_Handler,
		},
		{
			MethodName: "AddStatement",
			Handler:    _GobgpApi_AddStatement_Handler,
		},
		{
			MethodName: "DeleteStatement",
			Handler:    _GobgpApi_DeleteStatement_Handler,
		},
		{
			MethodName: "AddPolicyAssignment",
			Handler:    _GobgpApi_AddPolicyAssignment_Handler,
		},
		{
			MethodName: "DeletePolicyAssignment",
			Handler:    _GobgpApi_DeletePolicyAssignment_Handler,
		},
		{
			MethodName: "SetPolicyAssignment",
			Handler:    _GobgpApi_SetPolicyAssignment_Handler,
		},
		{
			MethodName: "AddRpki",
			Handler:    _GobgpApi_AddRpki_Handler,
		},
		{
			MethodName: "DeleteRpki",
			Handler:    _GobgpApi_DeleteRpki_Handler,
		},
		{
			MethodName: "EnableRpki",
			Handler:    _GobgpApi_EnableRpki_Handler,
		},
		{
			MethodName: "DisableRpki",
			Handler:    _GobgpApi_DisableRpki_Handler,
		},
		{
			MethodName: "ResetRpki",
			Handler:    _GobgpApi_ResetRpki_Handler,
		},
		{
			MethodName: "EnableZebra",
			Handler:    _GobgpApi_EnableZebra_Handler,
		},
		{
			MethodName: "EnableMrt",
			Handler:    _GobgpApi_EnableMrt_Handler,
		},
		{
			MethodName: "DisableMrt",
			Handler:    _GobgpApi_DisableMrt_Handler,
		},
		{
			MethodName: "AddBmp",
			Handler:    _GobgpApi_AddBmp_Handler,
		},
		{
			MethodName: "DeleteBmp",
			Handler:    _GobgpApi_DeleteBmp_Handler,
		},
		{
			MethodName: "SetLogLevel",
			Handler:    _GobgpApi_SetLogLevel_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "ListPeer",
			Handler:       _GobgpApi_ListPeer_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "MonitorPeer",
			Handler:       _GobgpApi_MonitorPeer_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListPeerGroup",
			Handler:       _GobgpApi_ListPeerGroup_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListDynamicNeighbor",
			Handler:       _GobgpApi_ListDynamicNeighbor_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListPath",
			Handler:       _GobgpApi_ListPath_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "AddPathStream",
			Handler:       _GobgpApi_AddPathStream_Handler,
			ClientStreams: true,
		},
		{
			StreamName:    "MonitorTable",
			Handler:       _GobgpApi_MonitorTable_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListVrf",
			Handler:       _GobgpApi_ListVrf_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListPolicy",
			Handler:       _GobgpApi_ListPolicy_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListDefinedSet",
			Handler:       _GobgpApi_ListDefinedSet_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListStatement",
			Handler:       _GobgpApi_ListStatement_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListPolicyAssignment",
			Handler:       _GobgpApi_ListPolicyAssignment_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListRpki",
			Handler:       _GobgpApi_ListRpki_Handler,
			ServerStreams: true,
		},
		{
			StreamName:    "ListRpkiTable",
			Handler:       _GobgpApi_ListRpkiTable_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "gobgp.proto",
}
