// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.1
// 	protoc        v6.32.0
// source: rpc.proto

package rpc

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type IPType int32

const (
	IPType_TypeVPCIP      IPType = 0
	IPType_TypeVPCENI     IPType = 1
	IPType_TypeENIMultiIP IPType = 2
)

// Enum value maps for IPType.
var (
	IPType_name = map[int32]string{
		0: "TypeVPCIP",
		1: "TypeVPCENI",
		2: "TypeENIMultiIP",
	}
	IPType_value = map[string]int32{
		"TypeVPCIP":      0,
		"TypeVPCENI":     1,
		"TypeENIMultiIP": 2,
	}
)

func (x IPType) Enum() *IPType {
	p := new(IPType)
	*p = x
	return p
}

func (x IPType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (IPType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[0].Descriptor()
}

func (IPType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[0]
}

func (x IPType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use IPType.Descriptor instead.
func (IPType) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{0}
}

type Error int32

const (
	Error_ErrNoErr       Error = 0
	Error_ErrCRDNotFound Error = 1
)

// Enum value maps for Error.
var (
	Error_name = map[int32]string{
		0: "ErrNoErr",
		1: "ErrCRDNotFound",
	}
	Error_value = map[string]int32{
		"ErrNoErr":       0,
		"ErrCRDNotFound": 1,
	}
)

func (x Error) Enum() *Error {
	p := new(Error)
	*p = x
	return p
}

func (x Error) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (Error) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[1].Descriptor()
}

func (Error) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[1]
}

func (x Error) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use Error.Descriptor instead.
func (Error) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{1}
}

type EventTarget int32

const (
	EventTarget_EventTargetNode EventTarget = 0
	EventTarget_EventTargetPod  EventTarget = 1
)

// Enum value maps for EventTarget.
var (
	EventTarget_name = map[int32]string{
		0: "EventTargetNode",
		1: "EventTargetPod",
	}
	EventTarget_value = map[string]int32{
		"EventTargetNode": 0,
		"EventTargetPod":  1,
	}
)

func (x EventTarget) Enum() *EventTarget {
	p := new(EventTarget)
	*p = x
	return p
}

func (x EventTarget) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (EventTarget) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[2].Descriptor()
}

func (EventTarget) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[2]
}

func (x EventTarget) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use EventTarget.Descriptor instead.
func (EventTarget) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{2}
}

type EventType int32

const (
	EventType_EventTypeNormal  EventType = 0
	EventType_EventTypeWarning EventType = 1
)

// Enum value maps for EventType.
var (
	EventType_name = map[int32]string{
		0: "EventTypeNormal",
		1: "EventTypeWarning",
	}
	EventType_value = map[string]int32{
		"EventTypeNormal":  0,
		"EventTypeWarning": 1,
	}
)

func (x EventType) Enum() *EventType {
	p := new(EventType)
	*p = x
	return p
}

func (x EventType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (EventType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[3].Descriptor()
}

func (EventType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[3]
}

func (x EventType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use EventType.Descriptor instead.
func (EventType) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{3}
}

type VfType int32

const (
	VfType_VfTypeDefault VfType = 0
	VfType_VfTypeVPC     VfType = 1
	VfType_VfTypeENO     VfType = 2
)

// Enum value maps for VfType.
var (
	VfType_name = map[int32]string{
		0: "VfTypeDefault",
		1: "VfTypeVPC",
		2: "VfTypeENO",
	}
	VfType_value = map[string]int32{
		"VfTypeDefault": 0,
		"VfTypeVPC":     1,
		"VfTypeENO":     2,
	}
)

func (x VfType) Enum() *VfType {
	p := new(VfType)
	*p = x
	return p
}

func (x VfType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (VfType) Descriptor() protoreflect.EnumDescriptor {
	return file_rpc_proto_enumTypes[4].Descriptor()
}

func (VfType) Type() protoreflect.EnumType {
	return &file_rpc_proto_enumTypes[4]
}

func (x VfType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use VfType.Descriptor instead.
func (VfType) EnumDescriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{4}
}

// IPSet declare a string set contain v4 v6 info
type IPSet struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IPv4 string `protobuf:"bytes,1,opt,name=IPv4,proto3" json:"IPv4,omitempty"`
	IPv6 string `protobuf:"bytes,2,opt,name=IPv6,proto3" json:"IPv6,omitempty"`
}

func (x *IPSet) Reset() {
	*x = IPSet{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *IPSet) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*IPSet) ProtoMessage() {}

func (x *IPSet) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use IPSet.ProtoReflect.Descriptor instead.
func (*IPSet) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{0}
}

func (x *IPSet) GetIPv4() string {
	if x != nil {
		return x.IPv4
	}
	return ""
}

func (x *IPSet) GetIPv6() string {
	if x != nil {
		return x.IPv6
	}
	return ""
}

type AllocIPRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	K8SPodName             string `protobuf:"bytes,1,opt,name=K8sPodName,proto3" json:"K8sPodName,omitempty"`
	K8SPodNamespace        string `protobuf:"bytes,2,opt,name=K8sPodNamespace,proto3" json:"K8sPodNamespace,omitempty"`
	K8SPodInfraContainerId string `protobuf:"bytes,3,opt,name=K8sPodInfraContainerId,proto3" json:"K8sPodInfraContainerId,omitempty"`
	Netns                  string `protobuf:"bytes,4,opt,name=Netns,proto3" json:"Netns,omitempty"`
	IfName                 string `protobuf:"bytes,5,opt,name=IfName,proto3" json:"IfName,omitempty"`
}

func (x *AllocIPRequest) Reset() {
	*x = AllocIPRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AllocIPRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AllocIPRequest) ProtoMessage() {}

func (x *AllocIPRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AllocIPRequest.ProtoReflect.Descriptor instead.
func (*AllocIPRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{1}
}

func (x *AllocIPRequest) GetK8SPodName() string {
	if x != nil {
		return x.K8SPodName
	}
	return ""
}

func (x *AllocIPRequest) GetK8SPodNamespace() string {
	if x != nil {
		return x.K8SPodNamespace
	}
	return ""
}

func (x *AllocIPRequest) GetK8SPodInfraContainerId() string {
	if x != nil {
		return x.K8SPodInfraContainerId
	}
	return ""
}

func (x *AllocIPRequest) GetNetns() string {
	if x != nil {
		return x.Netns
	}
	return ""
}

func (x *AllocIPRequest) GetIfName() string {
	if x != nil {
		return x.IfName
	}
	return ""
}

type NetConf struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	BasicInfo    *BasicInfo `protobuf:"bytes,1,opt,name=BasicInfo,proto3" json:"BasicInfo,omitempty"`
	ENIInfo      *ENIInfo   `protobuf:"bytes,2,opt,name=ENIInfo,proto3" json:"ENIInfo,omitempty"`
	Pod          *Pod       `protobuf:"bytes,3,opt,name=Pod,proto3" json:"Pod,omitempty"`
	IfName       string     `protobuf:"bytes,4,opt,name=IfName,proto3" json:"IfName,omitempty"`
	ExtraRoutes  []*Route   `protobuf:"bytes,5,rep,name=ExtraRoutes,proto3" json:"ExtraRoutes,omitempty"`
	DefaultRoute bool       `protobuf:"varint,6,opt,name=DefaultRoute,proto3" json:"DefaultRoute,omitempty"`
}

func (x *NetConf) Reset() {
	*x = NetConf{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *NetConf) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NetConf) ProtoMessage() {}

func (x *NetConf) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NetConf.ProtoReflect.Descriptor instead.
func (*NetConf) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{2}
}

func (x *NetConf) GetBasicInfo() *BasicInfo {
	if x != nil {
		return x.BasicInfo
	}
	return nil
}

func (x *NetConf) GetENIInfo() *ENIInfo {
	if x != nil {
		return x.ENIInfo
	}
	return nil
}

func (x *NetConf) GetPod() *Pod {
	if x != nil {
		return x.Pod
	}
	return nil
}

func (x *NetConf) GetIfName() string {
	if x != nil {
		return x.IfName
	}
	return ""
}

func (x *NetConf) GetExtraRoutes() []*Route {
	if x != nil {
		return x.ExtraRoutes
	}
	return nil
}

func (x *NetConf) GetDefaultRoute() bool {
	if x != nil {
		return x.DefaultRoute
	}
	return false
}

type AllocIPReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Success  bool       `protobuf:"varint,1,opt,name=Success,proto3" json:"Success,omitempty"`
	IPType   IPType     `protobuf:"varint,2,opt,name=IPType,proto3,enum=rpc.IPType" json:"IPType,omitempty"`
	IPv4     bool       `protobuf:"varint,3,opt,name=IPv4,proto3" json:"IPv4,omitempty"`
	IPv6     bool       `protobuf:"varint,4,opt,name=IPv6,proto3" json:"IPv6,omitempty"`
	NetConfs []*NetConf `protobuf:"bytes,5,rep,name=NetConfs,proto3" json:"NetConfs,omitempty"`
}

func (x *AllocIPReply) Reset() {
	*x = AllocIPReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *AllocIPReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AllocIPReply) ProtoMessage() {}

func (x *AllocIPReply) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AllocIPReply.ProtoReflect.Descriptor instead.
func (*AllocIPReply) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{3}
}

func (x *AllocIPReply) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *AllocIPReply) GetIPType() IPType {
	if x != nil {
		return x.IPType
	}
	return IPType_TypeVPCIP
}

func (x *AllocIPReply) GetIPv4() bool {
	if x != nil {
		return x.IPv4
	}
	return false
}

func (x *AllocIPReply) GetIPv6() bool {
	if x != nil {
		return x.IPv6
	}
	return false
}

func (x *AllocIPReply) GetNetConfs() []*NetConf {
	if x != nil {
		return x.NetConfs
	}
	return nil
}

type BasicInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	PodIP       *IPSet `protobuf:"bytes,1,opt,name=PodIP,proto3" json:"PodIP,omitempty"`
	PodCIDR     *IPSet `protobuf:"bytes,2,opt,name=PodCIDR,proto3" json:"PodCIDR,omitempty"`     // subnet for pod, value form vSwitch CIDR or podCIDR
	GatewayIP   *IPSet `protobuf:"bytes,3,opt,name=GatewayIP,proto3" json:"GatewayIP,omitempty"` // gw for the subnet
	ServiceCIDR *IPSet `protobuf:"bytes,4,opt,name=ServiceCIDR,proto3" json:"ServiceCIDR,omitempty"`
}

func (x *BasicInfo) Reset() {
	*x = BasicInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *BasicInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*BasicInfo) ProtoMessage() {}

func (x *BasicInfo) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use BasicInfo.ProtoReflect.Descriptor instead.
func (*BasicInfo) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{4}
}

func (x *BasicInfo) GetPodIP() *IPSet {
	if x != nil {
		return x.PodIP
	}
	return nil
}

func (x *BasicInfo) GetPodCIDR() *IPSet {
	if x != nil {
		return x.PodCIDR
	}
	return nil
}

func (x *BasicInfo) GetGatewayIP() *IPSet {
	if x != nil {
		return x.GatewayIP
	}
	return nil
}

func (x *BasicInfo) GetServiceCIDR() *IPSet {
	if x != nil {
		return x.ServiceCIDR
	}
	return nil
}

type ENIInfo struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	MAC       string  `protobuf:"bytes,1,opt,name=MAC,proto3" json:"MAC,omitempty"`
	Trunk     bool    `protobuf:"varint,2,opt,name=Trunk,proto3" json:"Trunk,omitempty"` // eni is trunk
	Vid       uint32  `protobuf:"varint,3,opt,name=Vid,proto3" json:"Vid,omitempty"`     // vlan ID
	GatewayIP *IPSet  `protobuf:"bytes,4,opt,name=GatewayIP,proto3" json:"GatewayIP,omitempty"`
	ERDMA     bool    `protobuf:"varint,5,opt,name=eRDMA,proto3" json:"eRDMA,omitempty"` // eni is eRDMA
	VfId      *uint32 `protobuf:"varint,6,opt,name=VfId,proto3,oneof" json:"VfId,omitempty"`
	VfType    *VfType `protobuf:"varint,7,opt,name=VfType,proto3,enum=rpc.VfType,oneof" json:"VfType,omitempty"`
}

func (x *ENIInfo) Reset() {
	*x = ENIInfo{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ENIInfo) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ENIInfo) ProtoMessage() {}

func (x *ENIInfo) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ENIInfo.ProtoReflect.Descriptor instead.
func (*ENIInfo) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{5}
}

func (x *ENIInfo) GetMAC() string {
	if x != nil {
		return x.MAC
	}
	return ""
}

func (x *ENIInfo) GetTrunk() bool {
	if x != nil {
		return x.Trunk
	}
	return false
}

func (x *ENIInfo) GetVid() uint32 {
	if x != nil {
		return x.Vid
	}
	return 0
}

func (x *ENIInfo) GetGatewayIP() *IPSet {
	if x != nil {
		return x.GatewayIP
	}
	return nil
}

func (x *ENIInfo) GetERDMA() bool {
	if x != nil {
		return x.ERDMA
	}
	return false
}

func (x *ENIInfo) GetVfId() uint32 {
	if x != nil && x.VfId != nil {
		return *x.VfId
	}
	return 0
}

func (x *ENIInfo) GetVfType() VfType {
	if x != nil && x.VfType != nil {
		return *x.VfType
	}
	return VfType_VfTypeDefault
}

type Route struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Dst string `protobuf:"bytes,1,opt,name=Dst,proto3" json:"Dst,omitempty"`
}

func (x *Route) Reset() {
	*x = Route{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Route) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Route) ProtoMessage() {}

func (x *Route) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Route.ProtoReflect.Descriptor instead.
func (*Route) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{6}
}

func (x *Route) GetDst() string {
	if x != nil {
		return x.Dst
	}
	return ""
}

// VETH Basic
type Pod struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Ingress         uint64 `protobuf:"varint,1,opt,name=Ingress,proto3" json:"Ingress,omitempty"`
	Egress          uint64 `protobuf:"varint,2,opt,name=Egress,proto3" json:"Egress,omitempty"`
	NetworkPriority string `protobuf:"bytes,3,opt,name=NetworkPriority,proto3" json:"NetworkPriority,omitempty"`
}

func (x *Pod) Reset() {
	*x = Pod{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Pod) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Pod) ProtoMessage() {}

func (x *Pod) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Pod.ProtoReflect.Descriptor instead.
func (*Pod) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{7}
}

func (x *Pod) GetIngress() uint64 {
	if x != nil {
		return x.Ingress
	}
	return 0
}

func (x *Pod) GetEgress() uint64 {
	if x != nil {
		return x.Egress
	}
	return 0
}

func (x *Pod) GetNetworkPriority() string {
	if x != nil {
		return x.NetworkPriority
	}
	return ""
}

type ReleaseIPRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	K8SPodName             string `protobuf:"bytes,1,opt,name=K8sPodName,proto3" json:"K8sPodName,omitempty"`
	K8SPodNamespace        string `protobuf:"bytes,2,opt,name=K8sPodNamespace,proto3" json:"K8sPodNamespace,omitempty"`
	K8SPodInfraContainerId string `protobuf:"bytes,3,opt,name=K8sPodInfraContainerId,proto3" json:"K8sPodInfraContainerId,omitempty"`
	IPType                 IPType `protobuf:"varint,4,opt,name=IPType,proto3,enum=rpc.IPType" json:"IPType,omitempty"`
	IPv4Addr               *IPSet `protobuf:"bytes,5,opt,name=IPv4Addr,proto3" json:"IPv4Addr,omitempty"`
	MacAddr                string `protobuf:"bytes,6,opt,name=MacAddr,proto3" json:"MacAddr,omitempty"`
	Reason                 string `protobuf:"bytes,7,opt,name=Reason,proto3" json:"Reason,omitempty"`
}

func (x *ReleaseIPRequest) Reset() {
	*x = ReleaseIPRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReleaseIPRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReleaseIPRequest) ProtoMessage() {}

func (x *ReleaseIPRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReleaseIPRequest.ProtoReflect.Descriptor instead.
func (*ReleaseIPRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{8}
}

func (x *ReleaseIPRequest) GetK8SPodName() string {
	if x != nil {
		return x.K8SPodName
	}
	return ""
}

func (x *ReleaseIPRequest) GetK8SPodNamespace() string {
	if x != nil {
		return x.K8SPodNamespace
	}
	return ""
}

func (x *ReleaseIPRequest) GetK8SPodInfraContainerId() string {
	if x != nil {
		return x.K8SPodInfraContainerId
	}
	return ""
}

func (x *ReleaseIPRequest) GetIPType() IPType {
	if x != nil {
		return x.IPType
	}
	return IPType_TypeVPCIP
}

func (x *ReleaseIPRequest) GetIPv4Addr() *IPSet {
	if x != nil {
		return x.IPv4Addr
	}
	return nil
}

func (x *ReleaseIPRequest) GetMacAddr() string {
	if x != nil {
		return x.MacAddr
	}
	return ""
}

func (x *ReleaseIPRequest) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

type ReleaseIPReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Success      bool   `protobuf:"varint,1,opt,name=Success,proto3" json:"Success,omitempty"`
	IPv4Addr     *IPSet `protobuf:"bytes,2,opt,name=IPv4Addr,proto3" json:"IPv4Addr,omitempty"`
	DeviceNumber int32  `protobuf:"varint,3,opt,name=DeviceNumber,proto3" json:"DeviceNumber,omitempty"`
	IPv4         bool   `protobuf:"varint,4,opt,name=IPv4,proto3" json:"IPv4,omitempty"`
	IPv6         bool   `protobuf:"varint,5,opt,name=IPv6,proto3" json:"IPv6,omitempty"`
}

func (x *ReleaseIPReply) Reset() {
	*x = ReleaseIPReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ReleaseIPReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ReleaseIPReply) ProtoMessage() {}

func (x *ReleaseIPReply) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[9]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ReleaseIPReply.ProtoReflect.Descriptor instead.
func (*ReleaseIPReply) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{9}
}

func (x *ReleaseIPReply) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *ReleaseIPReply) GetIPv4Addr() *IPSet {
	if x != nil {
		return x.IPv4Addr
	}
	return nil
}

func (x *ReleaseIPReply) GetDeviceNumber() int32 {
	if x != nil {
		return x.DeviceNumber
	}
	return 0
}

func (x *ReleaseIPReply) GetIPv4() bool {
	if x != nil {
		return x.IPv4
	}
	return false
}

func (x *ReleaseIPReply) GetIPv6() bool {
	if x != nil {
		return x.IPv6
	}
	return false
}

type GetInfoRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	K8SPodName             string `protobuf:"bytes,1,opt,name=K8sPodName,proto3" json:"K8sPodName,omitempty"`
	K8SPodNamespace        string `protobuf:"bytes,2,opt,name=K8sPodNamespace,proto3" json:"K8sPodNamespace,omitempty"`
	K8SPodInfraContainerId string `protobuf:"bytes,3,opt,name=K8sPodInfraContainerId,proto3" json:"K8sPodInfraContainerId,omitempty"`
}

func (x *GetInfoRequest) Reset() {
	*x = GetInfoRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInfoRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInfoRequest) ProtoMessage() {}

func (x *GetInfoRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[10]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetInfoRequest.ProtoReflect.Descriptor instead.
func (*GetInfoRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{10}
}

func (x *GetInfoRequest) GetK8SPodName() string {
	if x != nil {
		return x.K8SPodName
	}
	return ""
}

func (x *GetInfoRequest) GetK8SPodNamespace() string {
	if x != nil {
		return x.K8SPodNamespace
	}
	return ""
}

func (x *GetInfoRequest) GetK8SPodInfraContainerId() string {
	if x != nil {
		return x.K8SPodInfraContainerId
	}
	return ""
}

type GetInfoReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IPType   IPType     `protobuf:"varint,1,opt,name=IPType,proto3,enum=rpc.IPType" json:"IPType,omitempty"`
	Success  bool       `protobuf:"varint,2,opt,name=Success,proto3" json:"Success,omitempty"`
	IPv4     bool       `protobuf:"varint,3,opt,name=IPv4,proto3" json:"IPv4,omitempty"`
	IPv6     bool       `protobuf:"varint,4,opt,name=IPv6,proto3" json:"IPv6,omitempty"`
	NetConfs []*NetConf `protobuf:"bytes,5,rep,name=NetConfs,proto3" json:"NetConfs,omitempty"`
	Error    Error      `protobuf:"varint,7,opt,name=Error,proto3,enum=rpc.Error" json:"Error,omitempty"`
}

func (x *GetInfoReply) Reset() {
	*x = GetInfoReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *GetInfoReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetInfoReply) ProtoMessage() {}

func (x *GetInfoReply) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[11]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetInfoReply.ProtoReflect.Descriptor instead.
func (*GetInfoReply) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{11}
}

func (x *GetInfoReply) GetIPType() IPType {
	if x != nil {
		return x.IPType
	}
	return IPType_TypeVPCIP
}

func (x *GetInfoReply) GetSuccess() bool {
	if x != nil {
		return x.Success
	}
	return false
}

func (x *GetInfoReply) GetIPv4() bool {
	if x != nil {
		return x.IPv4
	}
	return false
}

func (x *GetInfoReply) GetIPv6() bool {
	if x != nil {
		return x.IPv6
	}
	return false
}

func (x *GetInfoReply) GetNetConfs() []*NetConf {
	if x != nil {
		return x.NetConfs
	}
	return nil
}

func (x *GetInfoReply) GetError() Error {
	if x != nil {
		return x.Error
	}
	return Error_ErrNoErr
}

type EventRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	EventTarget     EventTarget `protobuf:"varint,1,opt,name=EventTarget,proto3,enum=rpc.EventTarget" json:"EventTarget,omitempty"`
	K8SPodName      string      `protobuf:"bytes,2,opt,name=K8sPodName,proto3" json:"K8sPodName,omitempty"`
	K8SPodNamespace string      `protobuf:"bytes,3,opt,name=K8sPodNamespace,proto3" json:"K8sPodNamespace,omitempty"`
	EventType       EventType   `protobuf:"varint,4,opt,name=EventType,proto3,enum=rpc.EventType" json:"EventType,omitempty"`
	Reason          string      `protobuf:"bytes,5,opt,name=Reason,proto3" json:"Reason,omitempty"`
	Message         string      `protobuf:"bytes,6,opt,name=Message,proto3" json:"Message,omitempty"`
}

func (x *EventRequest) Reset() {
	*x = EventRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EventRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EventRequest) ProtoMessage() {}

func (x *EventRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[12]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EventRequest.ProtoReflect.Descriptor instead.
func (*EventRequest) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{12}
}

func (x *EventRequest) GetEventTarget() EventTarget {
	if x != nil {
		return x.EventTarget
	}
	return EventTarget_EventTargetNode
}

func (x *EventRequest) GetK8SPodName() string {
	if x != nil {
		return x.K8SPodName
	}
	return ""
}

func (x *EventRequest) GetK8SPodNamespace() string {
	if x != nil {
		return x.K8SPodNamespace
	}
	return ""
}

func (x *EventRequest) GetEventType() EventType {
	if x != nil {
		return x.EventType
	}
	return EventType_EventTypeNormal
}

func (x *EventRequest) GetReason() string {
	if x != nil {
		return x.Reason
	}
	return ""
}

func (x *EventRequest) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type EventReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Succeed bool   `protobuf:"varint,1,opt,name=Succeed,proto3" json:"Succeed,omitempty"`
	Error   string `protobuf:"bytes,2,opt,name=Error,proto3" json:"Error,omitempty"`
}

func (x *EventReply) Reset() {
	*x = EventReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_rpc_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *EventReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*EventReply) ProtoMessage() {}

func (x *EventReply) ProtoReflect() protoreflect.Message {
	mi := &file_rpc_proto_msgTypes[13]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use EventReply.ProtoReflect.Descriptor instead.
func (*EventReply) Descriptor() ([]byte, []int) {
	return file_rpc_proto_rawDescGZIP(), []int{13}
}

func (x *EventReply) GetSucceed() bool {
	if x != nil {
		return x.Succeed
	}
	return false
}

func (x *EventReply) GetError() string {
	if x != nil {
		return x.Error
	}
	return ""
}

var File_rpc_proto protoreflect.FileDescriptor

var file_rpc_proto_rawDesc = []byte{
	0x0a, 0x09, 0x72, 0x70, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x03, 0x72, 0x70, 0x63,
	0x22, 0x2f, 0x0a, 0x05, 0x49, 0x50, 0x53, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x50, 0x76,
	0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x49, 0x50, 0x76, 0x34, 0x12, 0x12, 0x0a,
	0x04, 0x49, 0x50, 0x76, 0x36, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x49, 0x50, 0x76,
	0x36, 0x22, 0xc0, 0x01, 0x0a, 0x0e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x49, 0x50, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61,
	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61,
	0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4b,
	0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36,
	0x0a, 0x16, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e,
	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16,
	0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x61,
	0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x65, 0x74, 0x6e, 0x73, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x4e, 0x65, 0x74, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06,
	0x49, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x49, 0x66,
	0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe5, 0x01, 0x0a, 0x07, 0x4e, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66,
	0x12, 0x2c, 0x0a, 0x09, 0x42, 0x61, 0x73, 0x69, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x49,
	0x6e, 0x66, 0x6f, 0x52, 0x09, 0x42, 0x61, 0x73, 0x69, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26,
	0x0a, 0x07, 0x45, 0x4e, 0x49, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0c, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x4e, 0x49, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x45,
	0x4e, 0x49, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x03, 0x50, 0x6f, 0x64, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x6f, 0x64, 0x52, 0x03, 0x50,
	0x6f, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x49, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x06, 0x49, 0x66, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x0b, 0x45, 0x78,
	0x74, 0x72, 0x61, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
	0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x0b, 0x45, 0x78, 0x74,
	0x72, 0x61, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x44, 0x65, 0x66, 0x61,
	0x75, 0x6c, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c,
	0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x22, 0x9f, 0x01, 0x0a,
	0x0c, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x49, 0x50, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a,
	0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
	0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50,
	0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04,
	0x49, 0x50, 0x76, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, 0x50, 0x76, 0x34,
	0x12, 0x12, 0x0a, 0x04, 0x49, 0x50, 0x76, 0x36, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04,
	0x49, 0x50, 0x76, 0x36, 0x12, 0x28, 0x0a, 0x08, 0x4e, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x73,
	0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x74,
	0x43, 0x6f, 0x6e, 0x66, 0x52, 0x08, 0x4e, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x22, 0xab,
	0x01, 0x0a, 0x09, 0x42, 0x61, 0x73, 0x69, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x05,
	0x50, 0x6f, 0x64, 0x49, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x74, 0x52, 0x05, 0x50, 0x6f, 0x64, 0x49, 0x50, 0x12, 0x24,
	0x0a, 0x07, 0x50, 0x6f, 0x64, 0x43, 0x49, 0x44, 0x52, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
	0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x74, 0x52, 0x07, 0x50, 0x6f, 0x64,
	0x43, 0x49, 0x44, 0x52, 0x12, 0x28, 0x0a, 0x09, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49,
	0x50, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50,
	0x53, 0x65, 0x74, 0x52, 0x09, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x50, 0x12, 0x2c,
	0x0a, 0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x49, 0x44, 0x52, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x74, 0x52,
	0x0b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x49, 0x44, 0x52, 0x22, 0xda, 0x01, 0x0a,
	0x07, 0x45, 0x4e, 0x49, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x41, 0x43, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x41, 0x43, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x72,
	0x75, 0x6e, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x54, 0x72, 0x75, 0x6e, 0x6b,
	0x12, 0x10, 0x0a, 0x03, 0x56, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x56,
	0x69, 0x64, 0x12, 0x28, 0x0a, 0x09, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x50, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x53, 0x65,
	0x74, 0x52, 0x09, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x50, 0x12, 0x14, 0x0a, 0x05,
	0x65, 0x52, 0x44, 0x4d, 0x41, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65, 0x52, 0x44,
	0x4d, 0x41, 0x12, 0x17, 0x0a, 0x04, 0x56, 0x66, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d,
	0x48, 0x00, 0x52, 0x04, 0x56, 0x66, 0x49, 0x64, 0x88, 0x01, 0x01, 0x12, 0x28, 0x0a, 0x06, 0x56,
	0x66, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x56, 0x66, 0x54, 0x79, 0x70, 0x65, 0x48, 0x01, 0x52, 0x06, 0x56, 0x66, 0x54, 0x79,
	0x70, 0x65, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x56, 0x66, 0x49, 0x64, 0x42, 0x09,
	0x0a, 0x07, 0x5f, 0x56, 0x66, 0x54, 0x79, 0x70, 0x65, 0x22, 0x19, 0x0a, 0x05, 0x52, 0x6f, 0x75,
	0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x44, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x03, 0x44, 0x73, 0x74, 0x22, 0x61, 0x0a, 0x03, 0x50, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x49,
	0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x07, 0x49, 0x6e,
	0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x28, 0x0a,
	0x0f, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50,
	0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x93, 0x02, 0x0a, 0x10, 0x52, 0x65, 0x6c, 0x65,
	0x61, 0x73, 0x65, 0x49, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a,
	0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f,
	0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d,
	0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64,
	0x49, 0x6e, 0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64,
	0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x49, 0x6e,
	0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x64, 0x12, 0x23,
	0x0a, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b,
	0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x49, 0x50, 0x54,
	0x79, 0x70, 0x65, 0x12, 0x26, 0x0a, 0x08, 0x49, 0x50, 0x76, 0x34, 0x41, 0x64, 0x64, 0x72, 0x18,
	0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x53, 0x65,
	0x74, 0x52, 0x08, 0x49, 0x50, 0x76, 0x34, 0x41, 0x64, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x4d,
	0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x4d, 0x61,
	0x63, 0x41, 0x64, 0x64, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18,
	0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x9e, 0x01,
	0x0a, 0x0e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x50, 0x52, 0x65, 0x70, 0x6c, 0x79,
	0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x26, 0x0a, 0x08, 0x49, 0x50,
	0x76, 0x34, 0x41, 0x64, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x72,
	0x70, 0x63, 0x2e, 0x49, 0x50, 0x53, 0x65, 0x74, 0x52, 0x08, 0x49, 0x50, 0x76, 0x34, 0x41, 0x64,
	0x64, 0x72, 0x12, 0x22, 0x0a, 0x0c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62,
	0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
	0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x50, 0x76, 0x34, 0x18, 0x04,
	0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, 0x50, 0x76, 0x34, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x50,
	0x76, 0x36, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, 0x50, 0x76, 0x36, 0x22, 0x92,
	0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
	0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d,
	0x65, 0x12, 0x28, 0x0a, 0x0f, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x73,
	0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4b, 0x38, 0x73, 0x50,
	0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x36, 0x0a, 0x16, 0x4b,
	0x38, 0x73, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69,
	0x6e, 0x65, 0x72, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x4b, 0x38, 0x73,
	0x50, 0x6f, 0x64, 0x49, 0x6e, 0x66, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
	0x72, 0x49, 0x64, 0x22, 0xc1, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52,
	0x65, 0x70, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x50, 0x54, 0x79, 0x70,
	0x65, 0x52, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x63,
	0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x53, 0x75, 0x63, 0x63,
	0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x50, 0x76, 0x34, 0x18, 0x03, 0x20, 0x01, 0x28,
	0x08, 0x52, 0x04, 0x49, 0x50, 0x76, 0x34, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x50, 0x76, 0x36, 0x18,
	0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x49, 0x50, 0x76, 0x36, 0x12, 0x28, 0x0a, 0x08, 0x4e,
	0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x4e, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x52, 0x08, 0x4e, 0x65, 0x74,
	0x43, 0x6f, 0x6e, 0x66, 0x73, 0x12, 0x20, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x07,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x72, 0x72, 0x6f, 0x72,
	0x52, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x22, 0xec, 0x01, 0x0a, 0x0c, 0x45, 0x76, 0x65, 0x6e,
	0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x0b, 0x45, 0x76, 0x65, 0x6e,
	0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e,
	0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52,
	0x0b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a,
	0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x0a, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f,
	0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18,
	0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x4b, 0x38, 0x73, 0x50, 0x6f, 0x64, 0x4e, 0x61, 0x6d,
	0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x2c, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0e, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74,
	0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07,
	0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x4d,
	0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3c, 0x0a, 0x0a, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52,
	0x65, 0x70, 0x6c, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x12, 0x14,
	0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x45,
	0x72, 0x72, 0x6f, 0x72, 0x2a, 0x3b, 0x0a, 0x06, 0x49, 0x50, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d,
	0x0a, 0x09, 0x54, 0x79, 0x70, 0x65, 0x56, 0x50, 0x43, 0x49, 0x50, 0x10, 0x00, 0x12, 0x0e, 0x0a,
	0x0a, 0x54, 0x79, 0x70, 0x65, 0x56, 0x50, 0x43, 0x45, 0x4e, 0x49, 0x10, 0x01, 0x12, 0x12, 0x0a,
	0x0e, 0x54, 0x79, 0x70, 0x65, 0x45, 0x4e, 0x49, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x49, 0x50, 0x10,
	0x02, 0x2a, 0x29, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x72,
	0x72, 0x4e, 0x6f, 0x45, 0x72, 0x72, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x72, 0x72, 0x43,
	0x52, 0x44, 0x4e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x10, 0x01, 0x2a, 0x36, 0x0a, 0x0b,
	0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x13, 0x0a, 0x0f, 0x45,
	0x76, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x10, 0x00,
	0x12, 0x12, 0x0a, 0x0e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x50,
	0x6f, 0x64, 0x10, 0x01, 0x2a, 0x36, 0x0a, 0x09, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70,
	0x65, 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x6f,
	0x72, 0x6d, 0x61, 0x6c, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54,
	0x79, 0x70, 0x65, 0x57, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x2a, 0x39, 0x0a, 0x06,
	0x56, 0x66, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x56, 0x66, 0x54, 0x79, 0x70, 0x65,
	0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x56, 0x66, 0x54,
	0x79, 0x70, 0x65, 0x56, 0x50, 0x43, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x56, 0x66, 0x54, 0x79,
	0x70, 0x65, 0x45, 0x4e, 0x4f, 0x10, 0x02, 0x32, 0xeb, 0x01, 0x0a, 0x0d, 0x54, 0x65, 0x72, 0x77,
	0x61, 0x79, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, 0x33, 0x0a, 0x07, 0x41, 0x6c, 0x6c,
	0x6f, 0x63, 0x49, 0x50, 0x12, 0x13, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63,
	0x49, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x72, 0x70, 0x63, 0x2e,
	0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x49, 0x50, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x39,
	0x0a, 0x09, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x50, 0x12, 0x15, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x49, 0x50, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x13, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65,
	0x49, 0x50, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x09, 0x47, 0x65, 0x74,
	0x49, 0x50, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x13, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x72, 0x70,
	0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00,
	0x12, 0x33, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12,
	0x11, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
	0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65,
	0x70, 0x6c, 0x79, 0x22, 0x00, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x2f, 0x3b, 0x72, 0x70, 0x63, 0x62,
	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_rpc_proto_rawDescOnce sync.Once
	file_rpc_proto_rawDescData = file_rpc_proto_rawDesc
)

func file_rpc_proto_rawDescGZIP() []byte {
	file_rpc_proto_rawDescOnce.Do(func() {
		file_rpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_rpc_proto_rawDescData)
	})
	return file_rpc_proto_rawDescData
}

var file_rpc_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_rpc_proto_msgTypes = make([]protoimpl.MessageInfo, 14)
var file_rpc_proto_goTypes = []interface{}{
	(IPType)(0),              // 0: rpc.IPType
	(Error)(0),               // 1: rpc.Error
	(EventTarget)(0),         // 2: rpc.EventTarget
	(EventType)(0),           // 3: rpc.EventType
	(VfType)(0),              // 4: rpc.VfType
	(*IPSet)(nil),            // 5: rpc.IPSet
	(*AllocIPRequest)(nil),   // 6: rpc.AllocIPRequest
	(*NetConf)(nil),          // 7: rpc.NetConf
	(*AllocIPReply)(nil),     // 8: rpc.AllocIPReply
	(*BasicInfo)(nil),        // 9: rpc.BasicInfo
	(*ENIInfo)(nil),          // 10: rpc.ENIInfo
	(*Route)(nil),            // 11: rpc.Route
	(*Pod)(nil),              // 12: rpc.Pod
	(*ReleaseIPRequest)(nil), // 13: rpc.ReleaseIPRequest
	(*ReleaseIPReply)(nil),   // 14: rpc.ReleaseIPReply
	(*GetInfoRequest)(nil),   // 15: rpc.GetInfoRequest
	(*GetInfoReply)(nil),     // 16: rpc.GetInfoReply
	(*EventRequest)(nil),     // 17: rpc.EventRequest
	(*EventReply)(nil),       // 18: rpc.EventReply
}
var file_rpc_proto_depIdxs = []int32{
	9,  // 0: rpc.NetConf.BasicInfo:type_name -> rpc.BasicInfo
	10, // 1: rpc.NetConf.ENIInfo:type_name -> rpc.ENIInfo
	12, // 2: rpc.NetConf.Pod:type_name -> rpc.Pod
	11, // 3: rpc.NetConf.ExtraRoutes:type_name -> rpc.Route
	0,  // 4: rpc.AllocIPReply.IPType:type_name -> rpc.IPType
	7,  // 5: rpc.AllocIPReply.NetConfs:type_name -> rpc.NetConf
	5,  // 6: rpc.BasicInfo.PodIP:type_name -> rpc.IPSet
	5,  // 7: rpc.BasicInfo.PodCIDR:type_name -> rpc.IPSet
	5,  // 8: rpc.BasicInfo.GatewayIP:type_name -> rpc.IPSet
	5,  // 9: rpc.BasicInfo.ServiceCIDR:type_name -> rpc.IPSet
	5,  // 10: rpc.ENIInfo.GatewayIP:type_name -> rpc.IPSet
	4,  // 11: rpc.ENIInfo.VfType:type_name -> rpc.VfType
	0,  // 12: rpc.ReleaseIPRequest.IPType:type_name -> rpc.IPType
	5,  // 13: rpc.ReleaseIPRequest.IPv4Addr:type_name -> rpc.IPSet
	5,  // 14: rpc.ReleaseIPReply.IPv4Addr:type_name -> rpc.IPSet
	0,  // 15: rpc.GetInfoReply.IPType:type_name -> rpc.IPType
	7,  // 16: rpc.GetInfoReply.NetConfs:type_name -> rpc.NetConf
	1,  // 17: rpc.GetInfoReply.Error:type_name -> rpc.Error
	2,  // 18: rpc.EventRequest.EventTarget:type_name -> rpc.EventTarget
	3,  // 19: rpc.EventRequest.EventType:type_name -> rpc.EventType
	6,  // 20: rpc.TerwayBackend.AllocIP:input_type -> rpc.AllocIPRequest
	13, // 21: rpc.TerwayBackend.ReleaseIP:input_type -> rpc.ReleaseIPRequest
	15, // 22: rpc.TerwayBackend.GetIPInfo:input_type -> rpc.GetInfoRequest
	17, // 23: rpc.TerwayBackend.RecordEvent:input_type -> rpc.EventRequest
	8,  // 24: rpc.TerwayBackend.AllocIP:output_type -> rpc.AllocIPReply
	14, // 25: rpc.TerwayBackend.ReleaseIP:output_type -> rpc.ReleaseIPReply
	16, // 26: rpc.TerwayBackend.GetIPInfo:output_type -> rpc.GetInfoReply
	18, // 27: rpc.TerwayBackend.RecordEvent:output_type -> rpc.EventReply
	24, // [24:28] is the sub-list for method output_type
	20, // [20:24] is the sub-list for method input_type
	20, // [20:20] is the sub-list for extension type_name
	20, // [20:20] is the sub-list for extension extendee
	0,  // [0:20] is the sub-list for field type_name
}

func init() { file_rpc_proto_init() }
func file_rpc_proto_init() {
	if File_rpc_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_rpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*IPSet); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AllocIPRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*NetConf); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*AllocIPReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*BasicInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ENIInfo); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Route); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Pod); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReleaseIPRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ReleaseIPReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInfoRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*GetInfoReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EventRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_rpc_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*EventReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_rpc_proto_msgTypes[5].OneofWrappers = []interface{}{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_rpc_proto_rawDesc,
			NumEnums:      5,
			NumMessages:   14,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_rpc_proto_goTypes,
		DependencyIndexes: file_rpc_proto_depIdxs,
		EnumInfos:         file_rpc_proto_enumTypes,
		MessageInfos:      file_rpc_proto_msgTypes,
	}.Build()
	File_rpc_proto = out.File
	file_rpc_proto_rawDesc = nil
	file_rpc_proto_goTypes = nil
	file_rpc_proto_depIdxs = nil
}
